インテグレーション
チェーンの有用性は、そこに届くソフトウェアの有用性で決まります。このカテゴリーでは、そのソフトウェアを扱います。人々が署名に使うウォレット、アカウントを管理できる鍵、開発者がその上に構築するツールと API、そしてチェーンをブラウザの届くところに置く公開サービスです。そのすべてを 1 つの原則が貫いています。鍵はその持ち主のもとにとどまる、ということです。すべてのトランザクションはユーザー自身のデバイスで構築・署名され、どのサービスも署名済みのバイト列と公開データを運ぶだけです。
署名
- ウェブウォレット:ブラウザで署名し、デバイス上に暗号化された保管庫を保持し、一度もオンラインにならないコンピューターで署名することもできる、1 つの HTML ファイルである公式ウォレット。
- ダウンロードしたファイルの確認:ウォレットやノードのファイルが本物であることを、その SHA-256 ハッシュをチェーン上に記録されたハッシュと比較して確認する方法。
- 鍵とアカウントタイプ:アカウントは、ネイティブの ZooBC の鍵、あるいは Bitcoin、Ethereum、Solana、Polkadot、Cardano、Ripple、Tron、Tezos の鍵で管理でき、それぞれ元のチェーンの署名方式で確認されます。
- MetaMask と Ethereum 形式のアクセス:MetaMask は、すべてのノードに組み込まれた Ethereum 形式のアダプターを通じて、0x アカウントの間で ZBC を送ります。
- 署名付きメッセージと暗号化メッセージ:トランザクションなしにアドレスの管理を証明することと、受取人宛てにメッセージを暗号化すること。
- ハードウェアウォレット:デバイスメーカー向けの署名仕様で、設計済みの計画です。
構築
- ノード API:すべてのノードが提供する HTTP API で、
/api/v1/の下に 100 を超えるルートがあり、どのウェブページにも開かれています。 - コマンドラインツール:
zbc-cliと 10 のプログラミング言語のライブラリで、MIT ライセンスであり、共通のテストベクターによって同一に保たれています。
公開サービス
3 種類のサービスがオンチェーンのレジストリに一覧されているため、ウォレットは中央のディレクトリなしにそれらを見つけられます。
- ゲートウェイ:ウォレット、エクスプローラー、ファイル検証ページ、そして testnet ではフォーセットを提供する HTTPS の玄関口。ゲートウェイはステークをロックし、署名付きのハートビートで一覧に載り続けます。
- エクスプローラーとアーカイブノード:登録済みノードの横で動くアーカイブのサービスが検索可能な履歴を保持し、エクスプローラーがそれを表示します。
- リレー:ウォレットの間で通話のシグナリングとオンライン状態を運ぶ待ち合わせ場所。
これらのサービスはどれもブロックを作らず(それをするのは登録済みノードだけです。ノードの運用)、ユーザーの鍵を持つこともありません。
ブリッジされたコイン
ZooBC 上の 4 つのコインは、他のチェーンのコインを表しています。ZBTC はビットコイン、ZETH はイーサ、ZUSDC と ZUSDT は Ethereum 上の USDC と USDT のトークンです。ノードは外部のチェーンを監視しません。ブリッジはバージョン 0.5.8 以降 ZooBC の一部であり、その全体は ブリッジとラップドコイン で説明しています。各チェーンはバージョン 0.5.8 で再始動しますが、その際ブリッジのサービスは開始されません。
ノードの横で動くキーパーのプログラムがカストディアドレスを監視し、ノード鍵で署名されたアテステーションで投票します。集計対象の席、つまり一時停止中でない登録済みノードの 3 分の 2 が合意するまでは、何も起こりません。
出金するには、保有者がラップドコインを通常の TransferToken で、ZBW1| に続けて宛先アドレスを書いたメッセージとともに、ブリッジのカストディアカウントへ送ります。集計対象の席の 3 分の 2 が合意すると、すべてのノードがそれらの単位をカストディアカウントからバーンし、API を通じて読み取れるキーパーの署名が、もう一方のチェーンでコインを放出します。ミントとバーンは 1 対 1 で、ブリッジ手数料はありません。
関連項目
このトピックの記事
- MetaMask と Ethereum 形式のアクセス
MetaMask などの Ethereum のツールが、すべてのノードに組み込まれた JSON-RPC アダプターを通じて、ZooBC 上の 0x アカウントの間で ZBC を送る仕組みと、wei がアトミック単位にどう換算されるかを説明します。 - ウェブウォレット
公式の ZooBC ウォレットの仕組みを説明します。デバイス上に暗号化された保管庫を保持し、ブラウザで署名し、多くの形式のアカウントを保持し、オフラインで署名できる 1 つの HTML ファイルです。 - エクスプローラーとアーカイブノード
通常のノードが過去についてのすべての問いに答えられない理由、登録済みノードの横で動くアーカイブのサービスが検索可能な履歴をどう保持するか、そしてエクスプローラーがそれをどう使うかを説明します。 - ゲートウェイ
ZooBC のゲートウェイがブラウザのために何をするか、API のリクエストをどう振り分けるか、チェーン上でどう登録され一覧に載り続けるか、そして提供する testnet のフォーセットを説明します。 - コマンドラインツール
ZooBC の公開ツールを紹介します。HTTP API を通じてトランザクションを構築、署名、送信する zbc-cli と 10 の言語のライブラリで、共通のテストベクターによってバイト単位で同一に保たれています。 - ダウンロードしたファイルの確認
ZooBC のウォレットやノードのファイルが本物であることを、その SHA-256 ハッシュをチェーン上に記録されたハッシュと比較して、ブラウザやターミナルで確認する方法を説明します。 - ノード API
すべての ZooBC ノードが提供する HTTP API について、その範囲、チェーンの読み取り方とトランザクションの送信方法、制限、そしてノードが提供するその他のインターフェースを説明します。 - ハードウェアウォレット
ハードウェアウォレットのメーカー向けの ZooBC の署名仕様を説明します。デバイスが ZooBC のトランザクションに署名する前に、何を解析し、表示し、計算しなければならないか、そしてその理由です。 - リレー
ZooBC のリレーがウォレットのために何をするか(通話のシグナリング、オンライン状態、チャネルゲームの手)、ウォレットがどうリレーにサインインするか、そしてリレーがチェーン上にどう一覧されるかを説明します。 - 署名付きメッセージと暗号化メッセージ
トランザクションなしに ZooBC のアドレスの管理を証明する方法(ZBC-MSG-v2)、メッセージを受取人宛てに暗号化する方法、そしてノード API が受け付けるその他の署名を説明します。 - 鍵とアカウントタイプ
ZooBC のアドレスがアカウントタイプをどう表すか、ZooBC や他のチェーンのどの鍵がアカウントを管理できるか、そして各署名方式がどう検証されるかを説明します。