ブロックチェーンと形式検証

Please download to get full document.

View again

All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
 3
 
  Overview of blockchain and formal verification efforts over it. In Japanese. ブロックチェーン技術とその安全性を保証する形式検証の取り組みについてちょっとだけ紹介。コンピュータサイエンスの学部生から院生(ただしこの分野のプロを覗く)が対象。
Share
Transcript
  • 1. ブロックチェーンとブロックチェーンと 形式検証形式検証 古瀬淳 Jan 31, 2019
  • 2. 自己紹介自己紹介 古瀬淳 ダイラムダ株式会社 Tezos Japan Foundation Tezos blockchain のコア開発者の一人
  • 3. TezosとはTezosとは
  • 4. 今日の話今日の話 ブロックチェーンとは何か 形式検証とは Tezosにおける安全化 ブロックチェーン: コンピュータサイエンスの総合格闘技
  • 5. ブロックチェーンとはブロックチェーンとは 台帳方式 分散環境 開かれたネットワーク トークン スマートコントラクト
  • 6. 台帳方式台帳方式 履歴蓄積型データベース 大福帳、通帳 Git
  • 7. 分散環境分散環境 複数のノードで情報のレプリカを 持つ 耐障害性 負荷分散
  • 8. 分散合意アルゴリズム分散合意アルゴリズム ノード間での矛盾する更新を解消する Bad news: 分散合意アルゴリズムは停止しない [FLP85]
  • 9. Good news: PaxosGood news: Paxos ノード間投票による多数決 停止しないかもしれないが、実用 上問題はない ただし閉じたネットワーク
  • 10. 開かれたネットワーク開かれたネットワーク 誰でもノードを建て参加できる公共データベース 改竄ほぼ不可能 中立 低コスト
  • 11. 開かれたネットワークの問題開かれたネットワークの問題 Sybil攻撃(なりすまし)による合意 操作、阻害
  • 12. サトシ・ナカモトとBitcoinサトシ・ナカモトとBitcoin Sybil attack を難しくする 無条件の投票ではなく、資源専有によ る制限(PoW, PoS, ..) 正直であることを奨励する「トーク ン」の導入 「仮想通貨」の誕生
  • 13. スマートコントラクトスマートコントラクト 単なる台帳を超えて、アカウントにコードを紐づけ る。 コードが紐づいているアカウントに送金するとコード が動き出す 契約の自動執行 分散データベースを超えて、中央管理者のいない分散アプリケ ーションへ
  • 14. ブロックチェーンとはブロックチェーンとは 台帳方式 分散環境 開かれたネットワーク トークン スマートコントラクト
  • 15. ブロックチェーンに求められるブロックチェーンに求められる 安全性安全性 開かれた分散データベースの解として トークンを導入した結果: 投機的資金の流入 オープンソースとなる宿命 セキュリティホール⇨ハッカーによる窃盗 非常に高い安全性が求められる
  • 16. スマートコントラクトの安全性スマートコントラクトの安全性 スマートコントラクトのバグは巨額の損失を引き起こ しかねない。 The DAO事件(360万ETH, 52億円盗難) Parity脆弱性事件#1 (15万ETH, 34億円盗難) Parity脆弱性事件#2 (51万ETH, 174億円凍結) ここでも非常に高い安全性が求められる
  • 17. ブロックチェーンをどう安全にすブロックチェーンをどう安全にす るかるか テストでは不十分 形式検証を行おう、というのがトレンド
  • 18. ソフトウェアテストソフトウェアテスト システムを与えられた条件下で動かし、不具合が起き ないことを確認する システムを動かすだけ。簡単。 全てのケースをテストすることは 不可能。コーナーケースのみ。 テストしていないケースが不具合 を起こすかもしれない
  • 19. 形式検証形式検証 数理的にプログラムが好ましい性質を持っていること を証明する。 テストとは違い、証明できれば絶対の安全を保証できる。 証明は一般的に難しい。
  • 20. 形式検証手法のいろいろ形式検証手法のいろいろ 静的型システム モデル検査 定理証明
  • 21. 静的型システム静的型システム プログラム中の値が持つ性質を型で表し、値の組み 合わせを適合する型の間のみに強制、プログラム全 体の性質を保証する。 利点: 推論があれば自動 欠点: あまり高度な性質を保証できない
  • 22. モデル検査モデル検査 プログラムを有限状態遷移系としてモデル化し、モ デルが検証したい性質を満たすかを自動的に検証す る。 利点: 自動 欠点: 効率の良いモデル化が難しい
  • 23. 定理証明定理証明 プログラムの持つ性質を直接証明する。定理証明支 援器により一部を自動化できる。 利点: なんでも証明できる 欠点: 証明を書くのが難しい
  • 24. 形式検証をブロックチェーンへ形式検証をブロックチェーンへ 産業的には、形式検証はクリティカルシステムに使わ れてきた: 航空宇宙産業 原子力発電 ブロックチェーンもクリティカルシステム。形式検 証して安全性を保証していく。
  • 25. Tezosと形式検証Tezosと形式検証 暗号プリミティブの正しさ検証 定理証明によるインタプリタの形式化 静的型付されたスマートコントラクト モデル検査によるスマートコントラク トの停止性検査
  • Similar documents
    View more
    We Need Your Support
    Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

    Thanks to everyone for your continued support.

    No, Thanks
    SAVE OUR EARTH

    We need your sign to support Project to invent "SMART AND CONTROLLABLE REFLECTIVE BALLOONS" to cover the Sun and Save Our Earth.

    More details...

    Sign Now!

    We are very appreciated for your Prompt Action!

    x