ホームページ >よくある問題 >ブロックチェーンの原理と特徴は何ですか

ブロックチェーンの原理と特徴は何ですか

angryTom
angryTomオリジナル
2019-07-22 16:27:3320432ブラウズ

ブロックチェーンの原理と特徴は何ですか

推奨チュートリアル: Python チュートリアル

ブロックチェーンの概念

ブロックチェーンは、既存の成熟した一連のテクノロジーを有機的に組み合わせたもので、分散台帳を効果的に記録し、さまざまなビジネス ロジックをサポートする完全なスクリプトを提供します。一般的なブロックチェーンシステムでは、データはブロック単位で生成・保存され、時系列にチェーンデータ構造に接続されます。すべてのノードはブロックチェーン システムのデータ検証、保存、保守に共同して参加します。新しいブロックの作成は通常、ネットワーク全体の過半数のノードによって確認される必要があり (その数はさまざまなコンセンサスメカニズムによって異なります)、ネットワーク全体の同期を達成するために各ノードにブロードキャストされ、後で変更または削除することはできません。 。

外部から見ると、ブロックチェーン システムは次の特性を持つ必要があります:

● マルチパーティの書き込み、共同メンテナンス

ここでのマルチパーティとは、簿記参加者のみを指し、ブロックチェーンを使用するクライアントは含まれません。ブロックチェーンの会計参加者は、利害が完全に一致していない複数のエンティティで構成される必要があり、異なる会計サイクルでは、異なる参加者が会計の開始を主導し(ローテーション方法は異なるコンセンサスメカニズムに依存します)、他の参加者は共同で検証します主導者によって開始された会計情報。

# 公開台帳

# ブロックチェーン システムによって記録される台帳は、すべての参加者がアクセスできる状態でなければなりません。記録された情報の有効性を確保するには、会計参加者が情報の内容と台帳の履歴にアクセスできる必要があります。しかし、公開台帳はアクセシビリティの公開を指すものであり、情報そのものの公開を意味するものではないため、業界ではゼロ知識証明、準同型暗号、閾値暗号化などの多くのプライバシー保護技術を台帳に適用することが期待されています。 blockchain.フィールドは、暗号文の操作を通じて情報の有効性を検証するという問題を解決します。

##● 分散化

ブロックチェーンは単一のトラストセンターに依存しないシステムである必要があり、処理には内部の閉じたシステムのみが関与します。チェーン データに関しては、ブロックチェーン自体が参加者間に信頼を生み出すことができます。ただし、ID 管理やその他のシナリオなど、場合によっては外部データが必然的に導入され、これらのデータには信頼できる第三者による信頼の承認が必要になります。このとき、データの種類に応じて、信頼は異なる信頼できる機関から得られる必要があります。単一のトラストセンターに依存するのではなく、第三者、第三者を利用します。この場合、ブロックチェーン自体は信頼を生み出すのではなく、信頼の手段として機能します。

# 非改ざん性 # ブロックチェーンの最も重要な機能として、非改ざん性はブロックチェーン システムの必要条件ではなく、ブロックチェーン システムにとって必要な条件です。十分な条件があれば、データを 1 回書き込んで複数回読み取ることができ、改ざんできないハードウェア ベースのテクノロジが数多くあります (代表的な例は CD-R (Compact Disk-on-Record) です)。ブロックチェーンの非改ざん性は、暗号ハッシュアルゴリズムと複数者による共同保守の特性に基づいていますが、この特性により、厳密にはブロックチェーンの非改ざん性と呼ぶのが適切です。改ざんが難しい。

ブロックチェーンの中核技術

1. 分散台帳 分散台帳テクノロジー DLT (分散台帳テクノロジー) は、本質的には、複数のネットワーク ノード、複数の物理アドレス、または複数の組織で構成されるネットワーク内でデータを共有、同期、複製できる分散型データ ストレージ テクノロジーです。従来の分散ストレージ システムと比較すると、分散台帳テクノロジには主に 2 つの異なる特徴があります:

従来の分散ストレージ システムは、中央ノードまたは権限のある組織によって制御されるデータ管理メカニズムを実装します。データ ストレージ、レプリケーション、その他の操作については、複数の関係者による意思決定と共同メンテナンスを使用します。インターネット データの爆発的な増加に直面して、単一の中央組織によるデータ管理システムの構築という現在の方法は、さらなる課題に直面しており、サービス プロバイダーは、さまざまなコンピューティングをもたらすだけでなく、大規模なデータ センターの構築への投資を継続する必要があります。巨大なリソースプールの効率の問題、そしてますます増大するシステムの規模と複雑さは、ますます深刻な信頼性の問題も引き起こしています。ただし、分散型台帳テクノロジーの分散型データ保守戦略により、肥大化したシステムの負担を効果的に軽減できます。一部のアプリケーション シナリオでは、インターネット内に散在する多数のノードによって蓄積された巨大なリソース プールを効果的に利用することもできます。

従来の分散ストレージ システムは、システム内のデータをいくつかのフラグメントに分解してから、分散システムに保存します。ただし、分散台帳の各ノードには、データ ストレージの独立した完全なコピーがあります。ノードはそれぞれに干渉しません。データ ストレージの最終的な一貫性は、相互間の定期的またはイベント駆動型の合意を通じて達成されます。数十年の開発を経て、データの信頼性とネットワーク セキュリティの点で、従来のビジネス システムにおける高度に集中化されたデータ管理システムの欠点がますます注目を集めるようになりました。一般のユーザーは、自分のデータがサービスプロバイダーによって盗まれたり改ざんされたりしたかどうかを判断することができず、ハッカーによる攻撃やセキュリティ侵害が発生した場合にはさらに無力になり、これらの問題に対処するために、人々は追加の管理メカニズムやテクノロジーを追加し続けています。従来の業務システムの保守コストは、企業活動の運用効率を低下させます。分散台帳テクノロジーは、この現象を根本的に改善することができ、各ノードはデータ コピーの完全なセットを維持するため、単一ノードまたは少数のクラスターによるデータの変更は、グローバル コピーの大部分に影響を与えません。言い換えれば、サービスプロバイダーによる許可のない意図的な変更であれ、ネットワークハッカーによる悪意のある攻撃であれ、既存のデータを改ざんするには、分散台帳クラスター内のほとんどのノードが同時に影響を受ける必要があります。 , システム内の残りのノードは、システム内の悪意のある動作を迅速に発見して追跡するため、ビジネス システム内のデータの信頼性とセキュリティ保証が大幅に向上することは明らかです。

これら 2 つの独自のシステム特性により、分散台帳テクノロジーは、既存のビジネス システムを強力に破壊する非常に低レベルの革新的なイノベーションとなります。

2. コンセンサスメカニズム

ブロックチェーンは、履歴が追跡可能で改ざんされず、問題を解決する分散型 (分散型) システムです。多者相互信頼化)システム。分散システムは必ず一貫性の問題に直面することになります。一貫性の問題を解決するプロセスはコンセンサスと呼ばれます。

分散システムでコンセンサスに達するには、信頼性の高いコンセンサス アルゴリズムが必要です。コンセンサス アルゴリズムは、通常、分散システム内のどのノードが提案を開始するか、および他のノードがどのように提案について合意に達するかという問題を解決します。従来の分散システムとブロックチェーン システムの違いに基づいて、コンセンサス アルゴリズムを信頼できるノード間のコンセンサス アルゴリズムと信頼できないノード間のコンセンサス アルゴリズムに分類します。前者は詳細に研究されており、一般的な分散システムで広く使用されており、その中でも Paxos と Raft およびそれらに対応するバリアント アルゴリズムが最も有名です。後者は長い間研究されてきましたが、関連するコンセンサスアルゴリズムが広く使用されるようになったのは、近年ブロックチェーン技術の開発が本格化してからです。後者は、さまざまなアプリケーションシナリオに応じて、PoW (Proof of Work) や PoS (Proof of Stake) などのアルゴリズムに代表されるパブリックチェーンに適したコンセンサスアルゴリズムと、PBFT (Practical ByzanTine Fault Tolerance) およびそのバリアントアルゴリズムに分けられます。コンソーシアム チェーンまたはプライベート チェーンに適したコンセンサス アルゴリズム。

Proof of Work POW アルゴリズムは、ビットコイン システムで採用されているアルゴリズムで、1998 年に B-money の設計において W. Dai によって提案されました。現在、イーサリアムシステムもコンセンサスにPoWアルゴリズムを使用していますが、イーサリアムシステムの方がブロックの生成が速く(約15秒)、ブロックの生成が容易であるため、多数のノードが無駄に実行されることを避けるために、イーサリアムはアンクルブロックを提案しました。報酬の仕組み。 PoS (Proof of Stake) アルゴリズムは、2012 年 8 月にリリースされた PPC (PeerToPeerCoin) システムに Sunny King によって初めて実装されました。イーサリアム システムは常に PoS に対して良い印象を持っており、将来的にはコンセンサスとして PoW を PoS に置き換えることを計画しています。 . 仕組み。 PoS とその変形アルゴリズムは、PoW アルゴリズムが批判されている計算能力の浪費の問題を解決できますが、それ自体は十分に検証されていません。 PBFT アルゴリズムは、1999 年の OSDI99 カンファレンスで Miguel Castro (Castro) と Barbara Liskov (Liskov) によって初めて提案されました。このアルゴリズムは、元の Byzantine フォールト トレラント アルゴリズムよりも高い動作効率を持っています。システム内に N 個のノードがあると仮定すると、PBFT アルゴリズムはシステム内に F 個の悪意のあるノードの存在を許容でき、3F 1 は N を超えません。 PBFT コンセンサス アルゴリズムは、システム内のノード数が増加するにつれてより多くのビザンチン ノードを許容できますが、そのコンセンサス効率は非常に速い速度で低下するため、コンセンサス アルゴリズムとして PBFT を適用するシステムが非常に少ないことがわかります。 100 を超えるノードがあるのには理由があります。

PoWアルゴリズムであろうとPoSアルゴリズムであろうと、中心となるアイデアは、経済的インセンティブを通じてノードがシステムに貢献し、貢献することを奨励し、経済的ペナルティを通じてノードの悪行を防止することです。より多くのノードがコンセンサスに参加することを促すために、パブリック チェーン システムは通常、システムの運用に貢献するノードにトークンを発行します。コンソーシアム チェーンまたはプライベート チェーンとパブリック チェーンの違いは、コンソーシアム チェーンまたはプライベート チェーンの参加ノードは通常、チェーンから信頼できるデータを取得することを望んでおり、これは会計を通じてインセンティブを取得するよりもはるかに有意義であるため、より多くの義務を負っていることです。システムの安定した動作を維持する責任があり、通常は参加ノードの数が少ないため、PBFT とそのバリアント アルゴリズムは、アライアンス チェーンまたはプライベート チェーンのアプリケーション シナリオに最適です。

3. スマート コントラクト

# スマートコントラクトとは何ですか?

スマート コントラクトは、情報ベースの方法で契約を普及、検証、または実行するように設計されたコンピューター プロトコルです。スマート コントラクトにより、第三者を介さずに信頼できるトランザクションが可能になります。これらのトランザクションは追跡可能であり、元に戻すことはできません。その目的は、従来の契約方法よりも優れたセキュリティを提供し、契約に関連するその他の取引コストを削減することです。

スマート コントラクトの概念は 1990 年代に遡り、コンピューター科学者、法学者、暗号学者の Nick Szabo によって最初に提案されました。同氏のスマート コントラクトの定義は次のとおりです:「スマート コントラクトとは、デジタル形式で定義された一連のコミットメントであり、契約参加者がこれらのコミットメントを実行できるという合意も含まれます。」ニック・サボなどの研究者は、暗号化などのデジタル技術の使用を望んでいます。セキュリティ メカニズムにより、従来の契約条件の策定と履行がコンピュータ テクノロジの下で行われ、関連コストが削減されます。しかし、当時は多くのテクノロジーが未熟で、プログラム可能なコントラクトをサポートできるデジタル システムやテクノロジーが不足していたため、スマート コントラクトに関する Nick Szabo の実用理論は実現されていませんでした。

ブロックチェーン技術の出現と成熟に伴い、スマートコントラクトは、ブロックチェーンと将来のインターネット契約の重要な研究方向として急速に発展しました。ブロックチェーンに基づくスマート コントラクトには、イベント処理およびストレージ メカニズムに加えて、さまざまなスマート コントラクトを受け入れて処理するための完全なステート マシンが含まれており、データのステータス処理はコントラクト内で完了します。イベント情報がスマート コントラクトに渡されると、スマート コントラクトがトリガーされてステート マシンの判定が実行されます。自動ステート マシン内の 1 つまたは複数のアクションのトリガー条件が満たされると、ステート マシンは事前設定された情報に基づいてコントラクト アクションの自動実行を選択します。したがって、コンピュータ技術としてのスマートコントラクトは、情報を効率的に処理できるだけでなく、契約の両当事者が第三者機関を介さずに契約を執行できることを保証し、契約違反の発生を回避します。

##● スマート コントラクトの利点とリスク

# ブロックチェーン技術におけるスマート コントラクトの広範な適用により、その利点はますます多くの研究者によって認識されています 技術スタッフによる承認。一般に、スマート コントラクトには次の利点があります:

a. 契約策定の適時性の高さ: スマート コントラクトの策定では、第三者機関や中央機関の参加に依存する必要はありません。コンピュータ技術を通じて、共同で合意した条項は自動化されたデジタル契約に変換され、契約作成における中間リンクが大幅に削減され、契約作成の対応効率が向上します。

b. 低契約維持コスト: スマート コントラクトは、実装プロセス中にコンピュータ プログラムをキャリアとして使用します。導入が成功すると、コンピュータ システムが契約の規定に従ってそれらを監視し、実行します。違反した場合、以前の契約に従ってスマートコントラクトを実装できます。 契約は手順によって強制されます。したがって、人間による監視と実行のコストが大幅に削減されます。

c. 契約の実行の高精度: スマート コントラクトの実行中、人間の参加が減少しているため、すべての利害関係者が契約の特定の実行に干渉することができず、コンピューター システムにより正確な実行が保証されます。契約の履行の精度を効果的に向上させます。

スマート コントラクトには従来のコントラクトに比べて明らかな利点がありますが、スマート コントラクトの詳細な研究と応用はまだ模索中であり、この新興テクノロジーの潜在的なリスクを無視することはできません。

2017 年、マルチシグネチャ イーサリアム ウォレット Parity は、マルチシグネチャ スマート コントラクトを使用できなくする重大な脆弱性を発表し、この脆弱性により 1 億 5,000 万ドル以上相当のイーサリアム ファンドが凍結されました。偶然にも、2018年2月、シンガポール国立大学、シンガポールのエール大学カレッジ、およびロンドンのユニバーシティ・カレッジの研究者グループが、分析ツールMaianを使用してイーサリアムに基づく100万近くのスマートコントラクトを分析し、次のことを発見したと主張する報告書を発表しました。セキュリティ上の脆弱性を含む契約が 34,200 件あり、ハッカーが悪用してイーサ コインを盗んだり、資産を凍結したり、契約を削除したりする可能性があります。

セキュリティリスク事象の発生は反省に値しますが、いずれにせよ、業界関係者は一般にブロックチェーン技術とスマートコントラクトが今後のIT技術発展の重要な方向性になると考えています。新しいテクノロジーの成熟によって引き起こされる、避けられないプロセスです。

##● スマートコントラクトの応用

現在、スマートコントラクトはブロックチェーンの中核技術として、イーサリアムやハイパーレジャーファブリックなどの有力なプラットフォームで広く使われています。ブロックチェーンプロジェクトで広く使用されています。

a. イーサリアムのスマート コントラクト アプリケーション: イーサリアムのスマート コントラクトは、イーサリアム仮想マシンによって実行できるコードの一部です。イーサリアムは強力なチューリング完全スクリプト言語をサポートしており、開発者はその上で任意のアプリケーションを開発できます。これらのコントラクトは通常、高級言語 (Solidity、Serpent、LLL など) で記述され、コンパイラ(バイトコード)はブロックチェーン上に保存されます。スマート コントラクトは、展開後に変更することはできません。ユーザーは契約を通じて口座取引を完了し、口座の通貨とステータスを管理および操作します。

b. Hyperledger Fabric のスマート コントラクト アプリケーション: Hyperledger Fabric プロジェクトでは、スマート コントラクトの概念とアプリケーションがより広範囲に拡張されます。チューリング完全性をサポートするステートレスでイベント駆動型の自己実行コードとして、スマート コントラクトはファブリックのブロックチェーン ネットワークに展開され、台帳と直接対話し、非常に中心的な役割を果たします。イーサリアムと比較して、ファブリックのスマートコントラクトと基盤となる台帳が分離されており、スマートコントラクトをアップグレードする際に台帳データを新しいスマートコントラクトに移行する必要がなく、ロジックとデータの完全な分離を実現します。 Fabric のスマート コントラクトはチェーンコードと呼ばれ、システム チェーンコードとユーザー チェーンコードに分けられます。システム チェーン コードは、システム レベルの機能を実装するために使用され、システム構成、承認、検証などを含むファブリック ノード自体の処理ロジックを担当します。ユーザーチェーンコードは、ユーザーのアプリケーション機能を実現し、ブロックチェーン分散台帳に基づいた状態処理ロジックを提供し、アプリケーション開発者によって記述され、上位層のビジネスをサポートします。ユーザー チェーンコードは、分離されたチェーンコード コンテナーで実行されます。

4. 暗号化

情報セキュリティと暗号化テクノロジは、情報テクノロジ全体の基礎です。ブロックチェーンでは、主にハッシュ アルゴリズム、対称暗号化、非対称暗号化、デジタル署名、デジタル証明書、準同型暗号化、ゼロ知識証明などを含む、多数の最新の情報セキュリティと暗号技術の成果も使用されています。この章では、セキュリティの完全性、機密性、ID 認証などの側面から、ブロックチェーンにおけるセキュリティと暗号化技術の適用について簡単に紹介します。

● 整合性 (改ざん防止)

ブロックチェーンは、暗号化ハッシュ アルゴリズム テクノロジーを使用して、ブロックチェーン台帳の整合性が破壊されないようにします。ハッシュ(ハッシュ)アルゴリズムは、バイナリデータをより短い文字列にマッピングすることができ、入力に敏感な特性を持っており、入力されたバイナリデータが少し改ざんされると、ハッシュ演算によって得られる文字列が異常になるという大きな変化があります。また、優れたハッシュアルゴリズムには競合回避特性もあり、異なるバイナリデータを入力すると、得られるハッシュ結果の文字列も異なります。

ブロックチェーンは、ハッシュ アルゴリズムの入力感度と競合回避特性を利用しており、各ブロックで、前のブロックを含むハッシュ値を生成し、ブロック内で検証済みのトランザクション値を生成します。マークル ルート ハッシュ。ブロックチェーン全体の一部のブロックが改ざんされると、改ざん前と同じハッシュ値が得られなくなるため、改ざん時にブロックチェーンを迅速に特定でき、最終的にブロックチェーンの完全性が確保されます(改ざん防止)。 。

#● 機密性について

# 暗号化および復号化技術は、技術構成上、対称暗号化と非対称暗号化の 2 つに分類されます。対称暗号化の暗号化キーと復号化キーは同じですが、非対称暗号化の暗号化キーと復号化キーは異なり、一方を公開キー、もう一方を秘密キーと呼びます。公開キーで暗号化されたデータは、対応する秘密キーでのみ復号化でき、その逆も同様です。

ブロックチェーン、特にアライアンス チェーンでは、送信データのセキュリティを確保するために、ネットワーク送信プロセス全体で TLS (Transport Layer Security) 暗号化通信技術が必要です。 TLS 暗号化通信は、非対称暗号化テクノロジーと対称暗号化テクノロジーの完璧な組み合わせです。通信当事者は、非対称暗号化テクノロジーを使用して対称キーを生成するためにネゴシエートし、生​​成された対称キーを作業キーとして使用してデータの暗号化と復号化を完了します。これにより、双方間でキーを共有する必要がない非対称暗号化の利点と、対称暗号化操作の速度が同時に利用されます。

#●● ID 認証

純粋な TLS 暗号化通信は、データ送信プロセスの機密性と完全性を保証することしかできませんが、通信ピア (仲介者) の信頼性を保証することはできません。攻撃)。したがって、通信ピアの身元を検証するデジタル証明書メカニズムを導入し、それによってピアの公開鍵の正確性を保証する必要があります。デジタル証明書は通常、権威ある組織によって発行されます。通信の一方の側は、通信相手の証明書がそれ自身によって信頼されているかどうか (つまり、証明書が自分自身で発行されたものであるかどうか) を検証し、それに基づいて相手の ID を確認するために、権威のあるルート CA (認証局) の公開鍵を保持します。証明書の内容。ピアの身元を確認した後、ピアの証明書内の公開キーを取り出し、非対称暗号化プロセスを完了します。

さらに、準同型暗号化、ゼロ知識証明など、最新の暗号化の最新の研究結果もブロックチェーンに適用され、ブロックチェーン分散台帳が公開されている場合のプライバシーを最大限に保護します。この分野の技術はまだ開発され、改良されています。

ブロックチェーン セキュリティはシステム プロジェクトです。システム構成とユーザー権限、コンポーネントのセキュリティ、ユーザー インターフェイス、ネットワーク侵入検出と攻撃防御機能などはすべて、最終的なブロックチェーン システムのセキュリティと信頼性に影響します。実際のブロックチェーンシステムの構築プロセスでは、ユーザーの要件を満たすことを前提に、セキュリティ、システム構築コスト、使いやすさのバランスを図る必要があります。

以上がブロックチェーンの原理と特徴は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。