RSKとLiquid比較:検閲 & セキュリティ対策 (3/4)

この投稿はセルジオ・ラーナー氏によるブログ投稿、The Cutting Edge of Sidechains: Liquid and RSKの一部を記事化したものです。

第三者による検閲対策

検閲対策はなぜ必要なのか?

ツーウェイペグで、フェデレーションメンバーがペグイン/ペグアウト・トランザクションを選択的にブロックできない状態を、All-or-Nothing 検閲耐性と呼びます。この時、後続のペグイン/ペグアウト・トランザクションの大部分をブロックしてしまう等の副作用が出る場合は、All-or-Nothing 検閲耐性の状態ではありません。政府が秘密裡で行う国民の検閲を阻止するために、このプロパティは極めて重要です。もし検閲が公の予告なしに行われるようになれば、規制当局と政府は自らの意志と裁量で、企業に圧力をかけたり、ブロックトランスファーを阻止するように強制することができるようになるでしょう。

Liquidを含むほぼすべてのブロックチェーンでは、アトミックスワップ¹を使ってペグ検閲に対抗しています。しかし、アトミックスワップの取引相手を効率的に見つけるには、十分な流動性を備えたマーケットと、活発な分散型ネットワーク内の取引相手が必要です。このようなシステムを構築するには、完全な分散型ブロックチェーン構築の様々な課題に加え、PoWなしにシビル攻撃を防ぐというもう一つの課題が加わります。そのため、私たちはサイドチェーンのコンセンサスに結びついた、All-or-Nothing 検閲耐性の重要性を強調しているのです。

1アトミックスワップ: 取引所の仲介なしで暗号通貨取引を行う、完全なP2P取引のためのスワップ技術

RSKが提供する検閲耐性

RSKペグは、ペグインに対してビットコインのような検閲耐性を、ペグアウトには All-or-Nothing 検閲耐性を提供します。ユーザーは自身のビットコイン含有証明をサイドチェーンに提出して、サイドチェーンにRBTCのリリースを命じることができるので、ペグインが検閲されることはありません。ペグアウト・トランザクションはスマートコントラクトによって選択されたUTXOを使用します。消費されたビットコインの一部はユーザーに支払われ、残りはフェデレーションの元の同じ複数署名アドレスに戻されます。戻されたビットコインは、その後のペグアウト・トランザクションで再利用され、解読不能な連鎖を作ります。つまり、最初のリリーストランザクションをブロックするには、最初のトランザクションで作成された出力に依存する後続のリリースもブロックする必要があります。51%の関数がUTXOを使いこなすように共謀することは、まだ可能です。ただし、これはユーザーがすぐに検出できます。将来のネットワークのアップグレードでは、検閲抵抗を最大化するために、ペグアウトの完全なバックツーバック・リンクを実装する可能性があります。また、フェデレーションメンバーの51%がスマートコントラクトに従わずに、ペグアウトオーダーを履行しようとしないようにするために、ビットコインにペグアウト取引が含まれていることの証明が必要になる場合があります。

画像:RSKでは、ぺグアウト・トランザクションが検閲されると、
その後のトランザクションがIO-Linkによって自動的にブロックされます。

Liquidの検閲耐性

Liquidでは、管理機関たちが共謀して特定のペグアウト・トランザクションを検閲する可能性があります。ペグアウト・トランザクションの入力UTXOは指定された管理機関によって選択され、その管理機関が受信者にKYCを提供するので、Liquidの個々のユーザーが検閲に気付くことはありません。しかし、Liquidは非常に強力なプライバシー保証を実装しているため、取引所がお互いを検閲することは難しいでしょう。取引所は自分たちの発信元LBTCアドレスを隠し、ペグアウトのために新しいBTCアドレスを使うことができるからです。Liquidは、個人ユーザー向けではなく取引所向けに作られているため、これ以上の検閲耐性を提供していません。個人ユーザーたちは、通常の取引所アカウントと同じ程度の検閲にさらされていることになります。

画像:Liquidでは、ペグアウト・トランザクションが検閲される
可能性がありますが、システムは通常通り動作し続けます。

サイドチェーン管理機関・マネジメント

フェデレーション管理:Liquid(仮定)

RSKとLiquidの決定的な違いは、フェデレーションメンバーの管理です。Liquidでは、メンバーを追加したり除外するにはネットワークを停止し、残りのノードのオニオンアドレス²や公開鍵を参照するために、管理機関が実行する特定のノードを手動で構成する必要があるようです。詳しい手順が公開されていないので、これは仮定に留まります。

2オニオンアドレス: 匿名通信 Torで使用される「.onion」の識別子を持つアドレス。Liquidサイドチェーンの管理機関は、お互いTorを通じて通信をしている。

フェデレーション管理:RSK

RSKは、公開プロトコルを調整して、公の環境でメンバーを追加または除名することが可能であり、すべてのメッセージはサイドチェーン・トランザクションでやりとりされます。このプロセス全体は、通常のトランザクション処理を中断することなく実行され、ペグインおよびペグアウト・トランザクションの処理も中断されません。このプロトコルは、外部監査を有効にするために遅延され、既存のフェデレーションを置き換える新規フェデレーションと、以前のUTXOから新しいUTXOへの資金の移動が自動的に行われます。

古いフェデレーションのマルチシグから新フェデレーションのマルチシグへのRSKの資産移転は、多段階のプロセスで行われます。新たなフェデレーションが確立されると、ノードがJSON-RPCエンドポイントを介して完全なノードを照会したときに、新しいマルチシグアドレスが返還されます。しかし、未だ承認されていないトランザクションがブロックに含まれるための時間を稼ぐために、古いマルチシグアドレスはしばらくの間はアクティブに保たれます。その後、スマートコントラクトによって残りの資産が新しいマルチシグに振り分けるられ、既存のマルチシグは廃止されることになります。

画像:RSKメンバーシップ管理、監視プロセス

プライバシー管理

Liquidの匿名取引機能

Liquidの最も優秀な機能の一つは、LBTCと発行資産の両方に対する匿名取引(Confidential Transaction, CT)のネイティブサポートです。しかし、Liquidは取引額を非表示にすることはできますが、送り主と受け手のアドレスを隠すことはできません。これらのアドレスは、ビットコインのように、誤ってリンクされないように注意して扱う必要があります。トラフィック分析などのサイドチャンネルを介した個人情報の漏洩を防ぐために、クライアントウォレットは適切に保護されなければなりません。匿名取引は通常の取引よりはるかに大きいので、Liquidブロックがフルになれば匿名取引手数料が高くなることが予想されています。

RSKのプライバシー管理

RSKは、サードパーティによって開発されたユーザーレベルコントラクトの形式で、個人取引のためのほとんどすべてのスキームを提供することができます。既存の例としては、ZetherMobiusAZTECなどがありますが、zCashのようなプロトコルをRSKに追加することで、かなりの広範囲に渡る匿名性を実現することが可能です。

現在、これらのユーザーレベルのソリューションでは取引された金額と宛先アドレスが非表示になりますが、未だ送信元アドレスは特定することができます。送信元アドレスを保護するには、メタトランザクション*の市場を利用するか、RSKコンセンサスの修正が必要です。RSKは、アカウント匿名化システムのデプロイを計画しており、これによってすべてのコントラクトが送信元アドレスなしでも、外部トランザクションからメッセージを受信することが可能になります。そして送信者がTorを利用する場合、送信者の完全な匿名性を実現することができるでしょう。

多くのコイン匿名化スキームの構成要素である、non-interactive arguments of knowledge への関心とともに、暗号学の分野はこれまでにないペースで進歩しています。毎年、Bulletproof、Sonic、Lelantusなどの、より高速で優れたスキームが新しく開発されています。また、ZexeやZkVMのように、プライバシーとスマートコントラクト執行を組み合わせた新たなシステムも発表されました。このようなプライバシー問題の改善例は、プラットフォームが特定の暗号化システムに依存しないようにするための、十分な要素になってくれると思っています。

*メタトランザクション (Meta Transaction):個人がトランザクションを生成する際、秘密鍵はサーバーに預けず、署名した取引データのみを第三者のサーバーが処理する方法。

原文:The Cutting Edge of Sidechains: Liquid and RSK by Segio Lerner