Purchased this article vmh8kseed
(;;)
No posts yet
Bitcoinに任意データを書き込むOrdinals
Bitcoin上に任意データを書き込む方法にはOP_RETURNを使う方法がありますが、これは80バイトの制限があります。この制限を突破しブロックサイズまでデータを書き込む方法が提案されました。 その方法は、インプットであるWitness領域を使います。Taprootが導入される前もこのWitnessを使うことで任意のデータを埋め込むことはできましたが、10,000バイトの制限がありました。しかし、Taprootの導入でこの制限が適用されないことになり、実質ブロックサイズの4MBまで任意データを書き込むことが可能になりました。 Ordinalsの場合、以下のルールに沿ってデータを書き込み、読み取ることになります。 Bitcoinのブロックチェーン上に任意データが書き込まれ

Utreexoは中央集権的にならないか?
ビットコインの分散性を維持するためには、取引データを最小限に維持することが重要です。現在ビットコインの取引データは400GBを越え、UTXOだけでも4GBあります。 ビットコインにはフルノードとSPVと呼ばれる軽量クライアントがあります。フルノードは、さらにPrunedモードと呼ばれるUTXOだけを保持する運用も可能です。また軽量クライアントでは、フルノードと違い、全データを検証せずにブロックヘッダーのみをダウンロードし、自身に必要な取引データだけを検証することでストレージ容量を節約しています。 これまで軽量クライアントはBIP37で定義されているBloom Filterを使って各ウォレットを実装してきましたが、プライバシーが損なわれることからBitcoin Core v0.19.0以降ではBloom Filterはデフォルトでは無効となっています。Bloom Filterのデメリットは、クライアントごとにフィルターが異なるので検閲が可能となる点です。これを解決するために登場したのがBIP157,BIP158のCompact Block Filterで、これはBloom Filterとは異なり、フィルターがブロックごとに作成されるためビットコイン・ネットワークで全て同じものとなります。ただし、どちらにしても軽量クライアントはあくまでブロックヘッダーのみを保持し自身に必要な取引データのみを検証するので、全データを検証するフルノード/Prunedノードほどトラストレスではありません。 さて、ビットコインのフルノードは全データを保持するフルノードと検証したデータは捨てUTXOのみを保持するPrunedノードの2種類がありますが、これとは別なアプローチをするフルノードの提案としてUtreexoがあります。技術的な説明は割愛しますが、UtreexoはUTXOの管理・保持をマークル木ハッシュを使ったアキュムレーターで行います。これにより保持するデータ容量の大幅な削減だけでなくいくつかのメリットが生まれます。 メリット Utreexoノードは数キロバイトのデータ保持のみでよい IBDの並列処理が可能 コンセンサスアルゴリズムをデーターベースから独立できる ソフトフォークなしで実現できる デメリット IBDではネットワーク帯域が20%増加 Utreexoアーカイブノードは通常のフルノード以上のストレージが必要 ※IBDとはInitial Block Downloadの略で、最初の同期処理で行うブロックデータのダウンロードのこと Utreexoはソフトフォークなしで実現可能ですが、そのトリックはブリッジノードとよばれるノードの存在です。このブリッジノード(上記デメリットのUtreexo

Purchased this article 6jphw1e6d
Purchased this article xe7dyonex
Purchased this article b0k6jzppa
Purchased this article 9hbcxftqd
Purchased this article 7fxyt008x
Purchased this article cky6zbybk
Purchased this article xd0qfn50e
Purchased this article wu62wkgyt
mogwai tipped you
Purchased this article ygifz6wpb
mogwai tipped you
Purchased this article 9ls5blrux
Purchased this article djd5oyl2d