謝絨娜,范曉楠,李蘇浙,黃宇欣,史國(guó)振
基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制策略冗余與沖突檢測(cè)方法
謝絨娜1,范曉楠2,李蘇浙2,黃宇欣2,史國(guó)振1
(1. 北京電子科技學(xué)院密碼科學(xué)與技術(shù)系,北京 100070;2. 北京電子科技學(xué)院網(wǎng)絡(luò)空間安全系,北京 100070)
基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制機(jī)制通過(guò)主客體標(biāo)簽實(shí)現(xiàn)數(shù)據(jù)流轉(zhuǎn)控制,具有輕量級(jí)、延伸控制的優(yōu)勢(shì),引起了廣泛關(guān)注。數(shù)據(jù)流轉(zhuǎn)時(shí),標(biāo)簽變更不可避免,而在標(biāo)簽變更時(shí),新標(biāo)簽與已有標(biāo)簽難免存在冗余或者沖突。如何對(duì)標(biāo)簽進(jìn)行冗余與沖突檢測(cè)是基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制中急需解決的問(wèn)題。針對(duì)上述問(wèn)題,提出了基于原子操作的標(biāo)簽描述方法。客體標(biāo)簽由多個(gè)原子標(biāo)簽的邏輯組合生成。其中,原子標(biāo)簽用于描述最小的安全需求,解決了標(biāo)簽描述簡(jiǎn)潔性和豐富性問(wèn)題。為降低標(biāo)簽冗余與沖突檢測(cè)難度、提高檢測(cè)效率,基于標(biāo)簽中不同集合的相關(guān)性,提出了基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制策略冗余與沖突檢測(cè)方法。該方法通過(guò)分析原子標(biāo)簽中各要素的集合關(guān)系對(duì)原子標(biāo)簽進(jìn)行冗余與沖突檢測(cè),基于原子標(biāo)簽檢測(cè)結(jié)果和邏輯關(guān)系對(duì)客體標(biāo)簽進(jìn)行檢測(cè),提高了檢測(cè)效率;基于不同原子標(biāo)簽中包含操作的關(guān)系對(duì)原子標(biāo)簽進(jìn)行冗余與沖突檢測(cè),對(duì)于包含相同操作的不同原子標(biāo)簽,通過(guò)分析不同原子標(biāo)簽中主體屬性、環(huán)境屬性以及規(guī)則類(lèi)型之間關(guān)系進(jìn)行檢測(cè),對(duì)于包含不同操作的原子標(biāo)簽,如果不同操作之間沒(méi)有關(guān)系,那么原子標(biāo)簽不存在冗余與沖突,如果不同操作之間存在偏序關(guān)系,則通過(guò)分析不同原子標(biāo)簽中操作的偏序關(guān)系、主體屬性、環(huán)境屬性以及規(guī)則類(lèi)型之間關(guān)系進(jìn)行檢測(cè)。從理論和實(shí)驗(yàn)兩個(gè)角度對(duì)提出的冗余與沖突檢測(cè)方法性能進(jìn)行分析,通過(guò)實(shí)驗(yàn)驗(yàn)證了原子標(biāo)簽數(shù)量和復(fù)雜度對(duì)檢測(cè)性能的影響。
標(biāo)簽;數(shù)據(jù)流轉(zhuǎn)控制;原子標(biāo)簽;集合相關(guān)性;策略冗余與沖突檢測(cè)
大數(shù)據(jù)、互聯(lián)網(wǎng)等信息技術(shù)快速發(fā)展并廣泛普及,使得協(xié)同辦公、在線(xiàn)教育、社交網(wǎng)絡(luò)等各類(lèi)互聯(lián)網(wǎng)應(yīng)用用戶(hù)數(shù)量大幅上升。為滿(mǎn)足上述需求,數(shù)據(jù)往往需要在不同應(yīng)用之間頻繁地流轉(zhuǎn)。數(shù)據(jù)的頻繁流轉(zhuǎn)大大增加了信息泄露的風(fēng)險(xiǎn),如何確保數(shù)據(jù)全生命周期的受控流轉(zhuǎn)成為數(shù)據(jù)流轉(zhuǎn)中的關(guān)鍵問(wèn)題。
基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制機(jī)制通過(guò)給主體和客體設(shè)置標(biāo)簽的方式實(shí)現(xiàn)對(duì)數(shù)據(jù)的流轉(zhuǎn)控制,具有標(biāo)簽設(shè)置靈活、便捷等優(yōu)點(diǎn)。同時(shí),標(biāo)簽可以隨著數(shù)據(jù)全生命周期流轉(zhuǎn),實(shí)現(xiàn)對(duì)數(shù)據(jù)全生命周期的流轉(zhuǎn)控制,引起人們的廣泛關(guān)注。在基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制機(jī)制中,針對(duì)如何提高用戶(hù)便捷性和流轉(zhuǎn)控制粒度等問(wèn)題,Xie等[1]提出了一種基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制(LBDFC,label based data flow control)機(jī)制。該機(jī)制從易于用戶(hù)理解使用、標(biāo)簽豐富度等角度出發(fā),基于對(duì)客體的操作,充分考慮了主體、客體、環(huán)境等屬性進(jìn)行標(biāo)簽設(shè)計(jì),實(shí)現(xiàn)了數(shù)據(jù)靈活的受控流轉(zhuǎn)。
在數(shù)據(jù)跨域流轉(zhuǎn)中,會(huì)有各種不同新的流轉(zhuǎn)控制需求,標(biāo)簽的增加、修改、刪除是基于標(biāo)簽數(shù)據(jù)跨域流轉(zhuǎn)中經(jīng)常面臨的問(wèn)題。目前在大多應(yīng)用場(chǎng)景中,標(biāo)簽設(shè)置與變更一般由非安全專(zhuān)業(yè)人員操作,在標(biāo)簽變更中,新的標(biāo)簽與已有標(biāo)簽不可避免存在冗余或者沖突。如何解決不同標(biāo)簽的冗余與沖突問(wèn)題是基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制中亟須解決的問(wèn)題。
如何快速檢測(cè)不同標(biāo)簽之間是否存在冗余或者沖突,并準(zhǔn)確定位存在冗余或者沖突的位置,是設(shè)計(jì)基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制策略冗余與沖突檢測(cè)方法首要解決的問(wèn)題。標(biāo)簽的復(fù)雜度直接影響檢測(cè)效率,不同描述方法會(huì)大大影響檢測(cè)性能。簡(jiǎn)單的描述方式一般檢測(cè)效率高,但一定程度上會(huì)影響策略描述的豐富程度。如何平衡標(biāo)簽描述的豐富度與檢測(cè)效率是設(shè)計(jì)基于標(biāo)簽的策略冗余與沖突檢測(cè)方法面臨的挑戰(zhàn)?,F(xiàn)有的策略冗余與沖突檢測(cè)方法大多基于圖[2]、樹(shù)[3]等,存在復(fù)雜度高、檢測(cè)效率低等問(wèn)題,而且,通用的冗余與沖突檢測(cè)方法難以直接遷移到基于標(biāo)簽的流轉(zhuǎn)控制機(jī)制中。針對(duì)上述問(wèn)題,本文從標(biāo)簽描述方法入手,通過(guò)分析標(biāo)簽中不同元素之間集合相關(guān)性,提出了基于標(biāo)簽的策略冗余與沖突檢測(cè)方法,主要貢獻(xiàn)如下。
1) 提出了基于原子操作的標(biāo)簽描述方法,基于原子操作生成多個(gè)原子標(biāo)簽,原子標(biāo)簽用于描述最小的安全需求,客體標(biāo)簽為多個(gè)原子標(biāo)簽的邏輯組合,解決了標(biāo)簽描述豐富性問(wèn)題。
2) 提出了基于標(biāo)簽的策略冗余與沖突檢測(cè)方法,通過(guò)分析原子標(biāo)簽中各要素的關(guān)系對(duì)原子標(biāo)簽進(jìn)行冗余與沖突檢測(cè),并基于原子標(biāo)簽檢測(cè)結(jié)果和邏輯關(guān)系實(shí)現(xiàn)對(duì)客體標(biāo)簽的檢測(cè),提高了檢測(cè)效率。
3) 從理論和實(shí)驗(yàn)兩個(gè)角度對(duì)基于標(biāo)簽的策略冗余與沖突檢測(cè)方法進(jìn)行分析,評(píng)估了原子標(biāo)簽數(shù)量和復(fù)雜度對(duì)檢測(cè)效率的影響,驗(yàn)證了檢測(cè)方法的高效性和可用性。
基于標(biāo)簽的訪(fǎng)問(wèn)控制具有標(biāo)簽設(shè)置靈活、便捷等優(yōu)點(diǎn),同時(shí)標(biāo)簽隨著數(shù)據(jù)全生命周期流轉(zhuǎn),實(shí)現(xiàn)對(duì)數(shù)據(jù)全生命周期的控制,引起了學(xué)術(shù)界和工業(yè)界的廣泛關(guān)注。研究成果主要聚焦于模型構(gòu)建、策略冗余與沖突檢測(cè)等方面[4-5]。
在基于標(biāo)簽的訪(fǎng)問(wèn)控制模型構(gòu)建方面,不少學(xué)者通過(guò)引入標(biāo)簽或?qū)傩詷?biāo)記的方式構(gòu)建訪(fǎng)問(wèn)控制模型。李鳳華等[6]提出通過(guò)給客體設(shè)置隱私標(biāo)簽用于對(duì)接收信息的節(jié)點(diǎn)進(jìn)行隱私保護(hù)和流轉(zhuǎn)控制,但文獻(xiàn)沒(méi)有給出形式化定義。王媛等[7]提出按照主體屬性實(shí)現(xiàn)訪(fǎng)問(wèn)者和角色間的映射,并根據(jù)客體標(biāo)簽實(shí)現(xiàn)角色和權(quán)限間的映射,支持個(gè)性化隱私偏好授權(quán),但該文獻(xiàn)存在模型復(fù)雜、決策評(píng)估效率低等問(wèn)題。Liu等[8]以標(biāo)記的形式將資源與訪(fǎng)問(wèn)控制列表關(guān)聯(lián),提出基于資源和屬性的訪(fǎng)問(wèn)控制模型,但該模型只有允許權(quán)限,導(dǎo)致靈活性低等。Li等[9]提出了一種矩陣結(jié)構(gòu),并建立了符合矩陣域特征的矩陣安全標(biāo)簽以及安全標(biāo)簽和必要約束的定義,該文獻(xiàn)中的安全標(biāo)簽相對(duì)比較復(fù)雜,不易于用戶(hù)理解和使用。Wang等[10]提出了一種基于安全標(biāo)簽的最小擴(kuò)散和跨域安全授權(quán)策略?;诎踩珮?biāo)簽屬性,通過(guò)引入多級(jí)約束機(jī)制,來(lái)實(shí)現(xiàn)跨域授權(quán)。
在策略冗余與沖突檢測(cè)方面,也有不少研究成果。戚湧等[3]采用有向無(wú)環(huán)圖的拓?fù)渑判蛴?jì)算規(guī)則合并優(yōu)先級(jí),按優(yōu)先級(jí)順序?yàn)槊總€(gè)規(guī)則構(gòu)建一棵空間區(qū)域選擇樹(shù),完成沖突消解,但該方法不適用于復(fù)雜策略情況。吳迎紅等[11]提出了基于集合求交的遞推算法,以權(quán)限賦值單元集合為單位提高策略沖突的計(jì)算粒度,但存在效率不高的問(wèn)題。Chen等[12]利用矩陣描述復(fù)雜策略,通過(guò)一致性檢查完成沖突檢測(cè)和消解,但存在效率不高、空間消耗大的問(wèn)題。江澤濤等[13]針對(duì)基于屬性的訪(fǎng)問(wèn)控制模型存在的靜態(tài)策略沖突及冗余問(wèn)題,提出了一種基于屬性集有序化及二進(jìn)制屏蔽碼的靜態(tài)策略沖突檢測(cè)算法,支持屬性的增加及策略的增加或刪除。但算法在規(guī)則數(shù)量較大時(shí)檢測(cè)效率較低。Liu等[14]通過(guò)補(bǔ)充缺失的屬性表達(dá)式,將隱式?jīng)_突規(guī)則轉(zhuǎn)換為顯式?jīng)_突規(guī)則,再對(duì)比所有規(guī)則實(shí)現(xiàn)對(duì)規(guī)則集中所有可能的沖突規(guī)則,但該檢測(cè)方法同樣存在規(guī)則數(shù)量較大時(shí)檢測(cè)效率較低的問(wèn)題。為提高訪(fǎng)問(wèn)控制策略冗余與沖突檢測(cè)效率,Chowdhary等[15]提出了一種新的面向?qū)ο蟮牟呗詻_突檢測(cè)解析框架,按照規(guī)則依賴(lài)關(guān)系創(chuàng)建依賴(lài)關(guān)系圖,提高策略沖突檢測(cè)效率,但該方法僅適用于防火墻、負(fù)載均衡器等虛擬網(wǎng)絡(luò)應(yīng)用。劉敖迪等[2]將沖突檢測(cè)問(wèn)題轉(zhuǎn)換為圖的連通性問(wèn)題,提出了一種基于策略生成圖模型的沖突檢測(cè)機(jī)制,但適用場(chǎng)景較為單一。
因此,在基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制機(jī)制中,如何提高復(fù)雜流轉(zhuǎn)控制策略冗余與沖突檢測(cè)的效率是亟待解決的問(wèn)題。
本節(jié)對(duì)基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)過(guò)程進(jìn)行分析,并對(duì)基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制機(jī)制進(jìn)行闡述。
在復(fù)雜網(wǎng)絡(luò)環(huán)境下,數(shù)據(jù)在流轉(zhuǎn)時(shí)往往涉及不同的信息系統(tǒng)、訪(fǎng)問(wèn)主體和訪(fǎng)問(wèn)環(huán)境,數(shù)據(jù)流轉(zhuǎn)控制需要根據(jù)具體應(yīng)用場(chǎng)景的安全需求設(shè)計(jì)對(duì)應(yīng)的控制策略?;跇?biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制機(jī)制通過(guò)為客體和主體設(shè)置不同標(biāo)簽來(lái)描述流轉(zhuǎn)控制策略,標(biāo)簽隨著客體在不同主體之間流轉(zhuǎn),實(shí)現(xiàn)客體在不同訪(fǎng)問(wèn)主體之間的靈活受控流轉(zhuǎn)?;跇?biāo)簽的數(shù)據(jù)流轉(zhuǎn)場(chǎng)景如圖1所示,具體流程如下。
Step 1 數(shù)據(jù)所有者(S,subject)1生成客體資源(O,object),根據(jù)安全需求為其設(shè)置標(biāo)簽OL1,該標(biāo)簽用于對(duì)后續(xù)接收客體的主體進(jìn)行約束控制。
Step 2S?1發(fā)送帶有標(biāo)簽OL?1的客體發(fā)送給后面的主體S(>2)。
Step 3 后面的主體S接收S?1發(fā)送的客體及其標(biāo)簽OL?1,并根據(jù)客體標(biāo)簽OL?1進(jìn)行授權(quán)控制。
Step 4 當(dāng)主體S存在變更標(biāo)簽的權(quán)限時(shí),根據(jù)新的安全需求生成標(biāo)簽OL',并由OL'和OL?1生成新的標(biāo)簽OL。
Step 5 如果主體S有轉(zhuǎn)發(fā)權(quán)限,則主體S可以將客體和更新后的標(biāo)簽OL發(fā)送給下一個(gè)主體S+1。
上述流轉(zhuǎn)過(guò)程中,當(dāng)所有者1在給客體設(shè)置標(biāo)簽OL1時(shí),OL1中會(huì)包含多個(gè)不同的安全需求,不同安全需求之間會(huì)存在冗余或者沖突。除此之外,當(dāng)主體S根據(jù)新的安全需求生成新的標(biāo)簽OL'時(shí),一方面,如果S設(shè)定的新的安全需求,在已有的標(biāo)簽OL?1中已經(jīng)描述,那么根據(jù)新的安全需求生成的標(biāo)簽OL'與OL?1可能存在冗余,導(dǎo)致基于OL'和OL?1生成的標(biāo)簽OL表達(dá)的冗余信息越來(lái)越多,這樣不僅增加了通信量,還大大降低了數(shù)據(jù)流轉(zhuǎn)控制的效率;另一方面,如果S設(shè)定的新的安全需求與已有的標(biāo)簽OL?1中的安全意圖相反,那么根據(jù)新的安全需求生成的標(biāo)簽OL'與OL?1存在沖突,基于OL'和OL?1生成的標(biāo)簽OL存在沖突,導(dǎo)致基于標(biāo)簽OL將得不到有效流轉(zhuǎn)控制結(jié)果。因此,如何實(shí)現(xiàn)標(biāo)簽的冗余與沖突檢測(cè),如何提高標(biāo)簽冗余與檢測(cè)的效率,繼而實(shí)現(xiàn)數(shù)據(jù)受控流轉(zhuǎn)以及流轉(zhuǎn)控制的效率,是基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制機(jī)制中急需解決的問(wèn)題。本文從標(biāo)簽描述入手,提出基于原子操作的標(biāo)簽描述方法,并基于原子標(biāo)簽的描述方法,通過(guò)分析原子標(biāo)簽中不同要素之間的相關(guān)性,提出基于標(biāo)簽的策略冗余與沖突檢測(cè)方法,實(shí)現(xiàn)對(duì)客體標(biāo)簽進(jìn)行冗余與沖突檢測(cè)。
圖1 基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)場(chǎng)景
Figure 1 Label-based data flow scene
標(biāo)簽描述方法是影響基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制效率、冗余與沖突檢測(cè)效率的關(guān)鍵?;跇?biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制機(jī)制表示為六元組<,SL,,OL, OP,>,表示主體,表示客體,OP表示操作,表示權(quán)限,主體標(biāo)簽(SL,subject label)和客體標(biāo)簽(OL,object label)用來(lái)表示流轉(zhuǎn)控制策略,也就是說(shuō)通過(guò)主體標(biāo)簽和客體標(biāo)簽描述客體流轉(zhuǎn)時(shí),必須滿(mǎn)足的條件。在設(shè)計(jì)標(biāo)簽時(shí),充分考慮了主體、客體、環(huán)境等屬性,在提高標(biāo)簽描述的豐富性和粒度的同時(shí),盡量降低標(biāo)簽復(fù)雜度。
主體標(biāo)簽:用于描述訪(fǎng)問(wèn)主體的屬性(SA,subject attribute),形式化描述為SL={SA}。
客體標(biāo)簽:指所有者或者訪(fǎng)問(wèn)主體為客體設(shè)置的標(biāo)簽,用于描述對(duì)客體進(jìn)行某種操作必須滿(mǎn)足的條件或者在某種條件下禁止對(duì)客體進(jìn)行某種操作??腕w標(biāo)簽包括標(biāo)簽類(lèi)型、操作、主體屬性和環(huán)境屬性。為提高流轉(zhuǎn)控制評(píng)估以及冗余與沖突檢測(cè)效率,客體標(biāo)簽分為多個(gè)原子標(biāo)簽的邏輯組合。原子標(biāo)簽是最小的標(biāo)簽,原子標(biāo)簽中包含一種類(lèi)型、一個(gè)操作以及最小屬性集合。用tag表示客體標(biāo)簽OL中第個(gè)原子標(biāo)簽,tag=
OL={tag1,…,tag}={
將客體標(biāo)簽表示為多個(gè)原子標(biāo)簽的邏輯組合,即使沒(méi)有很多安全知識(shí)的普通用戶(hù)也可以根據(jù)需求設(shè)置針對(duì)客體進(jìn)行某種操作時(shí)必須滿(mǎn)足的主體屬性、環(huán)境屬性,或者如果滿(mǎn)足某些主體屬性、環(huán)境屬性就不能對(duì)客體進(jìn)行某種操作,大大降低了描述的難度。同時(shí),原子標(biāo)簽只包含一種操作以及最小屬性集合,無(wú)論控制評(píng)估還是策略冗余與沖突檢測(cè)都相對(duì)容易些。
基于上述基于原子操作的標(biāo)簽描述方法,本節(jié)提出基于標(biāo)簽的策略冗余與沖突檢測(cè)方法。該檢測(cè)方法通過(guò)分析客體標(biāo)簽中原子標(biāo)簽不同要素的關(guān)系實(shí)現(xiàn)。為降低檢測(cè)難度、提高檢測(cè)效率,從客體標(biāo)簽包含的原子標(biāo)簽入手,基于不同原子標(biāo)簽中的操作關(guān)系進(jìn)行檢測(cè),主要分為以下幾種情況。對(duì)于包含相同操作的不同原子標(biāo)簽,通過(guò)分析不同原子標(biāo)簽中主體屬性、環(huán)境屬性以及規(guī)則類(lèi)型之間關(guān)系進(jìn)行檢測(cè)。對(duì)于包含不同操作的原子標(biāo)簽,如果不同操作之間沒(méi)有關(guān)系,那么不存在冗余與沖突,如果不同操作之間存在偏序關(guān)系,則通過(guò)分析不同原子標(biāo)簽中操作的偏序關(guān)系、主體屬性、環(huán)境屬性以及規(guī)則類(lèi)型之間的關(guān)系進(jìn)行檢測(cè)。下面詳細(xì)介紹如何通過(guò)分析集合相關(guān)性進(jìn)行策略冗余與沖突檢測(cè)。
定義1 策略冗余:如果兩個(gè)客體標(biāo)簽表示的策略有重復(fù)或部分重復(fù),那么這兩個(gè)客體標(biāo)簽表示的策略存在冗余。
例如,以下兩個(gè)原子標(biāo)簽,tag1=
定義2 策略沖突:如果一個(gè)訪(fǎng)問(wèn)請(qǐng)求根據(jù)不同客體標(biāo)簽得到相反的授權(quán)結(jié)果,那么這兩個(gè)客體標(biāo)簽表示的策略存在沖突。
例如,以下兩個(gè)原子標(biāo)簽,tag1=
在對(duì)不同原子標(biāo)簽冗余與沖突檢測(cè)時(shí),從原子標(biāo)簽包含操作出發(fā),分成相同操作和不同操作進(jìn)行檢測(cè),通過(guò)分析不同原子標(biāo)簽中操作間偏序關(guān)系、主體屬性、環(huán)境屬性以及規(guī)則類(lèi)型之間關(guān)系進(jìn)行冗余與沖突檢測(cè)。下面分別詳細(xì)介紹同操作冗余與沖突檢測(cè)、不同操作冗余與沖突檢測(cè)方法。
(1)操作偏序關(guān)系
本文將數(shù)據(jù)流轉(zhuǎn)操作分為兩類(lèi):傳播操作和運(yùn)算操作。其中,傳播操作包括發(fā)送(send)、轉(zhuǎn)發(fā)(forward)、接收(receive);運(yùn)算操作包括讀(read)、寫(xiě)(write)、保存(save)、刪除(delete)、變更標(biāo)簽(alter label)、加密(encrypt)、解密(decrypt)、簽名(sign)、驗(yàn)簽(verify signature)、計(jì)算摘要(hash)等。不同操作之間具有一定的偏序關(guān)系。
(2)集合關(guān)系
兩個(gè)集合之間的相關(guān)關(guān)系可以分為以下5種形式(不相交、相等、A包含B、B包含A、相交),如圖2所示。
圖2 集合之間的相關(guān)關(guān)系
Figure 2 The correlation of sets
原子標(biāo)簽的冗余與沖突檢測(cè)基于原子標(biāo)簽中操作的關(guān)系,以及主體屬性和環(huán)境屬性不同集合間相關(guān)關(guān)系進(jìn)行。本文將冗余與沖突的檢測(cè)結(jié)果細(xì)分為6種(完全沖突、部分沖突、無(wú)沖突;完全冗余、部分冗余、無(wú)冗余),并采用原子標(biāo)簽冗余列表(LR,list_redundancies)和原子標(biāo)簽沖突列表(LC,list_conflicts)來(lái)表示兩個(gè)客體標(biāo)簽中原子標(biāo)簽的檢測(cè)結(jié)果。
原子標(biāo)簽冗余列表:指存在策略冗余的原子標(biāo)簽列表,包括發(fā)生冗余的原子標(biāo)簽、冗余的屬性集合以及冗余檢測(cè)結(jié)果result,形式化描述為L(zhǎng)R = {…, listredundancyj, …}={…,
原子標(biāo)簽沖突列表:指存在沖突的原子標(biāo)簽列表,包括發(fā)生沖突的原子標(biāo)簽、沖突的屬性集合、沖突檢測(cè)結(jié)果result,形式化描述為L(zhǎng)C = {…,list_conflict,…}={…,
對(duì)于包含相同操作的原子標(biāo)簽,冗余與沖突檢測(cè)通過(guò)分析原子標(biāo)簽中的主體屬性集合SA、環(huán)境屬性集合CA之間的相關(guān)性及規(guī)則類(lèi)型進(jìn)行。
對(duì)于tag=
規(guī)則1 若環(huán)境屬性CA=CA,根據(jù)主體屬性集合相關(guān)性進(jìn)行冗余與沖突檢測(cè)。
2) 當(dāng)兩個(gè)原子標(biāo)簽主體屬性集合相等時(shí),即SA=SA,如果規(guī)則類(lèi)型type=type,則原子標(biāo)簽tag和tag完全冗余且無(wú)沖突,如果規(guī)則類(lèi)型type≠type,則原子標(biāo)簽tag和tag無(wú)冗余但完全沖突。
規(guī)則2 若環(huán)境屬性CA≠CA,按環(huán)境屬性集合相關(guān)性分情況進(jìn)行冗余與沖突檢測(cè)。
基于規(guī)則1和規(guī)則2,本文提出了同操作間策略冗余沖突檢測(cè)算法,如算法1所示。若兩個(gè)原子標(biāo)簽的環(huán)境屬性相同,則基于原子標(biāo)簽間主體屬性集合相關(guān)性、規(guī)則類(lèi)型進(jìn)行冗余與沖突檢測(cè);若兩個(gè)原子標(biāo)簽的環(huán)境屬性不同,則根據(jù)原子標(biāo)簽中的環(huán)境屬性集合相關(guān)性分別討論,若環(huán)境屬性集合不相交,則這兩個(gè)原子標(biāo)簽沒(méi)有關(guān)系,既不冗余也不沖突;若環(huán)境屬性集合為包含和相交關(guān)系,則根據(jù)兩個(gè)原子標(biāo)簽環(huán)境屬性的關(guān)系,將原子標(biāo)簽再細(xì)分成環(huán)境屬性相同和不相交的兩個(gè)原子標(biāo)簽,環(huán)境屬性不相交的原子標(biāo)簽既不冗余也不沖突,環(huán)境屬性相同的原子標(biāo)簽按照規(guī)則1進(jìn)行分析。
算法1 同操作間策略冗余沖突檢測(cè)
輸入 同操作的原子標(biāo)簽tag和tag(op= op)
輸出 List_redundancies_A,原子標(biāo)簽冗余列表或者List_conflicts_A,原子標(biāo)簽沖突列表
1) if CA=CA//兩個(gè)標(biāo)簽的環(huán)境屬性相同
2) if SA=SA//兩個(gè)標(biāo)簽的主體屬性相同
3) if type=type//兩個(gè)標(biāo)簽類(lèi)型相同,標(biāo)簽完全冗余
4) list_redundancy_A=
//兩個(gè)標(biāo)簽類(lèi)型不同,標(biāo)簽完全沖突
5) else list_conflict_A=
//環(huán)境屬性相同,主體屬性為包含關(guān)系
//如果類(lèi)型相同,標(biāo)簽tag相對(duì)tag完全冗余,標(biāo)簽tag相對(duì)tag部分冗余
7) if type=type
8) list_redundancy_A=
//如果類(lèi)型不同,標(biāo)簽tag相對(duì)tag完全沖突,標(biāo)簽tag相對(duì)tag部分沖突
9) else list_conflict_A=
//環(huán)境屬性相同,主體屬性為相交關(guān)系
//如果類(lèi)型相同,部分冗余
11) if type=type
12) list_redundancy_A=
//如果類(lèi)型不同,部分沖突
13) else list_conflict_A=
//如果環(huán)境屬性為包含關(guān)系,將標(biāo)簽拆分成環(huán)境屬性相同部分和不同部分分別進(jìn)行判斷
15) tag= tag1+tag2=
//如果環(huán)境屬性為相交關(guān)系,同樣將標(biāo)簽拆分成環(huán)境屬性相同部分和不同部分進(jìn)行判斷
假設(shè)針對(duì)同一客體,現(xiàn)有3個(gè)原子標(biāo)簽tag1=
對(duì)于包含不同操作的原子標(biāo)簽,如果兩個(gè)操作間沒(méi)有偏序關(guān)系,那么這兩個(gè)原子標(biāo)簽不存在冗余和沖突。如果不同操作存在偏序關(guān)系,那么這兩個(gè)原子標(biāo)簽可能存在冗余或沖突。因此,在對(duì)包含不同操作原子標(biāo)簽進(jìn)行冗余與沖突檢測(cè)時(shí),只需要檢測(cè)具有偏序關(guān)系的不同操作的原子標(biāo)簽之間的關(guān)系。下面詳細(xì)介紹具有偏序關(guān)系的不同操作的原子標(biāo)簽冗余與沖突檢測(cè)方法。
規(guī)則3 若環(huán)境屬性CA=CA,則根據(jù)主體屬性集合相關(guān)性進(jìn)行冗余與沖突檢測(cè)。
2) 當(dāng)兩個(gè)原子標(biāo)簽主體屬性集合相等時(shí),即SA=SA,如果規(guī)則類(lèi)型type=type,則tag對(duì)于tag部分冗余且無(wú)沖突,原子標(biāo)簽tag對(duì)于tag完全冗余;如果規(guī)則類(lèi)型type≠type,當(dāng)type=且type=時(shí),標(biāo)簽tag和tag完全沖突,當(dāng)type=且type=時(shí),tag和tag無(wú)冗余和沖突。
若環(huán)境屬性CA≠CA,則按環(huán)境屬性集合相關(guān)性分情況進(jìn)行冗余與沖突檢測(cè)。此時(shí)參考規(guī)則2,依據(jù)環(huán)境屬性的關(guān)系拆分成環(huán)境屬性相同部分和不同部分,對(duì)于環(huán)境屬性相同部分按照規(guī)則3進(jìn)行檢測(cè),對(duì)于環(huán)境屬性不同部分,兩個(gè)標(biāo)簽無(wú)冗余與沖突。
基于規(guī)則3和規(guī)則2,本文提出了偏序操作間策略冗余沖突檢測(cè)算法,如算法2所示。與算法1基本思想類(lèi)似,同樣按照環(huán)境屬性相同和環(huán)境屬性不同分別展開(kāi)檢測(cè)。若兩個(gè)原子標(biāo)簽的環(huán)境屬性相同,基于原子標(biāo)簽間主體屬性集合相關(guān)、規(guī)則類(lèi)型以及原子標(biāo)簽操作間的偏序關(guān)系進(jìn)行冗余與沖突檢測(cè);若兩個(gè)原子標(biāo)簽的環(huán)境屬性不同,根據(jù)原子標(biāo)簽中的環(huán)境屬性集合相關(guān)性分別討論,如果環(huán)境屬性集合不相交,那么這兩個(gè)原子標(biāo)簽沒(méi)有關(guān)系,既不冗余也不沖突;如果環(huán)境屬性集合為包含和相交關(guān)系,那么根據(jù)兩個(gè)原子標(biāo)簽環(huán)境屬性的關(guān)系,將原子標(biāo)簽再細(xì)分成環(huán)境屬性相同和不相交的兩個(gè)原子標(biāo)簽,環(huán)境屬性不相交的原子標(biāo)簽既不冗余也不沖突,環(huán)境屬性相同的原子標(biāo)簽按照規(guī)則3進(jìn)行分析。
算法2 偏序操作間策略冗余與沖突檢測(cè)
輸出 List_redundancies_A,原子標(biāo)簽冗余列表;List_conflicts_A,原子標(biāo)簽沖突列表
1) if CA=CA//兩個(gè)標(biāo)簽的環(huán)境屬性相同
2) if SA=SA//兩個(gè)標(biāo)簽的主體屬性相同
3) if type=type
//如果類(lèi)型相同,標(biāo)簽tag相對(duì)tag部分冗余,標(biāo)簽tag相對(duì)tag完全冗余
4) list_redundancy_A=
//如果類(lèi)型不同,tag類(lèi)型為,tag類(lèi)型為,完全沖突
5) else if (type=Y) && (type=)
6) list_conflict_B=
//環(huán)境屬性相同,主體屬性為包含關(guān)系
//如果類(lèi)型相同,標(biāo)簽tag對(duì)于tag部分冗余但無(wú)沖突,tag對(duì)于tag部分冗余但無(wú)沖突
8) if type=type
9) list_redundancy_A=
//如果類(lèi)型不同,tag類(lèi)型為,tag類(lèi)型為,完全沖突
10) else if (type=) && (type=)
11) list_conflict_B=
//環(huán)境屬性相同,主體屬性為相交關(guān)系
//如果類(lèi)型相同,部分冗余
13) if type=type
14) list_redundancy_A=
//如果類(lèi)型不同,tag類(lèi)型為,tag類(lèi)型為,部分沖突
15) if (type=) && (type=)
16) list_conflict_B=
//如果環(huán)境屬性為包含關(guān)系,將標(biāo)簽拆分成環(huán)境屬性相同部分和不同部分,分別進(jìn)行判斷
18) tag= tag1+tag2=
//如果環(huán)境屬性為相交關(guān)系,同樣將標(biāo)簽拆分成環(huán)境屬性相同部分和不同部分進(jìn)行判斷
20) tag= tag1+tag2=
21) tag= tag1+tag2=
基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制機(jī)制描述了各種不同的流轉(zhuǎn)控制策略??腕w標(biāo)簽冗余與沖突消解基于客體標(biāo)簽包括的原子標(biāo)簽的檢測(cè)結(jié)果、原子標(biāo)簽的優(yōu)先級(jí)以及不同原子標(biāo)簽的邏輯關(guān)系實(shí)現(xiàn)。在實(shí)際應(yīng)用過(guò)程中,原子標(biāo)簽的優(yōu)先級(jí)可以根據(jù)原子標(biāo)簽設(shè)置的順序、設(shè)置原子標(biāo)簽主體的優(yōu)先級(jí)確定。例如,按照主體的等級(jí)確定原子標(biāo)簽的優(yōu)先級(jí),主體等級(jí)高,其設(shè)置的原子標(biāo)簽對(duì)應(yīng)的優(yōu)先級(jí)也相對(duì)比較高。原子標(biāo)簽的邏輯關(guān)系依據(jù)不同的安全需求由主體進(jìn)行設(shè)置。
本節(jié)從理論和實(shí)驗(yàn)兩個(gè)角度對(duì)LBDFC策略冗余與沖突檢測(cè)方法的性能進(jìn)行分析。
本文提出的基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制策略由客體標(biāo)簽描述,客體標(biāo)簽通過(guò)原子標(biāo)簽的邏輯組合生成。在對(duì)客體標(biāo)簽進(jìn)行冗余與沖突檢測(cè)時(shí),首先分析客體標(biāo)簽中不同原子標(biāo)簽是否存在冗余與沖突,基于原子標(biāo)簽的檢測(cè)結(jié)果以及原子標(biāo)簽的邏輯關(guān)系,得到不同客體標(biāo)簽是否存在冗余與沖突。對(duì)不同原子標(biāo)簽進(jìn)行檢測(cè)時(shí),從原子標(biāo)簽包含的操作出發(fā),按照相同操作和不同操作展開(kāi),通過(guò)分析不同原子標(biāo)簽中操作間的偏序關(guān)系、主體屬性、環(huán)境屬性以及規(guī)則類(lèi)型之間的關(guān)系進(jìn)行冗余與沖突檢測(cè),并且將屬性相關(guān)性分析歸結(jié)為數(shù)學(xué)中的集合間關(guān)系判定問(wèn)題,有效地降低了檢測(cè)難度。本文提出的策略冗余與沖突檢測(cè)最終歸結(jié)為判斷集合間關(guān)系這種簡(jiǎn)單的數(shù)學(xué)問(wèn)題,大大降低了策略冗余與沖突檢測(cè)的復(fù)雜度。
基于標(biāo)簽的策略冗余與沖突檢測(cè)主要的時(shí)間消耗在于原子標(biāo)簽的檢測(cè)。假設(shè)客體標(biāo)簽OL1和OL2分別包含1和2個(gè)原子標(biāo)簽,要分析OL1和OL2是否存在冗余與沖突,首先分析OL1中的1個(gè)原子標(biāo)簽和OL2中的2個(gè)原子標(biāo)簽是否存在冗余與沖突。最簡(jiǎn)單的情況是,OL1中的1個(gè)原子標(biāo)簽包含的操作和OL2中的2個(gè)原子標(biāo)簽包含的操作不相同也不存在偏序關(guān)系,那么原子標(biāo)簽不存在冗余與沖突,客體標(biāo)簽OL1和OL2也不存在冗余與沖突。最復(fù)雜的情況是,OL1中的原子標(biāo)簽與OL2中的原子標(biāo)簽包含的操作,要么相同要么具有偏序關(guān)系,需要將OL1中的1個(gè)原子標(biāo)簽與OL2中的2個(gè)原子標(biāo)簽一一進(jìn)行檢測(cè)分析,也就是要做(12)/2次檢測(cè)。原子標(biāo)簽的檢測(cè)調(diào)用算法1或算法2,算法1或算法2從原子標(biāo)簽中包含的主體屬性、環(huán)境屬性以及規(guī)則類(lèi)型的關(guān)系進(jìn)行分析,也就是說(shuō),進(jìn)行一次原子標(biāo)簽冗余與沖突檢測(cè),要進(jìn)行3次集合關(guān)系的分析。根據(jù)上面的分析,客體標(biāo)簽OL1和OL2冗余與沖突檢測(cè)最復(fù)雜的情況是進(jìn)行1.512次集合關(guān)系的分析。
基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制機(jī)制通過(guò)標(biāo)簽來(lái)描述流轉(zhuǎn)控制需求,標(biāo)簽具有輕量級(jí)的特點(diǎn),冗余與沖突檢測(cè)的性能相比其他策略描述方法具有明顯優(yōu)勢(shì)。為進(jìn)一步驗(yàn)證本文提出的標(biāo)簽描述方法以及檢測(cè)方法的性能優(yōu)勢(shì),下面通過(guò)實(shí)驗(yàn)將本文方法與基于標(biāo)簽的訪(fǎng)問(wèn)控制(LBAC,label based access control)策略的冗余沖突檢測(cè)性能進(jìn)行對(duì)比分析。其中,LBAC通過(guò)XACML 語(yǔ)言描述訪(fǎng)問(wèn)控制策略,本文通過(guò)原子標(biāo)簽的方式描述控制策略。實(shí)驗(yàn)時(shí),兩類(lèi)標(biāo)簽表達(dá)相同的安全需求,通過(guò)調(diào)整原子標(biāo)簽數(shù)量、原子標(biāo)簽復(fù)雜度進(jìn)行分析和對(duì)比。本文在Windows 10操作系統(tǒng)上利用C語(yǔ)言編寫(xiě)測(cè)試代碼進(jìn)行實(shí)驗(yàn),硬件環(huán)境為Intel Core i5-6200U CPU 2.40 GHz,8 GB RAM。實(shí)驗(yàn)分別測(cè)試了同操作、具有偏序關(guān)系的不同操作原子標(biāo)簽冗余沖突檢測(cè)性能,對(duì)檢測(cè)方法性能進(jìn)行驗(yàn)證。
下面通過(guò)實(shí)驗(yàn)測(cè)試原子標(biāo)簽的數(shù)量和標(biāo)簽復(fù)雜度對(duì)策略冗余與沖突檢測(cè)效率的影響。原子標(biāo)簽復(fù)雜度主要受屬性類(lèi)型和屬性值影響,下面實(shí)驗(yàn)以標(biāo)簽中屬性類(lèi)型的數(shù)量表示標(biāo)簽的復(fù)雜度,記為λ。為便于對(duì)比,在實(shí)驗(yàn)時(shí)假設(shè)環(huán)境屬性類(lèi)型的數(shù)量不變,λ的變化體現(xiàn)在主體屬性類(lèi)型的數(shù)量上,原子標(biāo)簽總數(shù)記為Num。實(shí)驗(yàn)1測(cè)試同操作原子標(biāo)簽的冗余與沖突檢測(cè)方法的性能。實(shí)驗(yàn)采取控制變量法進(jìn)行兩組實(shí)驗(yàn)。第一組實(shí)驗(yàn)在保證原子標(biāo)簽復(fù)雜度不變的條件下,也就是在原子標(biāo)簽包含的屬性類(lèi)型數(shù)量不變的情況下,通過(guò)改變?cè)訕?biāo)簽的數(shù)量,將LBAC的策略冗余與沖突檢測(cè)方法的性能與本文所提方法進(jìn)行對(duì)比,分析原子標(biāo)簽數(shù)量對(duì)冗余與沖突檢測(cè)方法性能的影響。第二組實(shí)驗(yàn)在原子標(biāo)簽數(shù)量一定的條件下,通過(guò)調(diào)整原子標(biāo)簽中屬性的復(fù)雜度進(jìn)行,也就是通過(guò)調(diào)整原子標(biāo)簽類(lèi)型的數(shù)量進(jìn)行,將本文所提方法與LBAC的策略冗余與沖突檢測(cè)方法的性能進(jìn)行對(duì)比,分析原子標(biāo)簽復(fù)雜度對(duì)冗余與沖突檢測(cè)性能的影響。
實(shí)驗(yàn)1測(cè)試同操作下標(biāo)簽數(shù)量對(duì)冗余與沖突檢測(cè)效率的影響。第一組實(shí)驗(yàn)取原子標(biāo)簽復(fù)雜度λ=1不變,也就是說(shuō)主體屬性中只包含一種類(lèi)型,對(duì)原子標(biāo)簽總數(shù)Num=50、100、150、200分別進(jìn)行測(cè)試,分析標(biāo)簽中屬性的數(shù)量對(duì)冗余與沖突檢測(cè)效率的影響。第二組實(shí)驗(yàn)取原子標(biāo)簽總數(shù)Num=50不變,分別對(duì)復(fù)雜度=1、2、3、4、5進(jìn)行測(cè)試,也就是說(shuō)主體屬性中分別包含1、2、3、4、5種類(lèi)型的屬性。第二組實(shí)驗(yàn)測(cè)試分析標(biāo)簽中屬性類(lèi)型數(shù)量對(duì)冗余與沖突檢測(cè)效率的影響。實(shí)驗(yàn)結(jié)果如圖3和圖4所示。
實(shí)驗(yàn)2的思路與實(shí)驗(yàn)1基本相同,區(qū)別在于實(shí)驗(yàn)2中原子標(biāo)簽的操作不同,不同操作之間存在偏序關(guān)系。實(shí)驗(yàn)結(jié)果如圖5和圖6所示。
圖3 同操作原子標(biāo)簽冗余沖突檢測(cè)時(shí)間與原子標(biāo)簽總數(shù)間的關(guān)系
Figure 3 The relationship between the redundant conflict detection time and the number of atomic tags containing same operation
圖4 同操作原子標(biāo)簽冗余沖突檢測(cè)時(shí)間與標(biāo)簽復(fù)雜度間的關(guān)系
Figure 4 The relationship between the redundant conflict detection time and the complexity of atomic tags containing same
圖5 不同操作原子標(biāo)簽冗余沖突檢測(cè)時(shí)間與原子標(biāo)簽總數(shù)間的關(guān)系
Figure 5 The relationship between the redundant conflict detection time and the number of atomic tags containing different operations
圖6 不同操作原子標(biāo)簽冗余沖突檢測(cè)時(shí)間與標(biāo)簽復(fù)雜度間的關(guān)系
從實(shí)驗(yàn)1和實(shí)驗(yàn)2的結(jié)果來(lái)看,本文提出的基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制策略冗余與沖突檢測(cè)方法消耗的時(shí)間與原子標(biāo)簽數(shù)量和復(fù)雜度呈線(xiàn)性關(guān)系,消耗時(shí)間遠(yuǎn)低于LBAC策略冗余與沖突檢測(cè)方法,而且隨著標(biāo)簽復(fù)雜度和數(shù)量增加,這種優(yōu)勢(shì)越發(fā)明顯。實(shí)驗(yàn)1和實(shí)驗(yàn)2測(cè)試的是最復(fù)雜的情況,所有原子標(biāo)簽包含的操作要么相同,要么具有偏序關(guān)系,實(shí)際中檢測(cè)的性能會(huì)比實(shí)驗(yàn)高。這種性能優(yōu)勢(shì)最關(guān)鍵在于LBDFC將客體標(biāo)簽劃分為單一操作的原子標(biāo)簽,通過(guò)集合相關(guān)性對(duì)原子標(biāo)簽進(jìn)行冗余與沖突檢測(cè)。而其他LBAC策略冗余與沖突檢測(cè)方法,標(biāo)簽描述的復(fù)雜度與原子標(biāo)簽不是同一個(gè)數(shù)量級(jí),性能會(huì)遠(yuǎn)低于LBDFC策略冗余與沖突檢測(cè)方法。驗(yàn)證了原子標(biāo)簽數(shù)量和復(fù)雜度對(duì)檢測(cè)性能的影響。未來(lái)將針對(duì)物聯(lián)網(wǎng)、社交網(wǎng)絡(luò)等不同場(chǎng)景下的不同安全需求對(duì)本文方法進(jìn)行仿真驗(yàn)證。
基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制機(jī)制通過(guò)主客體標(biāo)簽實(shí)現(xiàn)數(shù)據(jù)流轉(zhuǎn)控制,具有輕量級(jí)、延伸控制的優(yōu)勢(shì),受到廣泛關(guān)注。在客體流轉(zhuǎn)中,標(biāo)簽修改、增加不可避免,不同標(biāo)簽之間不可避免地出現(xiàn)冗余與沖突,如何快速高效檢測(cè)不同標(biāo)簽之間是否存在冗余與沖突,是基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制中急需解決的問(wèn)題。針對(duì)上述問(wèn)題,本文從標(biāo)簽描述方法入手,提出了基于原子操作的標(biāo)簽描述方法。該方法基于操作生成多個(gè)原子標(biāo)簽,原子標(biāo)簽用于描述最小的安全需求,客體標(biāo)簽是多個(gè)原子標(biāo)簽的邏輯組合,解決了標(biāo)簽描述簡(jiǎn)潔性和豐富性問(wèn)題。在策略冗余與沖突檢測(cè)時(shí),基于原子標(biāo)簽檢測(cè)結(jié)果和邏輯關(guān)系實(shí)現(xiàn)對(duì)客體標(biāo)簽的檢測(cè)。原子標(biāo)簽分為同操作和不同操作兩類(lèi),通過(guò)分析原子標(biāo)簽中各要素的關(guān)系對(duì)原子標(biāo)簽進(jìn)行冗余與沖突檢測(cè),提高了檢測(cè)效率。從理論和實(shí)驗(yàn)兩個(gè)角度對(duì)本文方法進(jìn)行分析,驗(yàn)證了原子標(biāo)簽數(shù)量和復(fù)雜度對(duì)檢測(cè)性能的影響。驗(yàn)證了原子標(biāo)簽數(shù)量和復(fù)雜度對(duì)檢測(cè)性能的影響。未來(lái)將針對(duì)物聯(lián)網(wǎng)、社交網(wǎng)絡(luò)等不同場(chǎng)景下的不同安全需求對(duì)本文方法進(jìn)行仿真驗(yàn)證。
[1] XIE R N, FAN X N, ZHU J Y, et al. Research on label based data flow control mechanism[C]//2021 IEEE Sixth International Conference on Data Science in Cyberspace (DSC). 2021: 233-239.
[2] 劉敖迪, 王娜, 劉磊. 面向云服務(wù)組合的策略沖突檢測(cè)機(jī)制[J]. 計(jì)算機(jī)應(yīng)用研究, 2017, 34(4): 1145-1150.
LIU A D, WANG N, LIU L. Policy conflict detection mechanism for cloud service composition[J]. Computer Application Research, 2017, 34(4): 1145-1150.
[3] 戚湧, 陳俊, 李千目. 基于冗余消除和屬性數(shù)值化的XACML策略?xún)?yōu)化方法[J]. 計(jì)算機(jī)科學(xué), 2016, 43(2): 163-168.
QI Y, CHEN J, LI Q M. XACML policy optimization method based on redundancy elimination and attribute numeralization[J]. Computer Science, 2016, 43(2): 163-168.
[4] 吳澤智, 陳性元, 楊智, 等. 信息流控制研究進(jìn)展[J]. 軟件學(xué)報(bào), 2017, 28(1): 135-159.
WU Z Z, CHEN X Y, YANG Z, et al. Research progress on information flow control[J]. Journal of Software, 2017, 28(1): 135-159.
[5] 諸天逸, 李鳳華, 成林, 等. 跨域訪(fǎng)問(wèn)控制技術(shù)研究[J]. 網(wǎng)絡(luò)與信息安全學(xué)報(bào), 2021, 7(1): 20-27.
ZHU T Y, LI F H, CHENG L, et al. Research on cross-domain access control technology[J]. Journal of Network and Information Security, 2021, 7(1): 20-27.
[6] 李鳳華, 謝絨娜, 李暉, 等. 一種信息流轉(zhuǎn)方法、裝置及系統(tǒng): 中國(guó), CN109347845B[P]. 2020-08-07.
LI F H, XIE R N, LI H, et al. An information transfer method, device and system: China, CN109347845B[P]. 2020-08-07.
[7] 王媛, 孫宇清, 馬樂(lè)樂(lè). 面向社會(huì)網(wǎng)絡(luò)的個(gè)性化隱私策略定義與實(shí)施[J]. 通信學(xué)報(bào), 2012, 33(S1): 239-249.
WANG Y, SUN Y Q, MA L L. Definition and implementation of personalized privacy policies for social networks[J]. Journal on Communication, 2012, 33(S1): 239-249.
[8] LIU G, FANG L, WANG Q, et al. Resource and attribute based access control model for system with huge amounts of resources[C]//International Conference on Green, Pervasive and Cloud Computing. 2018.
[9] LI L Q, HAI L. An access control model based on matrix domain security label[J]. IOP Conference Series: Materials Science and Engineering, 2021, 1043(4).
[10] WANG Y T. A cross-domain authorization access control model based on security label attribute[J]. Journal of Physics: Conference Series, 2021, 1955(1).
[11] 吳迎紅, 黃皓, 周靖康, 等. 分布式應(yīng)用訪(fǎng)問(wèn)控制策略精化沖突分析[J]. 計(jì)算機(jī)應(yīng)用, 2014, 34(2): 421-427.
WU Y H, HUANG H, ZHOU J K, et al. Refinement conflict analysis of distributed application access control policy[J]. Computer Applications, 2014, 34(2): 421-427.
[12] CHEN M, HONG J, XIAO Y, et al. A method of conflict detection and resolution for security policy based on matrix description[C]//2017 7th IEEE International Conference on Electronics Information and Emergency Communication(ICEIEC). 2017: 548-551.
[13] 江澤濤, 謝朕, 王琦, 等. 一種基于屏蔽碼的ABAC靜態(tài)策略沖突與冗余檢測(cè)算法[J]. 計(jì)算機(jī)科學(xué), 2018, 45(2): 197-202.
JIANG Z T, XIE Z, WANG Q, et al. An ABAC static policy conflict and redundancy detection algorithm based on masking code[J]. Computer Science, 2018, 45(2): 197-202.
[14] LIU G, PEIW, TIAN Y, et al. A novel conflict detection method for ABAC security policies[J]. Journal of Industrial Information Integration, 2021, 22: 100200.
[15] CHOWDHARY A, SABUR A, HUANG D, et al. Object oriented policy conflict checking framework in cloud networks (OOPC)[J]. IEEE Transactions on Dependable and Secure Computing, 2021.
Redundancy and conflict detection method for label-based data flow control policy
XIE Rongna1, FAN Xiaonan2, LI Suzhe2,HUANG Yuxin2, SHI Guozhen1
1. Department of Cryptography and Science Technology, Beijing Electronic Science and Technology Institute, Beijing 100070, China 2. Department of Cyberspace Security, Beijing Electronic Science and Technology Institute, Beijing 100070, China
To address the challenge of redundancy and conflict detection in the label-based data flow control mechanism, a label description method based on atomic operations has been proposed. When the label is changed, there is unavoidable redundancy or conflict between the new label and the existing label. How to carry out redundancy and conflict detection is an urgent problem in the label-based data flow control mechanism. To address the above problem, a label description method was proposed based on atomic operation. The object label was generated by the logical combination of multiple atomic tags, and the atomic tag was used to describe the minimum security requirement. The above label description method realized the simplicity and richness of label description. To enhance the detection efficiency and reduce the difficulty of redundancy and conflict detection, a method based on the correlation of sets in labels was introduced. Moreover, based on the detection results of atomic tags and their logical relationships, redundancy and conflict detection of object labels was carried out, further improving the overall detection efficiency. Redundancy and conflict detection of atomic tags was based on the relationships between the operations contained in different atomic tags. If different atomic tags contained the same operation, the detection was performed by analyzing the relationship between subject attributes, environmental attributes, and rule types in the atomic tags. On the other hand, if different atomic tags contained different operations without any relationship between them, there was no redundancy or conflict. If there was a partial order relationship between the operations in the atomic tags, the detection was performed by analyzing the partial order relationship of different operations, and the relationship between subject attribute, environment attribute, and rule types in different atomic tags. The performance of the redundancy and conflict detection algorithm proposed is analyzed theoretically and experimentally, and the influence of the number and complexity of atomic tags on the detection performance is verified through experiments.
label, data flow control, atomic tag, set correlation, policy redundancy and conflict detection
The National Natural Science Foundation of China (61932015), The National Key R&D Program of China (2017YFB0802705)
謝絨娜, 范曉楠, 李蘇浙, 等. 基于標(biāo)簽的數(shù)據(jù)流轉(zhuǎn)控制策略冗余與沖突檢測(cè)方法[J]. 網(wǎng)絡(luò)與信息安全學(xué)報(bào), 2023, 9(5): 21-32.
TP302
A
10.11959/j.issn.2096?109x.2023074
謝絨娜(1976? ),女,山西永濟(jì)人,博士,北京電子科技學(xué)院教授,主要研究方向?yàn)榫W(wǎng)絡(luò)與系統(tǒng)安全、訪(fǎng)問(wèn)控制、密碼工程。
范曉楠(1997? ),女,河北邢臺(tái)人,北京電子科技學(xué)院碩士生,主要研究方向?yàn)樾畔踩⒃L(fǎng)問(wèn)控制。
李蘇浙(1999? ),女,浙江紹興人,北京電子科技學(xué)院碩士生,主要研究方向?yàn)樵L(fǎng)問(wèn)控制。
黃宇欣(1999? ),女,湖南長(zhǎng)沙人,北京電子科技學(xué)院碩士生,主要研究方向?yàn)樾畔踩?、訪(fǎng)問(wèn)控制。
史國(guó)振(1974? ),男,河南濟(jì)源人,北京電子科技學(xué)院教授、博士生導(dǎo)師,主要研究方向?yàn)槊艽a信息安全、信息論與編碼理論。
2023?02?13;
2023?08?18
謝絨娜,486503266@qq.com
國(guó)家自然科學(xué)基金(61932015);國(guó)家重點(diǎn)研發(fā)計(jì)劃(2017YFB0802705)
XIE R N, FAN X N, LI S J, et al. Redundancy and conflict detection method for label-based data flow control policy[J]. Chinese Journal of Network and Information Security, 2023, 9(5): 21-32.