アルゴリズム忘備録

競技プログラミングとかデータ分析とか

「ブロックチェーンという言葉に騙されないために」を読もう。

最近会社のSNSに競プロ関係の記事は書いていたので更新は止まっていたのですが、こっちも再開しようかなと。というわけでいもす研の「ブロックチェーンという言葉にだまされないために」の紹介です。

 

https://imoz.jp/note/blockchain.html 「ブロックチェーンという言葉にだまされないために」

 

2016年に書かれた内容ですが、今のブロックチェーン界隈の人はまず一読すべきものだと考えています。(余談ですがこの著者は競プロで有名な人だったりします)

 

この記事を書こうと思ったのはFacebookに貼ってあった次のネタを見たためです。

crypto.watch.impress.co.jp

 

上のネタは今の日本企業におけるブロックチェーンの適用に関わる問題の典型例といってもよいものです。(海外企業でも同様のことがあるかもしれませんが、よく調べてはいません。) ブロックチェーンでなにかビジネスを考えるときに、そもそもブロックチェーンで何を解決するのか、と問うと以下の2点が挙げられることが多いです。

  • トレーサビリティ
  • 改ざん防止

例えばImpress Watchの記事でいうとオープンバッジに盛り込むデータが改ざんされては困るので、そうした視点でブロックチェーンの利用が見込める」という発言に現れています。

 

しかし、いもす研の記事でも触れられていますが、そもそもブロックチェーンで改ざんが困難になるというのはブロックチェーンの主要な特徴ではなくどちらかというと電子署名によるものです。また、トレーサビリティについてもそれが主要な目的ではありません。ブロックチェーン、特にパブリックブロックチェーンが解決する技術的課題は「信頼できないノード間での合意形成」になります。これが必要でないシチュエーションに無理にブロックチェーンを適用しようとしても結局分散DB等の既存技術のほうがよっぽどマシなのですが、そのあたりの認識が薄く上っ面の特徴だけが独り歩きしている印象があります。

 

また、プライベートブロックチェーンについてはそもそも「信頼できないノード間」というのは有名無実化されており、いもす研の引用をしますが、プライベートブロックチェーンとして有名なHyperledgerなどでは「中央管理者がいないことを定義にしているのにもかかわらず、結局実用には中央管理者のいる構造が必要であるとしている点に問題があります。」という状況です。

 

というわけでブロックチェーンについてはインセンティブモデルや合意形成などのいろいろな概念を理解した上で適切な利用法を決めることが重要なのですが、そういう基礎概念を無視して上っ面の特徴だけでビジネス適用する例がかなり多いので気をつけたいところです。

 

ブロックチェーン関係のまとも、かつお手軽に読める記事は実はあまりなく、お手軽なところは上っ面の特徴を列挙してるだけだったり、ちゃんと書いてるところはしっかり書きすぎて一読するには辛いものが多かったりするのですが、いもす研の記事はかなり良く出来てるので必読かと思いました。