另一種隱私保護機制是代碼混淆。該方案要找到一種方式來混淆程序 P,混淆器(obfuscator)會產生第二個程序 O(P)=Q,使得在給 P 和 Q 相同的輸入時,產生相同的輸出。但是 Q 不會揭露與 P 內部構造相關的任何信息。這使得我們可以在 Q 內部隱藏如密碼和身份證等的私密信息,但同時在程序里使用這些信息。
雖然研究者已經證明完全的黑盒混淆器是不可能實現的,但不可區分混淆器(indistinguishability obfuscation)是可以實現的,這是一種概念上弱化的混淆器。不可區分混淆器 O 的定義是,如果你使用兩個同等的程序 A 和 B(如把相同值輸入到 A 或 B 里去產生相同的輸入)計算得到 O(A)=P 和 O(B)=Q,則在無法進入程序 A 或 B 的情況下,則在計算上分辨 P 來自于 A 還是 B 是不可行的。
最近,研究者 Craig Gentry, Amit Sahai 等人完成了不可區分代碼混淆器。然而,該算法的計算開銷十分高昂。
如果開銷問題可以得到改善,則能帶來巨大的潛在好處。
舉個例子,假設
以太坊的智能合約里有 Coinbase 的密碼。則我們可以寫出這樣一個程序:當智能合約滿足了特定條件后,合約通過中間節點初始化與 Coinbase 的 HTTPS 會話,使用密碼進行登錄,然后執行交易。由于合約里的信息被混淆了,因此中間節點或
區塊鏈的其他參與者都沒法修改發出的請求和獲取用戶密碼。
版權申明:本內容來自于互聯網,屬第三方匯集推薦平臺。本文的版權歸原作者所有,文章言論不代表鏈門戶的觀點,鏈門戶不承擔任何法律責任。如有侵權請聯系QQ:3341927519進行反饋。