読者です 読者をやめる 読者になる 読者になる

fedoraxのブログ

人工知能(AI)、ブロックチェーン、プログラミングネタ、ITニュースネタなどについて書いています。

Blockchainの技術要素

Blockchain の技術要素

Blockchainは大きく4つの技術要素の分類できます。

分散台帳

前回の記事でもご紹介しました、Blockchainといえば分散台帳が一番の技術要素になります。 Blockchainネットワーク上の取引結果はブロックとして分散され、各端末の台帳に記録されます。

暗号化技術

Blockchainのブロックは暗号化されて台帳に記録されています。
これは、Blockchainネットワークには認証局が存在し、公開鍵と秘密鍵を発行します。 証明書の発行は、ユーザの証明書だけでなく取引が行われるたびにもトランザクション証明書が発行されています。 さらにトランザクション結果のブロックには、前のトランザクションハッシュ値が記録されておりブロックが数珠繋ぎになっています。

コンセンサス(合意形成)

トランザクションの結果は、コンセンサスが取れた結果のみ分散台帳に記録されます。 コンセンサスの取り方は、Blockchainのプラットフォームによって異なります。

長いものを正とする

Bitcoinや、Ethereumなどの誰でも参加可能な(オープン型)Blockchainはこちらを採用している場合が多いです。 具体的には、別々のサーバ上で同時にブロックができた場合、次のブロックが先にできたほうを正とします。 そのため、Bitcoinは10分以内にマイニングした最初の人がBitcoinを得られる仕組みになっています。

すべての端末で合意された場合に正とする

Blockchainネットワークに参加されるすべての端末で同じ結果が得られた場合に分散台帳に記録します。 この場合は、はじめから限られた端末のみ(コンソーシアム型・プライベート型)Blockchainネットワークへの接続を許可することで、端末台数を減らし合意形成が得られる時間を短縮しています。 そのため、Bitcoinに比べて取引に掛かる時間を短縮することが可能です。

スマートコントラクト

契約条件・ビジネスルールなど組み込む仕組みです。 このルールを元に、トランザクションの結果が正か否かを判別します。