RSA令牌動態口令生成原理

RSA是一種國際上通用的非對稱算法,主要是提供雙因素認證功能。即把密碼拆分成兩部分,一部分是用戶設置的固定密碼,另外一部分來自每個用戶發放的可顯示數字的硬件。該硬件基於時間、設備號和種子數計算出一個動態密碼。固定密碼加動態密碼才構成整個認證密碼。

關於動態口令生成方式的簡要說明

        爲解決靜態口令安全性的問題,在90年代出現了動態口令技術,到目前爲止,該技術的應用成果和大體情況如下:

        動態口令技術主要分兩種: 同步口令技術→異步口令技術→挑戰應答
        同步口令技術中又分爲: 基於時間的同步口令  基於事件的同步口令
其主要的技術比較如下:

        時間同步:基於令牌和服務器的時間同步,通過運算來生成一致的動態口令,基於時間同步的令牌,一般更新率爲60S,每60S產生一個新口令,但由於其同步的基礎是國際標準時間,則要求其服務器能夠十分精確的保持正確的時鐘,同時對其令牌的晶振頻率有嚴格的要求,從而降低系統失去同步的機率,從另一方面,基於時間同步的令牌在每次進行認證時,服務器端將會檢測令牌的時鐘偏移量,相應不斷的微調自己的時間記錄,從而保證了令牌和服務器的同步,確保日常的使用,但由於令牌的工作環境不同,在磁場,高溫,高壓,震盪,入水等情況下易發生時鐘脈衝的不確定偏移和損壞。故對於時間同步的設備進行較好的保護是十分必要的,對於失去時間同步的令牌,目前可以通過增大偏移量的技術(前後10分鐘)來進行遠程同步,確保其能夠繼續使用,降低對應用的影響,但對於超出默認(共20分鐘)的時間同步令牌,將無法繼續使用或進行遠程同步,必須返廠或送回服務器端另行處理。同樣,對於基於時間同步的服務器,應較好地保護其系統時鐘,不要隨意更改,以免發生同步問題,從而影響全部基於此服務器進行認證的令牌。

        事件同步:基於事件同步的令牌,其原理是通過某一特定的事件次序及相同的種子值作爲輸入,在DES算法中運算出一致的密碼,其運算機理決定了其整個工作流程同時鍾無關,不受時鐘的影響,令牌中不存在時間脈衝晶振,但由於其算法的一致性,其口令是預先可知的,通過令牌,你可以預先知道今後的多個密碼,故當令牌遺失且沒有使用PIN碼對令牌進行保護時,存在非法登陸的風險,故使用事件同步的令牌,對PIN碼的保護是十分必要的。同樣,基於事件同步的令牌同樣存在失去同步的風險,例如用戶多次無目的的生成口令等,對於令牌的失步,事件同步的服務器使用增大偏移量的方式進行再同步,其服務器端會自動向後推算一定次數的密碼,來同步令牌和服務器,當失步情況經非常嚴重,大範圍超出正常範圍時,通過連續輸入兩次令牌計算出的密碼,服務器將在較大的範圍內進行令牌同步,一般情況下,令牌同步所需的次數不會超過3次。但在極端情況下,不排出失去同步的可能性,例如電力耗盡,在更換電池時操作失誤等。此時,令牌仍可通過手工輸入由管理員生成的一組序列值來實現遠程同步,而無需寄回服務器端重新同步。
異步口令技術:

        而對於異步令牌,由於在令牌和服務器之間除相同的算法外沒有需要進行同步的條件,故能夠有效的解決令牌失步的問題,降低對應用的影響,其另外一個好處是,在網絡傳輸過程中沒有出現密碼的傳輸,哪怕是動態密碼。從另一個方面,極大的增加了系統的安全性。異步口令使用的缺點主要是在使用時,用戶需多一個輸入挑戰值的步驟,對於操作人員,增加了複雜度,故在應用時,將根據用戶應用的敏感程度和對安全的要求程度來選擇密碼的生成方式。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章