大學(xué)計(jì)算機(jī)基礎(chǔ)實(shí)驗(yàn)論文參考
在當(dāng)下,計(jì)算機(jī)成為一個(gè)不可或缺的工具,無(wú)論是學(xué)習(xí)、工作,還是生活中,都離不開它。下面是學(xué)習(xí)啦小編給大家推薦的大學(xué)計(jì)算機(jī)基礎(chǔ)實(shí)驗(yàn)論文參考,希望大家喜歡!
大學(xué)計(jì)算機(jī)基礎(chǔ)實(shí)驗(yàn)論文參考篇一
《使用控制模型及其應(yīng)用的分析與研究》
摘要:使用控制模型是近年來(lái)提出的新型訪問(wèn)控制模型,它包含了傳統(tǒng)訪問(wèn)控制模型并能滿足現(xiàn)代信息系統(tǒng)的訪問(wèn)控制需求。本文在對(duì)使用控制模型介紹與分析的基礎(chǔ)上,討論了基于該模型實(shí)現(xiàn)傳統(tǒng)的訪問(wèn)控制和數(shù)字版權(quán)管理的應(yīng)用。
關(guān)鍵字:使用控制模型;可變性;連續(xù)性
1 引言
訪問(wèn)控制(Access Control)是國(guó)際標(biāo)準(zhǔn)化組織ISO在網(wǎng)絡(luò)安全標(biāo)準(zhǔn)(ISO7498-2)中定義的安全信息系統(tǒng)的基礎(chǔ)架構(gòu)中必須包含的五種安全服務(wù)之一,它通過(guò)顯式地允許或限制用戶的訪問(wèn)能力及范圍,對(duì)用戶提出的訪問(wèn)請(qǐng)求進(jìn)行控制,以保證資源不被非法使用。訪問(wèn)控制是一種重要的信息安全技術(shù),與數(shù)據(jù)加密、身份認(rèn)證和密鑰管理等信息安全技術(shù)結(jié)合使用來(lái)保障信息系統(tǒng)的安全。
著名的經(jīng)典訪問(wèn)控制模型包括:自主訪問(wèn)控制(Discretionary Access Control,DAC)、強(qiáng)制訪問(wèn)控制(Mandatory Access Control,MAC)和基于角色的訪問(wèn)控制(Role Based Access Control,RBAC),它們主要關(guān)注在一個(gè)信息系統(tǒng)封閉環(huán)境中資源機(jī)密性和完整性的保護(hù)。而隨著網(wǎng)絡(luò)技術(shù)特別是新型互聯(lián)網(wǎng)應(yīng)用(如P2P、數(shù)字版權(quán)管理等)的迅速發(fā)展,現(xiàn)代信息系統(tǒng)面向的是一個(gè)開放網(wǎng)絡(luò)環(huán)境,系統(tǒng)具有開放性、動(dòng)態(tài)性和擴(kuò)展性,在為用戶提供了更加廣闊的資源空間和更加便利服務(wù)的同時(shí),也產(chǎn)生了新的安全問(wèn)題。例如,開放系統(tǒng)和未知用戶的授權(quán)問(wèn)題、數(shù)字資源的分發(fā)和持續(xù)使用控制問(wèn)題、資源使用的可變性問(wèn)題等,這些問(wèn)題使得訪問(wèn)控制的復(fù)雜性大為增加。而傳統(tǒng)訪問(wèn)控制機(jī)制由于設(shè)計(jì)基礎(chǔ)的局限性,不能很好地滿足開放式網(wǎng)絡(luò)環(huán)境中動(dòng)態(tài)、連續(xù)的訪問(wèn)控制需求,在此情況下,建立一個(gè)面向開放網(wǎng)絡(luò)環(huán)境的訪問(wèn)控制模型已經(jīng)成為亟待解決的問(wèn)題。
當(dāng)前,面向開放網(wǎng)絡(luò)環(huán)境的訪問(wèn)控制的研究主要從2個(gè)途徑展開:一是在基本RBAC模型上進(jìn)行擴(kuò)展和增強(qiáng),近年提出的主要RBAC擴(kuò)展模型包括:帶時(shí)間約束的RBAC、分布式RBAC (Distributed RBAC)、基于任務(wù)和角色的訪問(wèn)控制T-RBAC (Task-Role-Based Aceess control)等。這些增強(qiáng)的RBAC模型彌補(bǔ)了基本RBAC模型在開放式網(wǎng)絡(luò)環(huán)境中表現(xiàn)出的某些缺陷。另一途徑是提出一些新的訪問(wèn)控制技術(shù)和模型,近期提出的主要訪問(wèn)控制技術(shù)包括:信任管理(Trust Management,TM)和數(shù)字版權(quán)管理(Digital Rights Management,DRM),提出的訪問(wèn)控制模型是使用控制模型(Usage Control,UCON)。信任管理是在20世紀(jì)90年代后半段興起的訪問(wèn)控制技術(shù),是目前對(duì)開放系統(tǒng)和未知用戶的授權(quán)研究采用的主要技術(shù),DRM技術(shù)是對(duì)各類數(shù)字內(nèi)容的知識(shí)產(chǎn)權(quán)進(jìn)行保護(hù)的一系列軟硬件技術(shù),用以保證數(shù)字內(nèi)容在整個(gè)生命周期內(nèi)的合法使用,目前已經(jīng)在Internet上得到了廣泛的應(yīng)用。而UCON則是將傳統(tǒng)訪問(wèn)控制、信任管理和DRM三個(gè)領(lǐng)域的問(wèn)題進(jìn)行統(tǒng)一考慮,以形成一個(gè)能夠解決開放式網(wǎng)絡(luò)環(huán)境的訪問(wèn)控制問(wèn)題的模型。
2 使用控制模型
為了統(tǒng)一在訪問(wèn)控制研究中提出的許多新概念(如信任管理、數(shù)字版權(quán)管理、義務(wù)、條件),George Mason大學(xué)著名的信息安全專家J. Park和R.Sandhu于2002年首次提出了“使用控制”的概念;隨后,二人提出了使用控制的核心模型—ABC(Authorization oBligation Condition)模型并給出了完整定義,ABC模型闡釋了“使用控制”的本質(zhì)。在此基礎(chǔ)上Xinwen Zhang、Park和Sandhu給出了ABC模型的形式化描述并對(duì)ABC模型的授權(quán)安全屬性(Safety Properties)進(jìn)行了分析,證明了具有有限屬性域的授權(quán)模型存在一個(gè)可判定的安全性。
使用控制模型是對(duì)傳統(tǒng)訪問(wèn)控制模型的根本性增強(qiáng),它包含了義務(wù)、條件、連續(xù)性和可變性等抽象和反映了開放式網(wǎng)絡(luò)環(huán)境中的訪問(wèn)控制需求的新概念,是解決開放式網(wǎng)絡(luò)環(huán)境中的訪問(wèn)控制問(wèn)題的一種有前途的研究方向,被很多專家和學(xué)者認(rèn)為是下一代的訪問(wèn)控制模型的發(fā)展方向。
2.1 ABC模型的組成
使用控制的核心模型是ABC(Authorization,oBligation,Condition)模型,也稱為UCON ABC模型。ABC模型包括主體、客體、權(quán)限3個(gè)基本元素和授權(quán)規(guī)則、義務(wù)、條件3個(gè)與授權(quán)有關(guān)的元素。
主體(Subjects)是對(duì)客體(Objects)擁有某些使用權(quán)限的主動(dòng)實(shí)體,記為S。主體屬性(Subject Attribute)標(biāo)識(shí)了主體能力和特征,是權(quán)限決策過(guò)程中的重要參數(shù),記為ATT(S)。常見的主體屬性有:用戶名、用戶組、角色和安全級(jí)別等。
客體(Objects)是按權(quán)限(Rights)的規(guī)定接受主體訪問(wèn)的被動(dòng)實(shí)體,記為O??腕w屬性(Object Arttbiute)是標(biāo)識(shí)客體的重要信息,包括客體的安全標(biāo)簽、所有關(guān)系、類別和訪問(wèn)控制列表ACL等,記為ATT(O)。
權(quán)限(Rights)是主體能夠?qū)腕w進(jìn)行控制和執(zhí)行的特權(quán),由主體可以對(duì)客體進(jìn)行的訪問(wèn)操作(如讀、寫、運(yùn)行)集組成,記為R。
授權(quán)規(guī)則(Authorization Rules)是指允許主體使用客體特定權(quán)限必須滿足的規(guī)則集,它是判定主體是否能夠訪問(wèn)客體的決定因素,記為A。
義務(wù)(Obligations)是指主體獲得或行使對(duì)客體的訪問(wèn)權(quán)利前或過(guò)程中必須完成的操作,記為B。例如,用戶必須填寫個(gè)人信息表才允許訪問(wèn)有關(guān)的技術(shù)資料。
條件(Conditions)是指主體獲得或行使對(duì)客體的訪問(wèn)權(quán)利前必須滿足的系統(tǒng)或執(zhí)行環(huán)境的強(qiáng)制約束條件,記為C。例如,用戶必須在特定IP地址才能訪問(wèn)有關(guān)的資源。
2.2 連續(xù)性和可變性
傳統(tǒng)訪問(wèn)控制模型僅用授權(quán)規(guī)則來(lái)決定對(duì)訪問(wèn)請(qǐng)求的處理,而ABC模型必須考慮授權(quán)規(guī)則、義務(wù)和條件等使用決定因素,其中義務(wù)、條件是使用控制模型提出的新概念,是對(duì)傳統(tǒng)訪問(wèn)控制基于屬性的控制策略的擴(kuò)展與增強(qiáng)。
使用控制模型引入了連續(xù)性(Continuity)和可變性(Multability)兩種新的重要特征,是開放式網(wǎng)絡(luò)環(huán)境中的訪問(wèn)控制所必不可少的。在傳統(tǒng)訪問(wèn)控制中,授權(quán)決策是在訪問(wèn)操作執(zhí)行之前進(jìn)行判斷的。而在現(xiàn)代訪問(wèn)控制中,有相對(duì)長(zhǎng)期持續(xù)的資源使用或立即撤消資源使用權(quán)限的應(yīng)用要求。因此,授權(quán)決策需要在資源的使用過(guò)程(ongoing)中對(duì)訪問(wèn)請(qǐng)求進(jìn)行不間斷的或重復(fù)的檢查和判斷,這一特征稱為“連續(xù)性”。另一方面,傳統(tǒng)訪問(wèn)控制中,屬性只有通過(guò)管理行為才能被改變;但在開放式網(wǎng)絡(luò)環(huán)境的許多應(yīng)用中,屬性需隨著主體行為而被改變,這種改變必將影響到主體的下次或本次訪問(wèn)權(quán)限的判斷,這一特征稱為“可變性”。
2.3 16種基本的ABC模型
使用控制模型中,授權(quán)是由授權(quán)規(guī)則、義務(wù)、條件和屬性可變性等因素共同決定的。由于授權(quán)規(guī)則的形式可以是使用前授權(quán)(preA)、使用中授權(quán)(onA),同樣義務(wù)、條件的形式也可以是使用前(preB、preC)、使用中(onB、onC),而屬性可變性可分為不改變(0)、使用前改變(1)、使用中改變(2)和使用后改變(3)等4種情況,通過(guò)組合可構(gòu)造出使用控制的16個(gè)基本模型。表1中給出了基于授權(quán)規(guī)則、義務(wù)、條件三個(gè)決策因素和屬性可變性的各種可能模型,可能的情況標(biāo)為“Y”,否則標(biāo)為“N”。
只考慮單一的決策因素。例如若決策因素是“preA”,則屬性改變只能在使用前或使用后,而不可能在使用中;而在以條件為決策因素(preC、onC)的訪問(wèn)模型中所有更新屬性的組合都標(biāo)為“N”,因?yàn)?ldquo;條件”只與環(huán)境或系統(tǒng)狀態(tài)有關(guān),不能改變?nèi)魏沃骺腕w屬性。以UCON決策因素,屬性可變性值的形式表示基本模型,例如UCON preA1表示以授權(quán)規(guī)則作為決策因素、并在使用前改變主客體有關(guān)可變屬性的基本模型。
在實(shí)際系統(tǒng)中可根據(jù)不同應(yīng)用的需求產(chǎn)生不同的組合模型,例如模型UCON preC0onC0,表示在使用前和使用中都要執(zhí)行“條件”決策因素,且都不改變主客體的屬性。
3 使用控制模型的應(yīng)用
本節(jié)討論自主訪問(wèn)控制DAC、強(qiáng)制訪問(wèn)控制MAC、基于角色的訪問(wèn)控制RBAC和數(shù)字版權(quán)管理模型在ABC模型中的實(shí)現(xiàn),以集合謂詞為主要描述工具進(jìn)行分析。
3.1 DAC模型的實(shí)現(xiàn)
自主訪問(wèn)控制DAC是在確認(rèn)主體身份以及它們所屬組的基礎(chǔ)上對(duì)訪問(wèn)進(jìn)行限制的一種方法,獲得訪問(wèn)許可的主體能夠向其它主體轉(zhuǎn)讓訪問(wèn)權(quán)。在實(shí)現(xiàn)上,首先對(duì)用戶的身份(id)進(jìn)行鑒別,然后就可按訪問(wèn)控制列表ACL所賦予用戶的權(quán)限允許或限制用戶使用客體資源。DAC可由UCON preA0模型支持,以下是有關(guān)描述:
(1)S表示主體即用戶或用戶組,O表示客體,N表示身份標(biāo)記集合,R為操作權(quán)限集。
(2) id表示用戶到標(biāo)記集合N之間的一對(duì)一映射關(guān)系。
(3) ACL表示客體與N×R之間的映射關(guān)系,其中N×R為用戶身份與操作權(quán)限的組合關(guān)系。
(4) ATT(S) = {id}。
(5) ATT(O) = {ACL}。
(6) allowed(s,o,r) => (id(s),r) ∈ ACL(o)。其中allow(s,o,r)表示主體s對(duì)客體o具有執(zhí)行r操作的權(quán)限。
3.2 MAC模型的實(shí)現(xiàn)
強(qiáng)制訪問(wèn)控制MAC是一種強(qiáng)制主體服從訪問(wèn)控制策略的訪問(wèn)方式。在強(qiáng)制訪問(wèn)控制中,主體和客體資源都被賦予了一定的安全級(jí)別(如公開、秘密、機(jī)密和絕密等),安全級(jí)別之間是一種偏序關(guān)系。按使用控制的觀點(diǎn)來(lái)看,主體屬性為安全等級(jí)(clearance),而客體屬性為安全類別(classifiactoin)。采用MAC的系統(tǒng)先對(duì)訪問(wèn)主體和受控客體的安全級(jí)別屬性進(jìn)行比較,再?zèng)Q定訪問(wèn)主體能否訪問(wèn)該受控對(duì)象。通過(guò)這些主體和客體的安全級(jí)別的偏序關(guān)系來(lái)執(zhí)行強(qiáng)制訪問(wèn)控制的安全規(guī)則,即簡(jiǎn)單安全特性規(guī)則和*特性規(guī)則。MAC由UCON preA0模型支持,以下是有關(guān)描述:
(1) L表示具有偏序關(guān)系的安全級(jí)別集合;claearnce表示訪問(wèn)主體S和安全級(jí)別L之間的映射函數(shù),即SàL。calssfiiaction表示客體和安全級(jí)別L之間的映射函數(shù),即OàL。
(2) ATT(S)={clearance}。
(3) ATT(O)={classification}。
(4) allowed(s,o,read) => clearance (s) ≧ classification (o),即主體只能向下讀,不能向上讀(簡(jiǎn)單安全特性規(guī)則)。
(5) allowed(s,o,write) => clearance (s) ≦ classification (o),即主體只能向上寫,不能向下寫(*特性規(guī)則)。
3.3 RBAC模型的實(shí)現(xiàn)
基于角色的訪問(wèn)控制策略RBAC中,將訪問(wèn)權(quán)限分配給角色,用戶通過(guò)被指派為角色從而獲得角色所擁有的訪問(wèn)控制權(quán)限。從使用控制的觀點(diǎn)來(lái)看,用戶/角色的映射關(guān)系可作為主體屬性,角色/操作權(quán)限的映射關(guān)系可作為客體屬性和權(quán)限。2001年提出的NIST標(biāo)準(zhǔn)RBAC模型是各類基于角色的訪問(wèn)控制模型的基礎(chǔ),它由基本模型RBAC0(Core RBAC)、等級(jí)模型RBAC1(Hierarchal RBAC)、約束模型RBAC2(Constraint RBAC)和統(tǒng)一模型RBAC3(Combines RBAC)四個(gè)子模型組成。RBAC0中包含用戶users、角色roles、目標(biāo)objects、會(huì)話sessions、操作operations五個(gè)基本數(shù)據(jù)元素和用戶角色分配(URP)、角色權(quán)限分配(PRA),其基本思想是通過(guò)角色建立和訪問(wèn)權(quán)限之間的多對(duì)多關(guān)系,用戶由此獲得訪問(wèn)權(quán)限。RBAC1、RBAC2、RBAC3都是在RBAC0上的擴(kuò)展。RBAC1引入了角色的等級(jí)和角色間的繼承,角色間的繼承關(guān)系可分為一般繼承關(guān)系和受限繼承關(guān)系。一般繼承關(guān)系允許角色間的多繼承,受限繼承關(guān)系則要求角色間單繼承。以下是通過(guò)UCON preA0實(shí)現(xiàn)以RBAC1的描述:
(1) P = {(o,r)},P表示授權(quán)集合,(o,r)為客體-權(quán)限對(duì)。
(2) ROLE表示角色層次的偏序關(guān)系。
(3) actRole表示激活角色,實(shí)現(xiàn)用戶角色分配(URP)。
(4) pRole表示授權(quán)角色,實(shí)現(xiàn)角色權(quán)限分配(PRA)。
(5) ATT(S) = {actRole}。
(6) ATT(O) = {pRole}。
(7) allowed(s,o,r) = role ∈ actRole(s) ∧ role' ∈ pRole(o,r) ∧ role≧role',即如果存在授權(quán)角色(pRole(o,r)),其偏序關(guān)系≦激活角色(actRole(s)),則訪問(wèn)請(qǐng)求被允許。
3.4 DRM模型的實(shí)現(xiàn)
數(shù)字版權(quán)管理DRM是對(duì)各類數(shù)字媒體內(nèi)容的知識(shí)產(chǎn)權(quán)進(jìn)行保護(hù)的一系列技術(shù),它是一種在開放是網(wǎng)絡(luò)環(huán)境中的基于支付(Pay-Based)的使用控制策略。典型的數(shù)字版權(quán)使用控制策略包括使用前支付、使用后支付、累計(jì)支付等基本類型。以下是通過(guò)UCON preA1實(shí)現(xiàn)使用前支付DRM模型的描述:
(1) op表示用戶對(duì)數(shù)字媒體內(nèi)容的操作集(如播放、復(fù)制等)。
(2) credit表示用戶帳號(hào)中的金額。
(3) value表示使用客體資源的價(jià)格。
(4) ATT(s) :{credit(s)}。
(5) ATT(o,op) :{value(o,op)}。
(6) allowed(s,o,op) => credit(s) ≧ value(o,op),即當(dāng)用戶帳號(hào)上的余額大于或等于客體資源的使用價(jià)格時(shí),允許其訪問(wèn)。
(7) preUpdate(credit (s)):credit(s) = credit(s)-value(o,op),即在主體使用客體資源之前,按客體資源的使用價(jià)格修改用戶帳號(hào)中的金額。
無(wú)論是RBAC模型,還是數(shù)字版權(quán)管理DRM模型,雖然其應(yīng)用場(chǎng)合有很多變化,但都可根據(jù)具體應(yīng)用需求選用ABC基本模型或組合模型進(jìn)行描述。
4 結(jié)束語(yǔ)
使用控制是下一代訪問(wèn)控制技術(shù)發(fā)展的基礎(chǔ),其兩個(gè)核心內(nèi)容:主客體屬性的可變性和授權(quán)決策的連續(xù)性是反映開放網(wǎng)絡(luò)環(huán)境中訪問(wèn)控制需要的重要特性。它提供了強(qiáng)大的描述能力,在各類信息安全系統(tǒng)中將有著良好的應(yīng)用前景。
參考文獻(xiàn)
[1] Zhang Xin-wen,CHEN Song-qing, R. Sandhu. Enhancing data authenticity and integrity in P2P systems[J]. IEEE Internet Computing,2005,9(6):42-49
[2] J. Park, R. Sandhu. Towards usage control models:beyond traditional access control[C].ACM Symposium on Acesscontrol Models and Technologies,2002,2(3):57-64
[3] J. Park, R. Sandhu. Usage Control: A vision for next generation access control]C].International Workshop on Mathematical Methods,Models and Architectures for Computer Networks Security,2003,2(1):17-31
[4] J. Park, R. Sandhu. The UCONABC usage control model[J].ACM Transactions on Information and Systems Security,2004,7(1):128-174
[5] 袁磊.使用控制模型的研究[J].計(jì)算機(jī)工程,2005,31(12):146-148
大學(xué)計(jì)算機(jī)基礎(chǔ)實(shí)驗(yàn)論文參考篇二
《加密訪問(wèn)控制》
摘要:訪問(wèn)控制是一種很流行的信息保護(hù)機(jī)制,被廣泛應(yīng)用在信息系統(tǒng)中。十多年來(lái),在這個(gè)領(lǐng)域已取得了很多成就。傳統(tǒng)的訪問(wèn)控制已經(jīng)被更加靈活強(qiáng)大的系統(tǒng)代替了,如基于角色的訪問(wèn)控制( RBAC)和靈活授權(quán)框架 (FAF)。但是,在訪問(wèn)控制系統(tǒng)中,對(duì)系統(tǒng)管理員的絕對(duì)信賴一直是對(duì)信息安全的潛在威脅。為了克服這個(gè)威脅,分等級(jí)的加密被 發(fā)展作為訪問(wèn)控制的替補(bǔ)方法。通過(guò)使用分等級(jí)的加密,信息系統(tǒng)中的所有信息被加密:由低層安全類加密的數(shù)據(jù)可以被高層的安全類解密。文章描述了基于數(shù)據(jù)和基于密鑰的兩種加密方法實(shí)現(xiàn)加密的訪問(wèn)控制。
關(guān)鍵字:加密;解密;訪問(wèn)控制;等級(jí)
1 引言
分等級(jí)進(jìn)行加密的想法最早是由 Akl和 Taylor提出的 [1],多級(jí)系統(tǒng)中的主體(用戶)和客體(數(shù)據(jù))有各自的安全級(jí),用戶對(duì)數(shù)據(jù)的訪問(wèn)必須滿足一定的安全性要求。安全級(jí)是一個(gè)二元組<密級(jí),分類集合>。用戶間的安全級(jí)的比較是按偏序進(jìn)行的。如果安全級(jí) U 1=密級(jí) l 1分類集合 s 1,U 2=密級(jí) l 2分類集合 s 2。稱 U 1<= U 2當(dāng)且僅當(dāng) l 1< l 2且 s 1⊆s 2。
假設(shè)有主體S,客體 O 1、 O 2和 O 3,如果安全級(jí) Uo1<= Us, Us= Uo2, Us<= Uo3,則 S對(duì) O 1只能讀,對(duì) O 3只能寫,對(duì)同安全級(jí)別的客體 O2可以進(jìn)行讀寫兩種操作。在這種多級(jí)安全模型中,一個(gè)主體(用戶)訪問(wèn)其它主體的數(shù)據(jù)時(shí),只需要與被訪問(wèn)主體的安全級(jí)進(jìn)行比較,如果訪問(wèn)主體的安全級(jí)比被訪問(wèn)主體的安全級(jí)高,則允許訪問(wèn),否則,訪問(wèn)被禁止。從中可以看到,如果非法用戶篡改安全級(jí),則很容易實(shí)現(xiàn)對(duì)其它(高安全級(jí))用戶數(shù)據(jù)的非法訪問(wèn)??梢娺@種比較安全級(jí)的訪問(wèn)控制方法具有潛在的不安全性。通過(guò)加密方法可以有效消除這種不安全性。首先,在對(duì)用戶身份鑒別時(shí),不僅生成用戶密碼,同時(shí)還為用戶生成一個(gè)公鑰、私鑰對(duì),利用密鑰對(duì)來(lái)加強(qiáng)對(duì)用戶身份鑒別,再利用用戶的私鑰為用戶生成一個(gè)訪問(wèn)密鑰,由此來(lái)實(shí)現(xiàn)訪問(wèn)控制。
2 基于數(shù)據(jù)的解決方法
找到足夠安全的保護(hù)數(shù)據(jù)的方法或者安全的產(chǎn)生訪問(wèn)密鑰的方法,就可以解決訪問(wèn)控制的問(wèn)題,這是實(shí)現(xiàn)加密訪問(wèn)控制時(shí)的重點(diǎn)。
非常流行的加強(qiáng)訪問(wèn)控制的方法是通過(guò)訪問(wèn)控制列表。每個(gè)數(shù)據(jù)都與一個(gè) ACL表相關(guān),表中列舉出授權(quán)的用戶組和相對(duì)應(yīng)的訪問(wèn)模式。通過(guò)查看 ACL,很容易決定允許誰(shuí)對(duì)相關(guān)數(shù)據(jù)進(jìn)行對(duì)應(yīng)操作。 ACL包含通常情況下的所有訪問(wèn)控制。例如,它支持等級(jí)訪問(wèn)控制。如果我們根據(jù)等級(jí)結(jié)構(gòu)或者組織產(chǎn)生 ACL。那么等級(jí)訪問(wèn)控制就能夠被加強(qiáng)。也就是說(shuō),一個(gè)數(shù)據(jù)擁有這和它所有的祖先都被在它的數(shù)據(jù) ACL中列舉出來(lái)。
從加密的角度來(lái)講,為了加強(qiáng)通用的訪問(wèn)控制,每個(gè)數(shù)據(jù)必須被加密,這樣只有 ACL中的主體有能力解密數(shù)據(jù)。假設(shè)每個(gè)主體被分配一對(duì)密鑰:公鑰和私鑰。 K個(gè)主體共享消息 m: s1, s2,… sk,對(duì)于每個(gè)主體 si∈{ s1, s2,… sk }, m被 si的公鑰加密。加之它所有者的密文, m被加密( k+1)次。為了共享一個(gè)單一的信息 m系統(tǒng)保存( k+1)個(gè)密文。這種方法的消極面出現(xiàn)確定了,也就是存
儲(chǔ)加密數(shù)據(jù)的多個(gè)副本可能會(huì)產(chǎn)生矛盾(不一致性)。
2.1 系統(tǒng)元素
我們的基于數(shù)據(jù)的解決方法包括以下元素:
主體 S={ s 1, s 2,… s l},主體既可以是用戶也可以是組。
公鑰密碼系統(tǒng)包括三個(gè)功能函數(shù):
(1)密鑰生成函數(shù) KG:∀ s i∈ S, KG生成一對(duì)密鑰:公開密鑰 Ksi和它的對(duì)應(yīng)的私有密鑰 Ks i -1。
(2)加密函數(shù) E: c= Ek( m),其中 c是密文, m代表信息, K表示公開密鑰(加密密鑰)。
(3)解密函數(shù) D: c= Dk -1( c), K -1表示私有密鑰(解密密鑰)。
2.2 加密的訪問(wèn)控制
假設(shè)主體 si想與 k個(gè)用戶 si 1, si 2,…, sik∈ S共享信息 m, si執(zhí)行下面的操作(為簡(jiǎn)單起見,我們假設(shè) m< ns 1, ns 2,… ns l)。如果是長(zhǎng)信息,可以一塊一塊的進(jìn)行加密。
(1)首先, si 計(jì)算k個(gè)單一的密文,也就是說(shuō),對(duì)于∀ sj∈{ si 1, si 2,…, sik},計(jì)算 Ek sj ( m)。
(2)然后, si用加納法則計(jì)算出 CRT的解 x,0≤x ≤ns i1,ns i2,…,ns ik,x同時(shí)滿足以下k個(gè)式子:
(1) x ≡ Ek s 1(m)mod nsi 1.
(2) x ≡ Ek s 2(m)mod nsi 2.
…
(k) x ≡ Ek sk (m)mod nsik。
(3) 把 si保存在 SDB里。對(duì)每個(gè)訪問(wèn)m的主體s j,s j∈{ si 1, si 2,…, sik},s j需要計(jì)算 Ek s j( m)= x mod nsj。然后s j使用私鑰 Ek sj- 1恢復(fù) m。
2.3 授權(quán)變更
數(shù)據(jù)項(xiàng)授權(quán)的變更,如一個(gè)主體被授權(quán)/撤消對(duì)數(shù)據(jù)項(xiàng)的訪問(wèn),在信息系統(tǒng)中是很常見的事情。我們的基于數(shù)據(jù)的解法根據(jù)受到影響的數(shù)據(jù)狀態(tài)來(lái)控制授權(quán)變更。如果數(shù)據(jù)項(xiàng)是動(dòng)態(tài)的(也就是說(shuō)數(shù)據(jù)在授權(quán)變更時(shí)有變化), A1到 A3的所有操作基于授權(quán)主體新的組再執(zhí)行一次。如果數(shù)據(jù)是靜態(tài)的(也就是說(shuō)授權(quán)更改時(shí)數(shù)據(jù)項(xiàng)不發(fā)生改變)。
SCS 1包括k個(gè)同時(shí)滿足的等式,它的 CRT解是 x;給 SCS 1增加一個(gè)條件等式得到 SCS 2,它的 CRT解是 x′;從 SCS 1去除一個(gè)條件等式得到 SCS 3,它的 CRT解是 x″。假設(shè) x的值已經(jīng)算出來(lái)了,為得到 x′的值,我們只需要找到 x′≡ x mod n 1 n 2和 x′≡ ak +1 mod nk +1兩個(gè)等式的 CRT解。為得到 x″的值,我們只需要一個(gè)模運(yùn)算: x″= x mod n 1 n 2… nk +1??傊瑇′和 x″的值可以很容易得從 x得出 [2]。
在我們的基于數(shù)據(jù)的解法中,準(zhǔn)予一個(gè)主體對(duì)一個(gè)靜態(tài)數(shù)據(jù)項(xiàng)進(jìn)行訪問(wèn)與從 SCS 1到 SCS 2的轉(zhuǎn)換是等價(jià)的。新的共享密文 x′可以從舊的共享密文 x有效得到。撤消一個(gè)主體對(duì)一個(gè)靜態(tài)數(shù)據(jù)的訪問(wèn)與從 SCS 1到 SCS 3的轉(zhuǎn)換是等價(jià)的。通過(guò)一個(gè)模運(yùn)算可以簡(jiǎn)單的從舊的密文 x得到新的密文 x″。
3 基于密鑰的解法
3.1 實(shí)現(xiàn)
在基于數(shù)據(jù)的解法中,k個(gè)共享者共同分享信息 m,共享密文的大小是原始信息 m大小的 k倍。因此基于數(shù)據(jù)的解法在 m或者 k很大的情況下是不可取的。而且,基于數(shù)據(jù)的解法是基于公開密碼系統(tǒng)的。這樣的話,共享一個(gè)數(shù)據(jù)項(xiàng),數(shù)據(jù)項(xiàng)的所有者必須知道所有分享者的加密密鑰。為保護(hù)解密密鑰的機(jī)密性,我們只能使用公開密鑰加密系統(tǒng)。公開密鑰加密系統(tǒng)比對(duì)稱加密體制慢。
我們的基于密鑰的解法的主要思想是:不是分享信息,而是分享加密密鑰 [3]。除了在基于數(shù)據(jù)的解法中列舉的元素外,基于密鑰的解法還需要一個(gè)對(duì)稱密鑰加密系統(tǒng)。這里,我們用SE表示加密函數(shù),SD表示解密函數(shù)。
如果一個(gè)主體 s i 想與主體 si 1, si 2,…, sik∈ S分享信息 m,執(zhí)行如下操作:
(1)隨機(jī)選擇一個(gè)對(duì)稱密鑰 KR。
(2)使用 KR 加密m: c= SEKR( m)。
(3)∀ s∈{ si 1,s i2,…,s ik},計(jì)算 EKs j( KR)。
(4)找到同時(shí)滿足下面等式的 CRT解:
(1) x ≡ Ek si 1( KR) mod nsi 1.
(2) x ≡ Ek si 2( KR) mod nsi 2.
…
(k) x ≡ Ek sik ( KR) mod nsi 。
(5) 把 x|| c保存到 SDB中,其中符號(hào)“||”的意思是“串聯(lián)”。
主體 sj∈{ si 1, si 2,…, si k}訪問(wèn) m, sj需要計(jì)算 Ek sij( KR) = x mod ns j;然后用私鑰 Ksj -1取回對(duì)稱密鑰 KR,也就是 KR= D Ksj -1( Ek sij( KR));最后,使用 KR恢復(fù)明文 m, m= SD KR( c)。
3.2 授權(quán)變更
對(duì)于動(dòng)態(tài)數(shù)據(jù),任何時(shí)候只要授權(quán)發(fā)生更改,從(1)到(5)的步驟都要被基于新的主體組重新執(zhí)行一次。對(duì)于靜態(tài)數(shù)據(jù),如果主體被撤消了對(duì)數(shù)據(jù)的訪問(wèn),為組織主體使用舊的對(duì)稱密鑰獲取數(shù)據(jù),從(1)到(5)的步驟都要被基于新的主體組重新做一遍。如果一個(gè)主體被準(zhǔn)予對(duì)數(shù)據(jù)的訪問(wèn),不需要對(duì)數(shù)據(jù)重新進(jìn)行加密,因?yàn)榕f的對(duì)稱密鑰仍然可以使用。因此從 SCS 1到 SCS 2的轉(zhuǎn)換可以被使用來(lái)從舊的對(duì)稱密鑰產(chǎn)生新的共享密文。新的授權(quán)主體可以獲取舊的對(duì)稱密鑰來(lái)截密數(shù)據(jù) [4]。
因?yàn)閷?duì)稱密鑰的大小通常比數(shù)據(jù)項(xiàng)小得多,公開密鑰加密比基于數(shù)據(jù)的解法更加有效。由于同樣的原因,共享密文的大小比基于數(shù)據(jù)的方法小很多。總之,當(dāng)數(shù)據(jù)或者分享者數(shù)目較大時(shí)基于密鑰的解法更可取。
3.3 SIFF函數(shù)實(shí)現(xiàn)
如果能找到足夠安全的產(chǎn)生訪問(wèn)密鑰的方法,則可以容易解決訪問(wèn)控制的問(wèn)題,可以利用 SIFF函數(shù)實(shí)現(xiàn) [5]。
先作如下假設(shè):
(1) 用 IDi表示節(jié)點(diǎn) Ni的標(biāo)識(shí),設(shè) IDi能用 l( n)位長(zhǎng)的串描述, l是多項(xiàng)式。
(2) F={ Fn| n∈ N}是偽隨機(jī)函數(shù)族,其中 Fn={ fk| fk:∑ l (n) →∑ n,k∈∑ n },用 n位的串 k來(lái)標(biāo)識(shí) fk。
(3) H={ Hn| n∈ N }是 k- SIFF,將 n位的輸入映射為 n位的輸出。設(shè) k足夠大,足以表示一個(gè)節(jié)點(diǎn)擁有的父節(jié)點(diǎn)數(shù)。
下面給出一個(gè)生成訪問(wèn)密鑰的算法:
算法:訪問(wèn)密鑰生成算法
輸入:用戶節(jié)點(diǎn)集{ N1,… Ni,… Np( n)} 輸出:各用戶對(duì)應(yīng)的訪問(wèn)密鑰{ K 1,… Ki,… Kp( n)}
(1)如果節(jié)點(diǎn) N 0是最大節(jié)點(diǎn), K 0=fpk 0(ID0);其中pk 0是節(jié)點(diǎn)N 0對(duì)應(yīng)的用戶的私鑰。否則轉(zhuǎn)(2)。
(2)如果節(jié)點(diǎn) Nj只有一個(gè)父節(jié)點(diǎn)Ni, Ni已經(jīng)有了訪問(wèn)密鑰 Ki,則 Nj的訪問(wèn)密鑰 Kj( n位長(zhǎng)): Kj= fKi( IDi) 。
(3)如果節(jié)點(diǎn)Nj有多個(gè)(如:p個(gè))父節(jié)點(diǎn): Ni1, Ni2,…, Nip,對(duì)應(yīng)有各自的訪問(wèn)密鑰 Ki 1, Ki 2,… Kip,則 Kj為從隨機(jī)選取的 n位串: Kj∈R∑n,再?gòu)?Hn中隨機(jī)的選取一個(gè)哈希函數(shù) hi,使得將f Kj 1( IDj),f Kj 2( IDj)…, fKjk( IDj)都映射到 Kj。即:
hi(( fKj 1( IDj))= hi(( fKj 2( IDj))=…= hi(( fKjp( IDj))= Kj。然后公開哈希函數(shù) hi,使之對(duì) Nj 所有的祖先節(jié)點(diǎn)都可用。
(4)如果節(jié)點(diǎn)集中的節(jié)點(diǎn)全部訪問(wèn)完畢則輸出訪問(wèn)密鑰,算法結(jié)束;否則轉(zhuǎn)(1)。
由算法可知,如果 Ni≥ Nj,則 Kj 總可以由 Ki得到。當(dāng) Ni是 Nj的的單一父節(jié)點(diǎn)時(shí), Kj= fKi( IDi);當(dāng) Ni不是 Nj的父節(jié)點(diǎn)時(shí),通過(guò)從上往下的一條路徑Ni最終也能得到 Kj。
4 結(jié)論
文章綜述了用加密來(lái)解決訪問(wèn)控制的方法,描述了基于數(shù)據(jù)的和基于密鑰的解決方法。文中系統(tǒng)的安全性是基于不同的函數(shù): 中國(guó)余數(shù)定理和 SIFF函數(shù)實(shí)現(xiàn)的。
參考文獻(xiàn)
[1] 王元珍,魏勝杰,朱虹. 安全DBMS中訪問(wèn)控制的一種加密解決方法. 計(jì)算機(jī)工程與應(yīng)用. 2003(16),pp:195-197
[2] Yibing Kong,Jennifer Seberry. A Cryptographic Solution for General Access Control. Janusz R. Getta,Springer-Verlag Berlin Heidelberg 2005. pp:461-473
[3] Ray,I.,Ray,I.,Narasimhamurthi,N.. A Cryptographic Solution to Implement Access Control in a Hierarchy and More. Proceedings of the Seventh ACM Symposium on Access Control Models and Technologies. ACM Press (2002),pp:65-73
[4] Jajodia,S.,Samarati,P.,Sapino,M. L.,Subrahmanian,V. S.:Flexible Support for Multiple Access Control Policies. ACM Transactions on Database Systems,Vol. 26,No. 2. ACM Press (2001),pp:214-260
[5] Akl,S. G.,Taylor,P. D.:Cryptographic Solution to a Multilevel Security Problem. Advances in Cryptology:Proceedings of Crypto ’82. Plenum Press (1982),pp:237-249