Javaパースペクティブブロックチェーンの練習から、シリーズ4:「チェーン」マークル木構造だけでなく、ブロック構造から、ソフトとハードのフォークは何ですか?

私たちは、P2Pネットワークアーキテクチャを導入する前に、ネットワークは、このセクションの間の通信をブロックし、その後、ブロック一つ一つから「ブロック鎖」を形成するためにどのように「チェーン」の概念を探すためにどのように接続ノードを確立する方法を学びます。

ブロック構造

書籍(ブロック鎖)に開示された取引情報コンテナのデータ構造を含むポリマーブロックです。最初に、「分離証人」、また、拡張ブロックサイズの導入に続いて単一ブロックサイズ1M、これらに限定されクレジット発生ビットつのブロック毎に10分、。

いくつかの部分からなるブロック構造につ​​いてがあります。

フィールド 大小(bytes) 説明
ブロックサイズ 4 ブロックサイズ
ブロックヘッダー 80 ヘッダエリア
トランザクションカウンタ 1-9 トランザクションカウンター
取引 不確実 ネイティブ形式を使用して、取引情報、取引情報ブロックに記録

ヘッダエリア

フィールド 大小(bytes) 説明
バージョン 4 版数
前のブロックハッシュ 32 ハッシュリファレンスの前(親)ブロック
マークルルート 32 ルートブロックのマークルハッシュ
タイムスタンプ 4 タイムスタンプ
難易度のターゲット 4 マイニングの目標の難易度
ノンス 4 ランダムな値の目標を達成することは困難

加えて、一意のブロックとブロックを識別するハッシュが高いブロックです。当社は、2009年に作成された最初のブロックにおける「創造・ブロック」ブロック鎖と呼ばれるブロックのうち、最初のブロックのチェーンを作成します。

ブロックハッシュは、領域によってSHA256ハッシュヘッダの結果です。

ブロックは「チェーン」に接続されています

ブロック我々は鎖「ブロック鎖」と呼ばれるように、「鎖」を形成する、前のブロックに遠く、各ブロックは、ポイントによって互いに接続さ整然とした周辺ブロック鎖幾分同様の「積層」構造、スタックの底部の第一のブロックは、各追加のブロックが前のブロックの上に配置されています。各ブロックは一つの親ブロックを有することができるが、複数のサブブロックを有することができ、「として知られる現象の複数のサブブロックを有するブロックブロック鎖分岐状態のわずか」ブロック鎖フォーク。最長チェーンクレジット原理以下のビットが最後のブロックは、他のチェーンは、最終的には廃棄され、最大のチェーンの将来の世代がバックボーンとなっ勝利有している場合には、意味の分岐が発生します。

GoogleのクレジットLevelDBビット・データ・ストレージ・ブロック。

ブロックSHA256ハッシュ操作は、ヘッダ領域によって行われるので、ヘッダ領域は、親ブロックのハッシュへの参照が含まれ、この「カスケード効果は」後続のすべてのブロックを変更することを強制しない限り、ブロックが変更されないことを保証します。

上記基準ハッシュヘッダ領域によって接続されたブロック鎖
上記基準ハッシュヘッダ領域によって接続されたブロック鎖

マークル木

ブロックチェーン内の各ブロックは、ブロック内で生成されたトランザクションのすべてを含み、マークル木で表されます。マークルハッシュは、大規模データの整合性チェックとデータ構造の迅速な誘導として使用されているバイナリツリー、です。

ツリーメルクでの計算ノード
ツリーメルクでの計算ノード

 

マークル木は、下から上に構築されます。SHA256ブロックは、第1のハッシュブロックを得るために計算され、親ノードに、およびそう最後の世代までに直列に接続され、ハッシュ値の隣接する二つのブロック、ダブルハッシュ(ダブルSHA256)ハッシュ唯一のルートノード、ノードは「マークルルート」と呼ばれています。

例えば:HAはハッシュSHA256(SHA256(トランザクションA))の結果であり、HABはSHA256(SHA256(HA + HB))であり、したがってマークルルートを与えます。

一方、マークルは、バイナリツリーで、ノードは、偶数でなければなりません、それが奇数の場合、最後の葉ノードがコピーされます、ハッシュ化されました。

マークル木は、同じ時間複雑性二分木である O(Nログ)  N = 2 ^ kは、全てのブロックの数であり、kが最も必要ハッシュの数です。

SPVとマークル木

今、私たちは、貿易の問題について検証ノードSPV光を言っどのようにレッスンに戻ることができます。

ブルームフィルタSPVノードとピア・ノードを確立した後、ピア・ノードがメッセージMerkleBlock SPVノードに応答してトランザクションの形でブルームフィルタを満たす、マークルMerkleBlockパスメッセージは、ターゲット領域とヘッダとトランザクションマークル根を含んでいます。

その後、SPVのノードはすぐにトランザクションブロックに関連付けられ、その後、トランザクションに対応するゾーンの存在を確認見つけるために、このパスを使用することができます。SPVは、データの完全なブロックに比べて数千倍低いだけパスマークルを受信します。

 

科学リテラシー - ハード、ソフトブロック鎖分岐、分岐は何ですか?

ブロック鎖のアップグレードは、前方互換性がない場合(後方互換性のみ)であるハード分岐が、それは新しいブランチ通貨が生成されます、その後の契約の見直しセクションで詳細に攻撃を含む有名なイベントイーサネットスクエアザ・DAO(DAO契約説明)エーテルスクエア二本鎖、オリジナルETC、追加ETHの一方の鎖に分岐しました。ソフト分岐部は、前方互換性があります。この時間を投票することに合意したブロックのすべてをアップグレードする必要性を意味し、また、下位互換性を、一般的なパフォーマンスのアップグレードとして、ソフトフォークになります。

ソフト分岐部は、アップグレード後の前方互換性をブロックチェーンネットワークシステムのアップグレードまたはアップグレードする契約を意味し、古いものと新しいノードはまだ同じチェーンに取り組んでいます。

ハード分岐イベントビットコイン:

北京は午後12時40分に2018年11月16日に、BCHは、知名度の高いハード分岐を行い、デジタル通貨の歴史の中で初めて開始した戦いを数えます。双方は決闘この演算子力、1は「聡」ギャンブル王クレイグ・ライトとカルヴィン・エアーのnChain開発チーム、他のチームがビットコインABCであるだけでなく、ビットの後ろのサポーターの後ろに彼のサポートであることを主張していますコンチネンタル創設者呉漢と回避「ビットコインイエス」ロジャー・バー。双方はリーチ契約に更新コードを開発し、展開する最善の方法BCHに失敗したとして、最終的にハード2つの陣営に分岐、BCH BCH ABC分割及びBCH SVに、考慮し、生と死の戦いに同意しました。BCHは、ビットハードカレンシーの分岐によって2017年8月にあった数値力の競争が互いに戦う、無リプレイ保護の前提の下で年後に再び分裂を迎え、来る、そして今回。デジタル通貨の第4位の市場価値として、BCHは戦いを数え、業界で広範な懸念を引き起こし、そしてデジタル通貨市場ビットコイン全体への普及と地域社会のガバナンスモデルの未来は遠大な影響をもたらしています。

戦いからBCH数は11月23日にSVの当事者が週間以上、タイトルのための戦いを放棄する権利を認め、16日に始まりました。それ以来、戦いの公式の終わりと考え、オリジナルのチェーンとチェーンBSV、BSVにBCH BCHの分岐するが生まれます。

概要

これまでのところから近い形にブロックのスタックの形で「ブロック鎖」構造は、いわゆるビット上のあなたのための1つ、「連鎖」して、Merkle木構造を説明し、主に戦闘のために、次のマークル木の概念を築きます基礎は、それは私の次の本当のJava実装Merkle木になります。

仕事のために、記事は随時更新されます、ご容赦ください!同時に、記事は欠点、歓迎アドバイスを持っている - に感謝します!

参考文献:

「マスタリングビットコインSecond Editionの」

BSVの誕生のハード分岐

 

 

 

 

公開された21元の記事 ウォン称賛11 ビュー20000 +

おすすめ

転載: blog.csdn.net/weixin_38652136/article/details/105199926