《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 業(yè)界動態(tài) > 一種具有時間約束的安全數(shù)據(jù)驅(qū)動協(xié)調(diào)模型

一種具有時間約束的安全數(shù)據(jù)驅(qū)動協(xié)調(diào)模型

2008-06-04
作者:邵學(xué)軍,施化吉,李星毅,鞠時光

  摘 要: 研究在開放環(huán)境下利用Linda-like數(shù)據(jù)驅(qū)動" title="數(shù)據(jù)驅(qū)動">數(shù)據(jù)驅(qū)動協(xié)調(diào)模型所帶來的安全問題。為了對數(shù)據(jù)協(xié)調(diào)空間的安全進(jìn)行控制,提出了一種具有時間約束的安全協(xié)調(diào)模型。此協(xié)調(diào)模型通過對元組數(shù)據(jù)增加特定信息,并運用混合密鑰機(jī)制實現(xiàn)對協(xié)調(diào)元組空間的安全訪問控制" title="訪問控制">訪問控制。
  關(guān)鍵詞: 訪問控制 協(xié)調(diào) 混合密鑰


  協(xié)調(diào)模型提供了一種描述軟件實體之間的交互框架。目前開放系統(tǒng)" title="開放系統(tǒng)">開放系統(tǒng)中的協(xié)調(diào)技術(shù)主要考慮如何促使軟件實體之間能夠順利地進(jìn)行交互。但事實上,在開放系統(tǒng)下不能保證每個軟件實體都是可信的,基于系統(tǒng)安全方面的考慮,必須要有一定的安全訪問控制機(jī)制來限制軟件實體之間的交互。
  目前僅有KLAIM[1]和SecSOS[2]協(xié)調(diào)語言提供了一定的安全訪問控制機(jī)制。KLAIM協(xié)調(diào)語言利用類型來描述軟件實體的訪問權(quán)限,在軟件實體和元組數(shù)據(jù)之間采用典型的訪問控制策略,使得軟件實體和數(shù)據(jù)形成一種一一對應(yīng)的關(guān)系。這種方法不能很好地滿足開放系統(tǒng)動態(tài)性的要求,并且不支持對元組數(shù)據(jù)細(xì)粒度的安全控制。SecSOS通過只對空間元組數(shù)據(jù)增加一定的附加信息來控制數(shù)據(jù)的訪問。這種對字段的加鎖方法不但能對整個元組數(shù)據(jù)進(jìn)行控制,還支持?jǐn)?shù)據(jù)細(xì)粒度的安全控制。但SecSOS的缺陷是不能區(qū)分兩種不同類型的讀操作,并且數(shù)據(jù)的讀取者能夠向元組數(shù)據(jù)空間寫入同樣的數(shù)據(jù)。Nadia Busi,Roberto Gorrieri等人在KLAIM和SecSOS基礎(chǔ)上進(jìn)行了擴(kuò)展,提出了SecSpaces[3]安全協(xié)調(diào)模型。但是,SecSpaces每次都是運用非對稱" title="非對稱">非對稱密鑰進(jìn)行匹配,計算復(fù)雜度高,而且沒有提供時效控制,從而降低了系統(tǒng)的安全性。本文首先介紹了用于開放系統(tǒng)下數(shù)據(jù)驅(qū)動的協(xié)調(diào)模型Linda[4]模型,然后簡單地介紹了SecSpaces安全協(xié)調(diào)模型,最后提出了一種新的具有時間約束的安全數(shù)據(jù)" title="安全數(shù)據(jù)">安全數(shù)據(jù)驅(qū)動協(xié)調(diào)模型。
1 Linda數(shù)據(jù)驅(qū)動協(xié)調(diào)模型
  在開放系統(tǒng)下,運用協(xié)調(diào)技術(shù)進(jìn)行軟件實體間的通信是一種非常有效的方法,能夠滿足開放系統(tǒng)互操作性、可移植性、伸縮性要求。Linda[2]在1985年提出了基于數(shù)據(jù)驅(qū)動的協(xié)調(diào)模型體系結(jié)構(gòu),Sun Microsystem和IBM公司在此基礎(chǔ)上開發(fā)了各自的商業(yè)產(chǎn)品JavaSpaces和TSpaces。這些都是利用一種被稱為再生通信(generative communication)的模式:數(shù)據(jù)的發(fā)送方和接收方通過一個共享的數(shù)據(jù)元組空間進(jìn)行通信,發(fā)送方將數(shù)據(jù)送入這個共享空間,接收方從共享空間讀取數(shù)據(jù)。數(shù)據(jù)共享空間獨立于任何一方而存在,即一旦發(fā)送方將數(shù)據(jù)寫入共享空間,數(shù)據(jù)將不屬于數(shù)據(jù)的提供者。任何接收方都可以從中提取相應(yīng)的數(shù)據(jù)。Linda模型定義了out(e)、int(t)和rd(t)三種基本操作。輸入操作out(e)是將數(shù)據(jù)項e寫入共享元組空間;int(t)是用模板t和共享空間中的數(shù)據(jù)項e匹配,如果發(fā)現(xiàn)匹配數(shù)據(jù)項e,然后讀e并將共享空間中的e刪除。rd(t)和int(t)類似,僅僅是讀取而不刪除。Linda模型定義的匹配規(guī)則如定義1.1。

  從定義1.1可以看出最初的Linda協(xié)調(diào)模型并沒有提供相應(yīng)的安全訪問控制機(jī)制對讀寫操作進(jìn)行控制,也不能區(qū)分int(t)和帶有破壞性的rd(t)操作。
2 SecSpaces安全數(shù)據(jù)驅(qū)動協(xié)調(diào)模型
  目前僅有KLAIM和SecSOS協(xié)調(diào)語言提供了一定的安全訪問控制機(jī)制。2002年Nadia Busi、Roberto Gorrieri等人對KLAIM和SecSOS兩種協(xié)調(diào)語言的安全訪問控制機(jī)制進(jìn)行了擴(kuò)展和修改,提出了SecSpaces模型(支持在開放環(huán)境下安全的數(shù)據(jù)驅(qū)動協(xié)調(diào)模型)。SecSpaces不但能夠區(qū)分讀寫操作,還能夠區(qū)分非破壞性的讀int(t)和具有破壞性的讀rd(t)操作。SecSpaces對元組空間數(shù)據(jù)附加特定的控制信息。一個邏輯分區(qū)字段Partition,另一個非對稱邏輯分區(qū)字段Asymmetric Partition。前者用于對元組空間進(jìn)行邏輯上的分區(qū),通過這個字段不但可以快速的索引到相應(yīng)的數(shù)據(jù)也增加了數(shù)據(jù)的安全性。后者利用密碼學(xué)非對稱密鑰對數(shù)據(jù)的讀和寫操作進(jìn)行認(rèn)證,能夠嚴(yán)格區(qū)分讀和寫。同時又將后者分為int(t)和rd(t)區(qū)域,能將這兩種讀取操作區(qū)別開。
3 具有時間約束的安全數(shù)據(jù)驅(qū)動協(xié)調(diào)模型
  從上述SecSpaces模型所提供的安全訪問控制機(jī)制可以看出:(1)數(shù)據(jù)每次讀取操作都會進(jìn)行非對稱的解密操作,計算復(fù)雜;(2)一旦某個軟件實體得到了讀取某數(shù)據(jù)的密鑰,它將獲得永久的讀取權(quán),SecSpaces沒有提供時效控制。這對于動態(tài)的開放系統(tǒng)是不安全的,例如一個Agent實體用密鑰讀取數(shù)據(jù)后離開,相隔一定的時間再次訪問相應(yīng)的數(shù)據(jù),而此時的Agent可能已經(jīng)變得不安全,但依靠先前的密鑰仍能讀取。
  針對SecSpaces存在的安全問題本文提出了一種具有時間約束的安全數(shù)據(jù)驅(qū)動協(xié)調(diào)模型。本文對匹配模板增加時限控制字段來控制軟件實體訪問共享數(shù)據(jù)空間的時間,使協(xié)調(diào)模型具有時間約束性。同時運用混合密鑰認(rèn)證機(jī)制來代替非對稱認(rèn)證來減輕SecSpaces的計算復(fù)雜度。

  非對稱密鑰訪問控制如表1所示。假設(shè)(1)、(2)、(3)、(4)條件均滿足的情況下,(PrivKA;PubKA)和(PrivKB;PubKB)為兩對密鑰,分別為私鑰和公開密鑰。
  為了保證時間戳本身的安全性,可運用密鑰k對T進(jìn)行加密T′={T}k,當(dāng)前時間t取協(xié)調(diào)系統(tǒng)的當(dāng)前時間,其獨立于各軟件實體。這樣就避免了時間的不同步性。對數(shù)據(jù)驅(qū)動的協(xié)調(diào)模型增加時間約束性使其能夠安全運用于更多的開放系統(tǒng)之中。例如將其應(yīng)用于Web Services中就能解決服務(wù)的一次綁定永久享受服務(wù)的局限性。
  混合密鑰認(rèn)證機(jī)制[5]是結(jié)合對稱密鑰和非對稱密鑰兩種并存的認(rèn)證機(jī)制,通信實體通過非對稱密碼體制和密鑰分配中心間協(xié)商其會話密鑰以及在密鑰分配中心存放通信實體的注冊信息等,而通信實體之間通過對稱密碼體制認(rèn)證雙方身份。本文將這種認(rèn)證方式運用到共享元組數(shù)據(jù)空間的訪問控制中,第一次從共享空間讀取數(shù)據(jù)時通過非對稱密鑰認(rèn)證,一旦通過身份認(rèn)證,系統(tǒng)將和軟件實體間建立一傳遞數(shù)據(jù)的安全通道,通過此安全通道傳遞數(shù)據(jù)避免了復(fù)雜的解密計算。將混合密鑰認(rèn)證機(jī)制運用于數(shù)據(jù)驅(qū)動協(xié)調(diào)模型能夠減輕系統(tǒng)的計算復(fù)雜度,同時增加系統(tǒng)的動態(tài)性。其認(rèn)證流程如圖1所述。


  上述所提出的具有時間約束的安全數(shù)據(jù)驅(qū)動協(xié)調(diào)模型不但能區(qū)分三種典型的操作,同時對數(shù)據(jù)的讀取操作具有時效的約束性,這樣就保證了協(xié)調(diào)系統(tǒng)的安全性。
  本文在分析了KLAIM、SecSOS、SecSpaces的基礎(chǔ)上提出了一種時間約束的安全數(shù)據(jù)驅(qū)動協(xié)調(diào)模型,它能夠保證軟件實體之間的通信安全。R.Lucchi和G.Zavattaro提出了WSSecSpaces[6](面向Web Services應(yīng)用的安全數(shù)據(jù)協(xié)調(diào)服務(wù))。首次將協(xié)調(diào)技術(shù)運用于面向服務(wù)的分布式技術(shù)Web Services。本文提出的安全協(xié)調(diào)模型也可作為一種Web服務(wù)形式發(fā)布,服務(wù)之間通過共享元組空間交換數(shù)據(jù),無需服務(wù)間的實時通信,同時可通過本模型的時間約束性來控制服務(wù)時間。這樣不但解決了Web Services在時間和空間上的緊耦合,而且還增強(qiáng)對服務(wù)時間的控制。但是本文提出的模型并沒有對向共享空間寫數(shù)據(jù)進(jìn)行控制,即任何軟件實體都可以向共享數(shù)據(jù)空間寫信息,這是本課題今后所要研究的內(nèi)容。
參考文獻(xiàn)
1 Nicola R D,F(xiàn)errari G,Pugliese R.KLAIM:A Ker-nel Language for Agents Interaction and Mobility.IEEE Transactions on Software Engineering.1998;24(5):315~330
2 Vitek J,Bryce C,Oriol M.Coordinating Processes with Secure Spaces.Science of computer Programming,2003;46(1~2):163~193
3 Busi N,Corrieri R,Lucchi R et al.Secspaces:a data-driven coordination model for environments open to untrusted agents.Electronic Notes in Theoretical Computer Science.2003;68(3):310~327
4 Gelernter D.Generative Communication in Linda.ACM Trans-actions on Programming Languages and Systems.1985;7(1):80~112
5 王汝傳.混合密碼認(rèn)證模型的研究.計算機(jī)學(xué)報,2002;(11):44~48
6 Lucchi R,Zavattaro G.WSSecSpaces:a Secure Data-Driven Coordination Service for Web Services Applications.Proceed-ings of the ACM Symposium on Applied Computing,2004;(1):487~491

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。