一次性密碼

维基百科,自由的百科全书
跳转至: 导航搜索

一次性密碼英语:One Time Password,簡稱OTP),又稱動態密碼單次有效密碼,是指計算機系統或其他數位裝置上只能使用一次的密碼,有效期為只有一次登錄會話或交易。OTP 避免了一些與傳統基於(靜態)密碼認證相關聯的缺點;一些實作還納入了雙因素認證,確保單次有效密碼需要存取一個人有的某件事物(如內建 OTP 計算機的小鑰匙掛件裝置)以及一個人知道的某件事物(如 PIN)。

相對於靜態密碼,OTP 最重要的優點是它們不容易受到重新執行攻擊 (replay attack)。這意味著管理記錄已用於登錄到服務或進行交易的 OTP 的潛在入侵者將無法濫用它,因為它將不再有效。第二個主要優點是,使用多個系統相同(或類似)密碼的用戶,如果其中一個密碼被攻擊者獲得,不是對所有的系統都容易變得脆弱。許多 OTP 系統也旨在確保會話不能輕易被截獲或沒有前一個會話期間產生不可預測數據的知識模擬,從而進一步減少攻擊面。

OTP 已被作為傳統密碼一個可能的替代以及增強方式討論。不利的是,OTP 人類難以記憶。因此,它們需要額外的技術來運作。

一般的靜態密碼在安全性上容易因為木馬鍵盤側錄程式等而被竊取,而只要花上相當程度的時間,也有可能被暴力破解。為了解決一般密碼容易遭到破解情況,因此開發出一次性密碼的解決方案。

原理[编辑]

動態密碼的產生方式,主要是以時間差做為伺服器與密碼產生器的同步條件。在需要登錄的時候,就利用密碼產生器產生動態密碼,OTP一般分為計次使用以及計時使用兩種,計次使用的OTP產出後,可在不限時間內使用;計時使用的OTP則可設定密碼有效時間,從30秒到兩分鐘不等[1],而OTP在進行認證之後即廢棄不用,下次認證必須使用新的密碼,增加了試圖不經授權存取有限制資源的難度。

取得密碼的方法[编辑]

文字簡訊[编辑]

由於文字簡訊是很普及可以接觸到的技術,成為了動態密碼傳遞的方式中最常見的一種方式。但由於行動網路傳遞簡訊時的安全性問題,這種方式對於中间人攻击的抗性較低。

智慧型手機[编辑]

對於有成本考量但希望取得較高安全性的公司,會規劃使用在智慧型手機上安裝流動應用程式產生動態密碼。

特殊載具[编辑]

RSA Security的RSA SecurID Token

追求更高的安全性而可以接受較高的成本時,會使用獨立的載具存放產生動態密碼所需的金鑰,避免被中間人攻擊(文字簡訊)或是被透過行動裝置的系統漏洞而取得金鑰(智慧型手機)。因為載具獨立而內建配有電池,因此會有壽命與回收的問題。

另外有折衷的方案是類似YubiKey使用USB供電,透過模擬USB鍵盤輸入的方式,但由於與電腦有實體接觸,安全性在嚴格的考量下不會與完全隔離的方案相同。

網頁服務[编辑]

紙張[编辑]

在某些國家的線上銀行系統會採用預印的方式提供一次性的密碼。

優勢[编辑]

動態密碼的解決方案有以下幾個優點:

  1. 解決使用者在密碼的記憶與保存上的困難性。
  2. 由於密碼只能使用一次,而且因為是動態產生,所以不可預測,也只有一次的使用有效性,可以大為提升使用的安全程度。

基於這些優點,有越來越多的銀行金融業甚至是遊戲業使用OTP解決方案,來提升保護其使用者的安全性。

參考資料[编辑]

  1. Taiwan.CNET.com 一次性密碼不敵網釣攻擊?