專利名稱:一種動(dòng)態(tài)口令安全登錄方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種動(dòng)態(tài)口令登錄方法。
背景技術(shù):
面對(duì)開(kāi)放的網(wǎng)絡(luò)環(huán)境下,用戶的安全登錄是至關(guān)重要的。目前,
各類Web網(wǎng)站的用戶登錄一般都基于用戶名和口令的認(rèn)證方式實(shí)現(xiàn), 服務(wù)器端存放著用戶名和口令的相關(guān)信息,通過(guò)比對(duì)來(lái)自客戶端的登 錄信息以完成安全認(rèn)證。在密碼技術(shù)尚無(wú)普及之前, 一些網(wǎng)站(尤其 是一些免費(fèi)服務(wù)供應(yīng)站點(diǎn))在發(fā)送用戶登錄口令時(shí),直接將口令的明 文發(fā)送至服務(wù)器完成比對(duì)。針對(duì)明文口令傳輸,黑客利用網(wǎng)絡(luò)抓包工 具即可直接截獲用戶口令,極為不安全。因此,針對(duì)口令登錄的安全 問(wèn)題,已出現(xiàn)各種不同的登錄技術(shù)。我們根據(jù)每次用戶登錄時(shí)向服務(wù) 器傳輸?shù)牡卿浶畔⑹欠裣嗤?,將目前業(yè)界的各類登錄方案分成靜態(tài)口 令登錄和動(dòng)態(tài)口令登錄兩大類。下面就兩類口令登錄方案的現(xiàn)狀,分 別給出簡(jiǎn)要的描述及優(yōu)缺點(diǎn)分析 (1) 靜態(tài)口令方式
無(wú)加密技術(shù)直接將用戶名和口令明文發(fā)送至服務(wù)器。例如,我
們對(duì)tom.com的免費(fèi)郵箱登錄系統(tǒng)(非安全登錄方式)進(jìn)行抓包分析, 發(fā)現(xiàn)如下圖所示,用戶名和密碼都采用明文傳遞。該方案中,用戶口 令無(wú)論在網(wǎng)絡(luò)上傳送還是在服務(wù)器用戶數(shù)據(jù)庫(kù)中的保存都采用明文 處理,極不安全。
Hash運(yùn)算目前一般Web網(wǎng)站最為流行的方式,即將用戶口令先通過(guò)Hash運(yùn)算得到口令的Hash值,將Hash值傳遞給服務(wù)器,服 務(wù)器通過(guò)與用戶數(shù)據(jù)庫(kù)中對(duì)應(yīng)用戶的口令Hash值比對(duì),完成對(duì)用戶 口令的認(rèn)證。例如對(duì)Yahoo.com的免費(fèi)郵箱登錄系統(tǒng)分析,獲得如下 圖所示的用戶名和密碼,即口令已經(jīng)過(guò)Hash運(yùn)算成為一串Hash值 (passwd=d778dl8dc52e8e3230b2839clb7dfddc)。
該方案的特點(diǎn)是實(shí)現(xiàn)簡(jiǎn)單、口令安全, 一般可采用JavaScript等 瀏覽器端程序?qū)崿F(xiàn)客戶端的Hash運(yùn)算功能,即使口令的Hash值被抓 包分析也無(wú)法從Hash值中計(jì)算獲得口令明文,因此口令加密的安全 性依賴于Hash函數(shù)的安全性。但是,該方案無(wú)法抵抗重放攻擊,即 網(wǎng)絡(luò)中的黑客可簡(jiǎn)單地將截獲的Hash值直接重新發(fā)送至服務(wù)器以騙 取服務(wù)器認(rèn)證。存在重放攻擊的根本原因在于每次客戶端發(fā)送的 Hash值是不變的,跟客戶端向服務(wù)器發(fā)起的連接請(qǐng)求或時(shí)間無(wú)關(guān)。
HTTPS安全連接目前PKI環(huán)境下的SSL協(xié)議已被業(yè)界廣泛認(rèn) 為具有最高安全強(qiáng)度的解決方案,它采用數(shù)字證書(shū)認(rèn)證建立安全的加 密通道,HTTPS支持Web方式下的SSL協(xié)議。因此,目前一些大型 商用網(wǎng)站都支持HTTPS安全連接,如Hotmail等郵箱登錄。
該方案直接使用HTTPS證書(shū)認(rèn)證,輸入的口令直接在SSL加密 通道下傳遞,安全性高。但存在的最大問(wèn)題是配置HTTPS服務(wù)器需 購(gòu)買(mǎi)數(shù)字證書(shū)服務(wù),成本高昂, 一般的網(wǎng)站無(wú)法接受。另外,針對(duì)服 務(wù)器證書(shū)單向認(rèn)證方案(目前大部分網(wǎng)站都采用該形式),通過(guò)較深 入的技術(shù)手段HTTPS也面臨中間人攻擊。
綜合目前存在的靜態(tài)口令登錄方式,簡(jiǎn)單的方案盡管高效但容易 受到重放攻擊,而HTTPS安全登錄方式則存在配置復(fù)雜、成本高、 效率低等問(wèn)題。
5(2) 動(dòng)態(tài)口令方式
動(dòng)態(tài)Hash運(yùn)算針對(duì)一般的Hash 口令登錄方式,服務(wù)器每次接 受連接請(qǐng)求時(shí)為客戶端產(chǎn)生一個(gè)隨機(jī)值返回給客戶端,客戶端先為用 戶口令計(jì)算Hash值再將該Hash值和隨機(jī)值結(jié)合在一起計(jì)算一個(gè)動(dòng)態(tài) 的Hash值發(fā)送至服務(wù)器,服務(wù)器利用用戶數(shù)據(jù)庫(kù)中的口令Hash值和 產(chǎn)生的隨機(jī)值,計(jì)算同樣的Hash值進(jìn)行安全比對(duì)。
該方案可為每次用戶登錄產(chǎn)生不一樣的Hash值,可避免簡(jiǎn)單的 重放攻擊和中間人攻擊,但是其安全性完全依賴于Hash函數(shù)的安全 性。同時(shí),服務(wù)器端產(chǎn)生隨機(jī)數(shù)的算法如果被公開(kāi)或破解,例如截獲 JavaScript可分析隨機(jī)數(shù)的發(fā)生函數(shù),則網(wǎng)絡(luò)黑客可對(duì)其發(fā)起中間人 攻擊。另夕卜,密碼學(xué)界已提出了對(duì)目前一些流行Hash算法,如MD5、 SHA1等的攻擊方法,因此該方案的安全問(wèn)題值得關(guān)注。
公鑰加密利用RSA等公鑰加密算法,客戶端登錄之前先向服 務(wù)器發(fā)起一個(gè)臨時(shí)登錄請(qǐng)求,服務(wù)器動(dòng)態(tài)產(chǎn)生一個(gè)公鑰私鑰對(duì),將私 鑰保留并將公鑰回復(fù)給客戶端,客戶端再將輸入的口令用服務(wù)器公鑰 加密后發(fā)送至服務(wù)器,服務(wù)器利用其私鑰解密用戶加密的口令以獲得 對(duì)用戶口令的認(rèn)證。國(guó)內(nèi)著名的騰訊網(wǎng)(QQ郵箱)登錄時(shí)曾采用過(guò) 此類方案(目前已支持安全方式登錄)。
該方案的特點(diǎn)是用戶口令在網(wǎng)上經(jīng)公鑰加密后傳送,不可破解, 但客戶端需公鑰技術(shù)的支持,對(duì)瀏覽器實(shí)現(xiàn)來(lái)說(shuō)運(yùn)算量較大。同時(shí), 盡管客戶端每次向服務(wù)器連接可獲得不同的公鑰,即口令密文也每次 不同,但是該方案由于對(duì)服務(wù)器的認(rèn)證,因此無(wú)法抵抗中間人攻擊, 即黑客可利用偽造服務(wù)器產(chǎn)生公鑰對(duì)分發(fā)給客戶端以騙取客戶端信 任。令牌(Token) —次性動(dòng)態(tài)口令One-Time Password,即一次性 動(dòng)態(tài)口令認(rèn)證方式是一種安全級(jí)別較高的口令驗(yàn)證系統(tǒng), 一般在客戶 端需一個(gè)被稱為令牌Token的手持設(shè)備產(chǎn)生每次登錄的一個(gè)動(dòng)態(tài)口 令,口令傳送到服務(wù)器后,服務(wù)器端采用同樣的Token算法產(chǎn)生相同 的動(dòng)態(tài)口令比對(duì),最常用的方法是基于時(shí)間戳的口令發(fā)生裝置。
該類方案的優(yōu)點(diǎn)是口令完全動(dòng)態(tài)產(chǎn)生,具有一次性口令的安全特 點(diǎn),但問(wèn)題是口令登錄系統(tǒng)部署復(fù)雜、成本高,且存在Token設(shè)備的 時(shí)間同步等維護(hù)成本。
動(dòng)態(tài)口令登錄技術(shù)是一種普遍被接受的安全登錄方式,但目前存 在的很多方案難免存在使用復(fù)雜、構(gòu)建成本高等問(wèn)題。
發(fā)明內(nèi)容
為了克服己有的動(dòng)態(tài)口令登錄方法的使用復(fù)雜、不能兼顧安全性 和成本的不足,本發(fā)明提供一種使用簡(jiǎn)單、安全高效、成本低的動(dòng)態(tài) 口令安全登錄方法。
本發(fā)明解決其技術(shù)問(wèn)題所采用的技術(shù)方案是
一種動(dòng)態(tài)口令安全登錄方法,在所述登錄方法中,設(shè)置客戶端和 服務(wù)器擁有相同參數(shù)的權(quán)值同步模型,所述登錄方法包括如下步驟
(1) 、客戶端發(fā)起登錄請(qǐng)求,將用戶名發(fā)給服務(wù)器;
(2) 、服務(wù)器產(chǎn)生一個(gè)隨機(jī)數(shù),返回給客戶端;
(3) 、客戶端和服務(wù)器各自計(jì)算得到M = User|Passwd|R, H = SHAl(M), F = LFSR(H),其中User表示用戶名,Passwd表示 用戶口令,R表示隨機(jī)數(shù),"l"表示消息的級(jí)聯(lián),并根據(jù)隨機(jī)數(shù)
序列F映射計(jì)算得到相同的權(quán)值『"=『S ;
(4) 、客戶端根據(jù)隨機(jī)數(shù),讓權(quán)值同步模型學(xué)習(xí)P-R。/。n次,其R為隨機(jī)數(shù),n為預(yù)設(shè)值,將更新P次后的權(quán)值向量^ ,經(jīng)Hash 運(yùn)算后SHA1(『"發(fā)送給服務(wù)器;
(5) 、服務(wù)器同樣讓權(quán)值同步模型學(xué)習(xí)P次,得到更新P次后的權(quán) 值向量『s并計(jì)算其Hash值SHA1(『S);如果SHA1(F"二 SHAl(『s)認(rèn)證成功,否則失敗。
(6) 、動(dòng)態(tài)口令登錄結(jié)束。
作為優(yōu)選的一種方案所述的權(quán)值同步模型由兩個(gè)具備相同離散 參數(shù)的特殊神經(jīng)網(wǎng)絡(luò)構(gòu)成,每個(gè)神經(jīng)網(wǎng)絡(luò)由《個(gè)具有離散輸入和權(quán)值
的感知器組成。定義每個(gè)感知器的輸出值計(jì)算公式為
其中~(/=1,2,...&戶1,2,…,A0為第i個(gè)感知器的iV維輸入向量, ^(/=1,2,..1;戶1,2,...,7\0為第i個(gè)感知器的W維權(quán)值向量,取值為
十i或-i, ^取值為區(qū)間hL,+丄]內(nèi)的整數(shù)a為模型選定的正整數(shù))。
符號(hào)函數(shù)定義為
定義神經(jīng)網(wǎng)絡(luò)的最終輸出值計(jì)算公式為
a: (-1
作為優(yōu)選的再一種方案在所述步驟(2)中,M =
User|Passwd|R|URL, URL表示服務(wù)器域名。本發(fā)明的技術(shù)構(gòu)思為兩個(gè)輸入向量動(dòng)態(tài)變化但完全相同具有特 定結(jié)構(gòu)的新型離散神經(jīng)網(wǎng)絡(luò)模型(下文中將具體介紹該模型)通過(guò)比 較各自的輸出是否相同,不斷更新各自的權(quán)值向量,通過(guò)若干步這樣 的互學(xué)習(xí)后,最終可實(shí)現(xiàn)兩個(gè)神經(jīng)網(wǎng)絡(luò)的權(quán)值同步(我們稱已達(dá)到權(quán) 值同步的模型為權(quán)值同步模型,關(guān)于權(quán)值同步的實(shí)現(xiàn)過(guò)程及其它應(yīng)用
可參考已遞交的專利申請(qǐng)200710156220.3)。當(dāng)實(shí)現(xiàn)權(quán)值同步后,通過(guò) 輸入向量的不斷變化,模型的兩個(gè)權(quán)值會(huì)不斷更新但始終將保持同步, 這種權(quán)值同步的保持特性即可用于設(shè)計(jì)口令的動(dòng)態(tài)變化。
本發(fā)明的目的就是設(shè)計(jì)一個(gè)由客戶端和服務(wù)器組成的權(quán)值同步模 型,利用權(quán)值同步的特性,構(gòu)建一個(gè)結(jié)合傳統(tǒng)Hash運(yùn)算和權(quán)值同步 技術(shù)的新型動(dòng)態(tài)口令登錄模型,使每次傳輸?shù)恼J(rèn)證口令與權(quán)值同步相 關(guān)。所發(fā)明的登錄方法選用ActiveX控件技術(shù)實(shí)現(xiàn)瀏覽器客戶端的權(quán) 值同步計(jì)算模型,對(duì)用戶完全透明,即用戶按傳統(tǒng)的用戶名和口令框 輸入自己的用戶名和口令,權(quán)值同步模型將完成動(dòng)態(tài)口令的計(jì)算與認(rèn) 證,就算用戶在不同的網(wǎng)站設(shè)置了相同的用戶名和口令,本方案也可 保障產(chǎn)生完全不同的動(dòng)態(tài)登錄口令。
采用Hash運(yùn)算和權(quán)值同步模型,下面先介紹離散的權(quán)值同歩模 型。參照?qǐng)D1,圖1是離散的權(quán)值同步模型結(jié)構(gòu)圖示。模型輸入向量 為X,權(quán)值向量為『,輸入向量元素^(/=1,2,...&7=1,2,...,^及中間輸 出值(7力=1,2,...^)的取值都為+1或-1,對(duì)應(yīng)權(quán)值向量元素值w^勺取值
空間為區(qū)間[-丄,+丄]中的整數(shù)a為正整數(shù)),T為權(quán)值同步模型的最終
輸出值,取值范圍也為+l或-l,因?yàn)閬V=1 a:
,'=1
下面假設(shè)客戶端和服務(wù)器構(gòu)成一個(gè)權(quán)值同步模型,記權(quán)值向量、
輸入向量、中間輸出值、最終輸出值分別為『c、 Xc、 Z、,和『s、 Is 、 CTS、 一。
權(quán)值同步模型的學(xué)習(xí)與更新方法如下當(dāng)輸出相等時(shí),= 一,在 C,S兩端,選擇所有中間輸出與最終輸出相等的權(quán)值分量,即選擇滿 足
<=,的權(quán)值分量《^,作如下方式的權(quán)值更新-
其中,權(quán)值向量元素的取值保持在區(qū)間[-丄,丄]內(nèi),艮口
'). 1-丄《《0
顯然,對(duì)于權(quán)值同步模型,已實(shí)現(xiàn)了『c二『s,而由于xc^;^'始 終成立,因此后續(xù)的學(xué)習(xí)過(guò)程中,=一將始終成立,這也將確保權(quán)值
始終同步『e二W。
本發(fā)明的有益效果主要表現(xiàn)在
(1) 思路新穎,非經(jīng)典全新方法。突破傳統(tǒng)基于Hash、 Token 或公鑰技術(shù)的動(dòng)態(tài)口令登錄技術(shù),具有較大創(chuàng)新意義。
(2) 流程簡(jiǎn)單,易于開(kāi)發(fā)。該方法的軟件實(shí)現(xiàn)對(duì)瀏覽器客戶端運(yùn) 算要求低,適用于各類瀏覽器端的開(kāi)發(fā),建議采用ActiveX控件技術(shù) 以加強(qiáng)程序安全性。
(3) 運(yùn)行效率高、計(jì)算耗費(fèi)低。該方法不涉及大數(shù)運(yùn)算,程序僅 需執(zhí)行簡(jiǎn)單的加法運(yùn)算和異或操作,執(zhí)行速度快。
(4) 操作簡(jiǎn)便、移植性好。采用傳統(tǒng)的輸入框輸入用戶名和口令的使用模式,無(wú)需額外硬件設(shè)備,容易被接受和推廣。登錄模型部署 簡(jiǎn)單,移植性好,適用于各類平臺(tái)。
(5)安全性高。權(quán)值同步模型屬于完全非線性變換,能抵抗各類
密碼分析;登錄時(shí)的口令傳送采用二次Hash值加強(qiáng)保護(hù);方案采用
服務(wù)器隨機(jī)數(shù)方法,可有效抵抗重放攻擊和中間人攻擊;方案添加了
URL計(jì)算,可有效預(yù)防用戶因使用習(xí)慣問(wèn)題在不同網(wǎng)站設(shè)置相同用戶
名和密碼引起的安全問(wèn)題。
圖1是離散的權(quán)值同步模型結(jié)構(gòu)圖。
圖2是基于權(quán)值同步和Hash的動(dòng)態(tài)口令登錄流程圖。
具體實(shí)施例方式
下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步描述。
參照?qǐng)D2 , 一種動(dòng)態(tài)口令安全登錄方法,在所述登錄方法中,設(shè) 置客戶端和服務(wù)器擁有相同參數(shù)的權(quán)值同步模型,所述登錄方法包括 如下步驟
(1) 、客戶端發(fā)起登錄請(qǐng)求,將用戶名發(fā)給服務(wù)器;
(2) 、服務(wù)器產(chǎn)生一個(gè)隨機(jī)數(shù),返回給客戶端;
(3) 、客戶端和服務(wù)器各自計(jì)算得到M = User|Passwd|R, H = SHA1(M), F = LFSR(H),其中User表示用戶名,Passwd表示 用戶口令,R表示隨機(jī)數(shù),"l"表示消息的級(jí)聯(lián),并根據(jù)隨機(jī)數(shù) 序列F映射計(jì)算得到相同的權(quán)值『e =『s;
(4) 、客戶端根據(jù)隨機(jī)數(shù),讓權(quán)值同步模型學(xué)習(xí)P:R。/。n次,其中 R為隨機(jī)數(shù),n為預(yù)設(shè)值,將更新P次后的權(quán)值向量f ,經(jīng)Hash運(yùn)算后SHAl(『c撥送給服務(wù)器;
(5) 、服務(wù)器同樣讓權(quán)值同步模型學(xué)習(xí)P次,得到更新P次后的權(quán) 值向量『s并計(jì)算其Hash值SHA1(『S);如果SHA1(^)= SHAl(『s)認(rèn)證成功,否則失敗。
(6) 、動(dòng)態(tài)口令登錄結(jié)束。
所述的權(quán)值同步模型描述如下模型參數(shù)定義-
模型由兩個(gè)具備相同離散參數(shù)的特殊神經(jīng)網(wǎng)絡(luò)構(gòu)成,每個(gè)神經(jīng)網(wǎng) 絡(luò)由《個(gè)具有離散輸入和權(quán)值的感知器組成。定義每個(gè)感知器的輸出
值計(jì)算公式為
其中x^=l,2,.. JC' ^1,2,…,TV)為第i個(gè)感知器的W維輸入向量, ^.(/=1,2,...&_/=1,2,...局為第1個(gè)感知器的^維權(quán)值向量, 取值為
十i或-i,,.取值為區(qū)間[-丄,+丄]內(nèi)的整數(shù)a為模型選定的正整數(shù))。
符號(hào)函數(shù)定義為
定義神經(jīng)網(wǎng)絡(luò)的最終輸出值計(jì)算公式為
參數(shù)初始化操作
記權(quán)值同步模型的兩個(gè)神經(jīng)網(wǎng)絡(luò)為/^,w,相應(yīng)的權(quán)值向量、輸入
12向量、最終輸出值分別記為『c、 f 、 crc、 一和『s、 Xs 、 —、 rs。 初始化參數(shù)如下
其中,f(t)=Zs(t),這里的時(shí)間參數(shù)t指每一步權(quán)值同步互學(xué)習(xí) 后,兩方的權(quán)值向量保持同步。
權(quán)值更新操作
給,一個(gè)權(quán)值同步的學(xué)習(xí)步數(shù)值n,雙方的權(quán)值向量按如下更新 公式執(zhí)行n次更新操作。
對(duì)滿足一、,和crf =一的所有權(quán)值分量『,、『s,計(jì)算 《《-《crf
記n次更新操作后的權(quán)值向量為『e'、『s'。 結(jié)論『c'f。
在所述步驟(2)中,M = User|Passwd|R|URL, URL表示服務(wù)器域名。
本實(shí)施例結(jié)合傳統(tǒng)的隨機(jī)數(shù)發(fā)生器LFSR (LFSR為密碼學(xué)中的公 知技術(shù))和Hash算法SHAl (SHA1算法也是密碼學(xué)中的公知技術(shù)), 我們給出一個(gè)新型的動(dòng)態(tài)口令登錄方案如圖2所示。設(shè)置客戶端C和 服務(wù)器S擁有相同參數(shù)(/:=3丄=3,^=川0)的權(quán)值同步模型,User表 示用戶名,Passwd表示用戶口令,R表示隨機(jī)數(shù),URL表示服務(wù)器域 名,T表示消息的級(jí)聯(lián)。登錄方案的具體描述如下
(1) C發(fā)起登錄請(qǐng)求,將User發(fā)給S;
(2) S產(chǎn)生一個(gè)隨機(jī)數(shù)R,返回給C;
(3) C和S各自計(jì)算得到 M = User|Passwd|R|URL, H = SHA1(M), F = LFSR(H),并根據(jù)隨機(jī)數(shù)序列F映射計(jì)算得到相同的權(quán)值『c=『S,具體的做法是每取3位二進(jìn)制Fi,w,i+2,映射得到一個(gè)權(quán)
值元素的值(權(quán)值向量中一共有300個(gè)元素,則需取900位二 進(jìn)制隨機(jī)序列),根據(jù)第一位是否為O決定權(quán)值的正負(fù),后二位 轉(zhuǎn)化成十進(jìn)制(十進(jìn)制取值在[-3,3]內(nèi))。例如F-101010...,則 《=^=+1,《=《=-2,....;確定同步的權(quán)值后,再計(jì)算相 同的輸入向量,可將剩下的F序列直接轉(zhuǎn)化成輸入向量,即只 要將二進(jìn)制序列中的0映射為-1。例如,F(xiàn)=101010...,則
Xf6=J^6=0,…,權(quán)值同步模型經(jīng)過(guò)一次互學(xué)習(xí)后,輸入向量 需動(dòng)態(tài)變化但保持相同,即只要繼續(xù)選取F 二進(jìn)制序列的值賦 予輸入向量即可。
(4) C根據(jù)隨機(jī)數(shù)R,讓權(quán)值同步模型學(xué)習(xí)P = R%300次(取隨機(jī)數(shù) R除以300的余數(shù)),這里n取為300, n也可預(yù)設(shè)為其它值。 將更新P次后的權(quán)值向量^ ,經(jīng)Hash運(yùn)算后SHA1(『"發(fā)送 給S;
(5) S同樣讓權(quán)值同步模型學(xué)習(xí)P次(權(quán)值同步模型的最終輸出位 保持相等,因此無(wú)需交換輸出即可執(zhí)行權(quán)值更新),得到更新P 次后的權(quán)值向量『s并計(jì)算其Hash值SHAl(『s),如果SHAl(『c) 二SHAl(^s)認(rèn)證成功,否則失敗。
(6) 動(dòng)態(tài)口令登錄結(jié)束。
開(kāi)發(fā)的ActiveX安全控件應(yīng)用實(shí)例分析
(l)在服務(wù)器http:〃localhost上注冊(cè)用戶名tieming,注冊(cè)用戶口令 123456(2) 用戶在登錄網(wǎng)站中輸入用戶名tieming,密碼123456
(3) 服務(wù)器產(chǎn)生隨機(jī)數(shù)R4234,發(fā)送給客戶端
(4) 客戶端和服務(wù)器計(jì)算SHAl( tiemingl2345612341ocalhost) 2ef67f5288al 7796084e79541318fe39dl 6f46d7
利用LFSR計(jì)算得到二進(jìn)制序列F =
利用二進(jìn)制映射計(jì)算得到 WC=WS=(3 , 1,-1 , 1 ,隱2,0,2,3 ,-2,誦1,0,3, …)
XC=XS=(1,-1,-1,-1,1,-1,1,1,-1,-1,......)
(5) 客戶端通過(guò)?=1234%300=34次權(quán)值更新后,得到 Wc' = (2,3,-1,-3,0,0,2,1,1,-3,1,0,.....),
計(jì)算 SHA1(WC)=
378042cd5e73e04daldf9db374傷dc5a2639af5 并發(fā)送給服務(wù)器
(6) 服務(wù)器通過(guò)與客戶端相同的方式更新得到 Ws, = (2,3,-1,-3,0,0,2,1,1,-3,l,O,.....) 計(jì)算 SHA1(WS')=
378042cd5e73e04daldf9db374f6dc5a2639af5 顯然有 SHA1(WC') ==SHA1(WS')
(7) 客戶端瀏覽器顯示登錄成功。
權(quán)利要求
1、一種動(dòng)態(tài)口令安全登錄方法,其特征在于在所述登錄方法中,設(shè)置客戶端和服務(wù)器擁有相同參數(shù)的權(quán)值同步模型,所述登錄方法包括如下步驟(1)、客戶端發(fā)起登錄請(qǐng)求,將用戶名發(fā)給服務(wù)器;(2)、服務(wù)器產(chǎn)生一個(gè)隨機(jī)數(shù),返回給客戶端;(3)、客戶端和服務(wù)器各自計(jì)算得到M=User|Passwd|R,H=SHA1(M),F(xiàn)=LFSR(H),其中User表示用戶名,Passwd表示用戶口令,R表示隨機(jī)數(shù),“|”表示消息的級(jí)聯(lián),并根據(jù)隨機(jī)數(shù)序列F映射計(jì)算得到相同的權(quán)值WC=WS;(4)、客戶端根據(jù)隨機(jī)數(shù),讓權(quán)值同步模型學(xué)習(xí)P=R%n次,其中R為隨機(jī)數(shù),n為預(yù)設(shè)值,將更新P次后的權(quán)值向量WC,經(jīng)Hash運(yùn)算后SHA1(WC)發(fā)送給服務(wù)器;(5)、服務(wù)器同樣讓權(quán)值同步模型學(xué)習(xí)P次,得到更新P次后的權(quán)值向量WS并計(jì)算其Hash值SHA1(WS);如果SHA1(WC)=SHA1(WS)認(rèn)證成功,否則失??;(6)、動(dòng)態(tài)口令登錄結(jié)束。
2、 如權(quán)利要求l所述的動(dòng)態(tài)口令安全登錄方法,其特征在于所述的 權(quán)值同步模型所述的權(quán)值同步模型由兩個(gè)具備相同離散參數(shù)的特殊神 經(jīng)網(wǎng)絡(luò)構(gòu)成,每個(gè)神經(jīng)網(wǎng)絡(luò)由《個(gè)具有離散輸入和權(quán)值的感知器組成。定義每個(gè)感知器的輸出值計(jì)算公式為<formula>formula see original document page 2</formula>其中xy<z'=l,2,..戶1,2,…,A0為第i個(gè)感知器的W維輸入向量,,(/=1,2,...&_/=1,2,...,^為第i個(gè)感知器的^維權(quán)值向量,^取值為 +1或-1, 取值為區(qū)間[-Z,+Z]內(nèi)的整數(shù),丄為模型選定的正整數(shù);符號(hào)函數(shù)定義為定義神經(jīng)網(wǎng)絡(luò)的最終輸出值計(jì)算公式為n/g"(n^",),z' =1,2,...,《。
3、如權(quán)利要求1或2所述的動(dòng)態(tài)口令安全登錄方法,其特征在于在 所述步驟(2)中,M = User|Passwd|R|URL, URL表示服務(wù)器域名。
全文摘要
一種動(dòng)態(tài)口令安全登錄方法,設(shè)置客戶端和服務(wù)器擁有相同參數(shù)的權(quán)值同步模型,包括如下步驟客戶端發(fā)起登錄請(qǐng)求,將用戶名發(fā)給服務(wù)器;服務(wù)器產(chǎn)生一個(gè)隨機(jī)數(shù),返回給客戶端;客戶端和服務(wù)器各自計(jì)算得到M=User|Passwd|R,H=SHA1(M),F(xiàn)=LFSR(H),并根據(jù)隨機(jī)數(shù)序列F映射計(jì)算得到相同的權(quán)值W<sup>C</sup>=W<sup>S</sup>;客戶端根據(jù)隨機(jī)數(shù),讓權(quán)值同步模型學(xué)習(xí)P=R%n次,其中R為隨機(jī)數(shù),n為預(yù)設(shè)值,將更新P次后的權(quán)值向量W<sup>C</sup>,經(jīng)Hash運(yùn)算后SHA1(W<sup>C</sup>)發(fā)送給服務(wù)器;服務(wù)器同樣讓權(quán)值同步模型學(xué)習(xí)P次,得到更新P次后的權(quán)值向量W<sup>S</sup>并計(jì)算其Hash值SHA1(W<sup>S</sup>);如果SHA1(W<sup>C</sup>)=SHA1(W<sup>S</sup>)認(rèn)證成功,否則失敗。本發(fā)明使用簡(jiǎn)單、安全高效、成本低。
文檔編號(hào)H04L9/32GK101459516SQ20081012207
公開(kāi)日2009年6月17日 申請(qǐng)日期2009年2月20日 優(yōu)先權(quán)日2009年2月20日
發(fā)明者頡 江, 王小號(hào), 蔡家楣, 波 陳, 陳鐵明 申請(qǐng)人:浙江工業(yè)大學(xué)