世界最大の仮想通貨取引所であるバイナンスは、2023年8月の準備金報告書を発表し、すべての主要な仮想通貨保有に対する準備金率が100%をはるかに超えていることを示しました。

この開示は、バイナンスがプルーフ・オブ・リザーブ(PoR)システムを維持するという継続的な取り組みの一環であり、すべての顧客の預金をカバーするのに十分な資金があるという証拠を提供します。このレポートは、BTC ブロック高さ 801130 の監査に基づいています (2023 年 8 月 1 日時点の集計データに更新されました)。

Proof of Reserves (PoR) は、暗号通貨交換の支払い能力を確認するために使用される透明なプロトコルです。その役割は、取引所がユーザーの資産を1:1の比率でカバーするのに十分な資金を持っていることを証明することです。基本的に、ユーザーがビットコインを入金すると、バイナンスの準備金は少なくとも 1 ビットコイン増加し、すべての顧客資金が完全に裏付けられるようになります。これらの数字には、独立したバイナンスの企業保有株は含まれていません。

バイナンスのPoRレポートによると、取引所の準備金は、ビットコイン、イーサリアム、バイナンスコイン、テザー、BUSD、USDCを含む、報告されているすべての仮想通貨の純顧客残高よりも大幅に高く、準備率は101.62%から117.99%の範囲であることが示されています。これは、同社が潜在的な顧客のすべての引き出しに対応するのに十分な準備金を持っていることを示しています。

PoR は、暗号通貨エコシステムにおける透明性、セキュリティ、ユーザー保護を向上させることを目的としています。したがって、取引所によるユーザー資金の悪用を防ぎ、ユーザー間の信頼を促進します。これにより、Binance ユーザーは自分のアカウントが最後の PoR 検証に含まれているかどうかを自己検証でき、透明性とユーザーの信頼に対する取引所の取り組みがさらに強調されます。

Proof of Reserve (PoR) がマークル ツリーでどのように機能するか

すべてのユーザー資産が 1:1 の比率で保持されるようにするために、Binance はマークル ツリーを利用するシステムを実装しました。マークル ツリーは、大量のデータをマークル ルートと呼ばれる単一のハッシュ値に圧縮するのに役立つ暗号化ツールです。このルートは、すべての入力データを要約する暗号化「シール」として機能します。さらに、マークル ツリーを使用すると、ユーザーは特定の封印されたデータ セットに含まれる特定のコンテンツを検証できます。

PoR のコンテキストでは、バイナンスはマークル ツリーのプロパティを使用して、監査人がチェックする責任レポートに個々のユーザー アカウントが含まれていることを検証します。各ユーザーは、独自に生成されたマークル ハッシュ/レコード ID を使用して資産保有を確認できます。

プロセスを段階的に説明します。

  1. アドレスの所有権を確認する: Binance はまず、PoR プロセス中に使用されるウォレット (コールド ウォレットおよびホット ウォレット) の所有権が取引所に属していることを確認します。

  2. ユーザー残高スナップショット: 特定の日時に各顧客アカウント内の資産保有のスナップショットを作成します。

  3. マークル ツリーの生成: Binance は、ハッシュ化されたユーザー ID と各ユーザーの残高をリンクすることにより、基礎となるデータ ブロックを生成します。次に、すべてのユーザーのデータに基づいてマークル ツリーを作成します。リーフ ノードのアカウント ID または残高が変更されると、マークル ルートも変更されます。このようにして、各ユーザーは自分のアセットがリーフ ノードに含まれているかどうかを確認できます。

検証中のzk-SNARK

マークルツリーに加えて、Binance は検証プロセスで zk-SNARK (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) も使用します。 zk-SNARK は、値が何であるかを明らかにすることなく、値を知っていることを証明できる証明プロトコルです。

Binanceを例に挙げると、取引所はzk-SNARKを使用して、すべてのリーフノードの残高セット(つまり、ユーザーアカウント残高)が取引所が主張するユーザー資産残高の合計に寄与していることを証明します。各ユーザーは自分のリーフ ノードに簡単にアクセスして、それがプロセスに含まれているかどうかを確認できます。

zk-SNARK の使用は次の手順に従います。

  1. アドレスの所有権を確認する: 前のプロセスと同様に、Binance は PoR プロセスで使用されるウォレット (コールド ウォレットおよびホット ウォレット) の所有権を確認します。

  2. ユーザー残高のスナップショット: 再度、各顧客アカウント内の資産保有のスナップショットを作成します。

  3. zk-SNARKs 証明書の生成: ユーザーごとに zk-SNARKs 証明書ファイルを生成します。これにより、各ユーザーはリーフ ノードに簡単にアクセスし、ユーザーの合計ネット残高がゼロ以上であることを確認できます。

これらの自己検証方法に加えて、Binance は第三者監査も利用して監査レポートを提供し、検証プロセスのセキュリティと透明性をさらに強化しています。