《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 一種基于動(dòng)態(tài)口令的挑戰(zhàn)應(yīng)答智能卡鑒別機(jī)制
一種基于動(dòng)態(tài)口令的挑戰(zhàn)應(yīng)答智能卡鑒別機(jī)制
蔣立軍,周安民
來(lái)源: 中國(guó)電表網(wǎng)
摘要: 本文中提出基于智能卡的動(dòng)態(tài)口令鑒別機(jī)制,,有效提高了口令的安全性,。 智能卡
Abstract:
Key words :

      對(duì)于特定的信息系統(tǒng)資源,應(yīng)該只有經(jīng)過(guò)授權(quán)的合法用戶才能訪問(wèn),,而問(wèn)題的關(guān)鍵就在于如何正確地鑒別用戶的真實(shí)身份,。身份鑒別是系統(tǒng)查核用戶的身份證明的過(guò)程,實(shí)質(zhì)上是查明用戶是否具有他所請(qǐng)求資源的存儲(chǔ)和使用權(quán),。信息技術(shù)領(lǐng)域的身份鑒別是通過(guò)將一個(gè)證據(jù)與實(shí)體身份綁定來(lái)實(shí)現(xiàn)的,。實(shí)體可能是用戶、主機(jī),、應(yīng)用程序甚至進(jìn)程.證據(jù)與身份之間是一一對(duì)應(yīng)的關(guān)系,,雙方通信過(guò)程中,一方實(shí)體向另一方提供這個(gè)證據(jù)證明自己的身份,,另一方通過(guò)相應(yīng)的機(jī)制來(lái)驗(yàn)證證據(jù),,以確定該實(shí)體是否與證據(jù)所宣稱的身份一致。           
      目前采用的身份鑒別技術(shù),,主要分為基于口令的身份鑒別,、基于智能卡的鑒別、基于密碼的身份鑒別,、基于生物特征的身份鑒別等幾類.其中,,口令鑒別是一種根據(jù)已知事物驗(yàn)證身份的方法,因價(jià)格低廉,、容易實(shí)現(xiàn),、方便使用等特點(diǎn)而被廣泛采用。但是,,這種鑒別方式同時(shí)也是用戶鑒別機(jī)制中最容易攻破的形式,。如果網(wǎng)絡(luò)上的竊聽者得到秘密口令,,他就能假冒用戶。一旦竊聽者能假冒用戶,,服務(wù)器就無(wú)法阻止竊聽者做合法用戶授權(quán)所做的任何事情,。          
      口令鑒別又分靜態(tài)口令鑒別和動(dòng)態(tài)口令鑒別.已有的研究表明傳統(tǒng)的靜態(tài)口令身份鑒別技術(shù)存在固有的安全性缺陷。因此有必要對(duì)口令身份鑒別技術(shù)在安全性方面進(jìn)行加固.采用動(dòng)態(tài)口令身份鑒別技術(shù)可以顯著提高口令身份鑒別方案的安全性,。動(dòng)態(tài)口令身份鑒別是根據(jù)每次用戶登錄系統(tǒng)時(shí)動(dòng)態(tài)口令鑒別信息互不相同,,使得通過(guò)直接的網(wǎng)絡(luò)竊聽來(lái)進(jìn)行口令猜測(cè)和重放攻擊變得根更加困難。但是,,如果這些動(dòng)態(tài)口令鑒別信息是從一個(gè)用戶記憶的口令推導(dǎo)而來(lái),,那么這個(gè)由用戶記憶的口令仍然容易受到口令猜測(cè)的攻擊。另外,,如果這些動(dòng)態(tài)口令是全部寫在紙片上讓用戶保存的話,,雖然可以防止上述攻擊,且口令驗(yàn)證碼也不會(huì)被重用,,但對(duì)于用戶來(lái)說(shuō),,需要攜帶大量的口令驗(yàn)證碼和保證這些口令驗(yàn)證碼的安全,并且每次都要輸入相對(duì)復(fù)雜的字符串,,這是很不方便的。另外,,這種方法也容易造成口令泄漏或中間人攻擊,。   
      為了有效地改進(jìn)口令鑒別的安全性,眾多文獻(xiàn)進(jìn)行了探討,,如通過(guò)增加口令的強(qiáng)度,,提高抗窮舉攻擊和字典攻擊的能力;將口令加密防止在傳輸中被竊聽,;采用動(dòng)態(tài)的一次性口令系統(tǒng)防止口令的重放等,。為了解決上述問(wèn)題,本文中提出基于智能卡的動(dòng)態(tài)口令鑒別機(jī)制,,有效提高了口令的安全性,。           
      智能卡身份鑒別是一種結(jié)合“用戶已知和已擁有”的身份鑒別方式。智能卡具有嵌入卡片內(nèi)部的CPU和存儲(chǔ)器,,同時(shí)還有一系列的安全機(jī)制來(lái)保證內(nèi)部數(shù)據(jù)的安全.利用智能卡具有數(shù)據(jù)處理能力,,可以在卡上進(jìn)行密鑰對(duì)的產(chǎn)生和進(jìn)行卡上的簽名和驗(yàn)證計(jì)算等較復(fù)雜的操作。用戶訪問(wèn)系統(tǒng)時(shí),,系統(tǒng)首先判斷智能卡的合法性,,然后由智能卡通過(guò)輸入的PIN來(lái)對(duì)持卡人的合法性進(jìn)行鑒別,然后系統(tǒng)對(duì)智能卡的合法性作進(jìn)一步的鑒別,。因此,,這種方法比基于口令的身份鑒別方法具有更好的安全性,,在一定程度上解決了口令身份鑒別方式中的問(wèn)題1(攻擊者可能對(duì)通信信道實(shí)施竊聽或截取通信內(nèi)容.)和問(wèn)題2(攻擊者可能利用系統(tǒng)中存在的漏洞獲取系統(tǒng)的口令文件進(jìn)行有關(guān)攻擊。目前智能卡正在不斷地取代磁卡作為一種更為有效的用來(lái)鑒別身份的個(gè)人持有物,。雖然基于智能卡的身份鑒別方式,,更好的安全性。但普通的智能卡的使用,,需要智能卡讀卡器,,這嚴(yán)重影響了其使用的方便性。隨著計(jì)算機(jī)通用串行總線標(biāo)準(zhǔn)USB接口的普及與發(fā)展,,基于USB接口和智能卡技術(shù)的USB
      KEY得到了快速的發(fā)展,。基于USBKEY的身份鑒別方式將是一種方便,、安全,、經(jīng)濟(jì)的身份鑒別技術(shù)。

1 動(dòng)態(tài)口令和智能卡         
      動(dòng)態(tài)口令也稱一次性口令.動(dòng)態(tài)口令隨產(chǎn)生口令的運(yùn)算因子的變化而變化.動(dòng)態(tài)口令的產(chǎn)生因子一般都采用雙運(yùn)算因子:其一,,為用戶的私有密鑰.它是代表用戶身份的識(shí)別碼,,是固定不變的。其二,,為變動(dòng)因子,。正是變動(dòng)因子的不斷變化,才產(chǎn)生了不斷變動(dòng)的動(dòng)態(tài)口令,。采用不同的變動(dòng)因子,,形成了不同的動(dòng)態(tài)口令認(rèn)證:基于時(shí)間同步認(rèn)證、基于事件同步認(rèn)證和挑戰(zhàn)/應(yīng)答方式的認(rèn)證技術(shù),。

     1)基于時(shí)間同步認(rèn)證是把時(shí)間作為變動(dòng)因子,,所謂“同步”是指用戶口令卡和認(rèn)證服務(wù)器所產(chǎn)生的口令在時(shí)間上必須同步。 
      2)基于事件同步認(rèn)證技術(shù)是把變動(dòng)的數(shù)字序列(事件序列)作為口令產(chǎn)生器的一個(gè)運(yùn)算因子,,與用戶的私有密鑰共同產(chǎn)生動(dòng)態(tài)口令,。其同步是指每次認(rèn)證時(shí),認(rèn)證服務(wù)器與口令卡保持相同的事件序列,。           
      3)挑戰(zhàn)/應(yīng)答方式的變動(dòng)因子是由認(rèn)證服務(wù)器產(chǎn)生的隨機(jī)數(shù)字序列,,它也是口令卡的口令生成的變動(dòng)因子,動(dòng)態(tài)口令技術(shù)采用一次一密的方法,,有效地保證了用戶身份的安全性,,近年來(lái)被廣泛應(yīng)用。          
      智能卡身份認(rèn)證是一種雙因子認(rèn)證方式(PIN碼+智能卡),,兩個(gè)因子缺一不可.即使攻擊者竊取了合法用戶的智能卡,,沒(méi)有正確的用戶PIN碼,仍然無(wú)法通過(guò)認(rèn)證系統(tǒng),;同理,,攻擊者只獲得了用戶PIN碼,,沒(méi)有合法的智能卡也無(wú)法通過(guò)認(rèn)證系統(tǒng),在基于智能卡的身份認(rèn)證方式中,,由于智能卡特有的硬件制造工藝,,可以抵御物理篡改攻擊,偽造的難度和成本很高,,其操作系統(tǒng)的安全機(jī)制可以防止攻擊者利用軟件方式竊取卡內(nèi)的機(jī)密信息,,極大地提高了安全性。

 2 智能卡的動(dòng)態(tài)口令鑒別機(jī)制設(shè)計(jì)        
      提出了一種利用挑戰(zhàn)/應(yīng)答方式的雙向鑒別機(jī)制,,客戶端和服務(wù)器的數(shù)據(jù)庫(kù)中擁有一個(gè)相同的計(jì)數(shù)器,,初態(tài)保持同步.新的機(jī)制包括注冊(cè)階段,登錄階段和鑒別階段.為方便敘述,,對(duì)本文中用到的符號(hào)和標(biāo)識(shí)作如下說(shuō)明:

          ·U:表示用戶
          ·S:遠(yuǎn)程服務(wù)器
          ·ID:用戶身份標(biāo)識(shí)符
          ·PW:用戶登錄口令
          ·Ks:服務(wù)器密鑰,,用于構(gòu)建注冊(cè)用戶的秘密信息
          ·hk(·):HMAC.SHA一1算法,密鑰為k
          ⊕:異或運(yùn)算

2.1 注冊(cè)階段

         1)用戶自由選擇登錄口令PW,,計(jì)算M1=h(ID⊕PW),,通過(guò)安全信道向服務(wù)器發(fā)送C 1和ID 進(jìn)行注冊(cè)。
          2)s收到注冊(cè)請(qǐng)求后,,生成隨機(jī)數(shù)r,,取出密鑰KS ,計(jì)算 K=h(ID⊕KS),, K1=h(ID⊕r),,V=
      k⊕hK1(C1),S將包含信息(r,,V,h(·),,hk (·)|的智能卡通過(guò)安全信道簽發(fā)給用戶,,此時(shí),s保存r,。

2.2 登錄階段

          1)用戶U要登錄到服務(wù)器S,,把智能卡插入終端,提交身份ID和口令PW,。

          2)智能卡判斷用戶身份ID的合法性,,若ID不合法,拒絕發(fā)送登錄請(qǐng)求,;否則取出R和V,,計(jì)算Ml  1=h(PW),k1 *
      =h(ID⊕r),,k *= V⊕hkl  * ,(M1* ),,并生成一個(gè)隨機(jī)數(shù)b,,計(jì)算c1= h( k *⊕TUI)⊕( k1
      *⊕TUI),其中TUI是用戶當(dāng)前的時(shí)間戳,。

          3)發(fā)送信息{ ID,,C1,TU1 }給遠(yuǎn)程服務(wù)器,,請(qǐng)求登錄,。

2.3 鑒別階段

          服務(wù)器.S收到登錄請(qǐng)求后,服務(wù)器s和智能卡會(huì)執(zhí)行下列操作:

         1)S驗(yàn)證ID的有效性.若ID不合法,,S拒絕登錄請(qǐng)求,;否則,S證TU1和TS1之間的有效性.如果TS 1- TU1≥△,,服務(wù)器拒絕登錄請(qǐng)求,;否則,s計(jì)算C1 *=h( k ⊕TUI)⊕h( k1 ⊕TUI),,比較C1* 與C1,,若C1* ≠C1,S中止本次會(huì)話,;否則,,S通過(guò)對(duì)用戶U的認(rèn)證。其中,,TS1是服務(wù)器當(dāng)前的時(shí)間戳,,△ 為期望的有效時(shí)間間隔。

          2)為實(shí)現(xiàn)雙向認(rèn)證,,S計(jì)算C2=h( K⊕TS2)⊕r)發(fā)送{C2,,TS2}給智能卡,其中TS2是服務(wù)器當(dāng)前的時(shí)間戳,。

          3)智能卡收到驗(yàn)證信息后,,驗(yàn)證TU2和 TS2之間的有效性。如果TU2-TS2≥△ ,,用戶拒絕服務(wù)器登錄,;否則,智能卡取出r,,計(jì)算C2 *=h((K* ⊕r),,比較C2 *與C2,若C2 *≠C2,,中止本次會(huì)話,;否則,通過(guò)對(duì) S 的身份認(rèn)證,。其中TU2是用戶當(dāng)前的時(shí)間戳,,△為期望的有效時(shí)間間隔,。

 3 安全性和有效性分析

      1)能夠有效抵抗重放攻擊和小數(shù)攻擊,在鑒別過(guò)程中引人了隨機(jī)數(shù),,保證了每次認(rèn)證信息的新鮮性,,不易實(shí)現(xiàn)猜測(cè)和偽造,能夠有效抵抗重放攻擊,。而由于實(shí)現(xiàn)原理與S/Key不同,,所以,不存在小數(shù)攻擊,。

       2)實(shí)現(xiàn)了雙向身份鑒別,,用戶的身份以及服務(wù)器的合法性得到了保護(hù)。同時(shí)本機(jī)制采用了雙因子認(rèn)證方式(動(dòng)態(tài)口令+智能卡),,攻擊者要想進(jìn)行口令猜測(cè)攻擊,,兩者缺一不可。另外,,由于用戶自由選擇口令進(jìn)行注冊(cè),,并且服務(wù)器總動(dòng)生成隨機(jī)數(shù)結(jié)合口令進(jìn)行哈希運(yùn)算,口令信息的隨機(jī)性更增加了口令猜測(cè)的難度,。


       4)采用了挑戰(zhàn)應(yīng)答機(jī)制,,引入了時(shí)間戳保持了客戶端與服務(wù)器的同步性,同時(shí)保證了鑒別信息的隨機(jī)性,,能夠有效抵抗假冒攻擊和重放攻擊,。

        5)本機(jī)制采用智能卡自帶的哈希運(yùn)算,計(jì)算代價(jià)低,,同時(shí),,服務(wù)器不需要保存認(rèn)證成功的口令,減小了系統(tǒng)開銷,,一定程度上大大提高了執(zhí)行性能,。

4 結(jié)束語(yǔ)

         
      本文中提出的動(dòng)態(tài)口令機(jī)制采用了智能卡的雙因子身份認(rèn)證,在挑戰(zhàn)應(yīng)答機(jī)制中引入時(shí)間戳,,保持通信雙方的同步性,,同時(shí)加入了動(dòng)態(tài)口令使鑒別信息不斷變動(dòng),,此外,,由于單向函數(shù)的安全性及復(fù)雜性,大大增加應(yīng)用系統(tǒng)的安全性和有效性,,實(shí)現(xiàn)了雙向身份鑒別,,能夠有效抵抗一些典型的攻擊。但是,,客戶端和服務(wù)器端運(yùn)算還是比較多,,需要進(jìn)一步的完善,。
 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。