設定複雜的口令,並安全管理和使用口令,其最終目的是防止攻擊者非法取得存取和操作權限。
動態口令(Dynamic Password)是根據專門的演算法產生一個不可預測的隨機數字組合,每個密碼只能使用一次。
口令分類 ( 推薦學習:web前端視訊教學)
為解決靜態口令安全性的問題,在90年代出現了動態口令技術,到目前為止,應用成果和大體情況如下:
動態口令技術主要分兩種:同步口令技術、非同步口令技術(挑戰-應答方式)
其中的同步口令技術又分為:時間同步口令、事件同步口令其主要的技術比較如下:
時間同步
基於令牌和伺服器的時間同步,透過運算來產生一致的動態口令,基於時間同步的令牌,一般更新率為60秒,每60秒產生一個新口令,但由於其同步的基礎是國際標準時間,則要求其伺服器能夠十分精確的保持正確的時鐘,同時對其令牌的晶振頻率有嚴格的要求,從而降低系統失去同步的幾率。
從另一方面,基於時間同步的令牌在每次進行認證時,伺服器端將會偵測令牌的時鐘偏移量,相應不斷的微調自己的時間記錄,從而保證了令牌和伺服器的同步,確保日常的使用,但由於令牌的工作環境不同,在磁場,高溫,高壓,震盪,浸水等情況下易發生時脈的不確定偏移和損壞。
故對於時間同步的設備進行較好的保護是十分必要的,對於失去時間同步的令牌,目前可以透過增加偏移量的技術(前後10分鐘)來進行遠端同步,確保其能夠繼續使用,降低對應用的影響,但對於超出預設(共20分鐘)的時間同步令牌,將無法繼續使用或進行遠端同步,必須送回伺服器端另行處理。同樣,對於基於時間同步的伺服器,應較好地保護其係統時鐘,不要隨意更改,以免發生同步問題,從而影響全部基於此伺服器進行認證的令牌。
事件同步
基於事件同步的令牌,其原理是透過某一特定的事件順序及相同的種子值作為輸入,在演算法中運算出一致的密碼,其運算機制決定了其整個工作流程同時鐘無關,不受時鐘的影響,令牌中不存在時間脈衝晶振,但由於其演算法的一致性,其口令是預先可知的,透過令牌,你可以預先知道今後的多個密碼,故當令牌遺失且沒有使用PIN碼對令牌進行保護時,存在非法登陸的風險,故使用事件同步的令牌,對PIN碼的保護是十分必要的。
同樣,基於事件同步的令牌同樣存在失去同步的風險,例如用戶多次無目的的生成口令等,對於令牌的失步,事件同步的伺服器使用增大偏移量的方式進行再同步,其伺服器端會自動向後推算一定次數的密碼,來同步令牌和伺服器,當失步情況經非常嚴重,大範圍超出正常範圍時,透過連續輸入兩次令牌計算出的密碼,伺服器將在較大的範圍內進行令牌同步。
一般情況下,令牌同步所需的次數不會超過3次。但在極端情況下,不排出失去同步的可能性,例如電力耗盡,在更換電池時操作失誤等。此時,令牌仍可透過手動輸入由管理員產生的一組序列值來實現遠端同步,而無需返回伺服器端重新同步。
以上是設定複雜的口令,並安全管理和使用口令,最終目的是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!