飯塚市では令和3年11月15日に開催された「福岡県ブロックチェーンフォーラム(主催:福岡県)」で、片峯市長による「飯塚市ブロックチェーン推進宣言」を発表しました。
宣言についてはこちらのPDF内容をご覧ください。
実際に飯塚市としては全国に先駆けて市町村版電子認証局を実現しており、DX時代のトラストサービスをいち早く構築し、全国初となる住民票をスマホにダウンロードする実証実験を実施しています。
なんだか先進的な取り組みをしていることは掴めると思います。皆さんは斯様なプレスを見たとき、どういう印象を持ちますか?
いっちょんわからん
普段からIT分野に触れない限り、こういう状態になると思います。
加えて、ブロックチェーン技術が何らかサービスに実装されたとき、ユーザーはブロックチェーンが何かよく分からないままサービス利用することになります。
本記事ではブロックチェーンとは何かについての説明、そしてブロックチェーンを実際にやってみることに触れていこうと思います。
ブロックチェーンとは
ブロックチェーンは一言で言うと、猛烈に高いセキュリティの仕組み、という理解でOKです。仕組みの構造(理論)であるため、最終的にユーザーがアプリを操作するときは何ら変わった様子がなく気が付くことはありません。
近年は国内外の悪い人が個人情報を抜き取ったり、データを改ざんしたり、と度々嫌なニュースを目にすると思います。ブロックチェーンはその名前のとおり「ブロック」と「鎖」の言葉の組み合わせで、
ブロック・・・・個々の情報。例えば名前とか金額とか
チェーン(鎖)・・・いくつかのブロックが連なった塊
言わば、ブロックチェーンは一つ一つのブロックが連結している鎖みたいなイメージです。一般的には超高度なセキュリティを要する銀行の取引等に用いられています。(元々、金融取引分野で誕生した背景もあって、分散型台帳技術とも翻訳されます)
少し背景に触れますと、現代はIT化が進み、ほぼ全国民がATMを通じてお金を入出していると思います。そのとき、ATMの取引履歴はどこで管理されるでしょうか。銀行本体ですよね。
これは「銀行本体のサーバーを集中攻撃すれば、銀行口座もパスワードも奪える」ことを意味します。(もちろん、出来る限りのセキュリティ網を構築していますので極めて複雑かつ高度ではあります。)しかしながら、いたちごっこの世界故に、セキュリティ網を突破されるとお手上げ状態で被害が甚大になってしまうのです。そこで誕生したのがブロックチェーンです。
ブロックチェーンは中央集約型になっていた銀行取引情報記録をネットワークに参加する全員で共有するアイデアです。一部だけ攻撃され変更されても、他に共有されている人たちと情報が違うからすぐに検出できるし、書き換えられることもありません。加えて、共有している人たちとこまめに情報の擦り合わせをするとなると、攻撃側は短時間に情報を書き換える等をしなければならず、もはや物理的に悪さすることなど困難を極める状態になります。
銀行取引だけ?と思われますが、このアイデアは当然他の分野にも応用することができます。株式や保険、住民情報、スマホのアプリ等々、多岐に渡ります。
ブロックチェーンはビットコインのマイニング用途ばかりが目立って、ブロックチェーン=暗号資産というイメージが強いですが、全くそんなことはありませんので新規性がある故に変な技術でないことは安心して頂いてOKです。
では全てにおいて完璧か、と言われるとそういうこともありません。ITに限らず、技術は発展していくものです。ブロックチェーン技術は、飽くまでも現代技術の中では最高峰のネットワークセキュリティを担保できる、ということです。敢えてデメリットを上げるとすると、
記録されたデータを容易に削除できない
データが増大し続ける(サーバー代、電気代がかかる)
天文学的スピードで処理できる量子コンピュータ発展に伴い、改ざんリスクが生じる
中央管理型ではないため、処理速度と障害耐性の両立が難しい
デメリットに目がいきがちですが、飯塚市では大規模な社会実験を経て実装フェーズに移行するということで、上記を補完する工夫があることと思います。一方、
システムダウンしにくい
セキュリティ性が高く改ざんされにくい
情報の公明性が担保できる
これらメリットは公共サービスを運用する上で必須と言われても過言ではなく、全て満たすことができる点で大変魅力的な技術であることは間違いありません。
なんだか難しそうだけれど、ブロックチェーンを試してみる
ブロックチェーン技術の云々は何となく伝われば、と思って書いてみました。技術を導入・意思決定する人たちはちゃんと理解することが必須ですが(というか理解しないで意思決定するなんぞ言語道断)、それ以外の方々はブロックチェーンがどういうもので、Pros.Cons.くらいわかっておけば大丈夫だと思います。
以降は筆者自身の単なる興味で書いていきます。実際に自分で試してみないと分からない、ということで初期的かつ簡単なブロックチェーンを体験してみようと思います。
[用意したもの]
・Windows10のノートパソコン
[プログラミング言語]
・Python
[やったこと]
・ブロックチェーンのプログラムを自作する
・いくつかブロック作って繋げてみる
・難易度を1~段階的に上げていき、いわゆる発掘という作業で自作システムに攻撃しかけてみる
[結果]
・ブロックチェーンをとりあえず5個生成。思ったより速い。
・疑似攻撃してみた結果、難易度5程度まではギリギリ攻撃できる。しかし、難易度6以上は永遠と思えるほどの計算時間で挫折
左図は計算中の様子。たかだか難易度6。いくら待っても処理が終わらない=膨大な計算処理を要している証拠
[考察まとめ]
・簡単なものであっても、個人からの攻撃は事実上不可能
・国家レベルの叡智を集結した組織ぐるみで仕掛けられても、仕組み次第で突破は無理
・情報漏洩に関しては、紙媒体でやり取りする方が怖い
Comments