ニュース暗号資産Zcashアップグレード、正しい鍵があってもSproutコインをブロック3,543,405でロックへ

Zcashアップグレード、正しい鍵があってもSproutコインをブロック3,543,405でロックへ

著者: Coindoo·

重要ポイント

  • •NU7アップグレードのブロック3,543,405での起動によりSproutの支出は終了します。起動後も有効な2つのトランザクション形式(バージョン5とバージョン6)のいずれもこのプールをサポートしないためです。
  • •Sprout保有者はSovright製Argosアプリなどのサードパーティ復旧ツールに頼らざるを得ません。廃止されたzcashdがSproutトランザクションを構築できる最後のメンテナンス中ソフトウェアだったためです。
  • •復旧速度はバックアップ次第です。使用可能なノートデータを保存したウォレットファイルは数秒でスイープできる一方、鍵のみの場合は数時間かかる約26 GBのチェーン全体スキャンが必要です。
  • •取り残されたSprout資金はバーンされずZcashの発行済み供給量内に残り、ZIP 2003はSproutの支出が二度と戻らない可能性もあると明記しています。
  • •Sprout転送の確認はZebra 7.0.0などのNU7対応ノードソフトウェアから得るべきです。旧ノードはオンラインのままNU7以前のチェーンに従い続ける可能性があるためです。
Zcashアップグレード、正しい鍵があってもSproutコインをブロック3,543,405でロックへ

ZecStatsのデータによると、木曜朝の時点でZcashのSproutシールドプールには約12,226 ZECが残っており、1週間前の約22,263から減少しました(CoinDeskの報道引用)。流出の大部分は日曜日に発生し、約9,094 ZECがプールから退出しました。CoinDeskが用いた1枚1,300ドルの価格では、残額は約1,600万ドルに相当します。

締め切りとなるのはブロック3,543,405です。これはZIP 259(NU7ネットワークアップグレードの展開仕様)で定められたメインネット起動高さであり、Zcash FoundationのZebra 7.0.0リリース告知にも記載されています。CoinDeskの報道によれば、Blockchairは木曜05:24 UTC時点でチェーンをブロック3,542,391と表示しており、現在の75秒のブロック目標から起動は金曜02:30 UTC前後と見込まれます。実際のペースはマイナーが決めるため、この推定は前後する可能性があります。したがってこの時点は保証されたサービス期限ではなく合意有効性の境界であり、決定的なのはブロックの採掘であり、ウォレットやカストディアンは独自の運用上の締め切りを設ける場合があります。

ウォレット上で同じに見える2種類の障害

この締め切りの背後にあるルールはSproutより広範です。ZIP 2003はNU7以降のすべてのバージョン4トランザクションを禁止し、ZIP 259はこれにトランスペアレントのみおよびSaplingの支払いも含まれると明記しています。Sproutが巻き込まれるのは、存続するどちらの形式もこれをサポートしないためです。NU5で導入されたバージョン5、およびNU6.3で導入されたバージョン6です。

したがって、送金を拒否するウォレットが直面しているのは2つの問題のいずれかであり、起動後も存続するのは一方のみです。

Sproutに残っているコイン。 何が壊れるか:使用できる唯一のトランザクション形式が無効になる。ブロック後:サポートされた代替形式は存在しない。ウィンドウはブロック3,543,405で閉じる。

旧ウォレット内のトランスペアレントまたはSaplingのZEC。 何が壊れるか:ソフトウェアがネットワークに拒否されるバージョン4の支払いを構築する。ブロック後:残高は使用可能なまま、バージョン5または6を構築できるソフトウェアが支払いを再作成できる。旧支払いの再署名では機能しない。ウィンドウはソフトウェアを更新すれば開いたまま。

事前に準備された支払いには個別の確認が必要です。ZIP 259は、バージョン5およびバージョン6のトランザクションも署名がコンセンサスブランチIDにコミットするため、起動をまたいで自動的に有効にはならないと注意しています。アップグレード前にオフラインで保存または署名された支払いは、形式にかかわらず、締め切り後のブロックに到達すれば失敗する可能性があります。

カストディアル残高はそれを保有するプラットフォーム側にあります。Zcash Foundationの告知は、バージョン4ルールについて、ユーザーの代理でトランザクションを構築するウォレット、取引所、その他のサービスに直接向けられています。

復旧素材が時計を決める

Sprout保有者にとってより困難な問題は、まだ送金を構築できるソフトウェアを見つけることです。ZIP 2003は、NU6.3の直前にzcashdが廃止されたことで、Sproutウォレット機能を提供するメンテナンス中のソフトウェアが唯一なくなったと記しています。コンセンサスルールは起動までSproutの支出を受け入れますが、保有者はそれを作成するためにサードパーティの復旧ツールに頼るしかありません。

まずコインの特定です。Zcashのアドレスドキュメントは、Sproutのシールドアドレスにzcプレフィックス、Saplingアドレスにzsプレフィックスを列挙しています。プレフィックスはアドレスがどのプールに属するかを示すものであり、残高があるかどうかではありません。

アドレスよりもバックアップの内容が決め手になります。Zcashのバックアップ手順は、レガシーシールド鍵をSaplingアドレスの背後にあるシードとは別に扱っています。Argos復旧アプリの開発者はドキュメントで2点を補足しています。ZecWallet Liteのシードでは、そのウォレットが独立に生成したSprout鍵を再構築できないこと、そしてzcashdのwallet.datにはマスターシードが一切なく、鍵が1つずつ保存されるため、ファイル内の鍵しか復元できないことです。

バックアップの内容は復旧にかかる時間も決めます。Argos 1.2.0のリリースノートによれば、使用可能なSproutノートデータを既に保存しているウォレットファイルはスキャンなしで数秒でスイープできます。そのノートデータがない鍵、たとえば単体の支出鍵やrescanなしでzcashdにインポートされた鍵は、Sproutアドレスのインデックスが存在しないため、チェーン履歴中のすべてのシールドトランザクションの復号を試みるスキャンを必要とします。開発者サイトは、鍵のみのSproutスキャンをメインネットで約26 GBの転送量とし、スキャンには数時間かかるとしています。締め切りが数時間単位である今、この差が送金自体の可否を左右しかねません。

送金先も固定されています。Sproutの価値はSaplingプールにしか移動できず、リリースノートはzs1アドレスまたはSaplingレシーバーを含むユニファイドアドレスを要求しています。その後、Orchardへの移動は保有者が別途実行するトランザクションです。

締め切りプレッシャー下でのレスキューツールの審査

ArgosはSovright製のサードパーティデスクトップアプリで、ZecWallet Liteのメンテナンス終了後に構築されました。開発者サイトによれば、このアプリはLeast Authorityによる独立監査を受けており、シードと鍵をローカルで処理し、公開ブロックデータの読み取りと最終スイープの送信のためだけにインターネットに接続します。大きな残高については、長年使用したマシンからファクトリーリセットでもファームウェアレベルのマルウェアは除去できないため、真新しいコンピュータを推奨しています。

sweepを押す前に:

  • ダウンロード。 macOS版とWindows版はコード署名されています。各GitHubリリースにはSHA256SUMSファイルとビルドアテステーションが付属し、gh attestation verify <file> --repo sovright/argosで検証できます。
  • 取り分。 スイープ確認画面には、デフォルト10%のSovrightへの任意の寄付が含まれます。両方の内訳が確認前に表示されるため、この割合は意図的に設定してください。
  • 連絡経路。 開発者は、サポートがシード、ウォレットファイル、パスフレーズ、鍵を要求することは決してないと述べています。これらを求める要求は、どのプラットフォームでも詐欺です。

スイープが確定したら、復旧マシンのマルウェアが古い復旧素材を記録している可能性があるため、廃棄することが推奨されます。元のウォレットファイルは、その対象となるすべてのプールが空になるまで保管してください。

更新済みノードだけが移動を確認できる

署名されブロードキャストされたSprout転送は、起動高さより前のブロックに含まれて初めて有効になります。その確認をどこで読み取るかも重要です。ZIP 259は、アップグレード前に旧ノードソフトウェアが失効するという通常の要件を免除し、サポート外のノードがオンラインのままNU7以前のブランチに従い続ける可能性があると警告しています。Zcash Foundationの告知は、アップグレードしていないノードは別のチェーンに従うと述べています。旧ノードで確認すると、更新されたネットワークが認識しない転送が見える可能性があるため、確認はメインネットNU7サポートを備えた最初の安定版ZebraリリースであるZebra 7.0.0のようなNU7対応ソフトウェアから得るべきです。

退出も公開されています。ZIP 2003のプライバシー節は、Sproutから出ていく価値がプールの見える残高を変化させること、そして短い退出期間はタイミングと特徴的な金額を特定の保有者に結び付けやすくすることを指摘しています。水曜日に動いたのは約40 ZECだけであり、遅い引き出しには溶け込む周辺のトラフィックがほとんどありません。

取り残されたコインは帳簿に残る

Daira-Emma Hopwood著のZIP 2003は、Sprout資金の発行取り消しやバーンを行いません。起動時のプール残高は、ZIP 237のネットワーク持続可能性メカニズムの計算を含め、Zcashの発行済み供給量の中に留まります。したがってZcashの供給会計は、現在動かせないコインを数え続けます。

この提案は理論上の回帰経路を残しています。コミュニティが妥当と判断すれば、バージョン4トランザクションの再有効化、または別の取り出し機能の追加です。同時に、Sproutの支出は二度と戻らない可能性もあると明記しています。

このコストを受け入れる根拠はノードセキュリティにあります。ZIP 2003によれば、SproutはSaplingアップグレード以降、SaplingのGroth16証明システムとBLS12-381曲線を共有してきました。そのJoinSplit回路とヌリファイアおよびノートコミットメントの処理は、サービス拒否攻撃の攻撃面として含め、新しいトランザクションを受け入れるコードに依然として負担をかけます。Sproutはほぼ使用されていないため、ノード実装がその経路を最適化する理由はほとんどありません。アップグレードの範囲がどのように確定したかは、CoindooのNU7コイン保有者投票に関するレポートで扱われています。

コストを負担するのは狭い層です。Sprout鍵が確認していないバックアップの中にあるか、失ってしまった保有者です。公開されているプール残高では両者を区別できません。物語を決める数字は、ブロック3,543,405が採掘された後のZecStatsデータにおけるSproutプールの価値であり、アップグレードがどれだけのZECを取り残したかを示します。アクセス回復の兆候となりうるのは、取り出し機能を提案する後続のZIPだけでしょう。

出典: Coindoo