セキュリティ入門Web講座

ブロックチェーンとは ~ 分散型台帳技術に使われるタイムスタンプ技術 ~

4回に分けて、仮想通貨で使われている技術として有名なブロックチェーンのお話をしています。
このところ、電子契約のお話をしていますので、ブロックチェーンではどう実現されるのか?という視点でお話をします。
前回は電子契約に関係する技術として、PKIの事をお話しましたので、今回は、もう一つの技術であるタイムスタンプのお話をします。
前回もお話しましたとおり、電子契約に用いるために必要な最低限の技術に限定したお話ですので、仮想通貨で出てくるお話と異なる解釈ができる部分がります。
また、データ量(セグウィット)問題やマイニング時間などといった仮想通貨特有の技術についてはお話していませんので、ご注意ください。

ブロックチェーンと電子契約に必要な技術の関係

電子契約には、PKIタイムスタンプが必要とお話をしました。

それに対して、ブロックチェーンは、分散技術と台帳技術が必要です。
前回は、PKIの部分のお話をし、今回、タイムスタンプのお話をします。

タイムスタンプとの関係

台帳システムの流れ

  1. 取引内容などを記載した一枚の紙(取引データ=トランザクション)を作る
  2. その紙をまとめて、台帳(ブロック)を作る
  3. 作った台帳(ブロック)は、紐でくくる(チェーンを作る)
  4. 一定の量(又は時間)にまとまった台帳(ブロック)は、ハッシュ値を追加して、既にある別の台帳に紐でくくる(チェーンを作る)

分散型システムの流れ

  1. 仮想通貨の取引情報は、それぞれの端末(サーバやPCなど)と他の端末で保管されます
  2. 取引をするには、それぞれの端末が、取引情報を処理します
  3. 取引情報と処理結果は、他の端末に送ります
  4. 取引した端末は取引結果を保管します
  5. 取引情報を送られた他の端末は、取引情報を処理します
  6. 他の端末は、自分が保管している過去の取引結果と、今回の取引結果を比較します
  7. 比較結果が正しければ、他の端末が取引結果を保管します

関係性

分散型技術が電子署名に対応しているのであれば、台帳技術はタイムスタンプに対応しています。
しかし、電子署名と同じように処理を合わせると良いわけではありません。
タイムスタンプが解決することを別の方法で実現します。

タイムスタンプでお話をしたように、電子署名には、たとえPKIを使ったとしても、次の不足があります。

  1. 存在証明
  2. 完全性証明

存在証明

台帳(ブロック)は順番につながっていきます。
また、他の端末でも保管されています。
自分の端末に保管されている台帳(ブロック)は書き換えできますが、他の端末に保管されている台帳(ブロック)は書き換えできません。
もし、書き換えたトランザクションを送信したとしましょう。
そうすると、先ほど示した分散型システムの6番目の処理にある比較に失敗します。
過去の取引記録と合わなくなるためです。
その結果として、他の端末に保管されている台帳(ブロック)が書き換わりません。

これにより、PKIの弱点である自分では書き換えられるという弱点を克服しています。

また、複数の端末で保管していますから、通信時間や処理時間などの差で、多少のずれはあっても、その時間に存在していることは確認できます。

このようにして存在証明をしています。

完全性証明

これは、台帳システムの4番目の処理で実現しています。
台帳(ブロック)のハッシュ値を計算するので、台帳(ブロック)内のデータが変更されるとハッシュ値と合わなくなります。
これで完全性証明をしています。

逆に言うと、台帳システムの4番目の処理が終わる前は、完全性が保証されません。
改ざんしようとすると、分散型システムの4番目と6番目にある比較に失敗します。
このため、改ざんはできません。
しかし、完全性証明がされていないため、取引処理としては終了しないことになります。
これが、仮想通貨の処理時間がかかる遅延要因の一つです。

タグ:, , , , ,


参考記事(一部広告含む)


このページの記事についてちょっと質問!