999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于LSM的輕量級透明加密設計與實現

2014-07-18 11:53:22陳莉君于運超
西安郵電大學學報 2014年1期
關鍵詞:用戶系統

陳莉君, 于運超

(西安郵電大學 計算機學院, 陜西 西安 710121)

基于LSM的輕量級透明加密設計與實現

陳莉君, 于運超

(西安郵電大學 計算機學院, 陜西 西安 710121)

為了防止數據失竊需要對敏感數據進行加解密處理,提出一種基于Linux安全模塊框架的輕量級透明加密方法。該方法主要是對文件進行寫操作時,使用LSM鉤子實現對文件的加密操作;當用戶試圖讀取文件時觸發內核讀系統調用服務例程并在該例程中實現文件的解密操作。測試結果發現基于LSM的透明加密在確保數據安全的情況下對讀寫性能影響不大。

數據安全;Linux安全模塊(LSM);用戶空間;透明加密

透明加密技術[1-3]是數據泄漏防護系統中常用的一種技術,用于實現對文件系統中文件的加解密操作。Windows上實現透明加密主要通過應用層和內核層實現。在應用層通過系統提供的鉤子函數實現,當特定的消息發出后并且在沒有達到目的窗口前,鉤子函數率先捕獲并進行相應的處理。內核層實現透明加密主要通過文件系統過濾驅動[4-5]來實現,對操作系統的I/O[6]進行攔截,從而進行相應的加解密處理。

借鑒Windows實現透明加密的思想,可以在Linux用戶層和內核層實現透明加密。用戶層實現主要考慮用戶態與內核態切換時帶來的時間上的損失,例如加密文件系統(Cryptographic File System,CFS)[7]就是在用戶層面上實現的。相比來說,內核層實現在安全性與讀寫性能上都比較有優勢。由于CFS運行在用戶模式下,在上下文切換和數據在內核和用戶空間交互時,帶來性能上的損失,而透明加密文件系統(Transparent Cryptographic File system,TCFS)是CFS的擴展,只適用于2.2.17內核或者更早的內核,所以針對CFS以及其擴展TCFS文件系統的不足,將基于Linux安全模塊(Linux Security Modules,LSM)的鉤子技術與加解密技術相結合,實現一種內核態輕量級并且適用新內核的文件加密系統。

1 透明加密設計與實現

1.1 透明加密設計

基于LSM的透明加密是通過LSM框架加解密操作結合實現文件的透明加密。Linux安全模塊是一種輕量級、通用的訪問控制框架,適用于安全增強Linux(Security Enhanced Linux,SELinux)、Linux入侵檢測系統(Linux Intrusion Detection System,LIDS)等訪問控制策略,在它上面以內核可加載模塊的形式實現[8]。在加密文件中結合LSM,可以更細粒度的對文件進行訪問控制限制,從而更好的實現文件的安全。透明文件加密設計圖見圖1。

圖1 透明加密實現

透明加密由LSM加載模塊和內核修改兩部分構成。在LSM加載模塊里面完成對文件的保護。文件保護涉及到用戶合法性判斷、合法用戶執行進程的合法性、執行權限的合法性以及加密操作。其對應的保護規則見圖2。

圖2 文件保護規則

文件的解密操作在內核實現。通過分析讀系統的調用過程,找到執行磁盤數據拷貝到內核緩沖區的函數do_generic_file_read(),然后在該函數中添加解密操作。

1.2 透明加密實現

1.2.1 加密算法的選擇

在對稱密碼體系里確保文件安全的因素是密鑰的長度。密鑰的長度越長,破解密碼的時間也就越長。在確保安全性的同時也要提高算法的加解密速度。表1[9]給出了常用算法的加解密數據。其中Blowfish算法是一種分組密碼,主要特點是快速、易于實現以及安全性可變;數據加密算法 (Data Encryption Standard ,DES)是以64位為分組對數據進行加密的分組算法;三重DES加密算法(Triple Data Encryption Standard,3DES)具有足夠的安全性;DESX是DES的另一種改進,利用一個隨機的二進制數與加密前的數據以及解密后數據異或;國際數據加密標準 (International Data Encryption Algorithm,IDEA)屬于數據塊加密算法;CAST是由Carlisle Adams和Stafford Tavares共同設計的一種分組算法;RC2是由密碼學家Ron Rivest設計的一種傳統分組加密算法,可以作為DES的替代算法。

表1 常用算法加解密數據時間 /s

通過表1可以看出,RC4算法[10]加解密速度最好,但是RC4是公鑰密碼中RSA[11]的演變,RC4算法的安全取決于密鑰生成器生成密鑰的隨機性,如果生成的偽隨機密碼存在弱密鑰,則會對算法安全構成很大威脅。所以選擇高級加密標準(Advanced Encryption Standard,AES),該算法是典型的迭代式分組密碼,其分組長度和密鑰長度可以獨立指定為128位,192位和256位。并且選擇128位密鑰需要進行10輪加密;選擇192位密鑰需要進行12輪加密;并且選擇256位密鑰需要進行14輪加密。

在每輪操作中主要執行以下幾個函數:ByteSubs(state)將消息x與S盒進行字節代換操作;ShiftRows(State)對消息矩陣State做行移位操作;MixColumns(State)對消息矩陣做列混合操作;AddRoundkey(State,Roundkey)將消息矩陣State與輪密鑰Roundkey進行密鑰異或運算。

1.2.2 加解密實現

當用戶要對文件進行寫操作時,通過系統調用之后進行自主訪問控制和LSM hook file_permission()實現更細粒度的權限檢查,file_permission()鉤子函數主要對打開文件的訪問權限進行控制,函數執行過程如圖3。

圖3 file_permission函數執行過程

應用程序進行讀數據時,由于不能從LSM框架內部獲得加密數據,所以不能在LSM鉤子函數中實現。通過兩種方法解決,其一是系統調用截獲,通過系統調用返回用戶態之前截獲解密消息并返回給用戶[12],這樣做利用了內核加載模塊的漏洞,不是一個安全的方法。其二是修改內核,通過分析讀操作系統調用服務例程SYSCALL_DEFINE3(read, unsigned int, fd, char __user*, buf, size_t, count)。內核對讀操作處理也分為兩種情況,其一是與存儲介質直接交互數據,這種常見于數據庫的應用,函數do_blockdev_direct_IO()是處理直接數據存儲的函數。其二是讀操作與系統中頁緩存結合,要讀取數據時,系統先在內核頁緩存中查看是否有數據保存,如果緩存中存在,則直接返回應用程序,否則需要從磁盤獲取數據并將數據存放至緩存中以備數據下次被訪問。這種情況最終通過函數do_generic_file_read()讀取數據并將數據發送到用戶緩沖區。

2 性能測試

該系統的安全性已經通過選取的加密算法AES保證安全,接下來性能測試需要關注的重點就是加解密對文件操作延遲的影響。測試系統環境為4G內存,500G硬盤,CPU:Intel(R) Pentium(R) 2.60GHz,主要測試未加密的日志式文件系統EXT3[14](Third Extended File System)和實現透明加密的文件系統中讀寫速率。測試使用Linux下的dd塊拷貝命令測試文件的讀寫速率。

要對寫速率進行測試,可以通過

time dd

if=/dev/zero

of=test

bs=**KB

count=100

實現,同樣使用

time dd

if=/dev/sda

of=/dev/null

bs=**KB

count=100

可實現對文件讀速率進行測試。其中if=輸入文件名,of=輸出文件名,bs=bytes 讀入/輸出字節大小,count=blocks 拷貝blocks個塊且每個塊的大小為bytes字節。比如要對4M的數據進行寫速率測試,只需使用

time dd

if=/dev/zero

of=test

bs=4KB

count=1024

測試讀寫速率時也可以使用FIO工具進行測試[13]。測試結果如表2所示。

表2 文件讀寫速率對比 /s

(1)通過數據發現文件的寫操作時間明顯大于文件讀操作時間。這是因為在寫文件時需要對文件進行同步加鎖保護,防止多個進程同時對文件操作,破壞數據的一致性。所以在對文件進行大量寫操作時會延長加密的時間。

(2) 對文件進行讀寫操作時,文件系統緩存機制發揮了積極的作用。比如對1024×4KB文件進行讀操作時,第一次耗時0.0518s,第二、三次分別耗時0.0018s和0.0016s,相比第一次耗時減少,說明對第二次和第三次文件的讀取使用到了文件系統緩存機制。適當的利用操作系統的緩存機制,在文件安全的前提下可以實現文件的快速操作。

通過對測試結果數據進行分析,在文件安全的情況下可以得出加解密對文件的讀寫時間影響是有限的,可以通過合理的使用系統緩存機制改善加解密帶來的時間延遲。

3 結論

設計并實現了基于LSM的文件透明加密系統。該系統的實現降低了文件加解密的復雜度,避免了CFS上下文切換和數據在內核和用戶空間交互帶來性能上的損失。同時對文件元數據的加密操作,進一步提高了文件的安全,改善了TCFS未對元數據進行加解密的缺陷。通過性能測試,結果表明文件透明加密系統對文件操作影響不是很大,可以對核心文件進行加密處理。

[1] 鄒家銀,李培峰.透明加解密系統原理與實現分析[J]. 計算機與現代化,2012,199(3):86-90.

[2] Li Shaobo, Jia Xiaohui . Research and Application of Transparent Encrypting File System Based on Windows Kernel[C]//Computational Intelligence and Software Engineering(CiSE).Wuhan:IEEE, 2010:1-4.

[3] Lee Jacheung, Heo Junyoung, Park Jaemin,et al. Buffer cache level encryption for embedded secure operating system[C]//FIB International Conferenece on Embedded and Ubiquitous Computing, EUC Taipei,Taiwan:IFIP International Federation for Information Processing, 2007:346-355.

[4] 錢濤, 鄭扣根. 驅動模式的Windows進程合法性驗證[J].計算機應用, 2009, 29(12): 3398-3402.

[5] Xie Liling. Research and Application of theTransparent Docunment Encryption Gataway in Information Leakage Prevention[C]//Internet Technology and Applications. Wuhan: IEEE, 2010:1-3.

[6] 譚文,楊瀟,邵堅磊. 寒江獨釣:Windows內核安全編程[M]. 北京:電子工業出版社,2009:163-280.

[7] Blaze M. A Cryptographic File System for Unix[C]//Computer & Comm. Security. NY,USA:ACM, 1993:9-16.

[8] 蘇錦繡.基于LSM的文件系統安全機制的研究[D].西安:西安郵電大學,2012:15-20.

[9] 劉富星,高輝.常用加解密算法及其時間分析[J].科技信息,2008(1):84.

[10] William S. 密碼編碼學與網絡安全[M]. 劉玉珍,王麗娜,傅建明,等譯.3版.北京:電子工業出版社, 2004:141-144.

[11] 范九倫,張雪鋒,劉宏月,等. 密碼學基礎[M].西安:西安電子科技大學出版社,2008:77-82.

[12] 蘇錦繡,陳莉君.基于系統調用的日志系統的設計與實現[J].西安郵電學院學報,2011,16(4):59-65.

[13] 陳莉君,王森,康華.日志結構云存儲中緩存的設計與實現[J].西安郵電大學學報,2013,18(5):76-80.

[14] 金霞. EXT3文件系統結構研究及入侵檢測的實現[D]. 鄭州:解放軍信息工程大學,2004:1-4.

[責任編輯:祝劍]

Study of transparent encryption technology based on LSM

CHEN Lijun, YU Yunchao

(School of Computer Science and Technology,Xi’an University of Posts and Telecommunications,Xi’an 710121, China)

A lightweight transparent encryption method based on the framework of Linux security modules (LSM) is proposed to meet the need for encrypting and decrypting on sensitive data from being stolen.The method uses the LSM hooks to encryption file while writing file, and triggers the kernel read system call service routine to decrypt file in the routine when user attempts to reading file. Testing results show that this method not only can ensure data security but also have little influence on reading and writing file.

data security, Linux security modules (LSM), user space, transparent encryption

10.13682/j.issn.2095-6533.2014.01.017

2013-10-24

陜西省教育廳基金資助項目(11JK1037)

陳莉君(1964-),女,碩士,教授,從事Linux操作系統研究。E-mail:cljcore@126.com 于運超(1987-),男,碩士研究生,研究方向為嵌入式系統設計與開發。E-mail: yuyun_chao@126.com

TP309.7

A

2095-6533(2014)01-0078-04

數中實現解密操作的主要流程都是一樣的。先判斷文件標志flags是否為1,如果為1表明要讀取的文件經過加密操作,需要調用解密函數;否則直接讀取并返回用戶緩沖區。

猜你喜歡
用戶系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
主站蜘蛛池模板: 五月天香蕉视频国产亚| 国产精品hd在线播放| 免费人欧美成又黄又爽的视频| 国产精品页| 99热免费在线| 2022国产无码在线| 白浆免费视频国产精品视频| 亚洲国内精品自在自线官| 午夜福利视频一区| 欧美一区中文字幕| 国产精品无码久久久久AV| 青草娱乐极品免费视频| 美女视频黄频a免费高清不卡| 欧美a级完整在线观看| 国产色偷丝袜婷婷无码麻豆制服| 波多野结衣亚洲一区| 中文国产成人精品久久| 国产亚洲欧美在线人成aaaa| 亚卅精品无码久久毛片乌克兰| 欧美成人看片一区二区三区 | 伊人久久大线影院首页| 国产真实乱了在线播放| 成人免费午夜视频| 99国产在线视频| 亚洲成a人片| 国产靠逼视频| 91久草视频| 在线观看精品自拍视频| 老色鬼久久亚洲AV综合| 最新日韩AV网址在线观看| AV不卡无码免费一区二区三区| 日韩在线视频网站| m男亚洲一区中文字幕| 全部毛片免费看| 欧美天堂在线| 国产69囗曝护士吞精在线视频| 国产呦精品一区二区三区下载| 日韩亚洲综合在线| 日韩最新中文字幕| 日韩黄色在线| 国产日本视频91| 色哟哟国产精品| 日韩精品无码免费专网站| 亚洲天堂久久新| 一本大道东京热无码av| 日韩av高清无码一区二区三区| 99re免费视频| 三上悠亚精品二区在线观看| 特级做a爰片毛片免费69| 欧美日韩导航| 午夜福利无码一区二区| 国产精品太粉嫩高中在线观看| 久久免费观看视频| 第一页亚洲| 麻豆精品视频在线原创| 国产美女丝袜高潮| 久久国产精品电影| 精品国产一区二区三区在线观看 | 一级毛片免费不卡在线视频| 宅男噜噜噜66国产在线观看| 中文字幕在线不卡视频| 国产日本欧美亚洲精品视| 精品久久高清| 亚洲综合激情另类专区| 日本高清有码人妻| 亚洲一级毛片在线观播放| 真人免费一级毛片一区二区| 91在线日韩在线播放| 五月天丁香婷婷综合久久| 日韩大片免费观看视频播放| 免费女人18毛片a级毛片视频| 伊人蕉久影院| 亚洲精品第一在线观看视频| 日本精品视频一区二区| 亚洲精品黄| 在线观看亚洲人成网站| 无码人中文字幕| 国产永久在线观看| 伊在人亚洲香蕉精品播放| 一本二本三本不卡无码| 欧洲一区二区三区无码| 国产精品男人的天堂|