Address
為什麼比特幣地址是公鑰的雜湊值?
目前,比特幣地址及其校驗和是通過使用 SHA256 和 RIPEMD160 的重複散列從公鑰建構的。現在我明白了使用散列構造校驗和的原因,但為什麼不只是使用添加了校驗和的原始公鑰?僅僅是因為地址較短,還是因為使用公鑰的散列而不只是公鑰而存在其他隱私/安全隱患?
這只是為了獲得更短的地址。正常公鑰的長度為 65 字節,這太長了,不方便。壓縮的公鑰是 33 字節,可能會被用來代替散列,儘管它們比 20 字節的散列長一點。中本聰在設計比特幣時似乎也不知道壓縮公鑰,或者對使用它們感到不自在。
雜湊似乎有助於抵禦某些攻擊(例如針對 ECDSA 的某些攻擊),儘管它們也開啟了其他攻擊的可能性(例如針對 RIPEMD-160 的攻擊)。我不清楚它們是否確實提高了整體安全性。