ビットコインの回復力、スケーラビリティ、プライバシーを最大限に高めるにはどうすればよいでしょうか?答えは、この新しい改良プロトコルMASTにあります。

ビットコインの回復力、スケーラビリティ、プライバシーを最大限に高めるにはどうすればよいでしょうか?答えは、この新しい改良プロトコルMASTにあります。

今後予定されている Segregated Witness (SegWit) ソフトフォークは、さまざまな方法でビットコインの可能性を解き放つ可能性があります。 Segregated Verification によってもたらされる潜在的なイノベーションの 1 つがMAST ( Merkelized Abstract Syntax Trees 、統一された変換方法はまだありませんが、読者はフォーラムにエントリを投稿できます) です。 MAST の主な目標は、スマート コントラクトの柔軟性、スケーラビリティ、プライバシーを向上させることです。

MAST スキームは、Blockstream 開発者の Russell O'Connor、Blockstream および Core 開発者の Pieter Wuille、および Core 開発者の Peter Todd によって共同で提案されました。最近、MAST ドラフトは、コア開発者の Johnson Lau によって Bitcoin Improvement Protocol (BIP) に書き込まれました。

MAST の可能性は無限です。


P2SH

MASTを理解するには、まず脚本哈希支付方式(P2SH,Pay to script hash)理解する必要があります。 P2SH は長年にわたってビットコイン取引で使用されてきました。

すべてのビットコイン取引は、最終的には出力時に特定のアドレスに「ビットコインをロックする」ことになります。これらのロックされたビットコインは、後続のトランザクションでロック解除され(その後再びロックされ)、これは、アドレス間でビットコインを転送するプロセス(つまり、トランザクション プロセス)です。

このロック プロセスは、わずか数行のコードからなるスクリプトによって完了します。標準トランザクションでは、このスクリプト言語が出力に含まれ、後続のトランザクションでビットコインがどのように転送されるかを指定します。

多重签名(multisig)CheckLockTimeVerify使用する非標準の Bitcoin トランザクションには、比較的複雑なメカニズム、つまり P2SH が必要です。このモデルでは、ビットコインは依然としてスクリプト言語によってロックされています。ただし、このスクリプト言語はトランザクション出力には表示されません。このスクリプト言語はハッシュ化され、ランダムな順序で表示され、短縮されるため、ランダムな数字の文字列のように見えます。この乱数の文字列は初期スクリプトのコピーには使用できませんが、初期スクリプトが利用可能になると、再度ハッシュすることで乱数の文字列をコピーできます。トランザクション出力に表示されるのは、このスクリプト言語のハッシュのみです。

後続のトランザクションで P2SH 出力のロックを解除するには、スクリプト言語で指定された要件を満たすだけでは不十分です。結局のところ、ネットワーク上のビットコインノードはハッシュ化されたスクリプトしか見ることができず、元のスクリプトは見られません。したがって、ノードはトランザクションを検証および確認できません。

したがって、次のトランザクションには、スクリプト全体とその規定の転送方法、つまり、ロックを担当するキー (スクリプト言語) とロック解除を担当するキー (転送方法) が含まれている必要があります。

正しいスクリプトをハッシュした後、Bitcoin ノードはスクリプトが前の出力のスクリプト ハッシュと一致することを確認できます。一致する場合、ノードはビットコインが実際に特定のスクリプトにロックされていることを認識します。その後、トランザクションがスクリプトで指定された転送方法に準拠していることを確認し、最終的にトランザクションを確認できます。

マークルツリー

MAST の謎を解くもう一つの鍵は梅克尔树(Merkle treeバイナリ ハッシュ木とも呼ばれます) です。

本質的に、マークル木は、複数の異なるデータ セットを 1 つのコンパクトなハッシュ、梅克尔树根(Merkle rootバイナリ ハッシュ ルート) にハッシュできる数学的構造です。他のハッシュと同様に、Merkle ルートは Merkle ツリー内のデータを再構築するために使用することはできません。

しかし、Merkle の木には独自の利点があります。 Merkle ツリー内のデータがわかっている場合は、そのデータの具体的な場所は Merkle ツリーのルートを通じて確認できます。

簡単な例を見てみましょう。 Xiaohong は、データ セット「123」と「456」を組み合わせた Merkle ツリーを作成し、結果として得られる Merkle ツリーのルートは「789」になります。そして、シャオホンはシャオミンに、データ「123」がマークルツリーのどこかにあることを伝えます。シャオミンは、マークルルート(「789」)を通じて、「456」の存在を知らなくても、「123」が本当にシャオホンが言った位置にあるかどうかを確認できます。実際、マークルツリーには潜在的に何万ものデータセットがあることを知っていたにもかかわらず、そのどれも解読できなかったのです。

MAST = P2SH + マークルツリー

MAST は実際には P2SH と Merkle ツリーの利点を組み合わせています。

MAST は、単一のスクリプトでビットコインをロックするのではなく、異なるスクリプトで同じビットコインをロックします。つまり、同じビットコインが、一連の異なる、さらには相互に排他的な条件下でロックされる可能性があるのです。最初に一致したトランザクション条件が、最初にビットコインを使用できます。

たとえば、取引条件に Xiaohong の署名が必要な場合、Xiaoming と Xiaohua の両方の署名が必要な場合、または一定期間後に Xiaohua の署名が必要な場合などがあります。Xiaohong が最初に署名すると仮定すると、出力が生成され、取引が有効になります。 Xiao MingとXiao HuaがXiao Hongより先に署名すれば、取引は有効になります。等々。

P2SH と同様に、上記のトランザクションに関係するスクリプトはハッシュ化されます。しかし同時に、それは Merkle ツリー内に存在します。対応する Merkle ツリー ルートはトランザクション出力内にあり、最終的にロックできます。

Merkle ルート内のトランザクションのロックを解除するトランザクションを作成するには、スクリプト全体と対応するロック解除要件を新しいトランザクションに含める必要があります (ロックとキーに相当)。

しかし、重要なのは、トランザクションにすべての潜在的なスクリプトを含める必要はないということです。役に立つ部分だけ残しておきましょう。上記の例に戻ると、Xiaohong が最初にビットコインを使用したい場合は、彼女のトランザクションに Xiaoming または Xiaohua に必要なスクリプトを含める必要はありません。実際、Xiaohong は他の人のスクリプトをまったく知る必要がありません。

MAST を使用すると、ビットコイン ノードは Merkle ツリーを使用してスクリプトを検証できます。出力に含まれる Merkle ツリー ルートを使用して、特定のスクリプトが対応する Merkle ツリーに実際に存在するかどうかを確認できます。結果が肯定的であれば、取引は確定します。

利点

MAST は、スマート コントラクトの回復力、スケーラビリティ、プライバシーの向上という3 つの主な方法でビットコイン ネットワークを改善できます。

MAST が実現するスマート コントラクトの回復力は、まったく新しい概念ではありません。 P2SH ではすでにいくつかの「どちらか一方」の命令が利用可能です (たとえば、Xiaohong の署名Xiaoming と Xiaohua の署名が必要)。ただし、DoS 攻撃に対処する場合、P2SH 命令にはプロトコル レベルで制限があります。

MAST は、スマート コントラクトの回復力を向上させながら、この制限を取り除くことができます。 20 ビットコインまたは 1000 ビットコインを使うのに実行可能な方法は 2 つありますか?この問題はネットワークには影響しません。どのような場合でも、スクリプトは常に特定のトランザクション要件に対応します。これにより、1000 分の 1 のマルチ署名トランザクション (現在のシステムでは対応できない) や、異なる時間にビットコインを送信できるユーザー アドレスの長いリストなど、新しくより複雑な可能性も開かれます。

さらに、P2SH の「either/or」命令は、すべてのスクリプトが表示された後でのみ正常にロック解除できます。これにより、取引情報が多すぎる、手数料が高くなりすぎるなどの問題が簡単に発生する可能性があります。 MAST では、ユーザーは MAST に効果的なスクリプトを提供するだけで済み、スケーラビリティを向上させるという目的を達成できます。したがって、MAST はネットワーク全体のノードによって転送、確認、保存されるデータを削減できます。

MAST は、利用できないスクリプト (つまり、他の人のトランザクションに関係するスクリプト) を非表示にすることでプライバシーも向上します。たとえば、取引が有効になっていない場合、ユーザーは関連する情報を知ることができません。 MAST は、一度も使用されず古くなったセキュリティの改善を隠すこともできます。

著者注: MAST スキームはまだ開発中であり、その後の改善はこの記事の内容と異なる場合があります。
翻訳者注:翻訳者はプロの開発者ではないので、翻訳に誤解がある場合は、遠慮なく訂正してください。


<<:  ブロックチェーン株式市場のスタートアップFunderbeamが260万ドルを調達

>>:  中央銀行デジタル通貨の発行は商業銀行の運営の仕組みをどのように変えるのでしょうか?

推薦する

2016年にビットコインが直面する5つの大きな問題

著者: ジュネーブ年末が近づくにつれ、多くのコミュニティウェブサイトで2016年のビットコインの発展...

黒い邪悪な勢力が鉱業分野に参入、青海日経は一連の鉱業詐欺を慎重に明らかにする

(日景光電子は、聚英ネットワーク(中央)と火莊科(右)をシェルとして使い、鉱夫たちが抵抗できない罠...

PwC レポート: ブロックチェーンは卸売保険業界の発展に役立つ (レポート全文をダウンロード)

コンサルティング大手のPwCは、「連鎖Chain Reaction:How Blockchain :...

ASRockがグラフィックスカード市場への参入を発表、RX 500シリーズグラフィックスカードの最初のバッチが公開された

台湾のサプライチェーンは以前、マザーボードメーカーのASRockが今年グラフィックカード市場に参入し...

ビットコイン会社ビットペイがハッキングされ5,000BTCを盗まれ、保険会社が訴えられる

9月15日にアトランタの連邦裁判所に提出された訴訟によると、ビットコイン決済会社ビットペイがハッキン...

マスク氏、ドージコインがバイナンスから引き出せないと不満を漏らす!趙長鵬氏、テスラのソフトウェア問題に反応

Binanceの創設者である趙長鵬氏は最近、シンガポールのフォーラムでインタビューを受け、コンプライ...

ロシア唯一の中央証券保管機関がブロックチェーン投票システムをテスト

クレイジーレビュー:ロシア唯一の中央証券保管機関(CSD)と国家決済保管機関(NSD)は、ブロックチ...

ビットコインの計算能力を理解する方法を教えます

業界メディアの報道では、ビットコインの計算能力の変化に関する情報がよく見られます。たとえば、2017...

Ethereum EIP-1559は来月リリースされる予定です。それは私たちにどのような影響を与えるでしょうか?

Ethereum は大きな変化を迎えようとしており、Eth2.0、EIP-1559 が導入され、主...

イーサリアムの可能性はスポットETFの承認だけではない

イーサリアムスポットETFが承認された後、イーサリアムに対する全員一致の弱気感情は変化した。イーサリ...

反発しても不安定な下落は変わらない。ビットコイン恐喝事件が再び発生

FX168によると、ビットコインの価格は火曜日(2月16日)のアジアセッションで緩やかに反発したが、...

マイナーのビットコイン流出が5か月ぶりの高水準に達した後、ビットコイン価格は3%下落

9月13日日曜日、Coinbaseでのビットコイン(BTC)価格は10,580ドルから10,258ド...

規制当局:近い将来、すべてのビットコイン取引プラットフォームが閉鎖され、市場から撤退するだろう

9月14日、中国ビジネスニュースの記者は、地元のインターネット金融規制事務所に近い規制当局から独占的...

Bloqはギャビン・アンダーソンをチームアドバイザーに迎え、初の製品となるBloqEnterpriseブロックチェーンOSをリリース

Bloq は最近、最初の製品である多面的なブロックチェーン ソフトウェア ソリューションをリリースし...

日本のピーチ・アビエーションがビットコイン決済を導入、ビットコインでアジア22都市へ移動

今年4月に政府がデジタル通貨を合法的な決済手段として正式に定義して以来、ビットコインは日本国内で人気...