ビットコインユーザーは,間もなく,Taprootと呼ばれるトリックから恩恵を受けることができるかもしれません.最初に提案されたのは,Bitcoin Coreの貢献者であり,Blockstreamの元CTOであるGregory Maxwellです.Taprootは,Bitcoinのスマートコントラクトの柔軟性を拡張し,さらにプライバシーを提供します.最も複雑なスマートコントラクトでさえ,ブロックチェーン上で,通常は通常のトランザクションと区別できません.
これは大きな取り組みですが,単なる理論ではありません. ピーター・ウイール,アンソニー・タウンズ,ジョンソン・ラウ,ジョナス・ニック,アンドリュー・ポエルストラ,ティム・ラフィン,ラスティ・ラッセル,そしてグレゴリー・マクスウェルを含む最も多産なビットコイン・コア貢献者のいくつかは,すべて1つのプロトコルアップグレードでタプルーットを含むシュノー署名提案に取り組んでいます.
タプルートとは何かと その仕組みはこうです
P2SH
ビットコインは基本的にスクリプトで"ロックアップ"されている.ブロックチェーンに含まれるトランザクションに埋め込まれたコードの2行で,次のトランザクションでコインがどのように使われるかを定義する.支出条件は通常,コインの所有権を証明するための署名を提供することを含む.しかし,他のよく知られた条件には,例えばタイムロック (コインは特定のブロックの高さまたは日付以降のみ使えます) またはマルチシグ (コインは,特定のプライベートキーのセットからいくつかのプライベートキーの署名を提供した場合のみ使えます).
複雑なタイプのスマートコントラクトを作成するために,異なる条件を混合してマッチすることができます.そのような契約の例は,アリスとボブの両方が署名した場合,またはアリスが1週間経過した後,またはボブが秘密番号を提供しながら署名した場合,コインが費やされる可能性があります.これらの3つの条件のうちどちらが最初に満たされるか,コインがどのように費やされるかです.
2012年以来,スクリプト (条件) は最初は一般に表示されないことが多い.コインの新しい所有者だけが,どのように使えばよいか知っている.これはP2SH (pay to script hash) と呼ばれるトリックで行われます.このトリックでは,最初はスクリプトのハッシュのみがブロックチェーンに含まれます.この見かけにランダムに暗号化された番号はコインを保持しています.コインを消費すると,所有者はスクリプトの全スクリプトおよび
しかし,コインが使われたとき,現時点では,満たされていない条件を含む,満たされた可能性のある条件をすべて明らかにすることが必要です.これは2つの主な欠点があります.一つは,多くの条件がある場合,特にデータ重量です.そして2つ目は,プライバシーに悪いです.誰もが資金が使われた可能性のある様々な方法を学び,例えば,どのような財布が使用されたのか,さらにはそれ以上のことを明らかにすることができます.
マスト
MAST (Merkelized Abstract Syntax Tree) は,この2つのデメリットを取り除くためにMerkle tree (暗号学者Ralph Merkleによって発明された数十年前のコンパクトなデータ構造) を使用する提案されたソリューションである.要するに,資金が使用できるすべての異なる条件は個別にハッシュされ (単一のハッシュに組み合わせるのではなく),Merkle treeに含まれ,最終的に単一のハッシュ:Merkle rootを生成する.このMerkle rootはコインをロックする.
Merkle ツリー内のデータが明らかにされた場合, Merkle ルーツといくつかの追加のデータ ( Merkle パスと呼ばれる) が,特定のデータが Merkle ツリーに含まれていたかどうかを確認するために使用できます. Merkle ツリーの残りの部分はハッシュされ,隠されています.
MASTでは,満たされた条件のみが明らかにされる必要があることを意味します.上記の初期例では,アリスが1週間後に資金を単独で費やした場合,その条件 (およびメルクル経路) を明らかにするだけです.Aliceとボブが一緒に,またはボブが秘密番号を追加した場合,お金も一緒に費やされていたかもしれないことを誰も知らない.これはMASTを複雑なP2SHスマートコントラクトよりもデータ効率が高くし,プライバシーも追加します.
MAST構造が存在していたことを隠すことができる. この方法は,MAST構造が実際に存在していたことを隠すことができる.
シュノー
シュノア署名スキームは,長い間多くのビットコイン開発者の希望リストにあり,現在はソフトフォークプロトコルアップグレードとして展開される開発中である.多くの暗号学者は,シュノア署名スキームが数学特性が高い正確性を提供し,柔軟性がないため,比較的迅速に検証できるため,この分野で最も優れたものと考えられている.
ビットコインの文脈における最も有名な利点として,Schnorrの"線形数学"は署名アグリゲーションを可能にします.同じトランザクション内の複数の署名が1つに結合できます.同様のトリックはマルチシグ取引に適用できます.公钥と署名の両方を"
署名スキームは,さらに興味深い方法で使用できます.例えば,プライベートキーとパブリックキーの両方を"tweak"するためにデータを使用することが可能です.簡略化された例として,プライベートキーとそれに対応するパブリックキーの両方を2倍に掛けることで調整することができます.
これがタプルートを可能にします
タップルート
Taprootは興味深い実感に基づいています:どんなに複雑であっても,ほぼすべてのMAST構築には,すべての参加者が結果に同意し,単に和解取引に共同で署名することを可能にする条件が含まれます.以前の例では,ボブがアリスが,自分自身で,来週すべての資金を請求できることを知っている場合,彼は今,一緒に署名するために彼女と協力することもできます. (多くの典型的なスマートコントラクトセットアップでは,彼がそうしなければ罰されます.複雑さは本当にみんなを正直に保つために役立ちます.)
タプルートはMASTに似ていて,常にすべての参加者が共同で資金を費やできる条件を含んでいます.
興味深いのは シュノア署名を使うことです
まず,協同組合の閉鎖は,Schnorr
今のところは良いですが, 普通の取引のように資金を使うことは MASTのような構造がないのにできる唯一のことです.
資金が使用できるすべての代替方法
資金が協力的に使われた場合,すべての参加者は署名を
協力的な閉鎖が不可能だと証明された場合のみ
この場合,元のスリースロック公開鍵とスクリプトの両方が明らかになります.これは,
また,スリース値公钥をスクリプトで調整する代わりに,資金の支出可能なすべての異なる条件を含む Merkle ツリーの Merkle ルーツでスリース値公钥を調整することができます. MAST 構造.資金を支出するには,満たされた支出条件のみを明らかにする必要があります.
マストの利点をすべて 提供している一方で 通常の状況では 普通の取引が フォールバックとして複雑なスマートコントラクトを 隠していたことを 誰も知りません
これはTaproot概念の一般的な概要である.実装の詳細は異なる可能性があります.詳細については,グレゴリー・マクスウェルによるオリジナルのTaproot提案を読んだり,Pieter Wuilleによるこのプレゼンテーションを見たりしてください.