国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于AD RMS的信息權(quán)限保護應(yīng)用開發(fā)研究

2011-03-14 06:44邱剛
關(guān)鍵詞:信息內(nèi)容解密應(yīng)用程序

邱剛

中船重工第七二二研究所信息安全事業(yè)部 湖北 430079

0 前言

計算機與網(wǎng)絡(luò)技術(shù)日益深入各種行業(yè)的業(yè)務(wù)應(yīng)用,大量企業(yè)和機構(gòu)部署了辦公自動化和業(yè)務(wù)信息系統(tǒng)。在提高組織工作效率的同時,信息濫用和泄露的風(fēng)險也隨之增大。計算機網(wǎng)絡(luò)中電子信息發(fā)布和訪問的安全性的得到了廣泛的關(guān)注和重視。AD RMS是一種在分布式網(wǎng)絡(luò)環(huán)境中集中保護信息按要求方式使用的技術(shù),為網(wǎng)絡(luò)中信息的安全發(fā)布和使用提供了一個完整的解決方法和技術(shù)平臺。AD RMS定義了細粒度的訪問方式,可以為指定的用戶或者組在一定時間范圍內(nèi)指定讀取、修改、打印等操作權(quán)限的任意組合。確保信息文件有意無意的離開AD RMS安全域后無法被讀取和使用。

AD RMS適合于各種組織機構(gòu)控制文檔在機構(gòu)內(nèi)部和外部的發(fā)布和使用方式與時間。為了使用AD RMS的權(quán)限管理功能,應(yīng)用程序要使用AD RMS SDK提供的接口來實現(xiàn)對權(quán)限保護的支持。本文介紹AD RMS的原理,簡述開發(fā)AD RMS應(yīng)用的環(huán)境建立和程序?qū)崿F(xiàn)方法。

1 原理

1.1 AD RMS應(yīng)用系統(tǒng)

AD RMS應(yīng)用系統(tǒng)包含AD RMS服務(wù)器、客戶端計算機、用戶認證服務(wù)器、證書服務(wù)器和用戶,如圖1所示。AD RMS 采用信息加密技術(shù)保護敏感信息內(nèi)容及使用方式。

圖1 AD RMS 環(huán)境示意圖

1.2 信息加密

AD RMS采用對稱與非對稱密碼結(jié)合數(shù)字證書的機制加密受保護的信息內(nèi)容和使用權(quán)限信息。文檔保護從用戶在域中的安全標識開始,通過認證服務(wù)與證書管理機構(gòu)獲取用戶證書,從隨機數(shù)源生成隨機的文檔信息對稱密鑰,采用對稱算法和對稱密鑰加密文檔的內(nèi)容和權(quán)限信息,使用接收者證書中的公鑰加密保護文檔的對稱密鑰。含有加密的對稱密鑰和信息的文檔即可通過各種開放的介質(zhì)如網(wǎng)絡(luò)、U盤等發(fā)送給接收者。接收者持有自己證書對應(yīng)的非對稱私鑰,能夠解密出對稱密鑰,最后按照權(quán)限指定的方式解密使用文檔內(nèi)容。

ADRMS管理與內(nèi)容加解密有關(guān)的證書,密鑰,為終端用戶提供一個簡單易用的信息安全發(fā)布與使用設(shè)施。

2 建立開發(fā)環(huán)境

我們構(gòu)建了如下配置的網(wǎng)絡(luò)環(huán)境部署 AD RMS服務(wù)和開發(fā)平臺。所有這些計算機位于一個局域網(wǎng)中,使用了192.168.0.X網(wǎng)段,如表1所示。

表1 基礎(chǔ)網(wǎng)絡(luò)設(shè)施構(gòu)建表

安裝和配置域控制器,在 HCLAB-DC安裝 Windows Server 2008,添加域控制器、域名解析服務(wù)器和證書服務(wù)角色,域名使用hclab.local。所有其他計算機均加入hclab.local域,在域中創(chuàng)建開發(fā)測試用戶。然后安裝SQL數(shù)據(jù)庫服務(wù)器,在 ADRMS-DB上安裝 Microsoft SQL Server 2005。在ADRMS-SRV上使用 HCLAB-DC的證書服務(wù)申請主題為adrms-srv..hclab.local的服務(wù)器證書。

在ADRMS-SRV上安裝和配置ADRMS服務(wù)。為了簡化開發(fā),ADRMS服務(wù)正在前期開發(fā)可以不必使用SSL加密注冊AD RMS服務(wù)連接點完成ADRMS服務(wù)的安裝和配置。將AD RMS集群的URL加入ADRMS-CLT的本地Intranet安全區(qū)域,這可以防止已經(jīng)登錄到域的用戶在訪問域中的 AD RMS服務(wù)時被提示輸入用戶憑據(jù)。

在ADRMS-CLT上安裝Windows 7 SDK或者Visual Studio 2008/2010以支持應(yīng)用程序的開發(fā)與調(diào)試。

3 AD RMS應(yīng)用實現(xiàn)

3.1 激活用戶終端

在計算機可以用來加解密 AD RMS保護的信息內(nèi)容之前,必須將計算機簽署進入目錄中的AD RMS證書鏈中,這個過程稱為機器激活。調(diào)用激活(DRMActivate)等 AD RMS函數(shù)需要一個客戶端會話用來承載其他的證書存儲會話。DRMCreateClientSession函數(shù)創(chuàng)建客戶端會話并得到其句柄,這個句柄將在其他AD RMS函數(shù)調(diào)用中被引用。

創(chuàng)建客戶端會話:

激活等AD RMS函數(shù)調(diào)用涉及到與活動目錄服務(wù)、RMS服務(wù)的多項網(wǎng)絡(luò)交互,這些函數(shù)會立即返回以便執(zhí)行其他任務(wù),調(diào)用者用異步的回調(diào)方式處理返回結(jié)果。在回調(diào)上下文參數(shù)結(jié)構(gòu)中包含一個異步事件對象,可以使處理返回結(jié)果的線程在該對象上阻塞等待,從而提高處理器利用效率。

dwWaitResult = WaitForSingleObject( context.hEvent, DW_WAIT_TIME);

計算機激活后,必須激活當(dāng)前登錄的用戶以獲得權(quán)限賬戶證書(Right Account Cerification ),這個過程稱為用戶激活。激活完畢后,通過DRMIsActivatied函數(shù)檢測機器和用戶的激活狀態(tài)。用戶激活也是調(diào)用DRMActivate函數(shù),將激活計算機時用的第二個參數(shù)的第一項 DRM_ACTIVATE_ MACHINE改為DRM_ACTIVATE_GROUPIDENTITY即可。處理用戶激活結(jié)果的回調(diào)機制與激活計算機時完全相同。

3.2 加密信息

發(fā)布受 AD RMS保護的信息一般需要將加密的內(nèi)容和相關(guān)的發(fā)行證書組合在一個格式文檔中,使用信息的目標用戶可以從文檔中提取發(fā)行證書用來獲取終端用戶證書,使用終端用戶證書解密信息。AD RMS SDK使用高級加密標準(Advanced Encryption Standard,AES)算法加密信息內(nèi)容。密鑰長度是128比特,密文數(shù)據(jù)分組長度為16字節(jié)。Windows Vista及其以前版本的操作系統(tǒng)采用分組算法的ECB模式;Windows 7則增加了采用分組鏈接機制的CBC模式的支持。為了加密信息內(nèi)容,計算機和用戶必須已被AD RMS激活,才能進行后續(xù)獲取簽署的發(fā)行證書進而加密信息的過程。

加密內(nèi)容包括以下步驟:

(1)創(chuàng)建客戶會話,這個過程與前面所述一致。

(2)從證書存儲中獲取加密過程中要使用的證書,包括計算機證書、權(quán)限賬戶證書等。使用 DRMEnumerateLicense指定不同的證書類型標志uFlags參數(shù)獲取這些證書。

(3)獲取應(yīng)用程序清單。應(yīng)用程序的清單包含有程序組件的數(shù)字簽名信息,是下一步創(chuàng)建安全環(huán)境的條件之一,用來防止被篡改的應(yīng)用程序竊取受保護的信息。

(4)創(chuàng)建安全環(huán)境。調(diào)用DRMGetSecurityProvider獲得一個安全提供者,隨后使用DRMInitEnvironment初始化處理受保護的信息必須的安全環(huán)境,這里如果檢測到安全威脅則會返回失敗。在應(yīng)用程序被篡改、程序正在調(diào)試環(huán)境中運行等情況下用戶進程都會無法創(chuàng)建安全環(huán)境。

(5)獲取已簽署的發(fā)行證書。這個證書中包含有詳細的信息使用權(quán)限信息,如有效時間、許可用戶、各用戶的權(quán)限(讀、寫、拷貝、打印)等。首先使用 DRMCreateIssuance創(chuàng)建發(fā)行證書對象,然后創(chuàng)建使用SMTP郵件地址格式的用戶名稱創(chuàng)建DRM用戶對象,創(chuàng)建用戶所需的DRM權(quán)限對象,將用戶對象和授予的權(quán)限對象關(guān)聯(lián)到發(fā)行證書中,創(chuàng)建和設(shè)置發(fā)行證書中惟一內(nèi)容 ID等元數(shù)據(jù);最后,使用在線或者離線的方式簽署發(fā)行許可證。

(6)加密內(nèi)容。最后,創(chuàng)建一個加密對象,并使用這個加密對象加密信息,將加密的信息和已簽署的發(fā)行證書保存到應(yīng)用程序格式文檔中,將文檔拷貝到共享的介質(zhì)中完成信息的加密發(fā)布。以下是加密信息的程序片段:

4 解密信息

使用受保護的信息需要先進行解密,解密操作的安全環(huán)境準備過程與加密信息時是一致的,獲得了有效的安全環(huán)境句柄之后,解密信息的進程提取用戶的權(quán)限賬戶證書(RAC),使用RAC和信息的發(fā)布許可證從AD RMS服務(wù)器獲取信息的終端用戶許可證。將期望的使用權(quán)限綁定到終端用戶許可證,使用綁定的許可證創(chuàng)建解密對象,完成信息內(nèi)容的解密使用。以下是解密信息的程序片段:

5 調(diào)試

調(diào)試AD RMS應(yīng)用程序比其他應(yīng)用程序要困難。這是因為為了信息內(nèi)容的安全,受保護的內(nèi)容是在鎖盒中處理的。在使用AD RMS鎖盒對受保護的信息處理時,AD RMS如果檢測調(diào)試器的存在就會使安全函數(shù)的調(diào)用失敗,從而防止攻擊者通過調(diào)試器窺探信息,同時這也使得程序無法調(diào)試。為了調(diào)試AD RMS應(yīng)用程序,Microsoft提供了一個稱為鎖盒通信代理(LCP)的工具,應(yīng)用程序開發(fā)調(diào)試期間,使用 LCP調(diào)用安全函數(shù)模擬相關(guān)的功能,發(fā)布時再把這些函數(shù)連接到真正的鎖盒。如果不使用LCP,可以使用類似與printf的函數(shù)輸出跟蹤信息協(xié)助調(diào)試,在應(yīng)用發(fā)布時應(yīng)該屏蔽這些跟蹤信息的輸出。

6 結(jié)語

基于 AD RMS構(gòu)建的應(yīng)用支持以細粒度可控的方式發(fā)布和使用信息,第三方軟件開發(fā)者和安全解決方案提供者可以在AD RMS上構(gòu)建強有力的安全應(yīng)用和解決方案,有效的改善應(yīng)用軟件產(chǎn)生的電子文檔在使用過程中存在的濫用和擴散問題。自Windows 7開始,AD RMS支持AES的CBC模式,對抗密碼學(xué)分析與攻擊的能力顯著提升,但其對于定制密碼設(shè)備的接入和支持仍顯不足,限制了其在不同等級的安全要求環(huán)境下的更廣泛使用,值得在進一步的研究中予以改善和解決。

[1]Microsoft Corporation.AD RMS Overview.http://msdn.microsoft. com.2010.

[2]Microsoft Corporation.Active Directory Rights Management Services SDK.http://msdn.microsoft.com .2008.

[3]Microsoft TechNet.AD RMS Deployment Step-by-step. http://technet.microsoft.com/en-us/library/cc725699.aspx.2008.

[4]Microsoft Corporation,Using the AD RMS SDK, http://msdn. microsoft.com.2010.

[5]William Stallings.密碼編碼學(xué)與網(wǎng)絡(luò)安全.北京:電子工業(yè)出版社. 2010.

猜你喜歡
信息內(nèi)容解密應(yīng)用程序
炫詞解密
解密“一包三改”
淺析知識倉庫及其在企業(yè)管理中的應(yīng)用
信源、信息內(nèi)容、情緒特征對微博轉(zhuǎn)發(fā)的影響探究
論《網(wǎng)絡(luò)信息內(nèi)容生態(tài)治理規(guī)定》的創(chuàng)新與完善
炫詞解密
刪除Win10中自帶的應(yīng)用程序
谷歌禁止加密貨幣應(yīng)用程序
微信公眾平臺推送信息內(nèi)容對顧客品牌忠誠的影響
解密“大調(diào)解”
崇礼县| 广西| 鄢陵县| 阳春市| 嵩明县| 股票| 丰都县| 浦江县| 磴口县| 鄯善县| 扶绥县| 敦化市| 景宁| 民权县| 垣曲县| 平江县| 抚顺市| 新化县| 会泽县| 福泉市| 泽库县| 本溪市| 荃湾区| 专栏| 买车| 黄大仙区| 红原县| 盐边县| 洛宁县| 肥东县| 富源县| 泰顺县| 大英县| 南陵县| 工布江达县| 海原县| 新郑市| 静海县| 凤城市| 大庆市| 明溪县|