Hash
改變一點改變雜湊
我很好奇 SHA、MD5 和所有相關的雜湊函式甚至通過更改輸入消息中的一位來更改輸出。這是為什麼?
這稱為擴散屬性,雜湊函式被明確設計為具有此屬性。你想要這個屬性的原因是因為它使得在相似的明文和它們的散列之間找到模式變得更加困難。
像 SHA-1 這樣的東西是基於分組密碼的。這實質上意味著散列涉及在數據塊上多次迭代某些操作。每次迭代,比特都會被打亂並影響後續的迭代。這樣,一開始的一個小改動在 80 次迭代之後就會產生很大的不同(SHA-1 做了 80 次迭代)