データの活用が進められていくと同時に、取引の透明性や不正防止の仕組みは重要になっています。今回のBlockchain EXEは投票や取引における不正防止やエコシステムを実際にどのように維持しているのかについての具体的なユースケースに焦点を絞り、ディスカッションを行いました。
目次
- 『NFTアセットバリューによる投票制度事例』| 小澤 孝太 / CryptoGames Inc.
- 『E-voting system utilizing blockchain』| ジョン・オウ / OK BLOCKCHAIN CENTRE SDN. BHD. Manager
- 『MakerDAOのガバナンスモデルについて』| キャサリン・チュウ / Maker Foundation 日本地域リーダー
- 『ゼロ知識証明を使った投票プロトコル”C.R.E.A.M”』 | 石黒 一明 / クーガー株式会社
- 『ディスカッション:不正防止を実現するブロックチェーン活用とは』
1.『NFTアセットバリューによる投票制度事例』| 小澤 孝太 / CryptoGames Inc.
CryptoGamesで制作されたブロックチェーンを使ったトレーディングゲーム「クリプトスペルズ」を例に用いて、ゲームにおけるブロックチェーン技術の使用方法・特性について詳しく解説して頂きました。
1.1 ブロックチェーンゲームとは何か?
・ユーザー同士のトレード・売買が自由にできる。
これまでのソーシャルゲームは運営のサーバー上にデータが存在しましたが、本ゲームではデータをNFTでブロックチェーン上に発行する事で、ユーザーが自由にトレード・売買する事が可能になっています。
・ブロックチェーンゲーム=NFT(Non Fungible Token)
NFTとはコピーできないシリアルデータの事であり、今までデジタルデータではコピーが簡単にできてしまうという問題点がありました。そのため、ゲームアイテムに代表されるデジタルアセットの二次流通や、トレードや売買といったことができていませんでした。その中で、データのコピーができないNFTの誕生により、今後はアナログと同じようにゲームソフトや書籍を自由に売買できるようになるのではないかと思われます。
・ゲームデータが資産になる
ブロックチェーンでNFTを発行する事でカード一枚一枚に価値が生まれ、アナログと同様にデジタルでも世界に一枚だけのカードというものが作れるようになります。
実際、60万という高額な値段で取引されているカードもあるようです。
今後はキャラクターを個人の所有物とみなし、その個人のキャラクターを別のゲームでも使えるようにする事が可能になっていくのではと予測されます。
1.2 ブロックチェーンの運営によってゲームがどう変わるか
・ブロックチェーンゲーム=非中央集権的ゲーム
従来のゲーム=中央集権的ゲームであり、運営主体でイベントなどが開かれていましたが、ブロックチェーンゲームではユーザーが主体となってゲームが進行していきます。
理由として、ブロックチェーンゲームではユーザーの所有するキャラクターがストックオプションのような働きをする事で、ゲームの盛り上がり=自身にとっての利益となるため、ユーザーが自発的にイベント等を開いたり、新規のユーザーを招いたりする事でゲームを盛り上げようと動くようになっていくからです。
・運営の一部をユーザーに任せる
ブロックチェーンゲームの場合、キャラクターはユーザーの資産であり、パラメーターは資産の価値であるため、運営側がユーザーの資産に干渉して良いものではないという考えがあります。そのため、キャラクターのパラメーターをユーザー投票で決めているそうです。
ただし現段階では複数アドレスでの投票を防ぐ事が出来ないため、NFTのトータルアセットバリューに応じて投票権を持つという仕組みを採用しています。
2.『E-voting system utilizing blockchain』| ジョン・オウ / OK BLOCKCHAIN CENTRE SDN. BHD. Manager
OBCからはBCvoteという電子投票システムについて紹介して頂きました。
BCvoteの4つの重要点
1.投票行為の追跡と見落としがないという事
2.urlと投票者の固有の有権付与によってなされる透明性があるという事
3.一度投票したものは変えられないという安全性の保障があるという事
4.投票の設定や実際に投票する際に簡単にできるという事
BCvoteとは何か?
BCvoteは第三者の関与を排除できるというブロックチェーンをベースにしたwebアプリケーションです。
本アプリケーションは選挙やフィードバックを受ける事に用いられており、webブラウザやタッチスクリーンなどを通して投票ができるようになっています。
・投票までの仕組みについて
投票者が自分のPCやスマホで投票する際、投票内容はサーバーを通ってブロックチェーンでの承認を経てからデータベースに格納されます。
・ブロックチェーンのノードの仕様
まずプライベートイーサリアムを使い、POAのコンセンサスを経ています。また、スマートコントラクトを実装していて、十分なテストを実施してリリースされています。
・BCvoteでの投票の流れ
投票における全てのデータが暗号化されます。
暗号化されたデータ(ハッシュ)がブロックチェーン上でトランザクション処理されデータベースに格納されていきます。
今後のBCvoteのロードマップについて
現段階で投票から最終的に結果が出るまでの部分が実装されています。
今後は投票途中で状況が表示されるようなシステムを実装していきたいと考えています。
また、不正投票を更に防ぐものとしてシングル・サインオンの実装をしていきます。
サブスクリプションという事でwebから簡単に利用できるようなものを目指していきます。
3. 『MakerDAOのガバナンスモデルについて』| キャサリン・チュウ / Maker Foundation 日本地域リーダー
MakerDAOとは何か、その仕組みやそれを保護する為のセキュリティについて紹介して頂きました。
3.1 MakerDAOとは何か?
・ MakerDAO=世界経済に金融の安定性と透明性をもたらす事を目的とした分散型組織
DAOとは自律分散型組織という意味です。
DAOは組織としてそれぞれの関係者が各役割を担当しており、全ての人がインセンティブを貰えるようにネットワーク全体の位置を実現し機能しています。
・MakerDAOはDAIの生成が可能
MakerDAOは分散化された資産担保型ステーブルコインの代表格であるDAIの生成が可能です。
DAIは価値が安定していて完全にブロックチェーン上にあるため、ボーダーレスで誰でもどこでも利用が可能です。
・ MakerDAO=MakerProtocol+MakerCommunity
MakerProtocolは様々なスマートコントラクト、ステーブルコインが含まれています。MakerCommunityはMakerDAOの参加者のCommunityです。Protocolの変更に関するすべての決定は分散化された方法で行われています。
・MakerDAOの管理者について
管理者はMKR保有者の中で非常に重要なガバナンスを持っています。投票コントラクトのシステムを通してMKR保有者はメーカープロトコルとDAIの金融リスクを管理して安定性・透明性及び効率性を確保しています。だからこそこういうシステムをきちんと機能させる必要があります。
3.2 Makerガバナンスと投票の仕組み
・Makerガバナンスはオフチェーンとオンチェーンの二つ
オフチェーンは毎週ガバナンスコールが開催された後に議論が行われ、コンセンサスが形成され、そのあと投票の提案が行われます。このプロセスをオープンで行うので透明性が高く保たれます。
オンチェーンはセットアップを行いMKR権限を付与します、その後MKRをロックし、投票を行います。投票の裏では約10数個のMakerProtocolモジュールが動いており、各モジュールはそれぞれスマートコントラクトで形成されています。
投票はオンチェーンで行われているため透明で検証が可能です。
3.3 攻撃を防ぐための対策
以下の三つのモジュールがMakerProtocolのメインセキュリティを守っています。
・オラクルセキュリティモジュール
・ガバナンスセキュリティモジュール
・緊急時シャットダウンモジュール
・オラクルモジュール
MakerProtocolがシステムを維持するために市場価格情報を提供しています。価格フィードは多くの承認をされてから提供されています。
・ガバナンスセキュリティモジュール
悪意あるガバナンスの提案を遅らせます。この遅延によりMKR保有者は必要に応じてシャットダウンを実行することで悪意あるガバナンスの提案からシステムを守る事ができます。
・緊急時シャットダウンモジュール
最後の手段としてMakerProtocolを適切に停止させるモジュールです。
4. 『ゼロ知識証明を使った投票プロトコル”C.R.E.A.M”』 | 石黒 一明 / クーガー株式会社
ゼロ知識証明を使った投票プロトコル(通称 C.R.E.A.M)を使った投票システムに関して、その仕組みと内容・今後の展望についての説明をして頂きました。
4.1 C.R.E.A.M (Confidential Reliable Ethereum Anonymous Mixer) 紹介
・C.R.E.A.Mのプロトコルについて
C.R.E.A.Mは公開検証可能なzk-SNARKを利用した秘匿トランザクションミキサーで投票に特化したプロトコルです。
・なぜ投票とミキサーの関係があるのか
イーサリアムの場合はあらゆるトランザクションの全てに透明性があります。
お金と物を交換した際、その人がお金を何に使ったかを分からなくするために、次の社会ではリアルな生活の中でのミキサーという役割が出てくるのではと予想しています。
・投票方法について
投票には従来の手書きでの投票とデジタルでの投票がありますが新しくミックスネットでの投票というものが提案されており、それぞれに長所・短所があります。
①手書き
・長所:大失敗しにくい、大規模攻撃を受けにくい
・短所:一元管理、改ざん耐性が弱い、無効投票がある(不完全文字、解読不可、マークアップ不備)
②デジタル
・長所:無効票を減らす
・短所:セキュリティ(デバイス乗っ取り、ネットワーク攻撃、プライバシー)、大量採用が難しい
③ミックスネット
・長所:秘匿性の確保、検証が可能
・短所:暗号化時のエラー、攻撃検出難易度が高い
※ミキサートラストモデル
Ⅰそれぞれのミキサーは正直でなければならない
Ⅱキャスティング時の脆弱性があってはならない
Ⅲネットワークが崩壊してはならない
Ⅳスイスでの実証実験でネットワークアタック
ミックスネットの投票では秘匿性の確保や検証が可能ですが、検証はミキサートラストモデルというものに100%依存しており、ミキサーが信頼できるものでないと全ての投票プロセスが無効になってしいます。
4.2 C.R.E.A.Mオーバービュー
・投票の流れ
例:投票者とコントラクトと候補者がいた場合
①投票者がサインアップ
②トークンをデポジット
③QRコード発行
④発行されたQRコードを使って投票
といった流れで投票が行われます。
・投票後の処理
発行されたQRコードを読み込んだ際に、トークンをコントラクト側に発信します。それによってコントラクト側にデポジットされたトークンを候補者側が引き出せるようになり、トークンの数=候補者の投票数となります。
また、トークンはコントラクトを介しているため誰が投票したかは分からず、秘匿性もあります。
・今後しなければならない対策
正直なオペレーターや大規模な投票に対応できる適切なマークルツリーのサイズが必要です。選挙毎に信頼できるセットアップやハードウェア、適切なスケーラビリティ、ガスステーションやユーザーへの使い方の指導なども必要です。その他、最も大きな問題としては共謀や投票買収への対策もしなければなりません。
MACI(Minimum Anti Collusion Infrastructure)の実装やトラステッドセットアップの不要問題などの課題にも取り組んでいきます。
5. 質疑応答
Q. ゲームユーザーによる運営参加は画期的だと思いますが、ブロックチェーンの必要性に少し疑問を感じます。ブロックチェーンだからこそ実現できたことはあるのでしょうか?
小澤:ブロックチェーンはあくまで手段であって、こだわりを持っている訳ではない。
ゲームのほとんどの開発はオフチェーンで実装しています。所有権の部分だけはオンチェーンで実装した方が色々なメリットがあると思っているのでブロックチェーンで実装しています。目的はあくまでユーザーが自走するトークンエコノミーを作っていくという事です。
Q.投票結果が改竄されないとして本人確認はどうするんでしょうか?
ジョン:投票のページというものがパブリックurlにあり、それに対して投票者一人一人にユニークIDがブロックチェーンを通して発行されます。
選挙名簿というのをどのように管理するかというのが別の問題としてありますが、基本的には選挙名簿からIDが発行されるようになります。
Q.MakerDAOとはそもそも何のために何をする組織なんですか?
キャサリン:MakerDAOは世界のどこに行っても誰でもアクセスできる金融サービスを作ろうとしている分散的組織です。
Q.投票システムのユースケースとしてどのくらいのセキュリティレベルが要求されるとお考えでしょうか?
石黒:どういった投票を実現するかによります。国民選挙の場合はキュリティ関連やスケールの部分をより強化した設計になってくるとは思います。
Q.ゲームユーザーは投票の際にどのような考えでパラメータを決めていくんでしょうか?自分の所有しているカードを強くしたいとかでしょうか?
小澤:ゲームバランスが崩れるとゲームの人口が減ってしまうのでゲーム全体のバランスが取れるように動いているユーザーが多く見られます。
Q.日本では投票の不正というのはあまり聞きませんが、海外では不正投票はそれほど問題になっているのでしょうか?
ジョン:不正投票というものは世の中で常に起こるものです。
Q.MakerDAOは投票でなにを決めるんですか?
キャサリン:MKR保有者が投票で決めるのはリスクパラメータです。リスクパラメータには生産率や財務上限などの様々な要素が含まれています。
6. 「ディスカッション:不正防止を実現するブロックチェーン活用」
石井:皆さんが不正防止として対策している事で犠牲にしているものもあると思いますが、優先度について教えて下さい。
キャサリン:投票を実装するために複雑なステップがあります。それをこれから改善するためにアップデートします。対策として考えているのは投票代理人を持つ事です。これによりMKR保有者の投票を簡単にできます。
石井:ゲームづくりにおいて犠牲にされた事はありましたか?
小澤:世界に一枚しかないカードがあるという時点で手に入らない人がほとんどな為、それが本当に面白いのかというのが大前提としてあります。そういった課題に対してユーザーが楽しめるモードや新しいゲーム性を作る事で解決していいたいです。
石井:別のゲーム間でアセットを共有するという事ですが、その変換部分はどうなっているんですか?
小澤:NFTコンバートというコントラクトを作っており、そこで変換を行っています。
石井:電子投票を行うにあたって何が犠牲になると考えますか?
石黒:ブロックチェーンを使った投票というのは各所で出てきていますが、大勢が一番妥協しているラインというのは完全分散型でも完全中央集権でもない半中央集権の様な形になってしまう事です。
石井:ブロックチェーンで不正防止と言われる事が多いですが、今一番解決できそうな事ってなんでしょうか?
石黒:投票とは離れますが、フェイクニュースなんかはブロックチェーンを使って解決できないかなぁとは思います。
石井:フェイクニュースをわざと流す人もいれば、それを真実だと思って転送する人もいるのでそういった情報のトレースというのはブロックチェーンで重要かと思います。
7.まとめ
投票に関してブロックチェーンの利用は多くのところで行われてきてはいますが、まだデメリットや課題となる部分もあり、そうした部分が運用していくにあたっての障害となっているようです。今後既存のシステムに対してブロックチェーンの優位性がより強く発揮されれば、そういった課題を超えて新しい投票システムが浸透していくのかもしれません。