ブロックチェーンのタイムスタンプってどんなもの?なぜ必要?ブロックチェーンのタイムスタンプってどんなもの?なぜ必要?2018.11.19コラムブロックチェーンのタイムスタンプってどんなもの?なぜ必要?ブロックチェーンを支えるさまざまな技術たち近年、ブロックチェーンへの関心が急速に高まっています。ビットコインをはじめとする暗号通貨(仮想通貨)の基盤技術として知名度を上げるものとなったため、ブロックチェーンといえば暗号通貨といったイメージをもたれている方も少なくありませんが、実際にはブロックチェーンが革命をもたらすと見込まれる分野はより幅広く、多岐にわたっています。ブロックチェーンの登場はインターネットの登場・普及にも匹敵する、大きな社会変化のポイントになるともいわれ、金融分野はもちろん、物流や公共インフラ、エネルギー、医療、情報メディアなどさまざまな分野での応用が期待されているのです。したブロックチェーンですが、その仕組みは、暗号技術や分散型システム、特殊なアルゴリズムなど多様な技術の組み合わせによって成り立っています。そのひとつに「タイムスタンプ」もあり、この技術はブロックチェーンを運用していく上で重要な役割を果たしています。そこで今回は、このタイムスタンプについて学んでいきましょう。タイムスタンプとは何か?タイムスタンプとは、暗号技術関連に分類されるもので、電子署名と関係し、対象となるデジタルデータが“ある時点で作成されたものである”という証明になるもの、コンピュータ上の時刻情報を記録して残すものです。データに埋め込むことで、作成・更新など操作を行った時間を示す証拠として機能するようになります。デジタルデータは、紙媒体などの重要資料に比べ、保存や作成・管理が容易である一方、内容や作成日時の改ざんも簡単にできてしまうことが課題としてあり、いつ作成されたか、改ざんがないかを証明することが難しいため、信用性が低いものになってしまいがちでした。タイムスタンプを埋め込めば、そのデータが表示されている時間に作成され存在していたことと、そこから改ざんがないことを示せるようになります。タイムスタンプ自体が簡単に操作可能で、過去や未来の時刻に設定できてしまうのでは意味がありませんから、信頼できる第三者機関によってタイムスタンプを押してもらうという発想が生まれました。ユーザーは、作成したデータファイルをハッシュ関数にかけてハッシュ値を得、信頼性の高い時刻認証局に依頼、タイムスタンプを発行してハッシュ値に付け、電子署名を行ってもらいます。これで時間が経過しても時刻情報付きのデータとしてハッシュ値による検証が可能となり、他の人々も信頼できるデータとして取り扱うことができるようになりました。ちなみに時刻認証局では、原子時計を用いた時刻や各国標準時を把握して採用しているため、正確な時刻の表示・記録が保証されるものとなっています。ブロックチェーンのタイムスタンプについてタイムスタンプがどういったもので、なぜ必要とされ使われているのか、概要が理解されたことと思います。ブロックチェーンにこのタイムスタンプ技術を組み込むには、もうひと工夫が必要です。ひとつひとつのトランザクションすべてにタイムスタンプを押していると、膨大な処理になってしまいますから、より効率よく処理するため、一定のまとまりに対してタイムスタンプを押すこととしました。大きな問題があります。通常は1つのコンピュータが行った処理の時刻記録を行えばOKですが、ブロックチェーンの場合、ネットワークに参加する複数ノード(パソコン)で同時に記録を行います。そのためパソコンごとで少しずつ時刻にずれが生じていくという事態が起きるのです。これではうまくトランザクションの時刻記録が行えません。そこでブロックチェーンでは、「分散型タイムスタンプ」と呼ばれる手法により、複数のパソコンにおける時刻の平均値をとって時刻のずれが大きく生じるのを防ぐようになっています。ビットコインならば約10分ごとに作成されるブロックへタイムスタンプを押し、効率よくデータの順序を正しく示すようにします。ブロック内の取引データをハッシュ化してタイムスタンプに組み込むことから、その時点におけるデータの存在性を確かに証明できるようになります。ひとつ前のタイムスタンプをハッシュ化し、それを組み込んでチェーンの連なりを作っていくため、高い耐改ざん性の性質構成に寄与するほか、多数のブロックによる連なりができていくに従い、信頼性も増していくようにできているのです。ネットワークに作成・承認されたブロックは、多数の参加ノードすべてで保持し、同期されてコピーが維持されるようになりますから、タイムスタンプについても改ざんは非常に困難となります。よって認証局のような第三者機関を置かなくても、機能するタイムスタンプが作成できる仕組みともなっています。認証局がひとつひとつに発行するタイムスタンプに比べ、個々のトランザクションに埋め込まれるタイムスタンプの精度は高くありませんが、ブロックチェーンならではの“分散型”構造に導かれることで、およそ正確な時刻の記録、時系列記録が可能となり、数が多くなるほどに精度も増していくようになっています。この方法であれば、認証局へのサイバー攻撃などで深刻なハッキング被害が生じ、タイムスタンプの信頼性が損なわれるといった万が一のリスクも回避できます。ブロックチェーンのタイムスタンプ技術は、ブロックチェーンを支えるとともに、そのブロックチェーンの仕組みによって、より信頼性と安定性の高いものへ進化しているともいえるでしょう。