專利名稱:一種非生物物理特征的數(shù)字身份認(rèn)證方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種非生物物理特征的數(shù)字身份認(rèn)證方法,確切地說是涉及一種在每次身份認(rèn)證時,隨機地從預(yù)先生成的保密的基本密碼中,選擇兩個部分排列作為兩個實際加密密碼,分別對該次產(chǎn)生的隨機數(shù)組加密,得到的密文數(shù)據(jù)對作為問答數(shù)據(jù)對進(jìn)行身份認(rèn)證的方法。
背景技術(shù):
目前正在使用的基于生物物理特征的身份認(rèn)證法,如指紋、視網(wǎng)膜、聲音、外形特征等作為認(rèn)證基礎(chǔ)的身份認(rèn)證法,安全性能非常有限。原因在于1、這些生物物理特征容易被提取和復(fù)制,如指紋可以輕松提取并做成指紋膜,聲音可以提取特征后重新合成,視網(wǎng)膜和外形特征的復(fù)制也是完全可能的。2、生物物理特征的不變性,使得特征數(shù)據(jù)在傳輸、保存上容易被泄露。3、當(dāng)需要多方認(rèn)證時,特征數(shù)據(jù)將在多處保存,安全問題更加突出。
正在使用的各種數(shù)字身份認(rèn)證方法,有“單向的”如網(wǎng)上大量使用的帳號加密碼直接傳輸給服務(wù)網(wǎng)站的身份認(rèn)證法,由于聯(lián)系雙方所經(jīng)過的網(wǎng)絡(luò)均能得到帳號和密碼的明文,盡管認(rèn)證雙方各自非常小心的保密密碼,在登錄過程中卻被暴露無余。現(xiàn)在網(wǎng)上黑客猖獗的一個重要原因,就是使用了該身份認(rèn)證法造成的。一種改進(jìn)的將帳號和密碼加密傳輸進(jìn)行身份認(rèn)證的方法,如所謂“無標(biāo)識全動態(tài)”的身份認(rèn)證法,發(fā)明人認(rèn)為攻擊者將面臨所有帳戶和密碼的密文。其實,在認(rèn)證一方監(jiān)聽網(wǎng)絡(luò)時才如此,當(dāng)監(jiān)聽被認(rèn)證方附近的網(wǎng)絡(luò)時,將得到極少量用戶的多次認(rèn)證信息,由于帳號和密碼的非一次性,分析和解密將成為可能,該方法安全性問題無法回避。
采用了“雙向”“問答式”或所謂“挑戰(zhàn)密碼式”的身份認(rèn)證方法,明顯的提高了認(rèn)證雙方的安全性,各種“雙向”“問答式”的身份認(rèn)證法,其產(chǎn)生問答數(shù)據(jù)和使用的加密算法是不一樣的,對回答式身份認(rèn)證方法的安全性討論也從未停止,一類正使用的方法是采用公鑰加密體制的身份認(rèn)證法,它可以方便的完成數(shù)字簽名和身份認(rèn)證,但一個重要的問題在于該類方法不能自由產(chǎn)生密碼,必需有一個完全信賴的第三方密碼分發(fā)機構(gòu),并且該機構(gòu)本身必須是絕對的安全和可信,且密碼分發(fā)過程不受到監(jiān)聽?;谒惴◤?fù)雜性和基于計算復(fù)雜性的加密算法,往往只有專家有較多的認(rèn)識,有的甚至連專家也不能給出清晰的安全性證明,普通人更難于理解和信任;基于復(fù)雜性的加密算法,隨著技術(shù)的進(jìn)步和數(shù)學(xué)的進(jìn)展都讓人產(chǎn)生不安全感。在問答式的認(rèn)證方法中,有的竟用隨機數(shù)明文作為問詢數(shù)據(jù),密文作為回答數(shù)據(jù),發(fā)明者似乎絕對的相信加密算法并且絕對的不相信攻擊者的能力。
在安防產(chǎn)品中,如車輛防盜器,電子鑰匙,遙控器等正在使用的裝置,有的竟沒有身份認(rèn)證過程,有身份認(rèn)證的,往往也只限于“單向加密”或所謂“滾動碼”方法,其安全性能需要大幅度提高才行。
發(fā)明內(nèi)容
本發(fā)明的目的在于為了解決上述問題,提高認(rèn)證系統(tǒng)的安全,特為用戶提供一種具有抗監(jiān)聽分析、防破解攻擊、使用安全、方法簡單、原理易懂、使用方便、應(yīng)用范圍廣的非生物物理特征的數(shù)字身份認(rèn)證方法。
本發(fā)明的目的是這樣實現(xiàn)的一種非生物物理特征的數(shù)字身份認(rèn)證方法,包括1、預(yù)先身份登記、生成身份碼和基本密碼Key,即認(rèn)證雙方需要事先互相登記生成對方的身份碼,并用某種有效的保密方式生成一個共用的基本密碼Key,各自加密基本密碼Key后,保存身份碼——密碼表中;2、身份認(rèn)證過程①被認(rèn)證方向認(rèn)證方發(fā)出認(rèn)證請求,同時將自己的身份碼明文傳輸給認(rèn)證方,等待接收認(rèn)證方傳來的問詢數(shù)據(jù);②認(rèn)證方接收認(rèn)證請求后,查找并解密被認(rèn)證方的身份碼對應(yīng)的基本密碼Key,同時由隨機數(shù)發(fā)生器產(chǎn)生兩個隨機數(shù)組M和N,其中N的維數(shù)大于M的維數(shù),以隨機數(shù)組M為參數(shù),用選擇函數(shù)Select從基本密碼Key中選擇一個部分排列作為實際加密密碼Key-ask,對隨機數(shù)組N進(jìn)行加密,所得的密文數(shù)據(jù)作為認(rèn)證方的問詢數(shù)據(jù)data-ask,接著將隨機數(shù)組M和問詢數(shù)據(jù)data-ask一起明文傳輸給被認(rèn)證方,同時切取隨機數(shù)組N的一部分作為參數(shù),用選擇函數(shù)select從基本密碼Key中另選一個部分排列作為實際加密密碼Key-cmp,再對隨機數(shù)組N進(jìn)行加密,所得密文數(shù)據(jù)作為比較數(shù)據(jù)data-cmp并暫存,等待被認(rèn)證方的回答數(shù)據(jù);③被認(rèn)證方根據(jù)收到的隨機數(shù)組M和問詢數(shù)據(jù)data-ask,先解密出對應(yīng)的基本密碼Key,用與認(rèn)證方相同的選擇函數(shù)select,從基本密碼Key中選擇一個部分排列作為解密密碼Key-ask對問詢數(shù)據(jù)data-ask進(jìn)行解密,解出隨機數(shù)組N,再用與認(rèn)證方相同的方法切取隨機數(shù)組N的一部分作為參數(shù),從基本密碼Key中用選擇函數(shù)select選擇另一個部分排列作為加密碼Key-answer,再對隨機數(shù)組N進(jìn)行加密,得到的密文數(shù)據(jù)作為回答數(shù)據(jù)data-answer,將該數(shù)據(jù)明文傳輸給認(rèn)證方,等待認(rèn)證結(jié)果;④認(rèn)證方將收到的回答數(shù)據(jù)data-answer與比較數(shù)據(jù)data-cmp進(jìn)行比較,根據(jù)異同判定是否相應(yīng)身份,并傳送或執(zhí)行相應(yīng)結(jié)果;⑤認(rèn)證成功后,用該次的加密密碼Key-answer對需要加密轉(zhuǎn)輸?shù)臄?shù)據(jù)分組進(jìn)行加密,對方用Key-answer對加密數(shù)據(jù)進(jìn)行解密。
認(rèn)證雙方的注銷方法請求注銷方應(yīng)提出注銷請求,認(rèn)證方對請求方進(jìn)行身份認(rèn)證,認(rèn)證成功則刪除請求方的身份碼及對應(yīng)的基本密碼,并通知注銷成功,注銷請求方收到成功信號后刪除對方的身份碼和對應(yīng)的基本密碼。
本發(fā)明的優(yōu)點在于每次身份認(rèn)證時,不傳輸作為關(guān)鍵數(shù)據(jù)的基本密碼的明文及其密文,作為認(rèn)證基礎(chǔ)的隨機數(shù)據(jù)N也只傳輸了其密文,沒有對應(yīng)的明文傳輸,在知道加解密算法和認(rèn)證方法的情況下,無法分析求解實際加解密密碼及認(rèn)證用的隨機數(shù)組N,更無法分析和推算基本密碼Key,可以看出,這種原理簡單清晰,認(rèn)證方法的算法過程完全透明,容易實現(xiàn)且使用方便的身份認(rèn)證法,卻能有效地應(yīng)付攻擊者對用戶認(rèn)證信息的監(jiān)聽記錄和破解分析,消除認(rèn)證過程中的安全隱患,保障用戶的權(quán)利和資源不受到侵犯,可靠的維護(hù)認(rèn)證過程的安全,提高認(rèn)證系統(tǒng)的安全性。
圖1為本發(fā)明身份認(rèn)證過程流程中,方框為數(shù)據(jù)處理程序或裝置,橢圓中為生成處理后保存或暫存的數(shù)據(jù),圖中左邊為認(rèn)證方,右邊為被認(rèn)證方,中間為某種數(shù)據(jù)傳輸通道。從圖中可以看出,認(rèn)證雙方各自保存有相同的基本密碼,認(rèn)證方的隨機數(shù)發(fā)生器每次認(rèn)證時產(chǎn)生兩個隨機數(shù)組M和N,隨機數(shù)組N作為認(rèn)證的基礎(chǔ),M和N的一部分作為選擇實際加解密密碼的選擇參數(shù),選擇函數(shù)用于在選擇參數(shù)控制下從基本密碼Key中選擇實際的加解密密碼,非線性的加密方程組和對應(yīng)的解密方程組,用于對隨機組N在加解密密碼控制下分別進(jìn)行加密和對其密文(即問詢數(shù)據(jù))進(jìn)行解密,比較器對認(rèn)證雙方用同一實際加密密碼對同一隨機數(shù)加密的數(shù)據(jù)進(jìn)行比較,從而判定是否相應(yīng)身份,如果沒有相同的基本加密,認(rèn)證結(jié)果將是否定的。從圖中可以看出,透明傳輸通道只傳輸了一個明文的選擇參數(shù)(即隨機數(shù)組M)、和隨機數(shù)組N的兩個密文數(shù)據(jù),沒有與密文對應(yīng)的明文,不構(gòu)成任何可供破解的條件,同時對基本密碼嚴(yán)加保密,認(rèn)證中既不傳輸其明文,也不傳輸其密文,更有效地確保了認(rèn)證系統(tǒng)的安全。
1、電子身份令牌包括處理器、存貯器、顯示屏、按鍵以及一紅外線、USB或無線傳輸接口,傳輸接口用于與計算機對應(yīng)的通信接口進(jìn)行通信和傳輸數(shù)據(jù),按鍵用于輸入身份碼和各種密碼,處理器、存貯器和相應(yīng)軟件自動完成本發(fā)明的身份認(rèn)證的算法和過程,顯示屏用于顯示處理結(jié)果、時間等。
2、系統(tǒng)登記需要身份認(rèn)證的雙方如網(wǎng)絡(luò)服務(wù)計算機與用戶之間互相登記對方各自生成的身份碼,并用可靠的保密手段,傳輸生成一基本密碼(16進(jìn)制或10進(jìn)制128位),用戶通過令牌按鍵或通信接口輸入電子身份令牌中,且令牌中的密碼只能在用戶輸入令牌口令后才能被加密輸出。
3、身份認(rèn)證過程和數(shù)據(jù)傳輸?shù)卿浭褂帽旧矸菡J(rèn)證法的網(wǎng)絡(luò)系統(tǒng)時,網(wǎng)絡(luò)系統(tǒng)認(rèn)證服務(wù)程序?qū)⑾蛴脩舻挠嬎銠C傳輸一認(rèn)證請求界面,提示輸入身份碼及相應(yīng)文字輸入框,用戶輸入身份碼回車后自動將身份碼傳輸給服務(wù)中心程序,服務(wù)中心程序查找相應(yīng)身份碼的基本密碼并發(fā)回包含用戶身份碼,隨機數(shù)及問詢數(shù)據(jù)的綜合數(shù)據(jù)到登錄界面顯示輸入框,該界面顯示輸入框為一可輸入輸出轉(zhuǎn)向的登錄框,在登錄框上點擊鼠標(biāo)右鍵,將提示轉(zhuǎn)向的通信接口,并給出一提示信息,當(dāng)轉(zhuǎn)向至令牌所在接口且令牌收到提示信息和綜合問詢數(shù)組后,自動按本發(fā)明的身份認(rèn)證法發(fā)送一回答數(shù)據(jù)給服務(wù)中心程序,服務(wù)中心程序判定是否相應(yīng)身份并提示是否登錄成功,若認(rèn)證成功,更將提示是否加密傳輸數(shù)據(jù),選擇加密傳輸數(shù)據(jù),用戶的選擇將使中心程序和令牌得到加密傳輸數(shù)據(jù)的信息,中心發(fā)送的數(shù)據(jù)將加密送給令牌,解密后到顯示界面或進(jìn)入文件,發(fā)往服務(wù)網(wǎng)絡(luò)的數(shù)據(jù)也將直接進(jìn)入令牌加密后,再發(fā)往服務(wù)中心程序處理。
權(quán)利要求
1.一種非生物物理特征的通用的數(shù)字身份認(rèn)證方法,其特征是①預(yù)先身份登記,生成身份基本密碼;②每次身份認(rèn)證時,從預(yù)先生成的保密基本密碼中,隨機選擇兩個部分排列作為兩個實際加密密碼,分別對該次產(chǎn)生的隨機數(shù)組進(jìn)行加密,得到的密文數(shù)據(jù)對,作為認(rèn)證方的問詢數(shù)據(jù)和被認(rèn)證方回答數(shù)據(jù),認(rèn)證方通過回答數(shù)據(jù)與事先生成的比較數(shù)據(jù)進(jìn)行比較,確認(rèn)被認(rèn)證方身份,其具體過程如下①被認(rèn)證方向認(rèn)證方發(fā)出認(rèn)證請求,同時將自己的身份碼明文傳輸給認(rèn)證方,等待接收認(rèn)證方傳來的問詢數(shù)據(jù);②認(rèn)證方接收認(rèn)證請求后,查找并解密被認(rèn)證方的身份碼對應(yīng)的基本密碼Key,同時由隨機數(shù)發(fā)生器產(chǎn)生兩個隨機數(shù)組M和N,其中N的維數(shù)大于M的維數(shù),以隨機數(shù)組M為參數(shù),用選擇函數(shù)Select從基本密碼Key中選擇一個部分排列作為實際加密密碼Key-ask,對隨機數(shù)組N進(jìn)行加密,所得的密文數(shù)據(jù)作為認(rèn)證方的問詢數(shù)據(jù)data-ask,接著將隨機數(shù)組M和問詢數(shù)據(jù)data-ask一起明文傳輸給被認(rèn)證方,同時切取隨機數(shù)組N的一部分作為參數(shù),用選擇函數(shù)select從基本密碼Key中另選一個部分排列作為實際加密密碼Key-cmp,再對隨機數(shù)組N進(jìn)行加密,所得密文數(shù)據(jù)作為比較數(shù)據(jù)data-cmp并暫存,等待被認(rèn)證方的回答數(shù)據(jù);③被認(rèn)證方根據(jù)收到的隨機數(shù)組M和問詢數(shù)據(jù)data-ask,先解密出對應(yīng)的基本密碼Key,用與認(rèn)證方相同的選擇函數(shù)select,從基本密碼Key中選擇一個部分排列作為解密密碼Key-ask對問詢數(shù)據(jù)data-ask進(jìn)行解密,解出隨機數(shù)組N,再用與認(rèn)證方相同的方法切取隨機數(shù)組N的一部分作為參數(shù),從基本密碼Key中用選擇函數(shù)select選擇另一個部分排列作為加密碼Key-answer,再對隨機數(shù)組N進(jìn)行加密,得到的密文數(shù)據(jù)作為回答數(shù)據(jù)data-answer,將該數(shù)據(jù)明文傳輸給認(rèn)證方,等待認(rèn)證結(jié)果;④認(rèn)證方將收到的回答數(shù)據(jù)data-answer與比較數(shù)據(jù)data-cmp進(jìn)行比較,根據(jù)異同判定是否相應(yīng)身份,并傳送或執(zhí)行相應(yīng)結(jié)果;⑤認(rèn)證成功后,用該次的加密密碼Key-answer對需要加密傳輸?shù)臄?shù)據(jù)分組進(jìn)行加密,對方用Key-answer對加密數(shù)據(jù)進(jìn)行解密。
全文摘要
一種非生物物理特征的可通用的數(shù)字身份認(rèn)證方法,特征是預(yù)先身份登記,生成身份碼和共同的基本密碼,每次身份認(rèn)證時從預(yù)先生成的基本密碼中,隨機選擇兩個部分排列作為兩個加密密碼,分別對該次產(chǎn)生的隨機數(shù)組進(jìn)行加密,得到的密文數(shù)據(jù)對,作為認(rèn)證方的問詢數(shù)據(jù)和被認(rèn)證方的回答數(shù)據(jù),認(rèn)證方跟據(jù)回答數(shù)據(jù)和自己產(chǎn)生的比較數(shù)據(jù)進(jìn)行比較,確認(rèn)被認(rèn)證方的身份;優(yōu)點是由于每次身份認(rèn)證時,使用一個該次產(chǎn)生的隨機數(shù)組作為認(rèn)證基礎(chǔ),不同時間產(chǎn)生的隨機數(shù)組不同,認(rèn)證用的問答數(shù)據(jù)對是該隨機數(shù)組的密文,不傳輸該隨機數(shù)組的明文,也不傳輸基本密碼的明文或密文,且加密密碼隨機變化,使攻擊者無法破解出基本密碼,確保了認(rèn)證過程的安全。
文檔編號G06F17/00GK1480871SQ0313525
公開日2004年3月10日 申請日期2003年6月20日 優(yōu)先權(quán)日2003年6月20日
發(fā)明者林建春 申請人:林建春