不能說的秘密—關(guān)于口令那些事
口令,又稱密碼,英語為Password或Passcode。得益于其近乎零成本的優(yōu)勢,它是我們最常使用的安全工具。通??诹钤谖覀冊诔跏蓟~號和系統(tǒng)的時候設(shè)置,當再次進入系統(tǒng)的時候被提示并輸入,從而讓我們獲得對系統(tǒng)的訪問權(quán)限。根據(jù)其組成,口令包括文本口令、圖形口令。文本口令由字符組成,使用鍵盤輸入較方便;而圖形口令由各種圖形構(gòu)成,使用觸摸屏輸入較方便。
一枚好的口令需要做到三點:好記、好輸且難猜。好記,要求這枚口令盡可能簡單;好輸,要求這枚口令盡可能簡短;而難猜,則要求這枚口令盡可能復(fù)雜而冗長。鑒于上述三點存在矛盾,要同時滿足這三點并不容易。而且,如果考慮到當前一個人可能擁有大量的賬戶和口令,保障一個人擁有多枚好的口令則更為不容易。
為保障一枚好的口令,早期通常使用規(guī)則驅(qū)動的方式,譬如要求用戶在創(chuàng)建口令時,確??诹畋仨氂蓴?shù)字、大寫字母、小寫字母、特殊字符等不同字符類型組成,且一個口令必須包含兩種或兩種以上的不同種類的字符,并且口令的長度必須不少于8個字符;在不同賬戶中的口令必須不同。然而,當前的深入研究發(fā)現(xiàn),實施上述四項規(guī)則并不能保證生成一枚平衡好記、好輸且難猜這三點的好口令。因此,當前的主流研究通過口令猜測攻擊的角度,建議用戶使用非常少見的口令。這里的少見,既會要求非常復(fù)雜,又要求與其它已知口令比較,使得既不是重復(fù)出現(xiàn)的口令,也不是經(jīng)過簡單變形的口令。這里給研究人員出了一個難題:如何判定一枚口令在當前網(wǎng)絡(luò)空間是“少見”的?為此,研究人員提出了數(shù)據(jù)驅(qū)動的方法:將已知口令作為訓(xùn)練集,訓(xùn)練一個口令猜測模型,對用戶創(chuàng)建的口令進行猜測,如果猜測次數(shù)非常多或者猜不到,則判定為好口令。由于已知口令集數(shù)據(jù)量龐大,所訓(xùn)練出的模型也非常復(fù)雜,不適合直接放在用戶瀏覽器或其他客戶端。因此有兩種方案用于這一基于數(shù)據(jù)驅(qū)動方式的對保障好口令的方案,一種是將模型預(yù)先訓(xùn)練好并進行有效壓縮,然后放置在客戶端對創(chuàng)建的口令進行猜測,這一方式響應(yīng)速度快,且不需要傳輸用戶口令;另一種是將創(chuàng)建的口令實時地安全傳回服務(wù)端,由服務(wù)器端的模型進行判斷,這一方式由于模型的完整能獲得更準確的結(jié)果。
圖表 1猜測攻擊模型示例
口令由人來創(chuàng)建,因此擁有強烈的個性屬性。有的人喜歡字母輸入,有的人喜歡數(shù)字輸入,于是有了偏好字母和偏好數(shù)字兩種口令;有的人喜歡用一段話或者一首詩詞作為口令,有的人喜歡用電話號碼作為口令,而更多的人則喜歡用自己或者親人的生日作為口令。我們的研究表明,用戶創(chuàng)建時,會由于生活習(xí)慣,文化氛圍的不同,在創(chuàng)建口令時帶有強烈的區(qū)域特征。譬如中國人喜歡用拼音,特別是全拼作為口令;中國人喜歡用數(shù)字來組成口令,而歐美用戶更加樂意使用字母組成口令,盡管大家的鍵盤都是一樣的。理解這些特點,對于我們創(chuàng)建和判斷好的口令非常重要。
圖表 2口令認證系統(tǒng)示例
盡管當前已經(jīng)對口令是否能夠保護用戶的系統(tǒng)安全提出各種疑問,但以其在保護系統(tǒng)安全方面的高性價比絕對優(yōu)勢,口令將持續(xù)存在,并有效保護用戶在網(wǎng)絡(luò)空間中的各類活動。
【本文為51CTO專欄作者“中國保密協(xié)會科學(xué)技術(shù)分會”原創(chuàng)稿件,轉(zhuǎn)載請聯(lián)系原作者】