• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      Windows下文件過濾驅(qū)動技術

      2016-12-21 02:25:04徐國棟朱亮
      微型電腦應用 2016年8期
      關鍵詞:驅(qū)動程序緩沖區(qū)解密

      徐國棟,朱亮

      Windows下文件過濾驅(qū)動技術

      徐國棟,朱亮

      Windows文件過濾驅(qū)動在不改變復雜的文件系統(tǒng)基礎上,可方便地擴展I/O子系統(tǒng)的功能。在深入研究了文件過濾驅(qū)動技術基礎上,結合安全加密技術與權限控制技術,實現(xiàn)了一個安全、易用、管理方便的安全文件系統(tǒng)。

      文件過濾驅(qū)動;I/O請求包;基于角色的訪問控制

      0 引言

      隨著企事業(yè)單位的快速發(fā)展,電子文檔為企事業(yè)單位承載了越來越多的重要信息。而由于電子文檔的容易散播性,導致企事業(yè)單位的重要資料很容易被非法獲取、篡改、乃至無序傳播等,這使得企事業(yè)單位所做的大量工作付之東流,嚴重危害了自身的利益。特別是棱鏡門事件后,文檔安全的重要性也日益受到重視。文件安全管理就是為了提高電子文檔數(shù)據(jù)的安全性和保密性、防止秘密數(shù)據(jù)被意外、或非法獲取所采用的技術手段。

      密碼學是信息系統(tǒng)安全的核心,它是研究密碼系統(tǒng)和通信安全的一門學科[1]。密碼學的基本功能是提供保密性,使非授權者無法獲悉消息的內(nèi)容。

      1 文件過濾驅(qū)動

      Windows的I/O管理器是一個可擴展的結構,通過開發(fā)過濾驅(qū)動程序可以擴展I/O子系統(tǒng)的功能。 I/O管理器支持分層驅(qū)動程序模型,每個I/O請求包(IRP,I/O request package)的處理分別經(jīng)過各層驅(qū)動程序,直到某層驅(qū)動程序完成這個請求[2]。

      1.1 過濾驅(qū)動程序

      過濾驅(qū)動工作在系統(tǒng)驅(qū)動層和應用層之間,透明地截取發(fā)往低級驅(qū)動程序設備對象的請求,低級驅(qū)動程序的用戶完全不知道它們的請求被過濾器驅(qū)動程序預處理和截取了。使用過濾器驅(qū)動程序可以實現(xiàn)以下幾種主要功能:

      允許修改已有驅(qū)動程序在某些方面的行為,而不必重寫整個驅(qū)動程序。

      可以更加容易地隱藏低級驅(qū)動程序的限制。

      允許把諸如壓縮、加密等新特征添加到設備上,而不必修改基本的設備驅(qū)動程序或者使用設備的程序。

      1.2 文件系統(tǒng)過濾驅(qū)動

      文件系統(tǒng)是負責為用戶建立、存入、讀出、修改、轉(zhuǎn)儲文件,控制文件的存取與撤銷。文件系統(tǒng)過濾驅(qū)動工作模式如圖1所示:

      圖1 文件過濾驅(qū)動工作模型

      作為一種內(nèi)核態(tài)中間層驅(qū)動,只需對下層的文件系統(tǒng)驅(qū)動作相應的功能擴展,加密粒度靈活、可靠性強、效率高、易于擴展。

      2 文件安全保護

      借助于Windows的可安裝文件系統(tǒng)IFS,Installable File System設備驅(qū)動程序開發(fā)工具DDK,Device Development Kit),即可以對Windows I/O 的子系統(tǒng)進行方便的擴展,實現(xiàn)一個文件加密過濾驅(qū)動程序。此程序有如下特點:

      不改變現(xiàn)有Windows的操作習慣。

      攔截所有用戶寫請求:在加密文檔寫入磁盤前加密數(shù)據(jù),保證存儲在磁盤的都是加密數(shù)據(jù)。

      攔截所有用戶讀請求:在加密文檔數(shù)據(jù)返回給用戶前解密數(shù)據(jù),保證應用程序看到的是明文數(shù)據(jù)。

      2.1 Create例程中判斷是否需要加解密

      Windows文件系統(tǒng)通過Create(IRP_MJ_CREATE)例程來創(chuàng)建或打開文件。文件創(chuàng)建/打開時,Windows系統(tǒng)會創(chuàng)建一個FILE_OBJECT對象來表示此文件,根據(jù)此FILE_OBJECT來獲取文件相關的信息并判斷是否需要加密。

      所有需要加/解密的文件都通過一個加密集合來維護[3],當前打開的文件如果已在集合中,則肯定需要對其加/解密;否則:

      新建的文件(打開標記為FILE_CREATED、FILE_OVERWRITTEN或FILE_SUPERSEDED者,都認定為新建),則根據(jù)設定的規(guī)則判斷是否需要對其加/解密。

      打開的文件,則先獲取其加/解密標志(與文件關聯(lián)的加/解密相關信息);如果有,則對其加/解密。

      2.2 Write例程中加密

      Windows的寫操作在Write(IRP_MJ_WRITE)例程中捕獲。當寫請求(IRP)到達時,先獲取FILE_OBJECT對象,來判斷是否為加密文件。非加密文件直接放行(Pass Through)即可;即使是加密文件,也不是所有的寫操作都需要加密,只有在真實數(shù)據(jù)要寫入到磁盤時(標記位為IRP_NOCACHE,且數(shù)據(jù)長度大于零)才需要加密。

      對于要加密數(shù)據(jù)的寫請求,在IRP傳遞到下一層前以及完成后,都需要進行處理:

      在IRP傳遞到下層前,需要對數(shù)據(jù)進行加密:

      申請非分頁內(nèi)存(設為緩沖區(qū)N),用于存放加密后的數(shù)據(jù)。

      用緩沖區(qū)N來替換IRP中原來的UserBuff(設為緩沖區(qū)O)。

      在IRP完成后,要做清理:

      把IRP中的UserBuff設回為緩沖區(qū)O。

      釋放前面申請的緩沖區(qū)N。

      加密數(shù)據(jù)一定要存放在新申請的緩沖區(qū)中去,不能對原有緩沖區(qū)中的內(nèi)容進行修改。

      2.3 Read例程中解密

      Windows的讀操作可在Read(IRP_MJ_READ)例程中捕獲。當寫讀請求(IRP)到達時,先獲取FILE_OBJECT對象,來判斷是否為加密文件。非加密文件直接放行(Pass Through)即可;即使是加密文件,也不是所有的讀操作都需要解密,只有在真實從磁盤中讀取數(shù)據(jù)時(標記位為IRP_NOCACHE,且數(shù)據(jù)長度大于零)才需要解密。

      對于要解密數(shù)據(jù)的讀請求,在IRP傳遞到下一層前以及完成后,都需要進行處理:

      在IRP傳遞到下層前,需要重設緩沖區(qū):

      申請非分頁內(nèi)存(設為緩沖區(qū)N),用于存放讀取到的加密數(shù)據(jù)。

      用緩沖區(qū)N來替換IRP中原來的UserBuff(設為緩沖區(qū)O)。

      在IRP完成后,對數(shù)據(jù)進行解密:

      把讀取到的加密數(shù)據(jù)解密到緩沖區(qū)O中。

      把IRP中的UserBuff設回為緩沖區(qū)O。

      釋放前面申請的緩沖區(qū)N。

      2.4 其他例程操作

      除了上面與加解密直接相關的例程外,還有其他一些例程需要處理,本文就不詳述了:

      在Close例程(IRP_MJ_CLOSE)處理與文件關閉相關操作。

      在SetInformation例程(IRP_MJ_SET_INFORMA -TION)處理重命名、刪除等相關操作。

      在QueryInformation例程(IRP_MJ_QUERY_IN -FORMATION)中處理各種與獲取文件信息相關的操作

      2.5 文件密鑰管理

      為保證安全并方便管理,筆者使用對稱算法來加密文件內(nèi)容,使用非對稱算法來保護對稱算法的密鑰[4],此方案有如下優(yōu)勢:

      使用對稱加密算法對文件內(nèi)容進行加密,來提高效率與安全性。

      每個文件使用獨立的密鑰,進一步提升其安全性。

      使用非對稱算法對文件密鑰進行加密保護,在保證安全的同時簡化了密鑰管理。

      3 文件權限管理

      企業(yè)電子文檔數(shù)量巨大且有不同程度的信息敏感度每個用戶有不同的訪問需求,使得其安全管理非常復雜。

      基于角色的訪問控制將權限與角色聯(lián)系起來,在系統(tǒng)中根據(jù)應用的需要為不同的工作崗位創(chuàng)建相應的角色同時根據(jù)用戶職責指派合適的角色,用戶通過所指派的角色獲得相應的權限[5],實現(xiàn)對文件的訪問如圖2所示:

      圖2 訪問控制模型

      這樣,整個訪問控制過程就分成兩個部分,即訪問權限與角色相關聯(lián),角色再與用戶關聯(lián),從而實現(xiàn)了用戶與訪問權限的邏輯分離。

      角色/權限之間的變化比角色/用戶關系之間的變化相對要少的多,但是也復雜的多。所以:分配權限到角色對技術要求較高,由專門的技術管理人員(文件安全管理人員)來承擔。

      委派用戶到角色不需要很多技術,由行政管理人員來執(zhí)行。

      通過用戶與訪問權限的邏輯分離,基于角色的訪問控制極大的方便了權限管理,實現(xiàn)最少權限原則和職責分離的原則。

      4 總結

      筆者應用此方案已成功實現(xiàn)了多個系統(tǒng),并取得了良好的效果。要構建一個完善的安全系統(tǒng),除了透明文件加密、權限管理外,還需要終端外設管理[6]、網(wǎng)絡安全管理等各種技術。只有融合多種技術才能實現(xiàn)一個安全、易用的安全系統(tǒng),來保護我們的數(shù)據(jù)。

      [1] William Stallings著,王張宜, 楊敏, 杜瑞穎,等譯. 密碼編碼學與網(wǎng)絡安全——原理與實踐[M]. 電子工業(yè)出版社,2012.

      [2] Rajeev Nagar. Windows NT File System Internals. O’REILLY. 1997.

      [3] 徐國棟, 白英彩. 加密文件系統(tǒng)在Windows下的實現(xiàn)[J]. 微型電腦應用, 2006, 22(5):56-58.

      [4] Bruce Schneier著,吳世忠, 祝世雄, 張文政,等譯. 應用密碼學——協(xié)議、算法與C源程序[M]. 機械工業(yè)出版社,2014.

      [5] Xuan H L, Doll T, Barbosu M, et al. An enhancement of the Role-Based Access Control model to facilitate information access management in context of team collaboration and workflow. Journal of Biomedical Informatics, 2012, 45(6):1084-1107.

      [6] Beckley K, Sikora P, Allos B. File transfer system and method for monitoring and management of remote devices, US8880653[P]. 2014.

      File Filter Diver On Windows

      Xu Guodong, Zhu Liang
      (Shaanxi Defence Vocational and Technical College, Xi’An 710300, China)

      Via file filter driver, the I/O subsystem can be extended easily without changing the complex file system. Combined with cryptography and access control technology, a security file system is realized.

      File Filter Driver; I/O request package; Role-Based Access Control.

      TP183

      A

      1007-757X(2016)07-0074-02

      2016.01.20)

      徐國棟(1981-),男,上海其祥電腦系統(tǒng)工程有限公司,工程師,碩士,研究方向:信息安全與網(wǎng)絡通訊,上海 200237

      朱 亮(1983-),男,北京科瑞科技發(fā)展股份有限公司,碩士,研究方向:信息安全與系統(tǒng)應用,上海,100097

      猜你喜歡
      驅(qū)動程序緩沖區(qū)解密
      嵌入式系統(tǒng)環(huán)形緩沖區(qū)快速讀寫方法的設計與實現(xiàn)
      解密“熱脹冷縮”
      解密“一包三改”
      少先隊活動(2020年9期)2020-12-17 06:17:31
      炫詞解密
      關鍵鏈技術緩沖區(qū)的確定方法研究
      解密“大調(diào)解”
      地理信息系統(tǒng)繪圖緩沖區(qū)技術設計與實現(xiàn)
      AVS標準中的視頻碼流緩沖區(qū)校驗模型分析
      電視技術(2012年1期)2012-06-06 08:13:58
      驅(qū)動程序更新與推薦
      驅(qū)動程序更新與推薦
      高邮市| 灵台县| 封开县| 威海市| 金秀| 信阳市| 聂拉木县| 二连浩特市| 顺昌县| 公主岭市| 乐昌市| 彭阳县| 罗源县| 顺义区| 紫阳县| 焦作市| 巫溪县| 沅陵县| 乐安县| 福鼎市| 汝州市| 罗甸县| 上思县| 赤壁市| 酒泉市| 沐川县| 慈利县| 罗田县| 辉南县| 志丹县| 项城市| 兖州市| 盐源县| 镇沅| 辉县市| 临沭县| 明溪县| 台湾省| 伊宁县| 托里县| 同心县|