Sha-1

Base64(SHA1(GUID)) 是否仍然像原始 GUID 一樣唯一?

  • March 7, 2017

基本上標題是什麼;GUID 在設計上是獨一無二的。如果您通過 SHA1 執行 GUID,然後通過 Base64 執行雜湊,則生成的字元串是否具有與 GUID 相同的保證唯一性?

Base64 提供從輸入到輸出的 1:1 轉換(如果需要,可以再返回)。因此,如果您採用一組獨特的項目並對所有項目進行 base64 編碼,它們都將是唯一的。

那麼問題就變成了,如果您通過 SHA1 執行 GUID,生成的雜湊是否與 GUID 具有相同的唯一性?

答案實際上是 - 是的;理論上不完全。SHA1 的多個輸入映射到相同的輸出,但實際上,如果您的 GUID 是唯一的,那麼發生衝突導致唯一性喪失的可能性可以忽略不計。

引用自:https://crypto.stackexchange.com/questions/8397