*目次 [#ae3f512d]

#contents

*宣伝 [#b4127222]

 当サイトにおける暗号に関するページでは、説明が足りなかったり、誤った記述をしていたりするところがあります。今後、少しずつ修正する予定です。~

 暗号理論の『暗号技術のすべて』が発売されています。初心者向けの暗号本です。これまで暗号本に何度か挑戦しつつも挫折してしまった方、学校の課題で悩んでいる方、資格試験にて暗号の問題が苦手な方などにお勧めです。

[[&ref(http://s-akademeia.sakura.ne.jp/main/books/cipher/img/cover_mini.jpg,nolink,『暗号技術のすべて』宣伝サイト);>http://s-akademeia.sakura.ne.jp/main/books/cipher/]]

 興味がある方は[[宣伝サイト:http://s-akademeia.sakura.ne.jp/main/books/cipher/]]を参照してください。[[Amazon:https://www.amazon.co.jp/dp/4798148814/securityakade-22]]でも発売中です。



*暗号の分類 [#dfc54b77]

 暗号の安全性について解説する前に簡単に暗号を分類しておく。

**basic primitive [#ofc1ed21]

-暗号化
-認証(署名)

**暗号プロトコル [#i4ec1ef9]

-電子投票
-電子マネー


*暗号の証明 [#gab2fafc]

 暗号スキームや暗号プロトコルの証明は2つのアプローチに大別できる。

+計算量的なアプローチ(computational approach)
+数理的技法によるアプローチ(formal method approach)

**計算量的なアプローチ [#aff03bd8]

-PPT-TM(probabilistic polynomial-time turing machine)を敵のモデルとして捉えて、いかなるPPT-TMに対しても安全であることを示す。
-暗号コミュニティでは広く受け入れられている。
-証明が複雑で、証明を誤りやすい。実際に間違っている証明の論文もある。

 さらにこれは2つに分類できる。

***アタックベースフォーミュレーション(attack-based formulation) [#j00f0d9e]

-アタッカーとチャレンジャーによるどちらが勝つかという一種のゲームとして捉える。
-例:公開鍵暗号系のIND-CCA、デジタル署名のEUF-CMA

***シミュレーションベースフォーミュレーション(simulation-based formulation) [#d88832ff]

-REALとIDEALを区別するというゲームとして捉える。
-例:UCフレームワーク

**数理的技法によるアプローチ [#h4b4faf9]

-UCのハイブリッドモデルと親和性が高い。
-対象となる暗号プロトコルを記号列で表現し、その記号列に対する論理的推論や書換規則などにより安全性を示す。よって、証明が明瞭で、自動化できる。

[補講]結果

-(Abadi-Rogaway 2000)数理的アプローチの健全性を示す。
-(Canetti-Herzog 2006)Dolev-Yao流の数理的アプローチにおいて、理想的公開鍵暗号機能。