從32位系統遷移到64位系統時,遇到了潛在問題。在32位系統上進行密碼散列,然後遷移到64位系統
系統在字符串上運行兩個「單向」加密算法。
但是,當我在64位系統上嘗試相同的代碼時,哈希值是不同的,現在很好,但沒有人有任何方法可以確保在將來升級到64位時仍然可以檢索和匹配哈希值超越?
沒有冒用客戶的敏感密碼?或者曾經存儲原始密碼或其他敏感數據而沒有加密?
從32位系統遷移到64位系統時,遇到了潛在問題。在32位系統上進行密碼散列,然後遷移到64位系統
系統在字符串上運行兩個「單向」加密算法。
但是,當我在64位系統上嘗試相同的代碼時,哈希值是不同的,現在很好,但沒有人有任何方法可以確保在將來升級到64位時仍然可以檢索和匹配哈希值超越?
沒有冒用客戶的敏感密碼?或者曾經存儲原始密碼或其他敏感數據而沒有加密?
基本上,只要確保您使用相同的算法。如果你的哈希值與相同的輸入值不同,那麼你使用的是不同的算法;對基礎字的大小可能有一些未聲明的依賴關係。確保你不使用這些類型的算法,或者如果你這樣做,他們對字的大小有非常明確的期望,這些東西可以被你忽略。
謝謝你的建議,我將對此進行檢查,我已經意識到由於其上面的評論不是可以影響這一點的比特大小。:(再次感謝! – cocacola09
你使用什麼哈希算法?這不應該發生在任何常見的哈希算法上.. – halfdan
這應該不會發生。無論32或64位體系結構如何,散列值應該相同。你用什麼語言和庫來生成哈希?你使用什麼散列算法?您的標籤提到了Java PHP和Python。什麼語言實際上存在這個問題?還是全是3? – Kibbee
* Real *哈希算法具有定義良好的平臺獨立輸出大小。 MD5有128位,這是一個常數。你使用哪種算法不能提供這樣的合同,因此不能跨平臺使用? – delnan