- 匿名仮想通貨Zcashが10月29日にハードフォーク
- 匿名仮想通貨Zcash(ZEC)が10月29日にアップグレードを予定。Saplingと呼ばれる今回のアップグレードでは処理高速化、モバイル対応、分散アドレス導入、トランザクションの開示/非開示オプションの採用といった改善や新機能が多く盛り込まれ、注目を集めている。ただしユーザーの推奨移行時期は数ヶ月先であり、本記事では移行に伴う課題や注意点にも言及した。
Zcash のメリットは何と言っても暗号化方式zk-snarksを採用したシールド(保護された)トランザクションだが、計算が非常に重く、大半のユーザーや取引所には対応が難しいとされていた――間もなく10月29日に公式に予定されている次回アップグレード では、この状況が変わり、Zcashが公開以来の目標としてきた「仮想通貨のプライバシー保護」に著しい進歩が見られるかも知れない。
前回2018年6月のOverwinter(越冬)に続く今回のSapling(苗木)アップグレードでは、トランザクション・プロトコル全体の使い勝手が大きく改善する中で、特にプライバシーを有効にしたトランザクションで大きな効果が見込めると注目を集めている。
今回のアップグレードの変化点
Saplingで行われる技術的な変更により、取引所やウォレットがより簡単に、保護された取引を受け入れられるようになると共に、軽量ウォレットやモバイルウォレットが実現する可能性もある――ユーザーはモバイル端末から匿名化された取引を直接送信できることになるということだ。
従来の100分の1のメモリ量、6分の1以下の処理時間
Zcash Companyのネイザン・ウィルコックスCTOは、「Saplingプロトコルの導入により従来の100分の1以下のメモリ量、6分の1以下の時間でシールドトランザクション処理が完了するようになる」と、大手仮想通貨メディアCoindeskとのインタビュー にて述べている。
シールドトランザクション処理はフルノードを保有/実行しているユーザーに対してのみ可能という制約はあるものの、そのことを考慮しても、今回のアップグレードは注目すべき1ステップとされている。
また、今回のアップグレードに伴い、Zcash Companyのチームでは、最終的な目標として、シールドトランザクションと同時に使用された場合に匿名性を損なう可能性のあるZcashの非公開トランザクションが除去されることを望んでいる模様だ。
トランザクションの「プライバシーが当たり前」の時代へ
その先に、開発者たちが言うところの「プライバシーが当たり前」となる仮想通貨の時代がおそらく待っているだろう。
ウィルコックスCTOは、「Saplingの採用に向けた(仮想通貨業界やユーザー全体の)移行が進むことを期待している様だ。
そして移行が進む中で、適切な時期に『デフォルトでプライバシーが保護される』段階が訪れたらと思う。我々は全員一丸となってパフォーマンスとセキュリティの改善を行っている状況だ。新時代を望まない人がどこにいるだろうか
と自信を示した。
クライアントの軽量化と多様化
ウィルコックスCTOは、今回のSaplingコード変更以前のZcashを「あまりにも効率が低く、扱いにくいものだった」と表現し、軽量クライアントのサポートはZcashの今後に極めて大きな影響力を持つだろうと述べた。
軽量クライントはブロックチェーンの全データを格納しないが、それでも安全であることは保証されるという。軽量クライアントは典型的にはノートPCやデスクトップPCほどの保存容量や計算性能は備えていない、モバイル端末上で動作するものである。
そのような限定的なものでありながら、軽量化クライアントの登場は「Saplingアップデート適用日よりも先だ」とウィルコックスCTOは注意を促した。
むしろ、入念なコード化が行われていない場合、軽量クライアントがトランザクション情報をウォレットのホストに明かしてしまう可能性が生じるなど、追加開発が必要になってくる。
コードの信頼性と脆弱性を実証する取り組み
ウィルコックスCTOが「危険だ」と形容するこの状況に対処するため、Zcash Companyはコードの信頼性と脆弱性を実証する概念モデルのSaplingウォレット の開発に取り組んでおり、エンドユーザーには非公開のものとして、開発者向けの第三方における実装ガイドとして機能するものとなる見込みだ。
ウィルコックスCTOは、「我々の目標は、サービスプロバイダからもプライバシーが守られる軽量ウォレットを開発することだ。同時に、Sapling周りの全体的なユーザー体験を設計し、使い勝手とプライバシーが十分に両立するようにすることだ」と述べた。
分散アドレス対応
他の重要なSaplingの機能として、シールドトランザクションの利用促進にもつながる、いわゆる「分散アドレス 」が挙げられる。
これはシールドトランザクションの利用者増加に対応する機能で、取引所にとってはユーサーサポート負担を軽減する効果が見込まれる。
一言で言えば、分散アドレスとは、同一のウォレットに取引所が複数のアドレスを発行する機能である。
これに関し、ウィルコックスCTOは、
(各アドレスは)1つのウォレットに等しい。取引所にしてみれば実質的に数百万のユーザーをサポートすることになる
と述べ、
今回のアップグレードは先々プライバシー保護の観点でプラスに働くだろうという見方、より具体的にはウォレット側でユーザーの同一のアカウントに複数アドレスを発行させる機能を実装する道筋ができることへの期待を示した。
他の新機能として、トランザクションの開示/非開示を選択するビュー(参照)オプションの導入があるという。
ウィルコックスCTOはこのオプションに関し、ユーザーがトランザクションの透明性を1つの選択肢として、よりリスクの少ないやり方で選べるのはメリットだとして、
我々は『プライバシーが当たり前』のチェーンを提供する。ユーサーが公開アドレスを持ちたいと思う場合には、ビュー用のキーを世界に公開するオプションを選べばいい。我々が目指すのはそのような世界だ
と述べた。
移行の見通しと注意点
しかし、今回のSaplingのリリースには何点か議論を呼びそうなことがある。
移行の見通しと注意点(1):ユーザー資産の可視化
今回のアップグレードによるメリットを受けるには、1世代前のSproutで保有していたZcash資産をSaplingアドレスに移行する必要があるが、その際にユーザーの資産が(一時的にも)可視化されてしまうこと。
ウィルコックスCTOは、資産の可視化はZcashの特徴上「ユーザーにとっては驚天動地」と映ることは分かっていたと認めた上で、同氏が「回転式監査」と呼ぶ意図的な移行措置でもあるとし、
Sproutセレモニーが攻撃と侵害を受けていた可能性は常にあった。その対応を意図した監査だ
と述べた。
2016年にZcashがSproutを公開した際、プライベートブロックチェーンの根幹を担うzk-snarkが生成した「信頼されたセットアップ」というセレモニーを経たのだが、これが攻撃に対して脆弱だという批判を絶えず受けてきた。
批判は、セレモニーが傍受/侵害された場合にユーザーのいないZcashトークンが発行可能になるリスクを指している。
そこでZcash Companyでは、今回のSapling移行時に回転式監査を実行する。
ウィルコックスCTOは、「リスクチェックの一環としてグローバルな監査を実施し、トークン偽造が起きていないことを確かめたい」と述べた。
移行の見通しと注意点(2):実際の移行は数ヶ月先に
このチェック機能を含む移行ツールのリリースをZcash Companyでは予定し、ユーザーに対して、ツールの完成とチェック完了後に、Saplingへの移行を行うように促している。
そして全ユーザーがこのツールを使って移行すれば、各ユーザーの操作と処理が1つのフローに統合されるため、全体のプライバシーが向上する効果が期待できる。
一方、このツールは完成が早くとも数ヶ月先になる見込みだ。
よって当面、ZcashプロトコルはSaplingとSproutの両方のアドレスをサポートする形になる――その後、将来のある時点で、Sproutアドレスが廃止されるシナリオである。
移行の見通しと注意点(3):あくまでもSaplingへの移行が前提
これに対しウィルコックスCTOは、Sproutアドレスの廃止後はトランザクションの受領が出来なくなるものの、Saplingアドレスへの送信は全く問題なく機能し、従ってSproutアドレスが廃止された際にもユーザーの資産に影響が及ぶことはないと強調した。
それでも、Sprout とSapling という2つのネットワークが併存するわけではなく、ユーザーにはソフトウェアをSaplingにアップグレードすることが期待されている――ウィルコックスCTOが問題ないと考える大きな理由の1つが、新しい(すなわちSapling)コードの優位性だ。
同CTOは今回のアップグレードの総括として、
今回のアップグレードは基幹プロトコルのスケーラビリティに直接的に関与/貢献するものではない。だが、取引所やウォレット、あるいはその同等のサービスや製品が、より多くのユーザーを、より効率的にサポートできるようになる
と述べた。