時間:2023-06-17|瀏覽:255
但其實并不必須這樣做,因為只要每個公鑰使用兩次,一次是接收比特幣,一次是花掉它,用戶就可以獲得大量財務隱私。更好的做法是,在接收支付時使用一個新的公鑰或唯一地址,或使用CoinJoin技術和Mergeavoidance創(chuàng)建找零輸出,這樣就難以使用區(qū)塊鏈來跟蹤用戶支付或接收比特幣了。
避免重用密鑰還可以提高安全性,防止攻擊者從公鑰或簽名比較中重建私鑰。唯一的非重用的P2PKH或P2SH地址通過隱藏公鑰防止第一個類型的攻擊,直到這個地址上的比特幣被花費出去。如果無法在一兩個小時之內(nèi)從公鑰重建私鑰,那么該攻擊也將無用,因為比特幣已經(jīng)被花出去且無法在區(qū)塊鏈上修改。唯一的非重用的私鑰進行一次簽名以防止第二種類型的攻擊,攻擊者無法得到這個私鑰第二次簽名的結(jié)果,從而無法使用基于比較的攻擊。
因此,從隱私和安全的角度來看,我們建議創(chuàng)建的應用程序避免密鑰重用,并在可能的情況下勸阻其他人不要地址重用。如果應用需要提供一個固定的URI來收款,請查看bitcoin:URI部分。