曾慧宏
【摘要】 本文在分析現(xiàn)有數(shù)字信息系統(tǒng)加密技術(shù)的基礎(chǔ)上,針對用戶需求,設(shè)計了一套基于指紋特征的數(shù)字信息加密系統(tǒng),并采用“隨機碼”技術(shù)實現(xiàn)“一次一密”的加密算法,進一步提高了系統(tǒng)的安全性。文章詳細(xì)論述了系統(tǒng)組成和加密算法,分析了其功能、性能特點,并對其應(yīng)用前景進行了討論。
【關(guān)鍵詞】 指紋特征 隨機碼 數(shù)字信息加密系統(tǒng)
一、概述
信息加密技術(shù)就是通過密碼算術(shù)對數(shù)據(jù)進行轉(zhuǎn)化,使之成為沒有正確密鑰任何人都無法讀懂的報文。在數(shù)字信息系統(tǒng)中可利用計算機執(zhí)行加密算法,改變負(fù)載信息的數(shù)碼結(jié)構(gòu),從而實現(xiàn)對原有信息的保護[1]。
現(xiàn)行的許多計算機系統(tǒng)中,包括許多非常機密的系統(tǒng),都是使用“用戶ID+密碼”的方法來進行用戶的身份認(rèn)證和訪問控制的。存在密碼丟失、密碼被盜取、密碼被破解等安全隱患。由于人體的身體特征具有不可復(fù)制的特點,隨著計算機技術(shù)的發(fā)展,人們把目光轉(zhuǎn)向了生物識別技術(shù),希望可以籍此技術(shù)來應(yīng)付現(xiàn)行系統(tǒng)安全所面臨的的挑戰(zhàn),其中的指紋識別技術(shù)更是生物識別技術(shù)的熱點[2]。自上世紀(jì)60年代起,指紋識別技術(shù)在考勤機、電子鎖、汽車安全、設(shè)備操控管理、 IC卡、網(wǎng)上銀行等信息技術(shù)領(lǐng)域獲得越來越廣泛的應(yīng)用。
在筆者主持研制的一款專網(wǎng)用戶終端項目中,用戶要求對終端上保存的重要信息,如通話記錄、電話簿、錄音文件等進行加密存儲。在綜合比較業(yè)內(nèi)成熟的信息加密技術(shù)后,筆者設(shè)計了一套基于指紋特征的數(shù)字信息加密系統(tǒng),并在加密時采用“隨機碼”技術(shù)產(chǎn)生隨機密鑰,進一步提高了系統(tǒng)的安全性。
二、系統(tǒng)設(shè)計
2.1 系統(tǒng)體系結(jié)構(gòu)設(shè)計
本系統(tǒng)中集成了USB接口指紋采集模塊,模塊可采集并儲存用戶指紋特征值(指紋模板)作為其登陸和使用設(shè)備重要功能的憑證。故采用采用基于生物特征(用戶指紋)的信息安全加密方案,用指紋特征值作為加密密鑰。
系統(tǒng)體系結(jié)構(gòu)如圖1所示。指紋采集模塊負(fù)責(zé)采集和存儲用戶指紋,加密系統(tǒng)需要時,可返回存儲的指紋特征值。加密系統(tǒng)運行在用戶終端上,通過自帶加密算法實現(xiàn)對用戶機文件及重要信息的加密保護。其他應(yīng)用系統(tǒng)需要使用被保護的用戶數(shù)據(jù)時,需要通過信息加密系統(tǒng)的指紋認(rèn)證后獲得被原始數(shù)據(jù)。
2.2 加解密流程設(shè)計
密鑰選用用戶存儲的第一個指紋模板(512字節(jié))。由于設(shè)備的密鑰保存環(huán)境是相對安全的,為保證算法效率,采用簡單、效率高的按位異變換算法。
系統(tǒng)對文件的加解密過程見圖2和圖3。
“隨機碼”技術(shù)一般應(yīng)用于“私有密鑰”加密體制中,設(shè)計目的是增加以統(tǒng)計分析方法破解的難度,或者在多次利用同一密鑰加密時,盡可能產(chǎn)生不同的密文,以防止密鑰被竊取導(dǎo)致“一破全破”的后果。
在本系統(tǒng)中,可選擇采用“指紋特征值+隨機碼”作為密鑰,替代原有以指紋特征值作為密鑰的方式,但加、解密流程與算法不變。技術(shù)難點在于在解密過程中,必須準(zhǔn)確獲得加密時的產(chǎn)生的隨機密鑰。
3.2 加密算法設(shè)計
指紋特征值為512字節(jié),隨機密鑰也定長為512字節(jié)。當(dāng)明文(待加密信息)大于512字節(jié)時,每次取512字節(jié)與密鑰進行異或,產(chǎn)生密文。
設(shè)第i次加密時,隨機密鑰為Ki[j],則
Ki[j] = (C[j] + Ri+1)% 256
其中,j=0,1,……511,C[j]為第j個字節(jié)的指紋特征值
Ri+1為一偽隨機數(shù)列:
Ri = Ri-1+Ri-2
其值由迭代過程開始給定的兩個種子(初值)R0和R1,以及迭代次數(shù)決定。
采用該種隨機密鑰方式進行加密的優(yōu)點:
每加密512字節(jié)信息,使用的密鑰均不相同,大大降低了利用頻度統(tǒng)計分析方法進行破解的可能性;
如果能動態(tài)給定隨機數(shù)量Ri的初值R0及R1,可保證每次加密不同文件使用不同的密鑰,防止用戶指紋特征值丟失而導(dǎo)致所有加密文件被破解的后果;
加解密算法簡單、可逆,適合大數(shù)據(jù)量、實時加解密。
3.3 偽隨機數(shù)列初值設(shè)定策略
策略1:以待加密文件的首、尾兩個字節(jié)作為R0、R1的值;加密時,首、尾兩個字節(jié)不加密,以保證解密程序能正確獲得偽隨機數(shù)列的初值。
該策略的優(yōu)點是密鑰與文件內(nèi)容有關(guān),對大多數(shù)文件可以做到“一次一密”。但是對某類首尾均有固定格式的文件,密鑰完全相同。
策略2:以加密時的日期、時間作為R0、R1的值;加密后,把這兩個值添加到密文文件的末尾。
該策略優(yōu)點的如果用戶不改變系統(tǒng)時間,可以做到“一次一密”;但文件長度被改變,在一定程度上為破解留下提示信息。
四、結(jié)論與展望
本文提出的基于指紋特指和隨機碼結(jié)合的數(shù)字信息加密系統(tǒng)是一種將生物特征數(shù)據(jù)和密鑰結(jié)合起來的生物特征加密技術(shù)。它結(jié)合了生物特征識別技術(shù)與密碼技術(shù)的優(yōu)勢,并實現(xiàn)了每次加密均使用不同的密鑰,進一步提高了信息安全性。目前該系統(tǒng)已通過用戶驗收并投入使用。
基于項目研制周期和算法效率的考慮,系統(tǒng)中的加密算法采用了較為簡單的算法,后續(xù)若需要進一步加強加密安全性,可考慮使用DES、IDEA、RC5[3]等業(yè)內(nèi)著名加密算法進行替換。
參考文獻
[1]付永鋼等,計算機信息安全技術(shù)[M],清華大學(xué)出版社,2012.3
[2]楊海軍,江學(xué)峰,梁德群,結(jié)合脊和谷信息的指紋細(xì)節(jié)特指提取方法[J],計算機應(yīng)用,2000.5
[3]吳飪鋒,網(wǎng)絡(luò)安全中的密碼技術(shù)研究及其應(yīng)用[J].真空電子技術(shù),2004,(6)