暗号学
[Wikipedia|▼Menu]

暗号理論(あんごうりろん)の記事では暗号、特に暗号学に関係する理論について扱う。Category:暗号技術も参照。
概要

英語では、暗号を cryptography といい、暗号学を cryptology という。また、日本ではもっぱら総称される暗号には、「コード」と「サイファ (en:cipher)」という分類がある。

暗号理論は、暗号学の一分野である。

暗号の理論の主な分野には、以下のようなものがある。

暗号系 (cryptosystem) 、すなわち暗号化と復号、といった手続きの構成方法や性能・安全性などに関する研究

暗号や電子署名といった守秘 (confidentiality) や完全性 (integrity) を実現する、暗号アルゴリズムや暗号プロトコルの研究

暗号解読(cryptanalysis)

@media screen{.mw-parser-output .fix-domain{border-bottom:dashed 1px}}暗号理論は暗号学の一分野であり、暗号学の全ては理論ではカバーしきれない。古典的な暗号に比べれば現代の暗号(現代暗号)は理詰めで構成されている。[要出典]それでも、暗号学としては、その運用や関与する人間の不注意といったヒューマンファクタなども考慮しなければならない。(「暗号の連鎖(chain)の強さは、最も弱い環(link)の強さしかない」ということは変わっていない。)

コンピュータセキュリティネットワークセキュリティ、より総合的には情報セキュリティと暗号や暗号理論とは密接な関わりがある。例えば、(論理的な)アクセス制御は、「ユーザが誰であるか」という認証(authentication[注 1])に従ってOSの機能などによって制御される。しかし、認証自体には、例えばユーザ本人だけが知り得る秘密情報(パスワードなど)を使うといった暗号的な手法が必要であるし、無線や公衆網を通してコンピュータを利用する場合には、そのパスワードを直接やりとりしてしまうようなことは避けなければならない。そういったプロトコルの設計には、暗号理論に従った裏付けが必要である。

暗号学には総合の学であるという面がある。暗号理論にもそれは言えて、情報理論符号理論計算複雑性理論といった理論計算機科学などと、合同算術数論代数幾何離散数学といった数学などが広く関係する。
用語

暗号理論で使われる用語。「暗号#用語」も参照

暗号理論 - 暗号や暗号解読を扱う理論。本ページの記事名。

暗号技術 (cryptographic techniques) - 暗号に関する技術。暗号プリミティブや暗号プロトコルを駆使して、機密 (confidentiality) ・完全性 (integrity) ・認証 (authentication) ・否認防止 (non-repudiation) などのセキュリティ機能を実現することを目的とする。鍵管理などの暗号を利用するために必要な技術も含む。

暗号学 (cryptology) - 暗号に関する学問

暗号[法] (cryptography) - 暗号方式(とその応用)の構成法や性能、安全性などに関する研究。暗号術ということもある。

暗号解読[法] (cryptanalysis) - 暗号方式(とその応用)の解読法に関する研究。暗号分析、暗号解析ということもある。


暗号学者 (cryptologist)

暗号研究者 (cryptographer) - 暗号を専門的に研究する人(暗号研究者の一覧)。まれに平文を暗号文に変換する作業に従事する人(暗号師)を指すことがある。

暗号解読者 (cryptanalyst) - 復号鍵を用いずに、暗号文平文に戻したり、暗号文と平文を区別したり、暗号文から別の暗号文を生成することを試みる人。または、暗号文と平文の組から鍵を推定する人。まれに暗号文を復号する作業に従事する人を指すことがあるが、復号と解読は区別すべきである。


暗号プロトコル/暗号化プロトコル (cryptographic protocol/encryption protocol) - 暗号化と復号の手順

暗号プリミティブ (cryptographic primitive) - 暗号方式を、元々の目的であった秘匿だけではなく、署名・認証などの基本的ツールに適応したもののこと。cipher, signature, hash などがある。別の用法として、主に公開鍵暗号方式で、要となるトラップドア関数と、パディング等の周辺部分に分けて、前者を暗号プリミティブと称することがある(後者は暗号スキームという)。

暗号方式 / 暗号システム / 暗号系 (cryptographic scheme, cryptographic system, cryptosystem) - 暗号化鍵 (encryption key) を用いて、平文 (plaintext) を暗号文 (cryptogram) に変換する暗号化 (encryption) アルゴリズムと、復号鍵 (decryption key) を用いて、暗号文を平文に変換する復号 (decryption) アルゴリズム、鍵、平文、暗号文などからなるシステムのことである。

暗号アルゴリズム (cryptographic algorithm) / 暗号関数 - 暗号方式における暗号化および復号のアルゴリズム。

暗号化 (encryption)

復号 (decryption)

鍵生成 (key generation)


暗号データ

暗号鍵 / (key)

暗号化鍵 (encryption key)

復号鍵 (decryption key)


メッセージ (message)

平文 (plain text) / 明文 (clear text)

暗号文 (cryptogram)




暗号方式の実現手段に関する用語

共通鍵暗号方式 / 対称鍵暗号方式 - 暗号化鍵 (encryption key) と復号鍵 (decryption key) が同じ、あるいは片方の鍵から他方の鍵を容易に求めることができる暗号方式。

共通鍵 (common key) / 秘密鍵 (secret key) / 共有鍵 (shared key)


公開鍵暗号方式 / 非対称鍵暗号方式 - 暗号化鍵から復号鍵を求めること、または復号鍵から暗号化鍵を求めることが難しい暗号方式。

鍵ペア (key pair) - 公開鍵と秘密鍵の組。

公開鍵 (public key) - 公開鍵暗号方式における暗号化鍵(または復号鍵)。

秘密鍵 / 私有鍵 / 私用鍵 / プライベート鍵 (private key) - 公開鍵暗号方式における復号鍵(または暗号化鍵)。過去にはprivate keyの意味でsecret keyと記述することもあった。共通鍵暗号方式における共通鍵を秘密鍵と呼ぶこともあった。


公開鍵演算 (public-key operation) - 公開鍵を用いた演算。暗号 (cipher) の場合は暗号化 (encipherment) であり、署名 (signature) の場合は、検証 (verify) になる。

秘密鍵演算 (private-key operaion) - 秘密鍵を用いた演算。暗号 (cipher) の場合は復号 (decipherment) であり、署名 (signature) の場合は、署名 (sign) になる。



暗号方式を応用した場合の用語

暗号 (cipher)

サイファ化 (encipherment)

デサイファ化 (decipherment)

暗号化アルゴリズム (enciphering algorithm)

復号アルゴリズム (deciphering algorithm)

暗号化鍵 (enciphering key)

復号鍵 (deciphering key)

暗号文 (cipher text)


署名 (signature)

署名 (sign)

検証(verify)

署名鍵(signature key)

検証鍵(verification key)

メッセージ / 文書

署名データ / 署名


ハッシュ関数 (hash function) / メッセージダイジェスト (message digest)

メッセージ / プレイメージ (pre-image)

ハッシュ値 / フィンガープリント / ハッシュ



暗号方式の主な用途

秘匿通信 (secret communication)

認証 (authentication) / ディジタル署名 (digital signature)

注1) 「暗号アルゴリズム (cryptographic algorithm) は、暗号方式 (cipher) のことである」という定義もあるが、ここでは、暗号アルゴリズムとは、暗号方式 (cryptosystem) を定義する一つの要素であり、暗号方式には、暗号 (cipher) を始めとする幾つかの暗号プリミティブがあるという解釈で分類している。
展開

暗号自体は古代エジプトの時代から存在したが、その理論的研究は1949年のシャノン (Shannon) の研究に始まる。シャノン以前には、9世紀にキンディ (Al-Kindi) 、15?16世紀に アルベルティ (Alberti) 、トリテミウス (Trithemius) 、ポルタ (Porta) が執筆した暗号の書籍が残されているが、多くは秘密であった。

シャノンは、攻撃者が無限の計算能力をもっているという仮定の下で、平文に関する情報量がどの程度攻撃者に漏れるかを研究し(情報理論的安全性)、この意味で安全な暗号方式はワンタイムパッドを用いる暗号方式だけであることを示した。

暗号法や暗号解読法は、利用できる道具によって大きく影響を受ける。特に1940年代前後から始まった電子計算機によって、暗号解読可能な範囲が飛躍的に広がり、また、電子回路によって暗号がより効率的に実装できるようになった。

このような計算機の発展を背景にして、1970年代の後半に誕生したDESRSAが現代暗号の代表である。共に、アルゴリズムが公開されていて、暗号鍵が秘密であることが安全性の前提となっている(計算量的安全性)。

これ以前にも、暗号アルゴリズムと暗号鍵が分離されていて、暗号アルゴリズム(暗号器)が漏洩しても、暗号鍵がないと暗号文を復号できないことをねらった暗号も存在したが、解読の手間(計算量)の点で、DES以前と以後では一線を引くことができよう。何よりも、従来、秘匿することが前提であったアルゴリズムの詳細を公開し、誰でも暗号の安全性を検討できる点が現代暗号の特徴である。それ以前のシーザー暗号からエニグマまでをまとめて古典暗号という。紙と鉛筆と多少の道具のみを使用していた暗号とエニグマなどの機械式暗号を区別して、後者を近代暗号とすることもある。また1949年の暗号理論を現代暗号の始まりと考える人もいる。

1990年代後半から、計算量理論的アプローチによる、暗号アルゴリズムの安全性証明の手法やモデル化の研究がなされ、計算量的に困難と仮定されている問題 (IFPやDLP) と等価であることを証明可能な暗号アルゴリズムが提案された。あるいは既知の暗号解読法では解読できないことを証明できる暗号アルゴリズムが提案された。これらを「現代暗号の第2期」ということがある(証明可能安全性)。安全性証明は、Rabin暗号やゼロ知識対話証明のように90年以前から研究があり、それらの成果の集積である。

2000年代前半には、ゼロ知識対話証明やマルチパーティ計算などの暗号プロトコルの安全性証明を統一的に扱うフレームワークの研究が進んだ。.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%;font-size:90%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}html.client-js body.skin-minerva .mw-parser-output .mbox-text-span{margin-left:23px!important}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:67 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef