999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種新的基于指紋與移動端協助的口令認證方法

2016-11-14 02:13:07馬建峰
計算機研究與發展 2016年10期
關鍵詞:用戶

安 迪 楊 超 姜 奇 馬建峰

(西安電子科技大學網絡與信息安全學院 西安 710071) (陜西省網絡與系統安全重點實驗室(西安電子科技大學) 西安 710071) (sunnyann1992@qq.com)

?

一種新的基于指紋與移動端協助的口令認證方法

安 迪 楊 超 姜 奇 馬建峰

(西安電子科技大學網絡與信息安全學院 西安 710071) (陜西省網絡與系統安全重點實驗室(西安電子科技大學) 西安 710071) (sunnyann1992@qq.com)

智能手機和互聯網應用的廣泛普及,使用戶可以借助手機結合口令與服務器認證.然而現有的方案需要在手機端存儲用戶的秘密信息.一旦存于手機的秘密信息被對手獲得,將給用戶帶來不可挽回的損失.針對上述問題,提出了一種基于指紋和口令的認證方案,手機端無需存儲秘密信息.其核心思想是,將密文存儲在服務器端,用戶登錄時利用手機輔助其生成私鑰,從而對注冊階段生成的密文解密生成認證密鑰.生成私鑰的過程需要輸入口令和指紋,用戶在電腦端輸入口令后對口令進行盲化再與手機進行交互,這樣就可以保護用戶口令不被對手得到.理論分析及實驗結果表明:該方案提高了用戶秘密信息的安全性,可以抵御對手的字典攻擊、重放攻擊和釣魚攻擊,減少了手機的存儲壓力,易于部署.

口令認證;終端輔助認證;指紋認證;口令攻擊與保護;基于指紋的口令盲化

互聯網及其應用服務的快速發展,給用戶生活帶來了娛樂和便利,涉及到日常生活的多個方面(如購物、外賣餐飲、交通等).由于口令認證機制的方便易用,它已是如今在線的應用服務和許多系統中使用最多、最為流行的認證機制.用戶使用自己設置的口令與各種服務器進行認證,登入應用賬戶.

一般用戶為了方便記憶往往使用較簡單的口令.若口令長度較短,則信息熵較低,如果認證協議體系不夠完備,用戶的口令就很容易被對手攻擊或是遭受對手的中間人攻擊,從而被對手偽造身份進行登錄認證.此外,用戶在設置自己不同應用服務的賬戶密碼時,常常會重復地使用一個口令,如果其中一個口令泄露,就對其他應用賬戶的安全帶來威脅.由于用戶忘記某一應用賬戶的口令時,通常會嘗試多次輸入口令登錄賬戶,若服務器是惡意的,就知道了用戶的多個口令,服務器就可能對用戶的其他賬戶發起中間人攻擊.口令的信息熵低、重復設置、用戶遺忘等都是口令設置和使用過程中最為常見的問題.而這些問題都是攻擊者最容易入手的攻擊方向.Facebook的首席執行官(CEO)就在2004年曾使用Facebook的登錄數據訪問一些商業對手和記者的私人郵件[1],這說明即使可信的服務器也會對用戶發起中間人攻擊.對用戶口令的保護,不僅對用戶個人和單位、甚至對于整個社會來說變得越來越重要.

針對口令認證機制的缺陷,研究者提出了很多改進方案,其中增加額外設備是一個有效的方式.隨著近年來移動智能手機的廣泛應用和發展,用戶常利用手機使用一些應用服務或是管理個人信息,手機端存儲著越來越多的用戶憑據或是口令密文信息.通過移動智能手機輔助用戶進行認證是一個重要的研究方向.

早在2004年,文獻[2]就提出來使用手機作為便攜的認證令牌,同時增加一個安全可信的代理方P.當用戶想要與遠程的服務器進行認證時,需要首先與代理方P進行通信.代理方會同時向手機和個人電腦端發送會話名,用戶在手機端對會話名進行對比驗證然后再將信息發給代理方.但是此方案需要代理方安全可信,手機端和代理方需要多次交互,易被中間人攻擊,同時增加了一個代理方,系統部署較為繁瑣,不能夠便捷地用于實際的認證.

文獻[3]通過手機輔助用戶進行登錄認證.在此文的方案中,客戶端電腦和服務器認證時不直接在網絡上通信,而是借助于手機設備和一個認證服務器進行密文的發送和接收.然而此方案的認證服務器用來接收由手機端通過GSM網絡傳來的數據信息,故在應答階段易受攻擊,當用戶使用手機通過GSM網絡向認證服務器發送信息時,易被對手劫持,從而利用此信息偽裝成用戶進行認證.

文獻[4]提出了一種利用手機作為認證時的中間方,利用二維碼和相機對認證時的關鍵信息進行加密的方案.但是此方案需要事先預設條形碼并在設備上添加,若認證的設備或是服務較多,則預設較為繁瑣,可操作性不強.

文獻[5]針對會話劫持和釣魚網站攻擊提出了一種新方案.將客戶端電腦和手機設備在認證時獨立開來,客戶端電腦僅僅扮演計算的功能,用戶從手機設備端輸入口令,手機和服務器共享會話密鑰以防止對手的會話劫持.盡管此方案可以避免會話攻擊,但預先要在手機設備上設置每個目標網站(如銀行)的公共密鑰,如果用戶使用的服務較多,設置會較為繁瑣,給手機端帶來壓力,此外,此方案還需要客戶端電腦和服務器端建立安全信道.

文獻[6]提出了一種可以在不可信的個人電腦上與服務器進行認證的方法.通過手機掃描個人電腦上的二維碼進行加密處理后與服務器進行認證.但是此方案需要手機端和服務器端預先設置共享密鑰,雖然此方案允許個人電腦端不可信,但是手機端必須可信.而且在認證的過程中,手機端和個人電腦端需要分別與服務器端進行多次通信,步驟較為繁瑣、耗時較長,對用戶的使用感有較大影響.

Acar等人提出的單一口令認證(single password authentication, SPA)方案[7]中,提出額外增加一個云存儲器存儲用戶的數據,輔助用戶進行注冊和登錄.但是在注冊階段,需要設置安全信道將盲簽名的私鑰發送給存儲器端,還需要增加一個可信的云存儲器來存儲認證密文.對于實際的應用場景來講,設置安全信道很難實現,尤其是在遠距離的數據傳輸中,這種假設更是不實際的.并且,用戶與云存儲器在認證階段需要進行多次的數據傳輸和交互,如果設備的性能不夠好,將會延長用戶的認證時間.Acar等人還提出基于額外設備的SPA方案[7],可以不使用云存儲器而利用一個可信的手機設備輔助用戶注冊和登錄.在此方案中,用戶將自己的認證密鑰用用戶口令加密后存儲在可信的手機設備上.當認證時,用戶在手機上輸入口令解密得到自己的認證密鑰與服務器進行認證.但是這種方案需要強制要求移動設備可信,不能存在任何惡意代碼也不能與服務器勾結,這對于移動設備的安全性要求而言是異常嚴格的.不僅如此,若移動設備丟失,則用戶存在移動設備上的密文信息就極有可能被對手破解,此協議也不能抵擋這類非常常見的用戶過失,這使得協議的可用性和安全性大大降低.

由于越來越多的敏感信息和用戶的私人信息存儲在手機端,如果這些敏感信息被對手得到,將給用戶帶來無法預估的危害.手機端秘密信息的保護問題成為亟待解決的重要問題.文獻[8]提出了一種用指紋來代替PIN碼認證用戶身份,從而保護用戶SIM卡的方案.然而,雖然此方案利用了指紋,可是指紋信息仍然存儲于手機設備中,若指紋信息被對手破解,將會給用戶帶來安全威脅.

文獻[9]提供了一種通過口令和指紋使用戶與遠距離的服務器進行認證的方案.在注冊階段,用戶輸入口令、指紋、隨機值等計算后得到密文值,隨即將密文值、指紋的密文值存儲在手機設備上,同時通過安全信道將其發送給服務器端.在登錄階段,用戶輸入指紋后手機設備與注冊階段存儲的值進行運算對比、登錄.該方案的不足之處在于,在注冊階段不僅需要安全信道進行傳輸,還需要手機設備可信,若手機設備丟失,則存儲在手機上的密文信息、指紋參數的密文值就可能會被對手得到.

此外,國內基于用戶的生物特征的認證也有相應研究.徐欽桂等人[10]提出的一種增強的基于生物密鑰智能卡遠程身份認證方案,給用戶身份提供智能卡硬件、口令驗證、生物特征驗證三重保護.但是由于用戶生物特征信息的模糊性以及生物密鑰的運算特性,計算開銷和存儲開銷可能會超出智能卡限制,這使得其方案的可用性受限.

現階段帶有手機的對用戶身份進行認證的方法,即使有用戶指紋參與認證,但普遍存在手機端存儲用戶的認證信息或是密文信息的問題,并且需要手機設備完全可信.2016年3月,美國聯邦調查局(FBI)宣布[11]可以破解IOS系統以獲取犯罪嫌疑人存在手機端的信息,現階段還沒有能完全保證用戶移動設備端信息隱私的成熟技術.所以,在手機端存儲用戶的秘密信息是一項很有風險性的行為.

HCR(hidden credential retrieval from a reusable password)[12]是一個可以使用戶在不可信的遠端服務器上存儲密文信息的協議.當用戶想要得到此密文信息時,可以通過預先設置的口令獲得自己的密文信息而不必向服務器泄露自己的口令.但是此協議在注冊階段需要設置安全信道傳輸給服務器一個私鑰,同時需要長期在服務器上存儲這個私鑰.

已有的手機、個人電腦和服務器3方認證常常將用戶口令的密文信息存儲在手機端,同時需要手機設備可信,還需要假設安全信道來傳輸秘密信息.這些假設和部署在實際的應用場景中都是難以實現的,這使這些認證方案的可用性和安全性都大大降低.針對這些認證方案的不足,我們提出了一種基于指紋與移動端協助的口令認證方法(password authentication method based on fingerprint and mobile phone assistance, FMPA).在注冊階段,用戶通過口令和指紋生成私鑰,再通過私鑰生成認證密鑰和認證密鑰的密文,然后將認證密鑰的密文發送至服務器端進行存儲,手機端并不存儲用戶的秘密信息.在登錄階段,用戶從服務器端得到認證密文后通過指紋和口令重新生成私鑰,利用私鑰對認證密文解密后得到認證密鑰.我們的方案無需在手機端存儲任何用戶的秘密信息,即使手機被對手盜走,對手也無法得到用戶的秘密信息.通過安全性分析理論證明本文足以保護用戶的口令、抵御字典攻擊和會話劫持攻擊.通過實驗測試表明:本文在時間性能上與已有的認證方案差別不大,并在手機端的存儲方面有較大優勢,能夠明顯減輕手機端的存儲壓力,實用性很高.

1 預備知識與符號縮寫

1) 盲簽名

Fig. 1 Flowchart of blind signature.圖1 盲簽名具體流程圖

盲簽名體制是保證參與者匿名性的基本密碼協議,一個盲簽名體制是一個協議,包括2個實體:消息發送者和簽名者.它允許發送者讓簽名者對給定的消息簽名,并且沒有泄露關于消息和消息簽名的任何信息.如圖1所示,第1個加密算法T()是為了隱蔽發送的消息m,稱為盲變換;第2個加密算法Sign()是簽名算法,簽名者B對收到的盲化消息進行簽名;第3個算法T′()是對簽名后的信息進行去盲以得到消息m的簽名信息,稱為去盲化.

盲簽名的特點是:

① 消息的內容對簽名者是盲的;

② 簽名者不能將所簽文件T(m)和實際要簽的文件m聯系起來,即使他保存所有簽過的文件,也不能確定所簽文件的真實內容.

2) HKDF(halting key derivation functions)

HKDF[13]是一種可通過一般的弱口令生成強安全密鑰的協議,可以自主選擇計算代價,應用于基于口令的加密系統.HKDF包括2種算法:HKDF.prepare和HKDF.extract.

HKDF.prepare以1個口令w、1個隨機串r和1個循環運算次數的參數t作為輸入,輸出1個密鑰y和它的密文v.即:

HKDF.prepare(w,t,r)→y,v.

HKDF.extract以密鑰的密文v和口令w作為輸入,使用w對密文v解密后重新得到密鑰y,若輸入的口令w不正確,此算法將一直進行循環運算而沒有輸出反饋.即:HKDF.extract(w,v)→y.

在本文中,我們使用HKDF協議通過一個私鑰生成一個強密鑰,用戶或是系統可以確立一個合適的參數值來選擇相應的運算代價.

2 系統模型與敵手模型

2.1 系統模型

Fig. 2 System model diagram of our scheme.圖2 本文方案系統模型圖

本方案的的系統模型如圖2所示,主要包括3種實體:移動智能手機(mobile smart phone, MP)、個人電腦(personal computer, PC)、云服務器(cloud server, CS).圖2中①為注冊階段,②~④為登錄階段.

1) 移動智能手機MP.負責注冊階段用戶認證密鑰及其密文的生成、認證階段和PC交互從而對用戶盲化后的口令和指紋參數做運算處理.除了具有基本的智能手機的功能外,能夠獲取到用戶指紋數據,能夠通過藍牙、USB或者WiFi功能連接到PC端,以便與PC進行通信.

2) 個人電腦PC.當用戶登錄時,對口令進行錄入、與移動智能手機進行交互從而生成認證密鑰.個人電腦確保連接到互聯網,能夠與云服務器和手機進行通信.

3) 云服務器CS.在注冊階段存儲用戶的認證密鑰和密文信息,在登錄階段為用戶提供其對應的密文信息以及對用戶身份進行認證.故云服務器應能夠連接到互聯網,并具有強大的數據庫以存儲用戶數據信息.

2.2 敵手模型

對應于2.1節所述系統模型的敵手模型如下:

1) 個人電腦是不可信的.用戶登錄時,如果他所使用的電腦被惡意軟件侵襲,當他輸入口令后,鍵盤就會記錄下用戶的口令.若用戶誤入了釣魚網站,對手也可能會記錄用戶口令.

2) 用戶在注冊和登錄時都會用到移動智能手機,手機容易丟失或是被植入惡意軟件.手機被植入惡意軟件后,對手就會假冒用戶與電腦進行通信.

3) 云服務器對用戶進行認證并提供應用服務.在注冊階段,無疑云服務器是可信的,此后,云服務器可能會遭受對手的重放攻擊或是字典攻擊.此外,云服務器本身也可能是惡意的,在用戶離線的情況下,也可能會對用戶的密文發起攻擊.

3 FMPA方案設計實現

3.1 FMPA方案設計思想

在有智能手機參與的認證協議中,手機有可能會丟失或者被惡意軟件侵襲,故用戶存儲在手機端的數據就有可能被對手竊取.同時,在用戶登錄時,手機端與PC端進行交互,若手機端獲取到用戶的口令,就極有可能被對手竊取.因此,要保證手機丟失的情況下用戶的數據不被竊取,就需要用戶不在手機端存儲認證信息和密文數據.若要在認證過程中不被手機端竊取到用戶的口令,就需要用戶在PC端輸入口令后對口令數據進行處理.

我們的設計思路是對已有的HCR協議進行改進(由于HCR協議中的私鑰參數需要假設安全信道進行傳輸并且需要長期安全地存儲,我們的方案將HCR協議中的私鑰參數替換為用戶指紋,這樣,就不需要假設安全信道進行傳輸,也不需要長期存儲),將此改進的協議應用于PC和手機之間,使用戶可以與不可信的手機進行交互、簽名等,同時不需要在PC和手機之間假設安全信道,無需存儲用戶用于生成認證密鑰的私鑰.

3.2 FMPA方案詳細設計

本方案包括移動智能手機、PC、云服務器3個參與方,具有注冊和登錄2個階段.用戶在手機和PC上輸入自己口令、指紋進行注冊、登錄,云服務器負責注冊以及在用戶接入服務時對用戶進行身份認證.

本方案系統初始化定義如下:

pwd為用戶口令:pwd∈{0,1}*;

G是以素數p為階的循環群;

F是以素數p為階的乘法域;

s為生成的用戶私鑰;

y為生成的認證密鑰;

v為生成的認證密鑰密文;

Hash()為安全的Hash函數:

Hash():{0,1}*→G

r為系統生成的隨機字符串:r∈N

t為系統設置的運算次數;

f是一種密碼學雜湊函數.

HKDF為密鑰生成函數,分為加密算法:HKDF.prepare(s,t,r)→y,v和解密算法HKDF.extract(s,v)→y兩個部分.

在以往的帶有手機的認證方案中,手機端一般會存儲用戶的認證密文信息.通常將用戶的口令加密后存儲在手機設備上或者存儲用戶的密鑰用口令加密后的密文,若手機端被對手攻擊,對手就極有可能拿到用戶的口令或是認證信息.

而在本方案中,手機端不存儲用戶的認證密文信息,所需要的認證密鑰在每次登錄時由用戶重新生成,即使設備被偷也不會對用戶的口令、指紋、密文信息造成威脅.同時,用戶在注冊時像服務器發送name時,也可以隨機選擇一個身份信息id發送,這樣就可以保護自己的匿名性,即使若干個服務器相互勾結也不能對用戶進行攻擊.

以下是注冊和登錄2個階段:

1) 注冊階段

{用戶(name,pwd,e)}→{云服務器(name,y,v)}.

在這個階段,用戶接入云服務器提供的服務之前,須向服務器注冊成為合法的用戶.用戶可以直接在手機端進行注冊,在注冊完成后將用戶名name和服務信息server交至PC端以告知用戶使用了此服務即可.具體操作如下:

① 手機端根據用戶輸入的口令pwd和指紋參數e進行運算,生成用戶的私鑰s:

Hash(pwd)e→s.

② 根據HKDF函數和生成的私鑰s生成用戶的認證密鑰y和認證密鑰密文v:

HKDF.prepare(s,t,r)→y,v,

其中,r是系統生成的一個隨機的字符串,t是循環運算次數,t可以根據用戶所需要的安全性進行選擇,若t的值較大,則運算量較大,生成的密鑰更為安全.

③ 手機端將認證密鑰y和認證密文v連同用戶名name發給服務器端進行對應存儲,發給PC客戶端用戶名name和服務信息server.用戶只需記住用戶名name和口令pwd,手機端不存儲用戶的任何秘密信息.

如圖3所示為注冊階段具體協議.

Fig. 3 Registration phase protocol.圖3 注冊階段具體協議

2) 登錄階段

{用戶(pwd,e,chal),服務器(y,v,chal)}→{用戶(y),服務器(acceptreject)}.

成為合法用戶后,當用戶想接入云服務器使用其服務時,需向服務器發送登錄請求.用戶錄入自己的口令和指紋數據,生成私鑰從而解密密文得到認證密鑰.服務器對認證信息進行運算和對比后,判斷是否接受此次登錄,具體操作如下:

① PC端向服務器發送用戶名name,服務器根據name檢索后向PC發送對應的密鑰密文v和認證隨機數chal;

② 在PC端輸入口令pwd,系統生成一個盲化因子d,計算出盲化后的口令μ,即Hash(pwd)d→μ發送給手機端.

③ 手機端提示用戶按下指紋,得到指紋參數e.對得到的盲化口令μ進行簽名,即μe→β,然后將β發送給PC端.

④ PC端對簽名后的盲化口令進行去盲化,得到用戶私鑰s:

β→s.

⑤ PC端使用用戶私鑰s和HKDF函數算法對認證密鑰密文v進行解密,得到認證密鑰y:

HKDF.extract(s,v)→y.

⑥ PC端利用認證密鑰y和隨機數chal進行計算,向服務器端發送認證信息response進行認證.即:

f(y,chal)→response.

⑦ 服務器端計算f(y,chal)并與接收到的response對比,一致則接受此次登錄即accept,否則拒絕登錄即reject.

如圖4所示為登錄階段具體協議.

Fig. 4 Login phase protocol.圖4 登錄階段具體協議

4 FMPA方案的安全性證明與分析

4.1 FMPA方案

FMPA方案具有3種參與者: 1)PC客戶端.想使用口令來訪問服務器.2)服務器.注冊和認證客戶端.3)手機.輔助PC客戶端的注冊和認證階段.

將FMPA方案分為6個步驟:

1) UserGen.此協議由用戶生成用戶名name和l位的口令pwd;

2) Register.用戶通過手機輸入口令pwd和指紋e與服務器進行注冊,最后手機端會生成1個認證密鑰y和認證私鑰的密文v,手機端向PC端發送(name,server)存儲,服務器端存儲(name,y,v);

3) Store.PC端存儲用戶名name,手機端不存儲用戶的數據信息,用戶需記住pwd和name;

4) PreAuth.PC客戶端使用其用戶名name從服務器端檢索其密文信息v,服務器發送給PC客戶端v和挑戰信息chal;

5) Retrieve.用戶在PC客戶端輸入口令pwd同時借助手機輸入e.PC客戶端和手機進行交互,盲簽名協議完成后在PC端生成私鑰s,再由s解密v得到認證密鑰y;

6) Authenticate.PC客戶端使用y和chal向服務器證明他有相應的賬戶憑證,服務器輸出accept或者reject.

4.2 安全游戲

FMPA方案假設用戶擁有1個手機設備和PC客戶端.因此用戶可以在PC和手機上輸入自己的口令和指紋.然而,手機可能會丟失或者被偷,這樣,惡意的對手也許就會使用用戶存儲在設備上的信息訪問服務器,甚至破解用戶的口令.此外,PC端和服務器端也易被對手攻擊.下面對FMPA方案有可能遭受的攻擊分為外部攻擊Game One和內部攻擊Game Two兩種,游戲中涉及的參數:x是安全參數,所有的Hash函數的輸出長度為l,l≥2xb;|D|是口令集合的長度,|D|≤2xb;|s|是用戶私鑰的長度;k是用戶設置的口令的長度,k∈N;定義neg(k):若對于任意非零的常數c,存在一個有限非零的數K,對于任意k>K,都有neg(k)

1) 外部攻擊Game One.在此游戲中,對手可以控制PC端,模擬PC客戶端與手機端執行Store步驟,與服務器端執行PreAuth步驟.對手也可以控制PC端,模擬PC端向手機端發起Retrieve步驟,假設發起的請求次數為q.對手還可控制手機端,模擬手機端和PC端執行Retrieve步驟,由本方案的算法可知,手機端只能接收來自于PC端的數據信息而不能主動向PC端發起請求.若對手通過這場游戲獲得用戶口令,或者對手繞過口令成功猜測到私鑰s,則對手勝利.

定義1. 假設對手贏得Game One游戲的概率是P1,若P1≤max(q|D|+neg(k), 12|s|),則認為FMPA方案滿足基于Game One的安全性.

2) 內部攻擊Game Two.在此游戲中,對手可以控制服務器,向服務器中存儲的密文發起離線字典攻擊試圖獲得用戶口令.假設對手可以對HKDF.extract發起T次離線字典攻擊.若對手通過這場游戲獲得用戶口令,則對手勝利.

定義2. 假設對手贏得Game Two游戲的概率是P2,若P2≤q|D|+2T(|D|t)+neg(k),則認為FMPA方案滿足基于Game Two的安全性.

定義3. 若FMPA方案滿足基于Game One,Game Two的安全性,則可以認為FMPA方案是安全的.

4.3 FMPA協議的安全性

定理1. FMPA協議是滿足定義3安全性的協議.

證明.

1) FMPA具有基于Game One的安全性.

Game One的場景還原如下:

① 對手模擬PC客戶端,與手機端執行Store步驟,得到手機端發給他的用戶名name.對手與服務器執行PreAuth步驟,根據用戶名name檢索到用戶的密鑰密文v和挑戰信息chal.由于密鑰密文v是由HKDF協議生成,由其算法的特性可知,若輸入了不正確的口令解密密文,解密算法將一直循環運算下去而沒有輸出,所以對手不能通過此密文得到用戶的口令.故P1是一個可以忽略的小值.

② 對手模擬PC客戶端,生成1個口令pwd0,然后向手機端發起執行Retrieve步驟的請求,對手與手機端執行Retrieve步驟,此步驟的交互過程與HCR協議的過程類似,只是將原協議的簽名私鑰替換成了指紋參數,所以,攻擊者在這場協議中猜測口令成功的概率和HCR協議[12]相同,故P[對手得到口令]≤q|D|+neg(k).故對手贏得這場游戲的概率P1≤q|D|+neg(k).

③ 對手控制PC端,繞過口令直接對私鑰s進行猜測,則對手猜測到s的概率P[對手猜到s]≤12|s|,故對手贏得這場游戲的概率P1≤12|s|.

④ 對手模擬手機端和PC端執行Retrieve步驟,此時,對手會得到用戶盲化后的口令信息,同②中的分析,攻擊者在這場協議中猜測口令成功的概率是P[對手得到口令]≤q|D|+neg(k).故對手贏得這場游戲的概率P1≤q|D|+neg(k).

綜上,P1≤max(q|D|+neg(k), 12|s|).所以,FMPA具有基于Game One的安全性.

2) FMPA具有基于Game Two的安全性.

Game Two的場景還原如下:

惡意的服務器對存儲的密文發起離線字典攻擊,它生成1個私鑰s′試圖解密密文,即HKDF.extract(s′,v).由HKDF的安全性[13]]可知,對手在解密密文的過程中猜測到用戶口令的概率P[對手獲得口令]≤T(|D|t)+neg(k),其中,t是在HKDF.prepare協議階段設置的循環運算次數.

所以對手能夠得到用戶口令的概率P2≤q|D|+2T(|D|t)+neg(k),故FMPA方案具有基于Game Two的安全性.

綜上所述,FMPA協議滿足基于定義1和定義2的安全性,故FMPA協議是一個安全的協議.

證畢.

5 性能分析與評估

5.1 測試方案與場景

為了使測試更貼近實際的場景,我們租用了阿里云服務器作為服務器端,與用戶進行認證.使用的阿里云服務器部署于青島,由百度地圖可以測得用戶所在地西安與云服務器所在地青島的距離為1058.6 km,如圖5所示:

Fig. 5 The overall test plan diagram.圖5 測試方案總體示意圖

如圖5所示,其中步驟①是注冊階段手機端計算后生成認證密鑰y和認證密鑰密文v發送給云服務器端.步驟②~④是登錄階段,由手機端和個人電腦端進行計算,生成認證密鑰y后與云服務器進行認證.

本節利用安卓設備、PC端和云服務器實現了本文的方案從而對其進行性能評估,主要從時間和存儲方面對方案的可用性進行評估.在時間方面,對用戶的注冊階段和登錄階段在4個不同場景下所耗時間進行測試和對比分析;在存儲方面,主要對方案的實現過程中手機端的存儲量進行分析評估.

本方案的實驗設備為1臺PC、1個云服務器、1臺安卓設備、實驗設備的具體參數如下:

搭建的服務器實驗環境為阿里云服務器,部署于青島、CPU單核3.00 GHz、1 GB內存、操作系統為Windows Sever2008標準版SP2 32 b、帶寬為5 Mbps.

PC為HP Compad dx7408 MT DT PC主機,具有ms-7352主板、雙核IntelTMCoreTM2 Duo CPU E8400 @3.00 GHz、2 GB內存、操作系統為Windows 7(32位).

安卓設備分別為安卓模擬器Android4.1.2-API Level 16,CPU ARM(armeabi),RAM 512,VM Heap 16,Internal Storage 200MiB; 安卓手機.

本文的測試程序由Java語言編寫,其中基于RSA盲簽名部分用到了Bouncy Castle庫.

基于以上設計方案,我們在4種場景下分別進行了測試:

場景1. 用同一戶進行注冊和登錄,輸入相同的口令和指紋,分別測試注冊階段和登錄階段的完整過程的所用時間,測試若干組數據以求得用戶注冊和登錄所耗時間的平均值.此場景使用的安卓設備是安卓模擬器.

場景2. 對于不同用戶,口令的長短、復雜度不同,為分析口令對方案運行時間的影響,分別選取20組不同用戶,對其注冊階段和登錄階段整個過程對所耗時間分別進行測試評估,使用的安卓設備是安卓模擬器.

場景3. 由于系統設置不同,生成了不同長度的指紋參數.我們選取了在指紋長度分別為128 b,256 b,512 b的情況下,分別對用戶的注冊階段和登錄階段的完整過程所耗時間進行測試,其中使用的安卓設備是安卓模擬器.

場景4. 用戶使用不同的安卓設備(安卓模擬器、魅族手機、HTC手機)進行注冊和登錄,分別測試用戶注冊和登錄階段所耗時間.

Fig. 6 Registration phase description.圖6 注冊階段流程說明

本實驗將注冊階段的總時間K(單位是ms)分為2部分k1和k2.如圖6所示,其中k1是從用戶在安卓設備上輸入戶名和口令進行注冊開始到生成認證密鑰密文結束所耗時間,k2是將用戶的認證密鑰密文發送至云服務器所耗時間.

將登錄階段的總時間T(單位是ms)分為5個部分,如圖7所示,其中t1為用戶在PC端向云服務器端請求對應的認證密鑰密文所耗時間,t2+t4為在PC端對用戶口令進行盲化及生成認證密鑰所耗時間,t3為安卓設備對盲化后的口令進行指紋簽名過程所耗時間,t5為將用戶的認證信息發送給云服務器所耗時間.

Fig. 7 Login phase description.圖7 登錄階段流程說明

5.2 測試結果

5.2.1 場景1測試結果

1) 注冊階段

在此場景下,用戶在安卓設備上輸入相同的用戶名、口令和指紋進行注冊,其中用戶的指紋長度為256 b,測10組數據如表1所示.通過表1中數據可以計算出用戶注冊的平均時間為216.9 ms.

Table 1 Registration Phase Time of the Scene One

2) 登錄階段

用戶登錄時,在PC和安卓模擬器上分別輸入自己的口令和指紋測出各個階段所耗時間,所得的10組數據如表2所示.通過數據可以計算出用戶登錄的平均時間為192.5 ms.

Table 2 Login Phase Time of the Scene One

5.2.2 場景2測試結果

1) 注冊階段

在場景2下,選取20組不同的用戶進行測試,用戶在安卓模擬器上輸入用戶名、口令和指紋進行注冊,測出所耗時間k1和k2.其中這些用戶的用戶名、口令的復雜度和長度都不盡相同,指紋長度相同均為256 b,測得的時間如表3所示:

Table 3 Registration Phase Time of the Scene Two

2) 登錄階段

用戶在PC端和安卓設備上分別輸入對應的口令和指紋,測出各個階段所耗時間,所得對應的20組數據,如表4所示:

Table 4 Login Phase Time of the Scene Two

5.2.3 場景3測試結果

1) 注冊階段

用戶在安卓設備上輸入口令,系統分別生成3種不同長度的指紋參數:512 b,256 b,128 b,對所耗時間k1和k2進行測試,如表5所示:

Table 5 Registration Phase Time of the Scene Three

2) 登錄階段

用戶在PC和安卓設備上輸入對應的口令和指紋,測試各個階段所耗時間,如表6所示:

Table 6 Login Phase Time of the Scene Three

5.2.4 場景4測試結果

1) 注冊階段

在場景4下,有3個不同的安卓設備,分別是安卓模擬器、魅族手機和HTC手機.用戶在不同的安卓設備上輸入相同的口令和指紋,對所耗時間k1和k2進行測試,如表7所示:

Table 7 Registration Phase Time of the Scene Four

2) 登錄階段

用戶在PC端上和不同的安卓設備上輸入自己的口令和指紋,測試各個階段所耗時間,如表8所示:

Table 8 Login Phase Time of the Scene Four

5.3 性能分析

由場景1的注冊階段所測數據如表1所示,可以計算出用戶在安卓模擬器上注冊所需要的平均時間為216.9 ms.由登錄階段表2可以計算出用戶使用安卓模擬器和PC端進行登錄所需的平均時間是192.5 ms.

由場景2測得的數據表3可以得出,當不同的用戶輸入不同的口令進行注冊時,所耗費的最長時間與最短時間差值為81 ms,小于人體的反應時間(人體的反應時間>100 ms),對于用戶來說,設置不同長度或復雜程度不同的口令并不能感受到其差異.故口令的長短和復雜程度對用戶的注冊時間影響不大.注冊階段不同用戶耗時對比如圖8所示:

Fig. 8 Registration phase experimental data of the scene two.圖8 場景2注冊階段實驗數據

由場景2表4可以看出:當不同的用戶輸入其對應的口令進行登錄時,所耗費的最長時間和最短時間的差值為54 ms,小于人體的反應時間,故當口令的長度和復雜程度對用戶的登錄總時間影響不大,不同的用戶在登錄階段的時間對比如圖9所示:

Fig. 9 Login phase experimental data of the scene two.圖9 場景2登錄階段實驗數據

Fig. 10 Comparison of experimental data in two phases of the scene three.圖10 場景3兩個階段實驗數據對比

根據場景3所測數據如表5注冊階段和表6登錄階段可以看出,當指紋長度不同時,用戶注冊階段所耗時間的最大差值為9 ms,登錄階段所耗時間的最大差值為10 ms,對用戶的影響不大.指紋長度分別為128 b,256 b,512 b時,注冊階段和登錄階段所耗時間的對比如圖10所示:

場景4即用戶在不同的安卓設備上輸入相同的口令和指紋進行測試,由表7和表8測得的數據可以看出:在實際的手機設備上注冊和登錄所耗總時間比在安卓模擬器上耗費的總時間短,傳輸時間基本無差別,主要區別在安卓設備上的計算時間.在已有的Mobile SPA方案中,注冊階段耗費的總時間是傳輸時間25 ms和手機端計算時間1 ms之和,共計26 ms,而本文的方案在2種手機上測試所耗費的時間分別為37 ms和40 ms,時間差較小,對方案的性能影響不大.在Mobile SPA方案中,登錄階段所消耗的時間為在服務器端的計算時間1 ms、在手機端的計算時間2 ms、傳輸時間35 ms,共計38 ms.本方案在登錄階段在手機設備上測得的登錄總時間分別為152 ms和151 ms,與Mobile SPA方案的最大時間差值為117 ms,相差較大,但本方案在登錄階段有盲簽名運算、密鑰重新生成運算等,大大提高了系統的安全性,對于一般的用戶來說,反應時間大于100 ms,故對用戶的使用感影響不大.用戶使用不同的安卓設備注冊和登錄所耗時間對比如圖11所示:

Fig. 11 Comparison of experimental data in two phases of the scene four.圖11 場景4兩個階段實驗數據對比

由測試方案可知,本方案注冊時算法運行的時間為k1,登錄時算法運行的時間為t3+t2+t4,算法的運行總時間為k1+t3+t2+t4,可以計做W(PC端與安卓設備之間的傳輸時延較短,可以忽略不計,故t3可以看做是算法在安卓設備上的運行時間).根據場景4所列數據可以分別計算出用戶在安卓設備、魅族手機和HTC手機上算法的運行總時間W.可以據此畫出用戶在不同的安卓設備上算法運行的時間對比如圖12所示.由圖12可以看出,本方案的算法在安卓模擬器上運行耗時最長,在魅族手機和HTC手機上耗時基本相同,這是因為安卓模擬器在處理器和設置的參數上與安卓真機相比有一定的差距,故影響了算法的運行效率.

Fig. 12 Comparison of the running time of the algorithm on different devices.圖12 不同設備算法運行時間對比圖

在手機端的存儲方面,在Mobile SPA方案中,需要在手機端存儲MAC key,以便與服務器端進行認證,1個服務器對應1個MAC key,而1個MAC key有128 B.而在本方案的設計中,手機端僅需要短暫存儲用戶的指紋,而本文的設計方案中,手機端只需要存儲用戶的指紋信息即可與各種服務器進行認證,指紋參數長度最大為512 b即64 B.若用戶注冊了2 000個服務器,則Mobile SPA方案需要250 Kb的存儲容量,而本文的FMPA方案僅需在運算過程中暫存0.0625 Kb,不需要在手機端長期存儲數據.可以計算出,FMPA方案手機端存儲量僅為Mobile SPA方案的0.03%.

綜上所述,本文提出的方案在時間性能方面與已有的手機參與的認證方案相比,雖然在登錄階段時間有明顯增長,但對于用戶體驗來講,對用戶的使用感影響不大,同時本文增加了盲簽名運算、密鑰重新生成運算等,大大提高了系統的安全性.在手機端的存儲方面,本文的方案在手機端僅暫存用戶的指紋,故只存儲少量的信息,減少了手機端的存儲壓力.所以,本文的方案有很高的應用價值.

6 總 結

用戶常通過口令、驗證碼等登錄應用賬戶使用其服務.而這些應用賬戶往往與其他的應用賬戶相關聯,或是存儲著用戶的某些個人隱私甚至與其銀行卡相互綁定,所以保護用戶口令的安全、對用戶身份進行認證成為一個廣泛關注的問題.本文利用手機輔助用戶認證,與以往的手機、個人電腦和服務器3方認證不同的是,并不在手機端存儲用戶的認證信息,利用口令和指紋2個用戶憑據生成認證私鑰,再通過私鑰和HKDF[13]函數生成認證密鑰,從而與服務器進行認證.由于HKDF函數的特性,任何對手都不能對密文暴力破解得到密鑰或是口令,也不能無限地試錯攻擊從而對密文解密.由于手機端沒有用戶的秘密信息,即使手機丟失,也不會對用戶賬戶造成安全隱患.最后我們對本文的方案進行了安全性證明和實驗測試,結果表明,本文的方案能夠抵御字典攻擊和對手手機端的攻擊,能夠保證用戶口令和賬戶安全,且與現有的手機、個人電腦、服務器3方認證的時間無明顯差別,此外還減少了手機端的存儲壓力,具有很高的應用價值.

[1]Carlson N. Mark Zuckerberg broke into a Facebook user’s private email account[EB/OL]. 2010 [2010-03-00]. http://www.businessinsider.com

[2]Wu M, Garfinkel S, Miller R. Secure Web authentication with mobile phones[C/OL] //Proc of DIMACS Workshop on Usable Privacy and Security Software, 2004 [2016-06-15]. https://www.researchgate.net/publication/228856911_Secure_web_authentication_with_mobile_phones

[3]Thanh D, Jorstad I, Jonvik T. Strong authentication with mobile phone as security token[C] //Proc of IEEE the 6th Int Conf on Mobile Ad Hoc and Sensor Systems.Piscataway, NJ: IEEE, 2009: 777-782

[4]McCune J M, Perrig A, Reiter M K. Seeing-is-believing: Using camera phones for human-verifiable authentication[C] //Proc of 2005 IEEE Symp on Security and Privacy. Piscataway, NJ: IEEE, 2005: 110-124

[5]Mannan M, Oorschot P C. Financial Cryptography and Data Security: Using a Personal Device to Strengthen Password Authentication from an Untrusted Computer[M]. Berlin: Springer, 2007: 88-103

[6]Starnberger G, Froihofer L, Goeschka K M. QR-TAN: Secure mobile transaction authentication[C] //Proc of Availability, Reliability and Security. Piscataway, NJ: IEEE, 2009: 578-583

[7]Acar T, Belenkiy M, Kupcu A. Single password authentication[J].Computer Networks, 2013, 57(13): 2597-2614

[8]Chen C L, Lee C C, Hsu C Y. Mobile device integration of a fingerprint biometric remote authentication scheme[J].International Journal of Communication Systems, 2012, 25(5): 585-597

[9]Su Q, Tian J, Chen X. A fingerprint authentication system based on mobile phone[C] //Proc of Audio-and Video-Based Biometric Person Authentication. Berlin: Springer, 2005: 151-159

[10]Xu Qingui, Huang Peican,Yang Taolan. An enhanced biometrics-key-based remote user authentication scheme with smart card[J].Journal of Computer Research and Development, 2015, 52(11): 2645-2655 (in Chinese)(徐欽桂, 黃培燦, 楊桃欄. 增強的基于生物密鑰智能卡遠程身份認證方案[J].計算機研究與發展, 2015, 52(11): 2645-2655)

[11]Matt Z. FBI has accessed san bernardino shooter’s phone without apple’s help[EB/OL]. 2016 [2016-03-29]. http://gadgets.ndtv.com/mobiles/news

[12]Boyen X. Hidden credential retrieval from a reusable password[C] //Proc of the 4th Int Symp on Information, Computer, and Communications Security. New York: ACM, 2009: 228-238

[13]Boyen X. Halting password puzzles[C] //Proc of the 16th USENIX Security Symp. Berkeley, CA: USENIX Association, 2007: 119-134

An Di, born in 1992, Master candidate in Xidian University. Her main research interests include cloud computing and storage security.

Yang Chao, born in 1979. Received his PhD degree in computer science and technology from Xidian University in 2008. Associate professor in Xidian University. His main research interests include cryptography and information & network security.

Jiang Qi, born in 1983. Received his PhD degree in computer science and technology from Xidian University in 2011. His main research interests include security protocols and wireless network security.

Ma Jianfeng, born in 1963. Professor and PhD supervisor in Xidian University. His main research interests include network and information security, cryptography.

A New Password Authentication Method Based on Fingerprint and Mobile Phone Assistance

An Di, Yang Chao, Jiang Qi, and Ma Jianfeng

(SchoolofCyberEngineering,XidianUniversity,Xi’an710071) (ShaanxiKeyLaboratoryofNetworkandSystemSecurity(XidianUniversity),Xi’an710071)

Mobile phones and Internet applications are widely used nowadays,which enables users to authenticate with the server with the help of mobile phones. However,existing schemes need to store the user’s secret or ciphertext on the mobile phone. Once the mobile phone is lost, opponents may get the secret information on the phone, which will bring irreparable loss to the user. Aiming at the above problems, we propose a kind of authentication scheme based on fingerprint and password which has no need to store a secret in the mobile phone. The core idea is to store the encrypted text on the server side. When the user logs in, he uses his mobile phone to generate the private key which is used to decrypt the ciphertext generated during the registration phase. The user needs to enter his password and fingerprint at the private key generation process.When the computer interacts with the mobile phone, the user’s password will be blind so that it can be protected from adversaries’ attacks. Theoretical analysis and experimental results show that our scheme reinforces the security of the user’s secret. Meanwhile,our scheme can resist dictionary attacks,replay attacks and phishing attacks while reducing the storage pressure of the mobile phone along with easy deployment.

password-based authentication; authentication based on terminal assistance; fingerprint authentication; password attack and protection; blind password based on fingerprint

2016-06-16;

2016-08-17

國家自然科學基金青年基金項目(61303219);國家自然科學基金面上項目(61672415)

楊超(chaoyangcn@163.com)

TP391

This work was supported by the National Natural Science Foundation for Young Scholars of China (61303219) and the General Program of National Natural Science Foundation of China (61672415).

猜你喜歡
用戶
雅閣國內用戶交付突破300萬輛
車主之友(2022年4期)2022-08-27 00:58:26
您撥打的用戶已戀愛,請稍后再哭
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年5期)2016-11-28 09:55:15
兩新黨建新媒體用戶與全網新媒體用戶之間有何差別
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
挖掘用戶需求尖端科技應用
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
100萬用戶
創業家(2015年10期)2015-02-27 07:54:39
主站蜘蛛池模板: 91精品啪在线观看国产91| 看国产一级毛片| 久久6免费视频| 激情在线网| 国产精品偷伦视频免费观看国产| 欧美日韩国产在线播放| 国产在线观看91精品亚瑟| 国产黑人在线| 国产亚洲精品97AA片在线播放| 国内自拍久第一页| 青青操视频在线| 国产91蝌蚪窝| 日本成人精品视频| 国产激情国语对白普通话| 日本亚洲欧美在线| 亚洲第一色视频| 午夜限制老子影院888| 久操线在视频在线观看| 精品成人一区二区| 日韩毛片免费| 白浆视频在线观看| 成人福利在线观看| 精品久久久久久久久久久| 欧美一区二区三区国产精品| 欧美亚洲第一页| 日韩欧美国产区| 污网站在线观看视频| 福利视频一区| 精品自窥自偷在线看| 久青草国产高清在线视频| 国产精品3p视频| 亚洲国产精品一区二区高清无码久久| 国产91av在线| 91色国产在线| 91免费观看视频| 人妻夜夜爽天天爽| 拍国产真实乱人偷精品| 亚洲二区视频| 2020极品精品国产| 亚洲国产成人自拍| 欧美黄色a| 欧美三级视频网站| 亚洲人成网站在线播放2019| 久久精品这里只有精99品| 国产亚洲欧美日韩在线一区二区三区| 国内熟女少妇一线天| 91九色国产在线| 中文字幕永久在线观看| 永久成人无码激情视频免费| 综合色88| 亚洲日本www| 一级黄色网站在线免费看| 天天干天天色综合网| www中文字幕在线观看| 福利视频久久| 久久人妻系列无码一区| 三级视频中文字幕| 国产91小视频| 亚洲成a人片| 国产一级精品毛片基地| 天天综合网色| 亚洲精品国偷自产在线91正片| 日韩高清无码免费| 天天躁夜夜躁狠狠躁躁88| 67194亚洲无码| 久久这里只有精品国产99| 亚洲精品午夜无码电影网| 国产丰满大乳无码免费播放| 久久精品国产精品一区二区| 日本精品影院| 久久99国产精品成人欧美| 国产黑丝视频在线观看| 国产另类视频| 在线视频亚洲色图| 欧洲欧美人成免费全部视频 | 久久人人97超碰人人澡爱香蕉| 色色中文字幕| 日韩成人在线一区二区| 欧美乱妇高清无乱码免费| 日韩福利视频导航| 午夜精品国产自在| 亚瑟天堂久久一区二区影院|