銀行Aが銀行Bに100トークンを送金したいとします。

ネットワークは、銀行Aに十分な残高があること、送金が必要なルールに従っていること、そして残高の変動が正しいことを検証する必要があります。しかし、他の銀行が銀行Aの実際の残高や送金額を知る必要はありません。
すべての取引が完全に公開されていれば、金融機関は他の参加者に機密性の高い財務情報をさらしてしまう可能性があります。一方、検証せずにすべてを隠せば、ネットワークは信頼だけに頼らざるを得ません。
では、銀行は取引の詳細をすべて明かさずに、その取引が有効であることをどう証明できるのでしょうか?
ここでゼロ知識証明が使われます。
Rayls Enygmaはこの方式を用いて、ネットワークが重要な取引条件を検証できるようにしながら、非公開のトークン送金を実現します。
その仕組みを見ていきましょう。
取引のプライバシーが重要なのはなぜか?
パブリックブロックチェーンは、検証のために取引データを公開するよう設計されています。関連する台帳データにアクセスできる人は誰でも、多くの場合、送金、アドレス、取引金額を確認できます。
この透明性は、参加者がネットワーク上で起きていることをそれぞれ独立して確認できるため有用です。しかし、銀行や金融機関にとって、すべての支払いや残高を公開することは、深刻なプライバシー上の懸念につながる可能性があります。
たとえば、銀行の取引履歴から、取引関係、決済活動、財務状況が明らかになる可能性があります。競合他社に、銀行が公開したくない情報を知られるおそれがあります。
一方で、機関はすべての取引詳細を隠したまま、検証なしに他者がそれを受け入れることを期待することもできません。
プライベートな金融ネットワークでは、次の2つの要件のバランスを取る必要があります。
• 機微な金融情報は、アクセスする必要のない参加者から保護されるべきです。
• それでもネットワークは、取引が所定のルールに従っていることを検証できなければなりません。
プライバシー保護型暗号技術は、この課題に対処するために設計されています。
目的は検証をなくすことではありません。基となるデータを不必要に公開せずに検証を可能にすることです。
ゼロ知識証明とは何か?
ゼロ知識証明とは、ある主張を裏付けるために用いた非公開情報を明らかにすることなく、その主張が真実であるとシステムが示せるようにする暗号技術です。
銀行Aの送金を例に考えてみましょう。
銀行Aは銀行Bに100トークンを送ろうとしています。システムは、銀行Aに十分な残高があるか、また送金がプロトコルのルールに従っているかを確認する必要があります。
プライバシー保護技術を使わない場合、取引を確認する人々に残高や送金額を公開する必要が生じる可能性があります。
ゼロ知識証明を使えば、必要な条件が満たされていることを示す証明を提示できます。検証者は、隠された値を直接知ることなく証明を確認します。
Rayls Enygmaは、この目的でGroth16ゼロ知識証明を使用します。
重要な違いが一つあります。証明によって示されるのは、暗号システムが検証するよう設計された条件だけです。ビジネス上の合意が正当であること、当事者が信頼できること、あるいは取引がすべての法律に準拠していることまで自動的に証明するものではありません。
簡単に言えば、ゼロ知識証明は、背後にある非公開データを明かすことなく、取引の有効性を検証するのに役立ちます。

Rayls Enygmaの仕組み
Rayls Enygmaは、ゼロ知識証明、暗号学的コミットメント、暗号化メッセージを組み合わせて、非公開の送金を実現します。
基本的な流れは次のとおりです。
ステップ1:送金者が送金を開始します。
機関がRaylsのインフラを通じて送金を開始します。システムは、取引の処理に必要な情報を準備します。
ステップ2:暗号学的証明が生成されます。
システムは、関連する取引条件が満たされていることを示す証明を生成します。この検証には、残高が十分であることや、残高の変動が有効であることに関する条件が含まれます。
ステップ3:証明が検証のために提出されます。
Private Network Hubは、非公開の送金額を読み取ることなく、暗号学的証明を検証できます。
ステップ4:取引が決済プロセスに進みます。
Hubは、関連する取引情報とコミットメントを記録します。送金フローには保留と最終確定の段階があるため、証明の検証後にすべての送金が直ちに決済されると説明すべきではありません。
ステップ5:受取機関がメッセージを処理します。
指定された受取人は、自分宛ての暗号化メッセージにアクセスし、自らのインフラを通じて送金を処理できます。
重要なのは、すべての参加者が基となる非公開の金融情報を受け取らなくても、ネットワークが特定の取引条件を検証できるという点です。
このように、暗号学的検証と取引のプライバシーは両立できます。

Pedersenコミットメントとは何か、なぜ必要なのか?
ゼロ知識証明は、システムを構成する要素の一つにすぎません。Rayls Enygmaは、金額を直接公開することなく残高を表すために、Pedersenコミットメントも使用します。
コミットメントは、値を暗号学的に表現したものと考えることができます。基となる値を隠しながら、コミットされたデータに対してシステムが特定の検証を行えるようにします。
銀行Aから銀行Bへの送金を考えてみましょう。
銀行Aの残高は減少し、銀行Bの残高は増加する必要があります。残高の変動が所定のルールに従い、送金によってトークンが何もないところから生み出されないことを、システムが保証しなければなりません。
コミットメントは、基となる値を非公開に保つのに役立ちます。そのうえで、ゼロ知識証明により、関連する残高条件が満たされていることを証明できます。
この2つの技術は、それぞれ異なる役割を果たします。
• Pedersenコミットメント:基となる値を隠すのに役立ちます。
• ゼロ知識証明:非公開の値を明らかにすることなく、指定された条件が満たされていることを示すのに役立ちます。
どちらの技術も、暗号化と混同すべきではありません。コミットメントと証明は、暗号学的な表現と検証に使われる一方、暗号化は情報を不正アクセスから保護します。
もう一つ重要な点があります。プライバシーに関する主張は、実装が対象とする操作に限定する必要があります。Raylsのドキュメントによると、ミントとバーンの金額はHub上で見える場合があるため、あらゆる種類の操作で全ての金額が隠されると主張するのは正確ではありません。

これは、誰も取引を見られないという意味なのか?
いいえ。これはRayls Enygmaについて理解しておくべき最も重要な点の一つです。
プライバシーとは、あらゆる情報が全員から隠されることを意味するわけではありません。参加者によってアクセスできる範囲は異なります。
その他のネットワーク参加者
暗号学的データから非公開の送金額を直接読み取ることはできません。ただし、特定の取引詳細や参加者情報は見える場合があります。
送金者
送金者は、自らが開始した取引と、送金に必要な詳細を把握しています。
受取人
指定された受取人は、自分宛てのメッセージにアクセスし、受け取った送金を処理できます。
Private Networkの運営者
文書化されたEnygmaの設計によると、運営者は関連するビューキーの仕組みを使って送金を復号できます。つまり、運営者がすべての非公開取引情報を必ずしも見られないわけではありません。
受取人のプライバシーにも限界があります。Hubの監視者には送金者が見え、匿名性集合に含まれる参加者の数によっては、受取人の身元が推測される可能性があります。参加者が2人だけの場合、受取人の匿名性は実質的にありません。
運営者が送金を閲覧できることと、資金を使えることも区別する必要があります。ビューキーへのアクセスだけでは、機関の支出キーに紐づく支出権限は得られません。
したがって、プライバシー保護型ブロックチェーンを評価する際には、次の3つの点を分けて考える必要があります。
どの情報が隠されるのか?どの情報が見える状態で残るのか?そして、誰が基となるデータへのアクセスを許可されているのか?

機関向けブロックチェーンにとって、これは何を意味するのか?
金融機関は、機微な金融情報を他の機関に不必要に公開することなく、取引を検証する必要があります。
ゼロ知識証明と暗号学的コミットメントは、この課題に対処する一つの方法です。Rayls Enygmaは、これらの技術を暗号化メッセージや機関が運用するインフラと組み合わせ、非公開のトークン送金を実現します。
しかし、これらの技術であらゆるセキュリティ上またはコンプライアンス上の問題が解決するわけではありません。
暗号学的証明が有効だからといって、当事者が信頼できること、ビジネス上の合意が正当であること、あるいはソフトウェアに脆弱性がないことが自動的に証明されるわけではありません。こうした課題には、追加の管理策、ガバナンス、運用上の安全対策が必要です。
プライバシーは実装にも左右されます。取引のメタデータが見える状態で残る場合があり、特定の操作では金額が明らかになることもあります。また、許可された運営者は、他の参加者には見えない情報にアクセスできる場合があります。
だからこそ、ブロックチェーンが「プライベート」であるという一つの主張だけで、プライバシーを評価すべきではありません。
より重要なのは、次の点です。
• ネットワークは具体的に何を検証できるのか?
• どの取引詳細が機密として保たれるのか?
• 誰が基となる情報にアクセスできるのか?
• 監査や監督への対応が必要になった場合、どうなるのか?
プライバシー保護型の金融インフラを評価する際には、こうした境界を理解することが不可欠です。
要点:銀行は、取引の背後にあるすべてのデータを公開することなく、取引が指定されたルールを満たしていると証明できます。しかし、何が隠され、何が検証され、誰が情報にアクセスできるのかを理解することも、証明そのものと同じくらい重要です。
