フラクタル、OP_NET、AVM、BRC100、プログラム可能なルーン、BTCには他にどのような拡張方案がありますか?
自 2024 年第一季度以来,BTC エコシステムの投機熱は 2023 年ほどではありませんが、ますます多くの開発者が BTC モデルに参加し、慣れてきたことで、BTC エコシステムの技術的進展は目覚ましいものがあります。特に、プログラム可能性の拡張策において顕著です。以前、Trustless Labs は BTC の L2 と UTXO バインディング、BTC 再ステーキング を紹介しました。本記事では、注目度の高い Fractal Bitcoin や BRC 20、CBRC、ARC 20 などの BTC メタデータプロトコルのプログラム可能なソリューションについて紹介し、情報の補完を行います。
Fractal
Fractal は、Bitcoin Core クライアントソフトウェアの仮想化に基づいており、再帰的にツリー状の拡張可能なフレームワークを作成します。各レイヤーのブロックチェーンは、Fractal ネットワーク全体のパフォーマンスを向上させることができます。主要なコードを再利用するため、Fractal は Bitcoin およびそのインフラストラクチャと即時に完全に互換性があります。たとえば、マイニングにおいても完全に共通です。異なる点は、Fractal が op_cat オペレーターを有効にし、より多くのロジックを実現できるようにしたことです。
Fractal は Unisat チームによって開発され、Unisat は 2024 年 1 月のブログで Fractal の関連開発進捗を言及しました。プロジェクトは 2024 年 6 月 1 日にベータテストネットを立ち上げ、7 月 29 日にテストフェーズのリセットを完了し、メインネットは 2024 年 9 月に立ち上がる予定です。
チームは最近、トークンエコノミクスを発表しました。Fractal ネットワークには独自のトークンがあり、50% はマイニングによって生成され、15% はエコシステムに使用され、5% は初期投資家にプレセールされ、顧問およびコア貢献者が 20% を占め、10% のコミュニティ補助金がパートナーシップと流動性の構築に使用されます。
アーキテクチャ設計
Fractal は Bitcoin Core クライアントを完全に仮想化し、それをデプロイおよび実行可能なブロックチェーンソフトウェアパッケージ(Bitcoin Core Software Package, BCSP)に封装します。次に、Bitcoin メインネットに再帰的にアンカーを設定し、1 つまたは複数の BCSP インスタンスを独立して実行します。現代の仮想化技術を使用して、効率的なハードウェアパフォーマンスの共有を実現し、複数のインスタンスがメインシステム上で実行されます。簡単に言えば、1 台のコンピュータ(BTC メインネット)上に複数の仮想マシンインスタンス(Fractal によって構築された BCSP インスタンス)が開かれ、さらに再帰的に続けることができます。
大量のオンチェーンインタラクションの需要が発生した場合、これらの需要を選択的により深いレイヤーに委任することができます。このシステムの動的バランス能力は、特定のレイヤーの過度の混雑を回避するのに役立ちます。より良いユーザーエクスペリエンスのために、Fractal は Bitcoin Core にいくつかの変更を加え、ブロック確認時間を 30 秒またはそれ以下に変更し、ブロックサイズを 20 倍の 20 MB に増加させ、十分なパフォーマンスと短い遅延を保証します。
Fractal は op_cat オペレーターを有効にし、BTC 上の拡張ソリューションの探索とテストの可能性を広げました。
資産のクロスチェーンレベルでは、異なるインスタンスが物理環境内で実行されているため、同じ BTC フレームワーク内で複数の Bitcoin Core チェーンが実行されていると理解できます。したがって、インスタンスチェーン間で通信が可能であり、一般的な資産移転インターフェースを構築することで、異なるレイヤー間での資産のシームレスな移転を実現します。
Bitcoin および BRC-20 や Ordinals などの資産は、非中央集権的なブリッジを介して移転可能です。基盤となるメカニズムは、動的に置き換え可能な回転 MPC 署名メカニズムです。現在のところ、ラッピングの層を持つようです。今後のイテレーションでは、BTC および他のメインネット資産も brc-20 ラッピング資産として Fractal Bitcoin 上に存在できるようになります。
典型的なイーサリアム Layer 2 ソリューションと比較して、この形式の仮想化はメインチェーンの外で追加の抽象レイヤーを介して計算の拡張性を実現し、メインチェーンとの整合性を保ちながら、新しいコンセンサスメカニズムを導入しません。したがって、現在の BTC ASIC マイナーとマイニングプールは Fractal ネットワークにシームレスに参加できます。
Fractal のセキュリティ保証は、その算力の大きさにあります。設計上、Fractal の PoW メカニズムのセキュリティを強化するために主に 3 つの側面を通じて行われます。Fractal は共同マイニングを導入し、3 つのブロックごとに 1 つのブロックが BTC マイナーとのマージマイニングによって生成され、ネットワークを潜在的な 51% 攻撃から保護するのに役立ちます。残りの 2 つのブロックは Fractal ネットワーク自身の算力によって生成されます。このように、BTC マイナーへの影響は Fractal の成功の鍵であり、そのトークンエコノミクスは避けられずマイナーに傾斜します。
同時に、新しく作成された仮想化インスタンスチェーンは、起動段階で初期の脆弱期を経験します。新しいインスタンスを起動する際、オペレーターは特定のブロック高を設定して保護を提供し、インスタンスが安全で健康な状態に達するまで保護します。将来的には、大量の算力を持つマイナーがそのリソースを異なる BCSP インスタンスに配分することで、全体のシステムのロバスト性と弾力性を強化できます。
Fractal メインネットコインと sats の関係
Fractal メインネットコインのマイニング出力はチェーンの運用を保証するためのもので、fb チェーンは btc と基本的に一致しており、スマートコントラクトを直接実行する能力はありません。したがって、複雑な DeFi 機能(スワップ機能など)は追加のインフラストラクチャが必要です。Unisat は brc 20 sats をスワップに使用することを約束しており、このスワップは Fractal 上で実行されるため、独自のノードが必要です。これらのノードは自負盈亏のためにサービス料金を徴収し、それが sats となります。
AVM
AVM(Atomicals Virtual Machine)は、Atomicals Protocol の BTC スマートコントラクト実装です。AVM は BTC スクリプトが許可する仮想マシンをシミュレートし、仮想マシン内で複数の BTC 原始操作コードを開放します。開発者は Bitcoin スクリプトの組み合わせを通じてスマートコントラクトを実現し、資産の作成と移転を管理するための独自のルールを定義します。
中本聡は Bitcoin の最初の設計において、完全な表現力を持つスクリプト言語を設計し、豊富な原始操作コード命令のセットを含めました。これらのスクリプトは一定のデータストレージ能力を持ち、実行はチューリング完全です。その後、Bitcoin Core は、基本的な文字列結合操作(OPCAT)や算術演算子(乗算 OPMUL や除算 OP_DIV など)など、チューリング完全性に必要な一部の操作コードを無効にしました。
AVM の考え方は、BTC 原始操作コードの能力を最大限に引き出すことです。AVM 仮想マシンは BTC スクリプトをシミュレートし、二重スタック PDA(プッシュ可能なストレージオートマトン)を通じてチューリング完全性を実現しました。この仮想マシンはサンドボックス内で実行され、このサンドボックスにはインデクサー、命令解析器、グローバルステートが含まれており、スマートコントラクトの処理と状態の同期および検証を実現します。
AVM 仮想マシンの命令セットには完全な BTC 操作コードが含まれているため、開発者はメインネット上で多くの BTC の未起動機能を利用してプログラミングできます。これにより、AVM は BTC エコシステム拡張のネイティブ先行ネットのように見えます。
AVM は一つのアーキテクチャであり、BRC 20、ARC 20、Runes、CBRC などの任意の BTC メタデータプロトコルがカスタマイズ可能であり、アプリケーション開発者、サービスプロバイダー、ユーザーが共同で管理し、自発的なコンセンサスを形成します。したがって、ほぼすべてのメタデータプロトコルに適用可能であり、仮想マシン下のインデクサーを微調整するだけで済みます。
AVM はテスト版をリリースしました https://x.com/atomicalsxyz/status/1823901701033934975、関連コード https://github.com/atomicals/avm-interpreter。
OP_NET
公式サイト:https://opnet.org/#
OPNET は 2024 年第 3 四半期に提案され、Bitcoin ネットワークに Ethereum のようなスマートコントラクト機能を導入することを目指していますが、Bitcoin の特性とアーキテクチャにより適合しています。OPNET 上で取引を行うには、ネイティブ Bitcoin のみを使用し、ノードインセンティブや取引手数料を支払うために他のトークンを使用する必要はありません。
OP_NET は、完全でコンパクトかつ使いやすい開発ライブラリを提供し、主に AssemblyScript(TypeScript に似ており、WebAssembly にコンパイル可能)で記述されています。その設計目標は、Bitcoin 関連技術の作成、読み取り、操作を簡素化すること、特にスマートコントラクトや Bitcoin スマートインスクリプション(BSI, Bitcoin Smart Inscription)においてです。
OP_NET のコア機能と特性
OPNET は Bitcoin のブロックコンセンサスとデータの可用性を保持し、すべての取引が Bitcoin ネットワーク上に保存され、その改ざん不可能な保護を受けることを保証します。実行仮想マシン(OPVM)を介して、OPNET は Bitcoin ブロック上で複雑な計算を実行でき、すべての OPNET 取引は "BSI" 文字列としてマークされ、OP_VM 内で実行されて契約状態を更新します。
OP_NET ノードは WASM 仮想マシンを実行しているため、AssemblyScript、Rust、Python などの多くのプログラミング言語をサポートし、Tapscript を利用して高度なスマートコントラクト機能を有効にし、開発者は許可なしに直接 Bitcoin ブロックチェーン上にスマートコントラクトをデプロイおよび相互作用できます。
これらのスマートコントラクトのコードは圧縮され、BTC 取引に書き込まれます。これにより、UTXO アドレスが生成され、契約アドレスと見なされ、ユーザーが契約と相互作用するにはこのアドレスに送金する必要があります。
OPNET ネットワークと相互作用する際、BTC 取引の手数料を除いて、ユーザーは追加で少なくとも 330 サトシの手数料を支払う必要があります。これは、取引が BTC メインネットのマイナーによって「ダスト攻撃」と見なされないようにするためです。ユーザーはさらに多くのガス料金を追加することができ、OPNET ネットワーク内の取引のパッケージ順序は手数料に基づいて並べ替えられ、BTC ブロックのパッケージ順序に完全には依存しません。ユーザーが支払う OPNET 取引手数料が 250000 sat を超える場合、超過分は OPNET ノードネットワークに報酬として与えられます。
BTC の使用を DeFi アプリケーションで拡張するために、OPNET は Proof of Authority システムを提供し、BTC を WBTC にラッピングすることを許可します。メインネット BTC はマルチシグネチャの方法で OPNET プロトコルにブリッジされます。
特筆すべきは、OPNET は SegWit および Taproot と互換性があり、そのトークン設計は UTXO にバインドされておらず、トークンを誤ってマイナーに送信するリスクを回避し、システムのセキュリティと信頼性をさらに向上させます。これらの特性を通じて、OPNET は Bitcoin エコシステムにより強力なスマートコントラクト機能と分散型アプリケーションのサポートを注入しました。
OP_NET のエコプロジェクト
OP_NET の前身は cbrc-20 プロトコルであり、多くのエコプロジェクトが直接継承されています。エコシステムは、分散型取引、貸付、マーケットメイキング、流動性提供、クロスチェーンブリッジなどの複数の分野をカバーしています:
Motoswap: これは Bitcoin Layer 1 上で動作する分散型取引プロトコルです。
Stash: これは Bitcoin Layer 1 上で動作する分散型貸付プロトコルです。Stash は OP_NET の WBTC を担保として使用し、ユーザーに許可なしで貸付を行い、ローンは USDs ステーブルコインの形で発行されます。
Ordinal Novus: これは OP_NET エコシステム内のマーケットメイキングおよび流動性提供プラットフォームです。
Ichigai: これは複数の DeFi プラットフォームを統合した分散型アグリゲーターで、ユーザーは 1 つのインターフェースで取引、マーケットトラッキング、ポートフォリオを管理できます。
SatBot: Telegram に統合された取引ボットで、ユーザーは Telegram を通じてリアルタイムで取引を実行し、市場を追跡し、ポートフォリオを管理できます。
KittySwap: OP_NET 上で動作する分散型取引所および永続的契約プラットフォームです。
Redacted: チェーン上のプライベートなコンプライアンス DeFi プライベートバンキングサービスを提供します。
SLOHM Finance: OP_NET 上で開始された分散型準備通貨プロジェクトです。
BuyNet: Bitcoin DeFi エコシステムのために開発された購入ボットです。
SatsX: OP_NET 上で多機能な特性とツールを開発するプロジェクトで、エコシステムの能力を拡張します。
Meme Coins 例えば Satoshi Nakamoto Inu, Zyn, Unga, Pepe: これらは OP20 プロトコルに基づく Meme トークンで、すべて OPNET によってサポートされています。
BRC 100
文書:https://docs.brc100.org
BRC-100 は、Ordinals 理論に基づいて構築された分散型計算プロトコルであり、brc 20 に「焼却」や「鋳造」などの新しい操作を追加することによって、これらの新しい操作の組み合わせを通じて、インデクサー内で異なるアドレスが保有するトークンの残高と状態を記録し、複雑な DeFi 操作を実現します。開発者は BRC-100 プロトコルの基盤の上にさらに多くのオペレーターを拡張し、ビジネスを拡張することができます。
BRC-100 プロトコルの操作
BRC-100 はいくつかの操作を提供します: mint2/mint3 および burn2/burn3 により、トークンは UTXO モデルと状態機械モデルの間で安全に変換できます:
- mint2:新しいトークンを生成するために使用され、システム全体の流通量を増加させます。通常、特定のアプリケーションまたはアドレスからの権限が必要です。
- mint3:mint2 に似ていますが、流通量を増加させません。主にアプリケーション内の残高を UTXO(未使用トランザクション出力)に変換するために使用され、これらの残高は他のアプリケーションで使用できます。
- burn2:トークンを焼却し、アプリケーションの状態を更新します。焼却されたトークンは、特定の条件を満たすと mint2 によって再生成される可能性があります。
- burn3:burn2 に似ていますが、流通量を減少させず、トークンをアプリケーションの状態に変換します。焼却されたトークンは mint3 によって再生成される可能性があります。
拡張と互換性
計算能力と状態変換は BRC-100 拡張プロトコルを通じて拡張できます。すべての BRC-100 拡張プロトコルは互換性があり、BRC-100 およびその拡張プロトコルを実現するトークンはすべてのアプリケーションで使用できます。また、BRC-100 プロトコルおよびその拡張プロトコルは、プロトコルの改善を通じて更新およびアップグレードできます。
BRC-100 プロトコルおよびそのすべての拡張および改善プロトコルは BRC-100 プロトコルスタックと呼ばれ、すべての BRC-100 拡張プロトコルは互換性があり、BRC-100 およびその拡張プロトコルを実現するトークンはすべてのアプリケーションで使用でき、クロスチェーン操作をサポートします。BRC-101、BRC-102、BRC-104 があります:
BRC-101 は分散型のオンチェーンガバナンスプロトコルであり、BRC-100 プロトコルまたはその拡張プロトコルに基づくアプリケーションのガバナンス方法を定義します。
BRC-102 は BRC-100 資産の自動化流動性プロトコルであり、BRC-100 プロトコルスタックに基づく一対のトークンの自動化マーケットメイキング方法を「一定の積公式」(x*y=k)に基づいて定義します。
BRC-104 は流動性ステーキング/再ステーキングプールプロトコルであり、BRC-20 資産、ルーン資産、BTC を BRC-100 資産としてステーキングし、BRC-100 資産、BRC-20 資産、ルーン資産、または BTC ステーキング者に BRC-100 資産の報酬を配分する方法を定義します。BRC-104 は BRC-100 プロトコルスタックの資産ラッピングプロトコルおよびイールドファーミングプロトコルです。
BRC-100 エコプロジェクト
プロジェクトチームは BRC-100 プロトコルインデクサーの最小インデックスを実現する方法を探求しています。需要者は、すべての BRC-100 プロトコルスタックの資産の状態を取得するために独自の最小インデックスをデプロイでき、すべての拡張プロトコルの複雑な計算ロジックを実現する必要はありません。また、最小インデックスは頻繁に更新またはアップグレードする必要はありません。
BRC-100 エコシステムには 3 つのプロジェクトがあります:
inBRC (開始済み) - 最初の BRC-100 マーケットおよびインデクサー: https://inbrc.org/。
100Swap (開始済み) - 最初の BRC-102 プロトコル に基づく Bitcoin L1 AMM インスクリプション分散型取引所: https://100swap.io/。
100Layer (開発中) - Bitcoin L1 上の Bitcoin エコシステムの流動性プロトコルであり、BRC-104 プロトコル および BRC-106 プロトコルに基づき、分散型担保によってサポートされるステーブルコイン、ラッピングトークン、流動性マイニングで構成されています: https://100layer.io/。
プログラム可能な RUNES(Protorunes)
ルーンは本質的にデータ構造であり、Bitcoin の OP_RETURN フィールドに保存されます。他の JSON ベースのプロトコル(BRC-20 など)と比較して、ルーンはより軽量であり、複雑なインデックスシステムに依存せず、Bitcoin のシンプルさと安全性を保っています。
プログラム可能なルーンはルーンの拡張層であり、ルーンを持つプログラム可能な資産の作成を許可します。これらの資産は UTXO 内に存在し、AMM(自動マーケットメイカー)プロトコルの操作をサポートします。プログラム可能なルーンのコア理念は、Bitcoin ブロックチェーン上でデータを利用し、仮想マシンや類似の技術を通じてスマートコントラクトの機能を実現することです。
Proto-Runes プロトコル
プログラム可能なルーンの中で、最も重要なプロジェクトは Proto-Runes プロトコルであり、oyl ウォレットの創設者 @judoflexchop チームによって主導されています。現在、オープンソース化されています:https://github.com/kungfuflex/protorune
Proto-Runes プロトコルは、プログラム可能なルーンにフレームワークを提供する標準と規範であり、サブプロトコル(メタプロトコル)間でルーン資産を管理および移転することによって、AMM、貸付プロトコル、または成熟したスマートコントラクトを構築できます。
たとえば、Proto-Runes プロトコルは Bitcoin ネットワーク上で Uniswap に似た DEX(分散型取引所)を実現し、ルーン資産の原子交換と流動性プールの作成をサポートします。プロトタイプの焼却とプロトタイプメッセージの組み合わせを通じて、ユーザーは Bitcoin ネットワークを離れることなく分散型取引と資産管理を行うことができます。
簡単に言えば、Proto-Runes プロトコルはルーンを焼却してプログラム可能なルーン Protorunes の形式に変換することを許可し、ルーンに追加の機能と用途を与えます。
Protoburn と Protorunes
Proto-Runes の重要なメカニズムの一つは Protoburn であり、ユーザーがルーンを焼却し、サブプロトコル専用の表現形式に変換することを許可します。これらのルーン資産は Runestone のポインタやルーンプロトコル上の edict(法令)によってターゲット化され、サブプロトコル内で新しい資産形式、すなわちプログラム可能なルーン Protorunes を生成します。
プロトタイプの焼却は、OP_RETURN 出力にルーンをロックすることによってその不可花費性を確保します。このメカニズムは、ルーン資産が主プロトコルからサブプロトコルに安全に移転できることを保証し、サブプロトコル内でのさらなる操作や取引を許可します。
このプロセスは通常一方向であり、資産はルーンプロトコルからサブプロトコルに移転されますが、直接戻すことはできません。Protoburn メッセージは Runestone の Protocol フィールド内の Protostone に埋め込まれ、そのプロトコルラベルは 13(ルーンプロトコルラベル)です。メッセージにはターゲットサブプロトコル ID や資産のポインタなどの情報が含まれています。このメカニズムは、サブプロトコル間の資産管理と移転の基盤を提供し、原子交換(Atomic Swaps)などの機能を許可します。
Protomessage
Proto-Runes プロトコルにおいて、Protomessage はサブプロトコル内で実行される操作指令を指します。これは Protostone 構造内にエンコードされ、インデクサーによって解析されます。Protomessage には通常、資産に対する操作要求(転送、取引、または他のプロトコルで定義された機能)が含まれます。インデクサーが Protostone 内のメッセージフィールドを解析すると、そのフィールドにはバイト配列が含まれ、通常は protobuf または他のサブプロトコルが期待するシリアライザーを通じて解析され、サブプロトコルのランタイムにパラメータとして渡されます。このメッセージは資産の移転、取引ロジック、または他のプロトコル機能に関与する可能性があります。
ポインタは Protostone のターゲット位置を指定するために使用され、この位置は取引出力内の UTXO である可能性も、別の Protostone である可能性もあります。サブプロトコルが特定の入力を実行しないことを決定した場合、取引が失敗した場合、protorunes は返金ポインタ(refund_pointer)が指す位置に返還され、未使用の資産が元の取引の発起者に返還されます。
Proto-Runes プロトコルの実行メカニズム
Proto-Runes プロトコルの実行メカニズムは、インデクサーが最初にルーンプロトコル内の Runestone 特性を処理し、その後順番にサブプロトコルのプロトコルメッセージを処理することです。すべての Protostone は、Runestone の Protocol フィールド内に現れる順序に従って処理されます。複雑さや潜在的なセキュリティの脆弱性を避けるために、Proto-Runes プロトコルは原型メッセージの再帰的実行を禁止しており、各原型メッセージは一度だけ実行でき、再帰的な指令は取引の失敗を引き起こし、未使用の資産は返還されます。
Proto-Runes プロトコルにおいて、LEB 128(Little Endian Base 128)は大整数を表現するための可変長エンコーディング方式です。LEB 128 エンコーディングは、プロトコルフィールドやメッセージを表現するために広く使用され、スペースを節約し、処理効率を向上させます。各サブプロトコルには、異なるサブプロトコルを区別するためのユニークなプロトコルラベルがあります。これらのラベルは u 128 値で表され、Protostone 内では LEB 128 エンコーディングの値として現れます。ポインタは Protostone のターゲット位置を指定するために使用され、取引出力内の UTXO である可能性も、別の Protostone である可能性もあり、原型メッセージを参照することもできます。
最新の進展:創世 Protorune
QUORUM•GENESIS•PROTORUNE は最初の Protorrune であり、その Protoburn は成功裏に完了し、ord インデクサーの正しい動作が確認できます。Protoburn は cenotaph なしで発生し、OP_RETURN 出力 QUORUM•GENESIS•PROTORUNE の残高が使用されました。これを通じて確認できます:https://mempool.space/tx/eb2fa5fad4a7f054c6c039ff934c7a6a8d18313ddb9b8c9ed1e0bc01d3dc9572。
この創世 Protorune は参考実装としてのみ提供され、販売の予定はありません。これは Protorune 標準の公開フォーラムとして機能し、プロジェクトトークンにガバナンス機能を提供することを目的としています。
@judoflexchop チームは、この genesis protorune のために WASM 開発インデクサーを作成しています:https://github.com/kungfuflex/quorumgenesisprotorune
これは Bitcoin L1 上でオンチェーンガバナンスの機能モデルを実現するもので、インデクサーとして機能し、ユーザーが protomessage を通じて投票トークンを生成できるようにします。同一範囲のルーンは各提案で一度だけ投票トークンを生成できます。提案が法定人数に達すると自動的に実行され、ユーザーは投票トークンを不可花費のアドレスに移動させることで投票を撤回できます。全体のプロセスは、ガバナンスの透明性と有効性を確保します。