Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥

Privacy on Blockchain

Avatar for Osuke Osuke
November 13, 2019

Privacy on Blockchain

Avatar for Osuke

Osuke

November 13, 2019
Tweet

More Decks by Osuke

Other Decks in Technology

Transcript

  1. プラむバシヌ問題 • 第䞉者が怜蚌可胜なデヌタずしおブロックチェヌンを扱いたいが、個人に玐付く デヌタは隠したい。 • 監査性怜蚌可胜性ずプラむバシヌのトレヌドオフ • 監査性 ◩ アリスが

    持っおいる状態を党員で合意 ◩ アリスがボブに 送る状態遷移を党員で合意 • プラむバシヌ ◩ 秘匿性残高 ・送金額 を隠したい ◩ 匿名性送り手アリス・受け手ボブを隠したい
  2. プラむバシヌ問題 • 秘匿性の欠劂 ◩ トランザクションのデヌタを誰でも芋るこずができる ◩ のようなむメヌゞ ▪ 送信デヌタを隠す ◩

    䟋アリス ボブに 送金 ▪ ずいうデヌタが誰でも芋るこずが可胜 ◩ デヌタを暗号化しお送る手法 ▪ 送られおきた暗号文が を暗号化したデヌタであるかもしれない ▪ 完党性を持たせる方法が別途必芁
  3. プラむバシヌ問題 • 匿名性の欠劂 ◩ トランザクションが誰から誰に送られたのか芋るこずができる ◩ のようなむメヌゞ ▪ 階局的に暗号化を斜すオニオンルヌティングをベヌスに アドレスを隠す

    ◩ 䟋アリス ボブに 送金 ▪ ブロックチェヌン䞊の党おの状態を党員が芋るこずができる ▪ 泚アドレスを暗号化するこずは意味ない • 仮名ずしおのアドレス倀が䞀意に倉わるだけ ▪ トランザクションの を断ち切る必芁性
  4. れロ知識蚌明ずは • むンプットずなるデヌタを明らかにせずに、ある関数の結果に を持たせる暗 号孊的手法 • においお ◩ を明らかにせずに、 が

    のハッシュ倀であるこずを蚌明 ◩ 䟋えば、 が負の倀ではないこず、 にあるこずを蚌明 蚌明者 CreateProof(x, y) 怜蚌者 Verify(Proof, y)
  5. を算術回路をベヌスに、 で蚘述する • 䞊のアセンブリ蚀語のようなむメヌゞ • 䞊の線型結合で衚珟 ◩ ◩ ・ ・

    ◩ 定数、 倉数 • 䟋えば、 の 操䜜 ◩ 愚盎にやるず だが、線型結合を工倫し に可胜             
  6. • 通垞の ずコストモデルが倧きく異なる ◩ ビット挔算は高コスト、楕円曲線䞊の挔算は䜎コスト ◩ 䟋 よりも の方が䜎コスト ▪

    ▪ • などにより倚項匏ぞ゚ンコヌドし、 で怜蚌可胜な蚌明を生成 • 効率の良い は ずいう匷い仮定に基づく • 効率よく汎甚な を蚌明するために ◩ 通垞、 時のパラメタを甚いるず の を砎るこずが可胜 ◩ や などによる解決策
  7. • ◩ する倀 ◩ 乱数 ◩ 、 楕円曲線䞊の • ◩

    送り手が を指定し を生成、送信 • ◩ 送り手が ず を明らかにするこずで受け手が答え合わせ • 秘匿性受け手はコミットされた倀を知りえない • 拘束性送り手が異なる倀を公開しおも成功しない • れロ知識蚌明ず盞性がいい ◩ 比范的小さい蚈算コストで、 に制限を䞎えられる
  8. • https://github.com/monero-project/monero • • 秘匿性 ◩ ▪ 秘匿性、束瞛性 ◩ ▪

    れロ知識蚌明の䞀皮で をもたらす • 匿名性 ◩ リング眲名 ▪ メンバヌ公開鍵のうちの぀に察応する秘密鍵により眲名 ▪ 送り手の匿名化 ◩ ステルスアドレス ▪ 送り手指定の新しいアドレスを受け手のアドレスに。 ▪ 受け手の匿名化
  9. • 二重支払いを防ぐためにコミットメントに察し、 か぀ な を管理。 • コミットメントが消費されるたびに に远加。 • 同じ

    が぀あるずいうこずは同じコミット メントを 回消費しようずしおいるこず。 Nullifier Set
  10. • 生成コミットメントず消費コミットメントの が暗号孊的に断ち切られおいる ので送金時の秘匿性・匿名性が保蚌される • れロ知識蚌明 により、䞀連の蚈算に を䞎える • 新しいコミットメントの生成

    ◩ コミットメントず暗号文の生成は正しいか ◩ 受け手だけが消費できるコミットメントか ◩ • コミットメントの消費 ◩ コミットメントがマヌクルツリヌに属しおいるか ◩ 送り手が所有しおいるコミットメントか ◩ 正しく を生成しおいるか ◩
  11. 匿名性 • 送り手、受け手の他にダミヌずなるデヌタを加えるこずで識別困難に。 アドレスデヌタ [Address1, .... Address n], 暗号化送金額 [Enc(0),...,

    Enc(3), .., Enc(-3),.. Enc(0)] • 蚌明の怜蚌 • 送り手、受け手、ダミヌアドレス党お の暗号化残高をアップデヌト トランザクション オンチェヌン
  12. • マルりェアなどを甚いた機密情報の流出を防ぐ ◩ 秘密鍵、パスワヌド、 • 脅嚁モデル ◩ メモリ砎壊 ▪ 䞍正なメモリ曞き換え、操䜜

    ◩ システム゜フトりェアからの攻撃 ▪ ◩ コヌルブヌト攻撃 ▪ 匷制的な揮発遅延による メモリの読み取り • 䞀方で、サむドチャネル攻撃 には匱い ◩ 物理的な特性を倖郚から枬定 https://www.usenix.org/system/files/conference/atc17/atc17-tsai.pdf
  13. • 正圓な であるか認蚌するための機胜 ◩ が補造した なのか ◩ 脆匱性はないか ◩ の比范

    実行プログラムの比范 • が認蚌 • が生成する を に送信 ◩  ハッシュ倀 ▪ 実行環境ず 内プログラム • をレスポンス ◩ 蚌明曞で認蚌 IAS ISV
  14. ブロックチェヌンず •  ず  の性質を応甚 • 、 などのプロゞェクト •

    䟋えば、状態遷移を行う を 䞊で実行するこずで状態を秘匿化 • ネットワヌクに参加する マシンは互いに するこずで正圓性を保蚌