暗号通貨ジーキャッシュ(Zcash)について⑨くりぷと知っ得情報1月14日号

クリプトスタディ(クリスタ)の水野です。
シリーズでプライバシー重視の暗号通貨、「ジーキャッシュ(Zcash)」について書いてます。
🔶ジーキャッシュ(Zcash)の概要くりぷと知っ得情報11月12日号🔶ビットコイン(BTC)とジーキャッシュ(Zcash)の共通点くりぷと知っ得情報11月19日号🔶秘密の中身を見せなくても正しいと証明できる魔法の技術「zk-SNARKs」
くりぷと知っ得情報11月26日号🔶ビットコイン(BTC)が「ゼロ知識証明」の概念を採用しない理由くりぷと知っ得情報12月3日号🔶「zk-SNARKs」が信用・信頼を勝ち取っている背景①くりぷと知っ得情報12月10日号🔶「zk-SNARKs」が信用・信頼を勝ち取っている背景②くりぷと知っ得情報12月17日号🔶「zk-SNARKs」が信用・信頼を勝ち取っている背景③くりぷと知っ得情報12月24日号🔶「zk-SNARKs」が信用・信頼を勝ち取っている背景④くりぷと知っ得情報1月7日号
前号まで、ジーキャッシュ(Zcash)がどうやって、
「zk-SNARKs」を安全に、また、その信用・信頼を勝ち取っているのか?
について、具体的な
超強力な数式そのもの=テクノロジー
について、書きました。
前号までのおさらい
①見えない送金の正しさ‥‥楕円曲線暗号(ECC)
②ペアリング暗号
くりぷと知っ得情報12月17日号
③裏側の超重要な下ごしらえ‥‥QAP(Quadratic Arithmetic Programs)
くりぷと知っ得情報12月24日号
④二重払いを阻止する技術「Nullifier(ヌリファイアー)」
くりぷと知っ得情報1月7日号
今回は、シリーズ最終回です。
④完全オープンソースのジーキャッシュ(Zcash)
ジーキャッシュ(Zcash)が安全性、信頼性を獲得する背景の一つとして、完全オープンソースで世界中が監査していて、透明性を持って安全性を担保している点があります。
オープンソースとは?
オープンソースとは、設計図(プログラムの中身)を全部公開することです。
コードを公開することで、世界中の研究者が監査でき、外部セキュリティ企業も精査、大規模バグバウンティ(Bug Bounty)(※)を実施し、世界中の人が「ズルがないか」を自由にチェックできる状態にしています。
具体的には、
🔹取引を検証するルール
🔹マイニングの仕組み
🔹不正を弾く条件
🔹バグが起きたらどうなるか
などを全部コードで公開しています。
(※)バグバウンティ(Bug Bounty)とは、企業などが自社の製品、サービスのセキュリティ脆弱性を発見、報告してくれた外部のセキュリテイ研究者(ホワイトハッカー)に対し、報奨金を支払う仕組みで、「脆弱性報奨金制度」とも呼ばれ、サイバー攻撃から守るための効果的な手段として導入が広がっています。
権限は?
最終的に「OK」を出すのは誰か?
その権限は、誰にもありません。「各参加者が自分で決める」これが、オープンソースの考え方です。
監査者・研究者・開発者は「指摘する人」であって、「決定する人」ではありません。
これが 本物のオープンソース暗号通貨の答えです。
①開発者
開発者は、改善案やコードを書いて、「こうした方が良くない?」と提案するだけで、強制力はありません。
②監査者・研究者
監査者・研究者は、バグ・危険・理論ミスを見つけ、「ここ危ないよ」と警告するだけで、承認権はありません。
③ノード運営者
ノード運営者は、そのコードを使うかどうかを決める人で、自分のPCで更新すれば「YES」。「NO」なら、更新はしません。
仕様変更は公開議論で、合意がなければ実装されない仕組みです。
ここが最終決定権になります。
オープンソース暗号通貨では、「コードを書く人」より「使う人」の方が偉い

オープンソースに関して、主な暗号通貨を比較してみた
ここからは、「完全オープンソースで有名な暗号通貨」と、「そうでない(一部非公開)」を、比較してみましょう。
完全オープンソースの暗号通貨代表例
暗号通貨 | オープン度 | 解説 |
ビットコイン(BTC) | ★★★★★ | ノード、マイナー、ウォレットのコードはすべて公開され、世界中の研究者・開発者が10年以上監査。 |
イーサリアム(ETH) | ★★★★★ | 実行レイヤー(※1)、コンセンサス(※2)、EVM(※3)すべて公開 |
モネロ(XMR) | ★★★★★ | 匿名技術こそ「秘密にしない」思想。政府も含め誰でも監査可能。 |
ジーキャッシュ(Zcash) | ★★★★☆ | 技術的には、限りなくオープンだが、信頼設定(Trusted Setup)が必要で、また、「zk-SNARKs」自体が高度すぎて、理解できる人が限られ、形式上オープンでも、実質的には専門家依存。 |
カスパ(KAS) | ★★★★★ | GHOSTDAG含むプロトコルは完全公開で、ノード・マイナー・研究コードも公開されている。 |
(※1)実行レイヤーは、イーサ(ETH)の送金処理、スマートコントラクトの実行、状態(残高・コントラクトの中身)の更新、ガス計算(手数料の計算)など、役割を分けて動いていて、そのうちの一つが実行レイヤーです。「この取引は正しいか?実行した結果どうなるか?」を計算する場所です。
(※2)コンセンサスは、「どの取引を正解としてブロックに入れるか決めるルール」で、どんな条件でブロックが正しいか、何をチェックするか、不正があったらどうなるか、全部、仕様書とコードで公開しています。
(※3)EVM(Ethereum Virtual Machine)は、「スマートコントラクトを動かすための計算ルール」みたいなもの。スマートコントラクトの命令を実行した際、残高やデータを更新、ガス(手数料)を計算、どのノードでも同じ結果を出すための仕組みです。
(※4)Gethは、イーサリアム(ETH)を動かすための代表的な「実行レイヤー用ノードソフト」。正式名は「Go Ethereum」。
(※5)Nethermindは、イーサリアムを動かすGethに並ぶ主要ノードソフト。Gethと同じ役割だが、別の作り方。
完全オープンソースではない暗号通貨(制限あり)の代表例
暗号通貨 | オープン度 | 解説 |
リップル(XRP) | ★★☆☆☆ | ノード実装は一部公開で、重要部分はRipple社が主導。合意形成が企業依存なため、オープン風だが運営中心。 |
ソラナ(SOL) | ★★★☆☆ | 基本コードは公開だが、クライアント多様性が低く、実運用は特定チームに依存している。速いが集中しがち。 |
CBDC系/企業・銀行系ブロックチェーン | ★☆☆☆☆ | コードは、非公開または限定公開で、外部監査不可なため、利用者は信じるしかない。 |
おわりに
ジーキャッシュ(Zcash)の「zk-SNARKs」について、9回にわたって書いてきました。
難しい内容になってしましたましたが、できるだけ噛み砕いて書いてきました。
次回からは、モネロ(XMR)について、書いていこうと思います。
お読みいただきありがとうございました。