国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      服務(wù)器與移動(dòng)設(shè)備間秘密共享的單一口令三方認(rèn)證方法與流程

      文檔序號(hào):12490996閱讀:290來源:國知局
      服務(wù)器與移動(dòng)設(shè)備間秘密共享的單一口令三方認(rèn)證方法與流程

      本發(fā)明屬于網(wǎng)絡(luò)安全技術(shù)領(lǐng)域,具體涉及口令驗(yàn)證用戶身份,是一種基于服務(wù)器與便攜移動(dòng)設(shè)備之間秘密共享的單一口令三方認(rèn)證方法。在有便攜式移動(dòng)設(shè)備參與的情況下,用戶個(gè)人電腦端和服務(wù)器端使用單一口令進(jìn)行安全認(rèn)證。此方法可應(yīng)用于任何在線認(rèn)證服務(wù)中。



      背景技術(shù):

      一般而言,用戶若想訪問一個(gè)在線服務(wù),需要使用自己預(yù)先設(shè)置的口令與服務(wù)器進(jìn)行認(rèn)證,認(rèn)證成功后才能訪問該在線服務(wù)。而在現(xiàn)有的三方身份認(rèn)證方法中,用戶常常會(huì)借助一個(gè)輔助設(shè)備,如手機(jī)與服務(wù)器進(jìn)行認(rèn)證。通常情況下,用戶將自己用于認(rèn)證的信息,如認(rèn)證信息為密鑰時(shí),用口令將其加密形成密文后,將密文存儲(chǔ)在手機(jī)端;當(dāng)需要登錄服務(wù)器時(shí),用戶取出存儲(chǔ)在手機(jī)端的密文,解密此密文后,用得到的認(rèn)證密鑰與服務(wù)器進(jìn)行認(rèn)證。用戶在設(shè)置口令時(shí),往往會(huì)選擇簡單易記的,即為弱口令;而弱口令如果遭遇釣魚攻擊、蜜罐攻擊或在線字典攻擊等,則對(duì)手就極有可能猜到口令,從而偽裝成用戶得到認(rèn)證密鑰。此外,認(rèn)證信息用口令簡單加密后存儲(chǔ)在手機(jī)端,若手機(jī)丟失,易被對(duì)手離線暴力破解從而得到認(rèn)證密鑰。

      更糟糕的是,當(dāng)用戶和多個(gè)在線服務(wù)進(jìn)行認(rèn)證的時(shí)候,經(jīng)常會(huì)頻繁地重復(fù)使用他們的口令,平均每三個(gè)不同在線服務(wù)使用同一口令。當(dāng)?shù)卿洉r(shí),用戶會(huì)忘記具體是哪一個(gè)口令,所以會(huì)反復(fù)試驗(yàn),這就意味著惡意的在線服務(wù)不僅會(huì)得到該服務(wù)器的口令,還會(huì)得到其他服務(wù)器的口令。



      技術(shù)實(shí)現(xiàn)要素:

      本發(fā)明的目的在于解決已有單一口令三方身份認(rèn)證中面臨的安全問題,提出一種服務(wù)器與移動(dòng)設(shè)備間秘密共享的單一口令三方認(rèn)證方法。

      本發(fā)明是一種服務(wù)器與移動(dòng)設(shè)備間秘密共享的單一口令三方認(rèn)證方法,其中的移動(dòng)設(shè)備,如手機(jī)、iPad等,以手機(jī)作為移動(dòng)設(shè)備為例,認(rèn)證過程涉及到PC端、服務(wù)器端和手機(jī)端,其特征在于,用戶用于認(rèn)證的信息存儲(chǔ)于服務(wù)器端和手機(jī)端,PC端并未存儲(chǔ)用戶任何認(rèn)證信息和私密信息,認(rèn)證過程包括以下步驟:

      1)注冊階段:

      1a)用戶在PC端輸入注冊信息,包括用戶名和口令p;同時(shí),PC端隨機(jī)產(chǎn)生認(rèn)證密鑰K,其中口令和認(rèn)證秘鑰共同構(gòu)成認(rèn)證信息;

      1b)PC端經(jīng)過編碼計(jì)算,再對(duì)口令和認(rèn)證秘鑰分別進(jìn)行隨機(jī)串選擇和相除計(jì)算,將口令和認(rèn)證密鑰分別隨機(jī)的變?yōu)閮刹糠?,其中針?duì)口令所選擇的隨機(jī)串稱為口令注冊第一子串,口令和口令注冊第一子串進(jìn)行相除計(jì)算得到的口令的另一部分稱為口令注冊第二子串,因?yàn)榭诹钭缘谝蛔哟请S機(jī)選擇的,口令注冊第二子串是對(duì)其進(jìn)行計(jì)算而得到的,因此可以被認(rèn)為是隨機(jī)串;針對(duì)認(rèn)證秘鑰所選擇的隨機(jī)串稱為認(rèn)證秘鑰第一子串,認(rèn)證秘鑰和認(rèn)證秘鑰第一子串進(jìn)行相除計(jì)算得到的認(rèn)證秘鑰的另一部分稱為認(rèn)證秘鑰第二子串,因?yàn)檎J(rèn)證秘鑰第一子串是隨機(jī)選擇的,認(rèn)證秘鑰第二子串是對(duì)其進(jìn)行計(jì)算而得到的,因此也可以被認(rèn)為是隨機(jī)串;將彼此獨(dú)立的口令注冊第一子串和認(rèn)證秘鑰第一子串共同作為部分認(rèn)證信息,對(duì)其進(jìn)行加密產(chǎn)生注冊密文F后,連同認(rèn)證密鑰K以及用戶名發(fā)給服務(wù)器端;口令注冊第二子串和認(rèn)證秘鑰第二子串共同構(gòu)成另一部分認(rèn)證信息,將另一部分認(rèn)證信息直接輸入并存儲(chǔ)于手機(jī)端;

      1c)服務(wù)器端將收到的認(rèn)證密鑰K和注冊密文F與用戶名進(jìn)行對(duì)應(yīng)存儲(chǔ),完成用戶在服務(wù)器的注冊;

      2)登錄階段:即用戶想要獲得某在線服務(wù)器的服務(wù)時(shí),需要與服務(wù)器進(jìn)行身份認(rèn)證,認(rèn)證通過后,用戶方可獲得服務(wù);

      2a)用戶登陸服務(wù)器時(shí),用戶在PC端輸入用戶名和口令;此時(shí)的口令可能正確,也可能不正確,若正確,即和注冊階段的口令一致,若不正確,即和注冊階段的口令不一致,因此,將此時(shí)輸入的口令記為p’;

      2b)PC端將口令隨機(jī)變?yōu)閮刹糠?,此時(shí)選擇的隨機(jī)串稱為口令登陸第一子串,口令和口令登陸第一子串相除計(jì)算出的另一部分稱為口令登陸第二子串,因?yàn)榭诹畹卿浀谝蛔哟请S機(jī)選擇的,口令登錄第二子串是對(duì)其進(jìn)行計(jì)算而得到的,因此可以被認(rèn)為是隨機(jī)串;將口令登陸第一子串加密后得到登錄密文F’,并將該登錄密文F’發(fā)給服務(wù)器端,而將口令登陸第二子串輸入手機(jī)端;

      2c)服務(wù)器端對(duì)2b)步驟的登陸密文F’解密后得到口令登陸第一子串,對(duì)1c)的注冊密文F解密后可得到口令注冊第一子串和認(rèn)證秘鑰第一子串,將口令注冊第一子串和口令登陸第一子串這兩個(gè)子串進(jìn)行計(jì)算、加密,形成部分核對(duì)口令密文E1,然后將該部分核對(duì)口令密文E1發(fā)送給手機(jī)端;

      2d)手機(jī)端先對(duì)已存儲(chǔ)的口令注冊第二子串和口令登陸第二子串進(jìn)行計(jì)算、加密,形成另一部分核對(duì)口令密文E2,將其與2c)步驟中得到的部分核對(duì)口令密文E1進(jìn)行合并,計(jì)算出完整核對(duì)口令密文E并發(fā)送給服務(wù)器端;

      2e)服務(wù)器端解密2d)步驟產(chǎn)生的完整核對(duì)口令密文E,驗(yàn)證口令是否正確;若正確,服務(wù)器端生成認(rèn)證隨機(jī)數(shù),然后對(duì)已存儲(chǔ)的認(rèn)證密鑰第一子串進(jìn)行加密產(chǎn)生密鑰子串密文后,將此密鑰子串密文和認(rèn)證隨機(jī)數(shù)發(fā)給PC端,口令驗(yàn)證正確后服務(wù)器產(chǎn)生的認(rèn)證隨機(jī)數(shù)用于最終的身份認(rèn)證;

      2f)PC端解密2e)步驟的密鑰子串密文得到認(rèn)證密鑰第一子串,然后從手機(jī)端取得認(rèn)證密鑰第二子串,經(jīng)除計(jì)算的反運(yùn)算恢復(fù)出認(rèn)證密鑰;

      2g)PC端將認(rèn)證密鑰和認(rèn)證隨機(jī)數(shù)作為密碼學(xué)雜湊函數(shù)的輸入,將此函數(shù)的輸出結(jié)果即最終的認(rèn)證密文發(fā)送給服務(wù)器端;

      2h)服務(wù)器端利用注冊階段得到的認(rèn)證密鑰對(duì)最終認(rèn)證密文進(jìn)行解密,解密得到的結(jié)果與認(rèn)證隨機(jī)數(shù)進(jìn)行對(duì)比,若結(jié)果與認(rèn)證隨機(jī)數(shù)不一致,則不允許通過登錄,否則,若結(jié)果與認(rèn)證隨機(jī)數(shù)一致,則允許通過登錄,如果登陸成功,則獲得對(duì)用戶的單向身份認(rèn)證結(jié)果,進(jìn)而獲得所需服務(wù),完成服務(wù)器與移動(dòng)設(shè)備間秘密共享的單一口令三方認(rèn)證。

      到目前為止,還沒有一種認(rèn)證方法可以實(shí)現(xiàn)在有便攜式移動(dòng)設(shè)備參與的情況下,僅使用單一口令就可以和多個(gè)在線服務(wù)進(jìn)行安全認(rèn)證。

      與現(xiàn)有技術(shù)相比,本發(fā)明具有如下優(yōu)點(diǎn):

      1)本發(fā)明中PC端并未存儲(chǔ)用戶任何認(rèn)證信息或私密信息,可防止PC端密文被暴力破解;手機(jī)端和服務(wù)器端共享用戶用于認(rèn)證的秘密信息(口令和認(rèn)證密鑰),不論手機(jī)端或服務(wù)器端中任何一方遭受攻擊,都不會(huì)影響信息的安全;

      2)本發(fā)明中即使用戶的口令被攻擊者獲得,也不會(huì)影響信息的安全,因?yàn)閱为?dú)的口令無法完成認(rèn)證,還需要手機(jī)的輔助;且完全無需擔(dān)心傳輸信道的安全性,因?yàn)閷?duì)認(rèn)證密鑰進(jìn)行了編碼映射、隨機(jī)取串以及混淆擴(kuò)散等操作,使得認(rèn)證密鑰的分布更加均勻,隨機(jī)性更好;

      3)本發(fā)明中用戶僅需記住一個(gè)口令就可以和多個(gè)在線服務(wù)進(jìn)行安全認(rèn)證,減輕了用戶記憶的負(fù)擔(dān)。

      附圖說明

      圖1為本發(fā)明的總流程框圖;

      圖2為本發(fā)明的用戶注冊階段三方的信息交互過程圖;

      圖3為本發(fā)明的用戶登錄階段三方的信息交互過程圖;

      圖4為本發(fā)明在用戶口令長度不同時(shí),注冊階段耗費(fèi)的時(shí)間對(duì)比圖;

      圖5為本發(fā)明在用戶口令長度不同時(shí),登錄階段耗費(fèi)的時(shí)間對(duì)比圖;

      圖6為本發(fā)明在用戶口令復(fù)雜度不同時(shí),注冊階段耗費(fèi)的時(shí)間對(duì)比圖;

      圖7為本發(fā)明在用戶口令復(fù)雜度不同時(shí),登錄階段耗費(fèi)的時(shí)間對(duì)比圖。

      具體實(shí)施方式

      下面結(jié)合附圖,對(duì)本發(fā)明作詳細(xì)描述。

      實(shí)施例1

      隨著網(wǎng)絡(luò)的快速發(fā)展和普及,人們常常需要使用各種各樣的在線服務(wù)和應(yīng)用。這些網(wǎng)絡(luò)服務(wù)和應(yīng)用盡管給人們的生活提供了便利;但是其也常常與人們的私密信息如口令、銀行賬戶等直接相關(guān)。因此,如何更安全地保護(hù)用戶的私密信息成為當(dāng)今網(wǎng)絡(luò)安全技術(shù)領(lǐng)域急需解決的一個(gè)問題。本發(fā)明正是在這個(gè)領(lǐng)域做出的探索和創(chuàng)新。

      本發(fā)明提供了一種服務(wù)器與移動(dòng)設(shè)備間秘密共享的單一口令三方認(rèn)證方法,其中的移動(dòng)設(shè)備為手機(jī)、iPad等。認(rèn)證過程涉及到PC端、服務(wù)器端和移動(dòng)設(shè)備端,本例中移動(dòng)設(shè)備為手機(jī),因此移動(dòng)設(shè)備端直接稱為手機(jī)端,針對(duì)其他種類的移動(dòng)設(shè)備,操作原理及步驟均相同。參見圖1,用戶用于認(rèn)證的信息存儲(chǔ)于服務(wù)器端和手機(jī)端,PC端并未存儲(chǔ)用戶任何認(rèn)證信息和私密信息,認(rèn)證過程包括注冊階段和登錄階段,具體步驟如下:

      1)注冊階段:即用戶想要使用某在線服務(wù)時(shí),需要先加入該系統(tǒng),即在該服務(wù)器上存儲(chǔ)一些簡單但可標(biāo)識(shí)身份的用戶信息,其中這些用戶信息包括用戶名和口令。用戶名是唯一的,是用來標(biāo)識(shí)用戶身份的,也是在網(wǎng)絡(luò)技術(shù)中慣用的身份標(biāo)識(shí)符;口令是用戶自己預(yù)先設(shè)定的,是保證個(gè)人私密信息安全性的一道重要屏障,不同的用戶設(shè)置的口令也會(huì)不同,即長度、復(fù)雜度等都不盡相同。本發(fā)明的技術(shù)方案中,用戶僅需記住一個(gè)口令就可以和多個(gè)在線服務(wù)進(jìn)行安全認(rèn)證,減輕了用戶記憶的負(fù)擔(dān)。

      1a)用戶在PC端輸入注冊信息,包括用戶名和口令p;與此同時(shí),PC端隨機(jī)產(chǎn)生認(rèn)證密鑰K,其中口令和認(rèn)證秘鑰共同構(gòu)成認(rèn)證信息,且口令和認(rèn)證秘鑰各自獨(dú)立。

      1b)PC端經(jīng)過編碼計(jì)算,再對(duì)口令和認(rèn)證秘鑰分別進(jìn)行隨機(jī)串選擇和相除計(jì)算,將口令和認(rèn)證密鑰分別隨機(jī)的變?yōu)閮刹糠郑渲嗅槍?duì)口令選擇的隨機(jī)串稱為口令注冊第一子串,口令和口令注冊第一子串進(jìn)行相除計(jì)算得到的口令的另一部分稱為口令注冊第二子串。因?yàn)榭诹钭缘谝蛔哟请S機(jī)選擇的,口令注冊第二子串是對(duì)其進(jìn)行計(jì)算而得到的,因此可以被認(rèn)為是隨機(jī)串。針對(duì)認(rèn)證秘鑰選擇一個(gè)隨機(jī)串稱為認(rèn)證秘鑰第一子串,認(rèn)證秘鑰和認(rèn)證秘鑰第一子串進(jìn)行相除計(jì)算得到的認(rèn)證秘鑰的另一部分稱為認(rèn)證秘鑰第二子串。因?yàn)檎J(rèn)證秘鑰第一子串是隨機(jī)選擇的,認(rèn)證秘鑰第二子串是對(duì)其進(jìn)行計(jì)算而得到的,因此也可以被認(rèn)為是隨機(jī)串。將彼此獨(dú)立的口令注冊第一子串和認(rèn)證秘鑰第一子串共同作為部分認(rèn)證信息,并對(duì)此部分認(rèn)證信息進(jìn)行加密產(chǎn)生注冊密文F后,將注冊密文F連同認(rèn)證密鑰K以及用戶名發(fā)給服務(wù)器端??诹钭缘诙哟驼J(rèn)證秘鑰第二子串共同作為另一部分認(rèn)證信息,將另一部分認(rèn)證信息直接輸入并存儲(chǔ)于手機(jī)端。

      1c)服務(wù)器端將收到的認(rèn)證密鑰和注冊密文F與用戶名進(jìn)行對(duì)應(yīng)存儲(chǔ),完成用戶在服務(wù)器的注冊。

      本發(fā)明在注冊階段產(chǎn)生的認(rèn)證秘鑰是隨機(jī)且一次性的,因此不同的服務(wù)器使用不同的認(rèn)證秘鑰,以此來保證在多個(gè)在線服務(wù)可以安全的注冊和登錄。同時(shí),也保證了個(gè)人私密信息的安全性。本發(fā)明的注冊階段還將認(rèn)證信息變?yōu)閮刹糠?,并?duì)部分認(rèn)證信息完成了加密操作形成注冊密文,最終將注冊密文、認(rèn)證秘鑰和用戶名發(fā)給服務(wù)器并存儲(chǔ),將另一部分認(rèn)證信息直接存儲(chǔ)于手機(jī)端。

      2)登錄階段:即用戶想要獲得某在線服務(wù)器的個(gè)人私密信息或使用其某些服務(wù)時(shí),需要與服務(wù)器進(jìn)行身份認(rèn)證,以證明該用戶已經(jīng)在該服務(wù)器上注冊過自己的信息。認(rèn)證通過后,用戶方可獲得服務(wù)。

      2a)用戶登陸服務(wù)器時(shí),用戶在PC端輸入用戶名和口令;考慮安全因素,此時(shí)的口令可能正確,也可能不正確,若正確,即和注冊階段的口令一致,若不正確,即和注冊階段的口令不一致,因此,將此時(shí)輸入的口令記為p’。

      2b)PC端對(duì)口令p’進(jìn)行隨機(jī)串選擇和相除計(jì)算,將口令p’也隨機(jī)變?yōu)閮刹糠?,此時(shí)在群G中隨機(jī)選擇一個(gè)隨機(jī)串稱為口令登陸第一子串,口令和口令登陸第一子串相除計(jì)算出的另一部分稱為口令登陸第二子串,因?yàn)榭诹畹卿浀谝蛔哟请S機(jī)選擇的,口令登錄第二子串是對(duì)其進(jìn)行計(jì)算而得到的,因此口令登錄第二子串也可以被認(rèn)為是隨機(jī)串。將口令登陸第一子串加密后得到登錄密文F’,并將該登錄密文F’發(fā)給服務(wù)器端,而將口令登陸第二子串輸入手機(jī)端。將口令登陸第一子串加密產(chǎn)生登陸密文,也可以簡述為加密產(chǎn)生登陸密文。

      2c)服務(wù)器端對(duì)2b)步驟的登陸密文F’解密后得到口令登陸第一子串,對(duì)1c)的注冊密文F解密后可得到口令注冊第一子串和認(rèn)證秘鑰第一子串,將口令注冊第一子串和口令登陸第一子串這兩個(gè)子串進(jìn)行計(jì)算、加密,形成部分核對(duì)口令密文E1,然后將該部分核對(duì)口令密文E1發(fā)送給手機(jī)端。

      2d)手機(jī)端先對(duì)已存儲(chǔ)的口令注冊第二子串和口令登陸第二子串進(jìn)行計(jì)算、加密,形成另一部分核對(duì)口令密文E2,將此另一部分核對(duì)口令密文E2與2c)步驟中得到的部分核對(duì)口令密文E1進(jìn)行合并,計(jì)算出完整核對(duì)口令密文E并發(fā)送給服務(wù)器端;合并為E1×E2

      2e)服務(wù)器端解密2d)步驟產(chǎn)生的完整核對(duì)口令密文E,驗(yàn)證口令是否正確;若正確,即解密結(jié)果為1時(shí),服務(wù)器端生成認(rèn)證隨機(jī)數(shù),然后對(duì)已存儲(chǔ)的認(rèn)證密鑰第一子串進(jìn)行加密產(chǎn)生密鑰子串密文后,將此密鑰子串密文和認(rèn)證隨機(jī)數(shù)發(fā)給PC端,口令驗(yàn)證正確后服務(wù)器產(chǎn)生的認(rèn)證隨機(jī)數(shù)用于最終的身份認(rèn)證;若不正確,即解密結(jié)果不為1,則登錄階段終止,登錄失敗,以此來保證服務(wù)器端用戶認(rèn)證秘鑰的安全性。

      2f)PC端解密2e)步驟的密鑰子串密文得到認(rèn)證密鑰第一子串,然后從手機(jī)端取得認(rèn)證密鑰第二子串,經(jīng)除計(jì)算的反運(yùn)算恢復(fù)出認(rèn)證密鑰。

      2g)PC端將2f)恢復(fù)得到的認(rèn)證密鑰和口令驗(yàn)證正確后服務(wù)器產(chǎn)生的認(rèn)證隨機(jī)數(shù)作為密碼學(xué)雜湊函數(shù)的輸入,將此函數(shù)的輸出結(jié)果即最終的認(rèn)證密文發(fā)送給服務(wù)器端。

      2h)服務(wù)器端利用注冊階段得到的認(rèn)證密鑰對(duì)最終認(rèn)證密文進(jìn)行解密,解密得到的結(jié)果與口令驗(yàn)證正確后服務(wù)器產(chǎn)生的認(rèn)證隨機(jī)數(shù)進(jìn)行對(duì)比,若結(jié)果與口令驗(yàn)證正確后服務(wù)器產(chǎn)生的認(rèn)證隨機(jī)數(shù)不一致,則不允許通過登錄,即登錄失敗,保證個(gè)人私密信息的安全;否則,若結(jié)果與口令驗(yàn)證正確后服務(wù)器產(chǎn)生的認(rèn)證隨機(jī)數(shù)一致,則允許通過登錄,即登陸成功。如果登陸成功,則獲得對(duì)用戶的單向身份認(rèn)證結(jié)果,進(jìn)而獲得所需服務(wù),完成服務(wù)器與移動(dòng)設(shè)備間秘密共享的單一口令三方認(rèn)證。

      本發(fā)明中PC端并未存儲(chǔ)用戶任何認(rèn)證信息或私密信息,可防止PC端密文被暴力破解;手機(jī)端和服務(wù)器端共享用戶用于認(rèn)證的秘密信息,即口令和認(rèn)證密鑰,不論手機(jī)端或服務(wù)器端中任何一方遭受攻擊,敵手也只能獲得部分信息且該信息僅以隨機(jī)串的形式被表示,敵手無法得到或恢復(fù)完整的信息,因此本發(fā)明完全可以保證用戶信息的安全性。

      實(shí)施例2

      服務(wù)器與移動(dòng)設(shè)備間秘密共享的單一口令三方認(rèn)證方法同實(shí)施例1,其中步驟1b)中所述的PC端經(jīng)過編碼計(jì)算,再對(duì)口令和認(rèn)證秘鑰分別進(jìn)行隨機(jī)串選擇和計(jì)算,將口令和認(rèn)證密鑰分別隨機(jī)的變?yōu)閮刹糠?,具體是先對(duì)口令p和認(rèn)證密鑰K進(jìn)行編碼映射,將其均映射為階為素?cái)?shù)q的循環(huán)群G中的對(duì)應(yīng)元素,然后在群G中隨機(jī)產(chǎn)生口令注冊第一子串p1和認(rèn)證秘鑰第一子串K1,將這兩個(gè)子串共同作為部分認(rèn)證信息,其中口令注冊第一子串p1和認(rèn)證秘鑰第一子串K1彼此平行且獨(dú)立,然后將再計(jì)算出另一部分認(rèn)證信息,包括口令注冊第二子串和認(rèn)證秘鑰第二子串,其中口令注冊第二子串是由口令和口令注冊第一子串進(jìn)行相除計(jì)算得到的,即p2←p/p1,同樣的操作,認(rèn)證秘鑰第二子串是由認(rèn)證秘鑰和認(rèn)證秘鑰第一子串進(jìn)行相除計(jì)算得到的,即K2←K/K1

      實(shí)施例3

      服務(wù)器與移動(dòng)設(shè)備間秘密共享的單一口令三方認(rèn)證方法同實(shí)施例1-2,其中步驟2b)中對(duì)口令進(jìn)行隨機(jī)串選擇和相除計(jì)算,將口令隨機(jī)變?yōu)閮刹糠?,其具體實(shí)現(xiàn)過程與權(quán)利要求2中所述的編碼計(jì)算然后進(jìn)行隨機(jī)串選擇和相除計(jì)算一樣,是先對(duì)口令p’進(jìn)行編碼映射,將口令p’映射為階為素?cái)?shù)q的循環(huán)群G中的對(duì)應(yīng)元素,然后在群G中隨機(jī)產(chǎn)生口令登陸第一子串p1',將口令和口令登陸第一子串相除計(jì)算出口令登陸第二子串p'2,即p'2←p'/p1'。

      從實(shí)施例2和實(shí)施例3,可見本發(fā)明中的各個(gè)子串都是隨機(jī)串,并且將它們分別存儲(chǔ)于不同的地方,因此,即使遭受到敵手的攻擊,該敵手也無法從所竊得的隨機(jī)串恢復(fù)出原認(rèn)證信息,本發(fā)明的此過程不可逆。

      實(shí)施例4

      服務(wù)器與移動(dòng)設(shè)備間秘密共享的單一口令三方認(rèn)證方法同實(shí)施例1-3,其中步驟1b)中加密產(chǎn)生注冊密文和步驟2b)所述的加密產(chǎn)生登陸密文都是PC端用預(yù)先已知道的服務(wù)器端的公鑰PE完成加密。

      實(shí)施例5

      服務(wù)器與移動(dòng)設(shè)備間秘密共享的單一口令三方認(rèn)證方法同實(shí)施例1-4,其中步驟2e)驗(yàn)證口令是否正確,并不是與之前的注冊口令進(jìn)行逐一對(duì)比,而是看解密結(jié)果是否為1,若是,則口令正確,繼續(xù)進(jìn)行下面的登錄步驟。反之,解密結(jié)果不為1,則口令錯(cuò)誤,登錄終止,保證用戶認(rèn)證秘鑰的安全性。

      本發(fā)明中即使用戶的口令被攻擊者獲得,也不會(huì)影響信息的安全,因?yàn)閱为?dú)的口令無法完成認(rèn)證,還需要手機(jī)的輔助;且完全無需擔(dān)心傳輸信道的安全性,因?yàn)閷?duì)認(rèn)證密鑰進(jìn)行了編碼映射、隨機(jī)取串以及混淆擴(kuò)散等操作,使得認(rèn)證密鑰的分布更加均勻,隨機(jī)性更好。

      下面給出一個(gè)更具體的實(shí)際操作例子,對(duì)本發(fā)明進(jìn)一步說明。

      實(shí)施例6

      服務(wù)器與移動(dòng)設(shè)備間秘密共享的單一口令三方認(rèn)證方法同實(shí)施例1-5,注冊階段:參照?qǐng)D1和圖2,本發(fā)明認(rèn)證過程的注冊階段具體實(shí)施步驟如下:

      1)注冊階段,參照?qǐng)D1(a)和圖2:

      1a)用戶在PC端輸入注冊信息,包括用戶名name和口令p。不同的用戶是通過用戶名進(jìn)行區(qū)分識(shí)別的,所以不同用戶的用戶名一定是不同的,即用戶名唯一;口令都是由用戶自設(shè)的且對(duì)外是保密的,而用戶名則可以公開。注冊信息輸完后,PC端隨機(jī)產(chǎn)生認(rèn)證密鑰K,即K←MACKeyGen(1k)??诹詈驼J(rèn)證秘鑰共同構(gòu)成認(rèn)證信息,且口令和認(rèn)證秘鑰各自獨(dú)立。

      1b)PC端將口令p和認(rèn)證密鑰K編碼為群G中的元素,在群G中隨機(jī)選擇口令注冊第一子串p1和認(rèn)證秘鑰第一子串K1,即p1RG和K1RG;然后分別進(jìn)行相除計(jì)算,分別得到口令注冊第二子串p2←p/p1和認(rèn)證秘鑰第二子串K2←K/K1;將p1和K1共同作為部分認(rèn)證信息,用服務(wù)器的公鑰PE對(duì)此部分認(rèn)證信息進(jìn)行加密得到注冊密文F,將注冊密文F、用戶名name和認(rèn)證密鑰K一起發(fā)送給服務(wù)器端。p2和K2共同作為另一部分認(rèn)證信息,將其直接存儲(chǔ)在手機(jī)端。

      1c)服務(wù)器端將收到的認(rèn)證密鑰K和注冊密文F及用戶名name進(jìn)行對(duì)應(yīng)存儲(chǔ)。注冊階段完成。

      注冊階段是一次性的,是用戶必須要進(jìn)行的初始設(shè)置。

      注冊完成后,當(dāng)用戶想要使用服務(wù)器端的服務(wù)時(shí),進(jìn)入登錄階段,登陸階段可以是多次的。

      登錄階段:參照?qǐng)D1和圖3,本發(fā)明認(rèn)證過程的登錄階段具體實(shí)施步驟如下:

      2)登錄階段,參照?qǐng)D1(b)和圖3:

      2a)用戶想要登陸服務(wù)器時(shí),在PC端輸入用戶名name和口令p’。

      2b)PC端對(duì)口令p’經(jīng)編碼映射后,隨機(jī)選擇口令登錄第一子串p1',相除計(jì)算出口令登錄第二子串p'2←p'/p1',用服務(wù)器公鑰PE加密p1'后得登錄密文F’,并將該登錄密文F’發(fā)給服務(wù)器端;而將p'2存儲(chǔ)于手機(jī)端。

      2c)服務(wù)器端用私鑰SE解密2b)步驟產(chǎn)生的登錄密文F’得到口令登陸第一子串p1',解密1c)存儲(chǔ)的注冊密文F得到口令注冊第一子串p1和認(rèn)證密鑰第一子串K1;然后服務(wù)器產(chǎn)生適合于同態(tài)加密方案的密鑰對(duì)(pk,sk)←keyg(1k),將p1和p1'進(jìn)行計(jì)算和同態(tài)加密,得到部分核對(duì)口令密文E1,即E1←encpk(p1/p1';r1),r1是服務(wù)器端產(chǎn)生的一個(gè)隨機(jī)數(shù),然后將部分核對(duì)口令密文E1發(fā)送給手機(jī)端。

      2d)手機(jī)端將已存儲(chǔ)的口令注冊第二子串p2和口令登陸第二子串p'2進(jìn)行計(jì)算和同態(tài)加密得另一部分核對(duì)口令密文E2,即E2←encpk(p2/p'2;r2),r2是手機(jī)生成的一個(gè)隨機(jī)數(shù);然后將E2與2c)步驟產(chǎn)生的部分核對(duì)口令密文E1進(jìn)行合并,計(jì)算出完整核對(duì)口令密文E,即E←(E1×E2)Z,并將此完整核對(duì)口令密文E發(fā)送給服務(wù)器端。

      2e)服務(wù)器端解密2d)步驟產(chǎn)生的完整核對(duì)口令密文E,利用同態(tài)屬性,驗(yàn)證登錄口令是否正確。若正確,即解密結(jié)果為1,然后服務(wù)器端生成認(rèn)證隨機(jī)數(shù)chal,然后對(duì)已存儲(chǔ)的認(rèn)證密鑰第一子串K1進(jìn)行加密產(chǎn)生密鑰子串密文后,將此密鑰子串密文和認(rèn)證隨機(jī)數(shù)chal發(fā)給PC端,口令驗(yàn)證正確后服務(wù)器產(chǎn)生的認(rèn)證隨機(jī)數(shù)用于最終的身份認(rèn)證。

      2f)PC端解密2e)步驟的秘鑰子串密文得到認(rèn)證密鑰第一子串K1,然后從手機(jī)端取得認(rèn)證密鑰第二子串K2,將K1和K2經(jīng)除計(jì)算的反運(yùn)算恢復(fù)出認(rèn)證密鑰K。

      2g)PC端恢復(fù)出認(rèn)證密鑰K后,利用K和服務(wù)器端進(jìn)行單向認(rèn)證,即計(jì)算token←f(K,chal),發(fā)送給服務(wù)器,其中f是某一種密碼學(xué)雜湊函數(shù),K和chal是此函數(shù)的參數(shù)。

      2h)服務(wù)器端利用注冊階段得到的認(rèn)證密鑰對(duì)token進(jìn)行解密,解密得到的結(jié)果與認(rèn)證隨機(jī)數(shù)chal進(jìn)行對(duì)比,若一致,則用戶成功登錄此服務(wù)器,否則不能登錄。登錄階段完成。

      本發(fā)明中對(duì)認(rèn)證密鑰進(jìn)行了編碼映射、隨機(jī)取串以及混淆擴(kuò)散等操作,使得認(rèn)證密鑰的分布更加均勻,隨機(jī)性更好,因此完全無需擔(dān)心傳輸信道的安全性。此外,本發(fā)明中用戶僅需記住一個(gè)口令就可以和多個(gè)在線服務(wù)進(jìn)行安全認(rèn)證,但不同的在線服務(wù)使用不同的認(rèn)證秘鑰,因此既減輕了用戶記憶的負(fù)擔(dān),也保證的了安全性。

      下面通過測試,對(duì)本發(fā)明的技術(shù)效果進(jìn)行實(shí)驗(yàn)說明。

      實(shí)施例7

      服務(wù)器與移動(dòng)設(shè)備間秘密共享的單一口令三方認(rèn)證方法同實(shí)施例1-6,

      實(shí)驗(yàn)設(shè)備具體參數(shù)如下:

      PC為Dell Inc.Vostro 270,四核Intel(R)Core(TM)i3-3220 CPU@3.30GHz,4GB內(nèi)存,操作系統(tǒng)為Windows 7(64位)。

      移動(dòng)設(shè)備為安卓模擬器Android4.3.1-API Level 18,CPU ARM(armeabi-v7a),RAM 1024,VM Heap 32,Internal Storage 200MiB。

      搭建的服務(wù)器的實(shí)驗(yàn)環(huán)境為阿里云服務(wù)器,部署于青島,CPU1核,2GB內(nèi)存,操作系統(tǒng)為Windows Sever2008R2企業(yè)版64位中文版,帶寬為5Mbps。

      實(shí)驗(yàn)條件:口令的長度不同。

      實(shí)驗(yàn)數(shù)據(jù):注冊階段的整個(gè)完整過程所需的時(shí)間數(shù)據(jù)參見圖4,登錄階段的整個(gè)完整過程所需的時(shí)間數(shù)據(jù)參見圖5。

      從實(shí)驗(yàn)數(shù)據(jù)可見,當(dāng)不同的用戶輸入不同長度的口令進(jìn)行注冊時(shí),參見圖4,注冊階段耗費(fèi)的最長時(shí)間是684.27ms,最短時(shí)間是567.48ms;當(dāng)不同用戶輸入其對(duì)應(yīng)的口令進(jìn)行登錄時(shí),參見圖5,登錄階段耗費(fèi)的最長時(shí)間是10716.13ms,最短時(shí)間是9719.21ms。

      實(shí)施例8

      服務(wù)器與移動(dòng)設(shè)備間秘密共享的單一口令三方認(rèn)證方法同實(shí)施例1-6,

      實(shí)驗(yàn)設(shè)備具體參數(shù):同實(shí)施例7。

      實(shí)驗(yàn)條件:口令的復(fù)雜度不同。

      實(shí)驗(yàn)數(shù)據(jù):注冊階段的整個(gè)完整過程所需的時(shí)間數(shù)據(jù)參見圖6,登錄階段的整個(gè)完整過程所需的時(shí)間數(shù)據(jù)參見圖7。

      從實(shí)驗(yàn)數(shù)據(jù)可見,當(dāng)不同的用戶輸入不同復(fù)雜度的口令進(jìn)行注冊時(shí),參見圖6,注冊階段耗費(fèi)的最長時(shí)間是689.02ms,最短時(shí)間是565.49ms;當(dāng)不同用戶輸入其對(duì)應(yīng)的口令進(jìn)行登錄時(shí),參見圖7,登錄階段耗費(fèi)的最長時(shí)間是10735.36ms,最短時(shí)間是10079.29ms。

      從實(shí)施例7和實(shí)施例8可見,當(dāng)用戶設(shè)置的口令長度或復(fù)雜度不同時(shí),本發(fā)明提出的服務(wù)器與移動(dòng)設(shè)備間秘密共享的單一口令三方認(rèn)證方法都可以在保證安全性的基礎(chǔ)上順利的完成注冊和登錄。

      綜上,本發(fā)明公開的一種服務(wù)器與移動(dòng)設(shè)備間秘密共享的單一口令三方認(rèn)證方法,主要解決在有移動(dòng)設(shè)備參與認(rèn)證的情況下,用單一口令和多個(gè)在線服務(wù)進(jìn)行安全認(rèn)證的技術(shù)問題。移動(dòng)設(shè)備如手機(jī)、iPad等,以手機(jī)為例,其認(rèn)證方案是:注冊階段:用戶在PC輸注冊信息,隨機(jī)產(chǎn)生認(rèn)證密鑰;計(jì)算出注冊密文,連同認(rèn)證密鑰和用戶名發(fā)給服務(wù)器存儲(chǔ);另一部分認(rèn)證信息存在手機(jī)中。登錄階段:服務(wù)器給手機(jī)部分核對(duì)口令密文;手機(jī)用同態(tài)加密和合并計(jì)算得完整核對(duì)口令密文發(fā)給服務(wù)器;服務(wù)器解密密文,驗(yàn)證口令;若正確,將密鑰子串密文和認(rèn)證隨機(jī)數(shù)發(fā)給PC;PC從手機(jī)取認(rèn)證密鑰第二子串且計(jì)算得認(rèn)證密鑰;PC用認(rèn)證密鑰和服務(wù)器認(rèn)證。本發(fā)明減輕了用戶記憶負(fù)擔(dān),緩解了存儲(chǔ)壓力,消除了安全隱患,可操作性強(qiáng),用于服務(wù)器、PC和移動(dòng)設(shè)備三方安全認(rèn)證。

      當(dāng)前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1