我的任務是創建一個一次性密碼(OTP)系統,該系統最終將用於在移動設備上創建OTP生成器。關於實施一次性密碼系統我還需要了解什麼?
我們正在尋找使用HOTP (rfc 4226)使用計數器,但也許有一些變化。我們不需要符合OATH標準。
這是我在安全/加密領域的第一次經歷,所以我試圖避免(並瞭解)安全新手的安全陷阱,以及更好地理解我需要做什麼並知道完成這項任務。
除了這個一般的建議,我已經得到了有關實施該項目的幾個具體的問題:
是HOTP仍然被認爲是安全的,即使它只是使用SHA-1?我的一位同事建議我們應該使用HMAC-SHA-512。它看起來很容易切換我們使用的底層算法。這裏有什麼副作用我應該知道嗎?如增加處理時間?
我有關於計數器同步的問題。對於可能的櫃檯價值,我應該如何使用理智的前瞻?如果用戶點擊超過我們的超前限制,什麼是恢復同步的最佳方式?顯示和發送計數器以及相應的OTP是否更容易,還是會顯着削弱安全性?
我對安全存儲相關信息(如共享密鑰和計數器值)的最佳做法也沒有很好的理解。
當你回答時,請記住我是這個領域的新手,並且仍然試圖追上行話和首字母縮略詞。提前致謝。