暗号理論
攻撃アルゴリズム (汎用的攻撃) 総当たり攻撃 / 全数探索 / en:Brute force attack exhaustive key search 誕生日攻撃 en:birthday attack タイム・メモリ・トレードオフ 中間一致攻撃 en:meet-in-the-middle attack (古典暗号) 頻度分析 (暗号) en:frequency analysis (cryptanalysis) カシスキ・テスト en:Kasiski examination 一致反復率 en:index of coincidence (現代暗号) 差分解読法(差分暗号解読) en:differential cryptanalysis (Biham,1989) 不能差分暗号解読 切詰差分解読(丸め差分攻撃)(truncated differential attack) 高階差分解読 Square攻撃 ブーメラン攻撃 en:boomerang attack 補間攻撃 (Jakobsen, Knudsen, 1997) 線形和攻撃 線形解読法(線形暗号解読) en:linear cryptanalysis (Matsui,1993) 差分線形攻撃 en:differential-linear attack 丸め線形攻撃 スライド攻撃 en:slide attack (David Wagner, Alex Biryukov, 1999) カイ2乗攻撃 mod n攻撃 en:mod n cryptanalysis XSL攻撃 en:XSL attack (暗号プロトコル) リプレイ攻撃 en:replay attack ビット反転攻撃 en:bit-flipping attack 中継攻撃 en:man in the middle attack (その他) 辞書アタック / 辞書攻撃 en:dictionary attack 素因数分解 en:integer factorization 格子基底縮小 lattice reduction, LLL en:Lenstra-Lenstra-Lovász lattice reduction algorithm
鍵 (暗号)
ハイブリッド暗号 / KEM / DEM
多重暗号
暗号方式の実現手段に関する用語 共通鍵暗号方式 / 対称鍵暗号方式 - 暗号化鍵 (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) になる。
暗号プリミティブ (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)
ブロック暗号は、データスクランブル部と、鍵スケジュール部の2つを主な要素とし、データスクランブル部は、ラウンドの繰返し構造になっているものが多い(product cipherという)。Product cipherの基本的な構成法に、Feistel構造とSPN構造の2つがある。
Product cihper
Feistel構造 / フェイステル・ネットワーク Feistel network
SPN構造 (substitution-permutation network)
F関数 / Sボックス S-box
鍵拡大 / キースケジュール / ラウンド鍵
初期変換 / 最終変換
暗号利用モード
公開鍵暗号の要はトラップドア関数であり、安全なトラップドア関数の存在を仮定して、安全な公開鍵暗号方式を構成する方法が研究されている。 トラップドア関数は、まだ数個しか発見されておらず、新しいトラップドア関数の発見もテーマの一つである。
一方向性関数 one way function
トラップドア関数 / 落し戸付き一方向性関数
ハードコア述語 / ハードコア関数 (hardcore predicate)
RSAモジュラス (N=P* Q)
ESIGNモジュラス (N=P* P* Q)
Fiat-Shamirヒューリスティック