きょうつう‐かぎあんごう〔‐かぎアンガウ〕【共通鍵暗号】
秘密鍵暗号
別名:対称鍵暗号,共有鍵暗号,共通鍵暗号,慣用暗号
【英】secret key cryptosystem, symmetric key cryptosystem, shared key cryptosystem, common key cryptosystem, conventional cryptosystem
秘密鍵暗号とは、暗号化と復号に同じ鍵を使う暗号方式のことである。共通鍵暗号や対称鍵暗号と呼ばれることもある。
秘密鍵暗号の暗号方式には、多くのアルゴリズムが考え出されてきた。中でもDES(Data Encryption Standard)は、鍵の長さが56ビットの代表的な秘密鍵暗号であり、長らく米国標準の暗号方式として使われてきた。
安全性、信頼性が高い暗号方式の研究により暗号の強度がいかに高くなろうと、秘密鍵暗号には、大きな弱点がある。それは鍵の秘密保持の問題である。どのように安全に相手に秘密の鍵を伝えるかの問題、また、相手が多くなれば多くなるほど危険性が高まるからである。しかし、この問題は公開鍵暗号の発見により飛躍的に改善されることとなった。
共通鍵暗号
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/04/21 00:52 UTC 版)
共通鍵暗号(きょうつうかぎあんごう、英語: common key cryptosystem)は、暗号化と復号に同一の(共通の)鍵を用いる暗号方式である[1][2]。秘密鍵暗号 (secret key cryptosystem) 、対称鍵暗号 (symmetric key encryption scheme)、慣用暗号 (conventional encryptosystem)、共有鍵暗号 (shared key cryptosystem) ともいう[3][4]。
また、広い意味で、鍵を共有した者の間での通信の安全性を保障する暗号技術を共通鍵暗号と呼ぶこともある。この場合、メッセージの秘匿を目的とした暗号方式だけでなく、メッセージの改ざん検出を可能とするメッセージ認証符号(秘匿機能は無い)、暗号とメッセージ認証の機能を併せ持つ認証付き暗号も、広い意味での共通鍵暗号である。広い意味での共通鍵暗号技術は、提供する機能は異なっても、共通の技術を用いているものも多い。例えば、秘匿用のブロック暗号を用いたメッセージ認証用の利用モードなどがある。以下では、秘匿を目的とした狭い意味での共通鍵暗号について扱う。
特徴
共通鍵暗号系の長所は公開鍵暗号系と比べて処理が高速であること、短所は鍵の受け渡しに注意を要することである[5]。どんなに複雑な暗号化を施しても、暗号化の方式が既知なら、鍵さえ分かってしまえば誰でも復号できるからである。
暗号化する側と復号する側とが同じ鍵をもつ必要があり、鍵が漏洩する可能性は、保持者が増えるほど増すことになる[4]。受け渡し相手によってそれぞれ個別の鍵をもてばよいが、その場合は管理すべき鍵の個数が相手の分だけ増加することになる。具体的には2人でだけ受け渡しをする場合は、1種類の鍵があればよいが、3人では3種類、4人では6種類、5人では10種類と増えていく[5]。n 人の間で必要な鍵の個数は、 カテゴリ
アルゴリズム | |
---|---|
理論 | |
攻撃 | |
標準化 | |

共通鍵暗号
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/05/09 06:55 UTC 版)
「Transport Layer Security」の記事における「共通鍵暗号」の解説
認証暗号に用いる共通鍵暗号として以下のものがある。 TLS/SSLの各バージョンで使用できる暗号化アルゴリズム暗号化プロトコルバージョン状況種類アルゴリズム暗号強度 (bit)SSL 2.0SSL 3.0TLS 1.0TLS 1.1TLS 1.2TLS 1.3ブロック暗号(暗号利用モード)AES GCM256, 128 N/A N/A N/A N/A 安全 安全 TLS 1.2向けにRFCで定義済み AES CCMN/A N/A N/A N/A 安全 安全 AES CBCN/A N/A 実装による 安全 安全 N/A Camellia GCM256, 128 N/A N/A N/A N/A 安全 N/A Camellia CBCN/A N/A 実装による 安全 安全 N/A ARIA GCM256, 128 N/A N/A N/A N/A 安全 N/A ARIA CBCN/A N/A 実装による 安全 安全 N/A SEED CBC128 N/A N/A 実装による 安全 安全 N/A 3DES EDE CBC112 安全ではない 安全ではない 強度不足、実装による 強度不足 強度不足 N/A GOST 28147-89(英語版) CNT256 N/A N/A 安全 安全 安全 N/A RFC草稿で提案中 IDEA CBC128 安全ではない 安全ではない 実装による 安全 N/A N/A TLS 1.2で廃止 DES CBC056 安全ではない 安全ではない 安全ではない 安全ではない N/A N/A 040 安全ではない 安全ではない 安全ではない N/A N/A N/A TLS 1.1以降で利用禁止 RC2 CBC040 安全ではない 安全ではない 安全ではない N/A N/A N/A ストリーム暗号ChaCha20+Poly1305256 N/A N/A N/A N/A 安全 安全 TLS 1.2向けにRFCで定義済み RC4128 安全ではない 安全ではない 安全ではない 安全ではない 安全ではない N/A 全バージョンにおいて利用禁止 040 安全ではない 安全ではない 安全ではない N/A N/A N/A 暗号化なしNull- N/A 安全ではない 安全ではない 安全ではない 安全ではない N/A TLS 1.2向けにRFCで定義済み ^ a b c d 再ネゴシエーション脆弱性への対応のため、RFC 5746 への対応が必要 ^ RFC 5746 への対応はSSL 3.0の仕様を逸脱するが、ほとんどの実装では対応したうえで仕様からの逸脱にも対処している ^ a b SSL 3.0およびTLS 1.0はBEAST攻撃に対して脆弱であり、クライアント側、サーバ側での対応が必要。#ウェブブラウザ節を参照 ^ SSL 3.0はPOODLE攻撃に対して脆弱であり、クライアント側、サーバ側での対応が必要。#ウェブブラウザ節を参照 ^ a b c d e GCM、CCMなどのAEAD(認証付き暗号モード)は、TLS 1.2以降のみで利用可能 ^ a b c d e f g h CBCモードは、サイドチャネル攻撃への対処が不十分な実装ではLucky Thirteen攻撃に対して脆弱である ^ 3DESの鍵長は168ビットであるが実質的な暗号強度は112ビットであり、2013年時点で最低限必要とされる128ビットに不足している ^ a b IDEA、DESはTLS 1.2で廃止された ^ a b c 40ビットのセキュリティ強度を持つCipher Suiteは、アメリカ合衆国による高強度暗号アルゴリズムの輸出規制を回避するために設計された。これらはTLS 1.1以降では利用が禁止されている。 ^ RFC 7465 により、すべてのバージョンのTLSにおいてRC4の利用は禁止された(RC4攻撃) ^ 認証のみで暗号化は行われない。 AES CBCはTLS 1.0を定義する RFC 2246 には含まれていないが、RFC 3268 で追加された。TLS 1.1を定義する RFC 4346 からは RFC 3268 が参照されており、さらにTLS 1.2では定義である RFC 5246 にAES CBCに関する記述が取り込まれた。また、認証付き暗号によるAES GCM (RFC 5288, RFC 5289)、AES CCM (RFC 6655, RFC 7251) が追加されている。IDEA CBC、DES CBCはTLS 1.2で廃止された(RFC 5469 に解説がある)。 ブロック暗号のCBCモードでの利用については、TLS 1.0以前においてBEAST攻撃と呼ばれる攻撃が可能であることが明らかとなっており、クライアント側、サーバ側での対応が必要とされている。TLS 1.1以降ではこの攻撃への根本的な対処として初期化ベクトルを明示的に指定し、パディングの処理が改善された。ブロック暗号であってもGCM、CCMなどの認証付き暗号を用いる場合にはこれらの攻撃を受けない。 ストリーム暗号であるRC4は前述のBEAST攻撃を受けることはないが、RC4には仕様上の脆弱性が存在する(RC4攻撃)。2015年2月、TLSのすべてのバージョンにおいてRC4の利用を禁止する RFC 7465 が公開された。ストリーム暗号であるChaCha20と認証のためのPoly1305を組み合わせたChaCha20+Poly1305が RFC 7905 として標準化されている。 いくつかの国家標準に基づく暗号化アルゴリズムもTLSで利用可能であり、日本のCRYPTRECによる推奨暗号であるCamellia(CBCモード:RFC 4132、RFC 5932、RFC 6367、GCM:RFC 6367)、韓国の情報通信標準規格に採用されているSEED(CBCモード:RFC 4162)、ARIA(CBCモードおよびGCM:RFC 6209)が追加されている。また、独立国家共同体のGOST規格によって規定された暗号化アルゴリズムであるGOST 28147-89も提案されている。 SSLが設計された当時は、アメリカ合衆国によって高強度暗号アルゴリズムの輸出が規制されていた。そのため、全世界で共通して利用できるアルゴリズムとして、DES・RC2・RC4に関して暗号強度を40ビットに制限したものが導入されていた。これらはTLS 1.1以降では利用が禁止されている。 また、鍵共有のみを行い暗号化は行わないこと (NULL) も可能であるが、平文でのやりとりとなることから安全とはみなされていない。
※この「共通鍵暗号」の解説は、「Transport Layer Security」の解説の一部です。
「共通鍵暗号」を含む「Transport Layer Security」の記事については、「Transport Layer Security」の概要を参照ください。
共通鍵暗号と同じ種類の言葉
- 共通鍵暗号のページへのリンク