騰訊QQ令牌的安全性分析
騰訊QQ令牌是騰訊推出的一項保護QQ帳號及游戲帳號安全的密保產(chǎn)品,該令牌是一款鎖扣型的實物產(chǎn)品,可掛在鑰匙扣上隨身攜帶。當QQ用戶完成令牌綁定后,按下QQ令牌的按鍵,會在液晶屏上顯示6位動態(tài)密碼用于QQ身份驗證,用戶在電腦上輸入正確密碼才能繼續(xù)操作。
在幾年前,騰訊曾經(jīng)推出類似的“QQ密保卡”免費服務(wù),通過紙質(zhì)的卡片模擬動態(tài)密碼形式登錄,月光博客曾經(jīng)分析過,“QQ密??ā彪m然節(jié)省了成本,但是安全性卻遠遠低于動態(tài)密碼鎖,QQ密??ú]有使得QQ的登錄安全性發(fā)生本質(zhì)的變化,要想實現(xiàn)真正的網(wǎng)絡(luò)安全,具有硬件介質(zhì)的動態(tài)密碼鎖和USB Key才能使得安全性得到一個質(zhì)的突破,而現(xiàn)在,騰訊終于推出了具有硬件介質(zhì)的動態(tài)密碼鎖產(chǎn)品:QQ令牌,那么QQ令牌的安全性到底如何呢?
QQ密???/P>
QQ令牌
動態(tài)密碼認證技術(shù)
QQ令牌使用的是動態(tài)密碼技術(shù),這是目前較為流行的身份認證硬件產(chǎn)品,可以實現(xiàn)較為安全的身份認證。
動態(tài)密碼(Dynamic Password)也稱一次性密碼,它指用戶的密碼按照時間或使用次數(shù)不斷動態(tài)變化,每個密碼只使用一次。動態(tài)密碼采用一種稱之為動態(tài)令牌的專用硬件,內(nèi)置電源、密碼生成芯片和顯示屏。下圖是這種產(chǎn)品的外觀,其中數(shù)字鍵用于輸入用戶PIN碼,顯示屏用于顯示一次性密碼。每次輸入正確的PIN碼,都可以得到一個當前可用的一次性動態(tài)密碼。
動態(tài)密碼鎖
這種產(chǎn)品的密碼生成芯片運行專門的密碼算法,根據(jù)當前時間以及使用次數(shù)生成當前密碼并顯示在顯示屏上。認證服務(wù)器采用相同的算法計算當前的有效密碼。由于每次使用的密碼必須由動態(tài)令牌來產(chǎn)生,只有合法用戶才持有該硬件,所以只要密碼驗證通過,系統(tǒng)就可以認為該用戶的身份是可靠的。而用戶每次使用的密碼都不相同,即使黑客截獲了一次密碼,也無法利用這個密碼來仿冒合法用戶的身份,因為下一次登錄必須使用另外一個動態(tài)密碼。
基于PIN碼保護的動態(tài)密碼
動態(tài)密碼鎖需要兩個密碼要素,一個要素是靜態(tài)PIN碼,由用戶自行設(shè)置、保管。另一個要素是動態(tài)密碼,由密碼令牌動態(tài)生成,不可預(yù)測,并且與后臺服務(wù)器的接入控制保持同步,由后臺服務(wù)器進行檢驗。因此,用戶必需輸入正確的靜態(tài)PIN碼和動態(tài)密碼,才能通過身份認證。
動態(tài)密碼鎖本身需要輸入PIN碼才能使用,靜態(tài)PIN碼的安全要素在于,這個PIN碼不是在電腦上輸入的,而是在密碼鎖上輸入的,這樣,所有的黑客木馬程序從理論上講都全部失效,因為這些木馬根本不可能在另外一個硬件密碼鎖上運行。
黑客要想破解用戶密碼,首先要從物理上獲得用戶的動態(tài)密碼鎖,其次還要獲得用戶的PIN碼,這樣,黑客必須潛入用戶家中(電腦黑客還需要學(xué)習(xí)普通竊賊的技術(shù)),偷取了動態(tài)密碼鎖,然后再破解PIN碼。沒有用戶PIN碼依舊無法使用,而通常情況下動態(tài)密碼鎖本身具有一定安全保護功能,錄入PIN碼錯誤10次就會自動鎖死而無法使用。這也保證了動態(tài)密碼鎖物理上的安全性。
動態(tài)密碼技術(shù)可以完美解決客戶端用戶的安全性問題,因為黑客無論使用什么方法,也無法方便的竊取用戶的密碼,即使黑客竊取了一次密碼也無法登錄使用。
動態(tài)密碼的類型
動態(tài)口令硬件令牌從技術(shù)角度分析包括以下三種形式:基于時間同步、基于事件同步、挑戰(zhàn)應(yīng)答方式。
時間同步:基于動態(tài)口令令牌和服務(wù)器的時間同步,通過運算來生成一致的動態(tài)口令,一般更新率為60秒,每60秒產(chǎn)生一個新口令,要求服務(wù)器能夠十分精確的保持正確的時鐘,同時對其令牌的晶振頻率有嚴格的要求。
從另一方面,基于時間同步的令牌在每次進行認證時,服務(wù)器端將會檢測令牌的時鐘偏移量,相應(yīng)不斷的微調(diào)自己的時間記錄,從而保證了令牌和服務(wù)器的同步,確保日常的使用,目前可以通過增大偏移量的技術(shù)(前后10分鐘)來進行遠程同步,確保其能夠繼續(xù)使用,降低對應(yīng)用的影響。
事件同步:基于事件同步的令牌,其原理是通過某一特定的事件次序及相同的種子值作為輸入,通過加密算法運算出一致的密碼,不受時鐘的影響,由于其算法的一致性,其口令是預(yù)先可知的,通過令牌,你可以預(yù)先知道今后的多個密碼。基于事件同步的令牌同樣存在失去同步的風(fēng)險,例如用戶多次無目的的生成口令等,事件同步的服務(wù)器使用增大偏移量的方式進行再同步,其服務(wù)器端會自動向后推算一定次數(shù)的密碼,來同步令牌和服務(wù)器。
挑戰(zhàn)應(yīng)答方式:常用于客戶端軟件,在軟件上輸入服務(wù)端下發(fā)的挑戰(zhàn)碼,客戶端上生成一個隨機數(shù)字,這個動態(tài)口令只能使用一次,可以充分的保證登錄認證的安全。
QQ令牌動態(tài)密碼的優(yōu)點
QQ令牌
價格低:從技術(shù)上講,動態(tài)密碼技術(shù)是比較完美的方案,然而可惜的是,動態(tài)密碼鎖的成本過高,不太利于大規(guī)模使用?;跁r間同步的“QQ令牌”相比而言價格較低,比較易于批量使用,QQ令牌就是使用的基于時間同步的動態(tài)令牌,這種動態(tài)令牌由于成本限制,就沒有保護PIN碼,別人偷盜這張卡片即可冒名登錄,其安全性相比具有PIN碼的動態(tài)密碼鎖還有一定差距。
使用簡便:在使用上,QQ令牌較為簡單易用,當正常啟動時,會在液晶屏上顯示6位動態(tài)密碼,在一分鐘后,動態(tài)密碼自動消失,用戶需要再次按下按鍵,重新獲取動態(tài)密碼。
跨平臺:QQ令牌無需安裝,無需USB接口,沒有驅(qū)動,可在任何平臺上使用,相比USB Key來說安裝和使用很簡單。
QQ令牌動態(tài)密碼的缺點
缺少PIN碼:QQ令牌因為節(jié)省成本,沒有鍵盤,因此也就沒有PIN碼保護,用戶每按一次按鈕就可以生成一個密碼,一旦QQ令牌被盜,用戶的密碼即被破解,用戶需要努力保護自己的QQ令牌在物理層面不被他人盜取,一旦被盜,也應(yīng)該及時掛失。相比來說有PIN碼保護動態(tài)密碼鎖,硬件和PIN碼構(gòu)成了的兩個安全因素。如果用戶PIN碼被泄漏,只要密碼鎖本身不被盜用即安全。即使密碼鎖被盜,黑客不知道PIN碼也無法使用,破解PIN碼并不容易,大部分動態(tài)密碼鎖對于多次錯誤輸入PIN碼后,都會自動鎖定,無法使用,需要管理員來解鎖。
單鑰加密的認證安全:雖然動態(tài)密碼鎖的安全性的確不錯,然而,動態(tài)密碼技術(shù)也有一個安全隱患,就是服務(wù)器端的安全性。動態(tài)密碼的本質(zhì)是單鑰加密,密鑰只有一個。在服務(wù)器端的認證系統(tǒng)里,可以計算出所有動態(tài)密碼,因此黑客如果將精力放在破解認證服務(wù)器系統(tǒng),那么還是有可能對系統(tǒng)造成一定安全威脅,另外這個系統(tǒng)也依賴于服務(wù)器的管理員,服務(wù)器的管理員可以在服務(wù)器端修改動態(tài)密碼鎖的規(guī)則,模擬用戶登錄,也具有一定的安全隱患。而USB Key通過雙鑰加密的技術(shù)實現(xiàn)安全的認證,將私鑰保存在USB Key中,服務(wù)器端無法模擬,就可以彌補動態(tài)密碼鎖的某些安全性的隱患。
USB Key
結(jié)論
總的來說,“QQ令牌”的安全性遠遠高于“QQ密??ā?,但因為節(jié)省成本而缺少PIN碼,其安全性還是低于常規(guī)的動態(tài)密碼產(chǎn)品,因此,“QQ令牌”應(yīng)隨身攜帶,并盡量避免“QQ令牌”被他人借用或通過其他方式獲得,否則會給自己的QQ帳號帶來很大的安全問題。一旦“QQ令牌”丟失,應(yīng)該在第一時間內(nèi)登錄系統(tǒng)掛失,以免賬戶安全受到威脅。
【編輯推薦】