「共通鍵暗号」の版間の差分

出典: フリー百科事典『ウィキペディア(Wikipedia)』
削除された内容 追加された内容
Nerara (会話 | 投稿記録)
m 表記の微修正
+cite など。「関連項目」節は本文に組み込んだので削除。「呼称」節は全体の出典の目途なくco(一部co内部に記載)。差分がわかりにくくなるので一旦セーブ。
4行目: 4行目:
|正確性=2016年7月16日 (土) 11:46 (UTC)
|正確性=2016年7月16日 (土) 11:46 (UTC)
}}
}}
'''共通鍵暗号'''方式(きょうつうかぎあんごうほうしき, Common key cryptosystem)は、暗号化と復号に同一の(共通の)鍵を用いる[[暗号方式]]である。秘密鍵暗号方式 (Secret key cryptosystem) 対称鍵暗号 (Symmetric key encryption scheme)、慣用暗号方式ともいう。
'''共通鍵暗号'''方式(きょうつうかぎあんごうほうしき、{{Lang-en|common key cryptosystem}})は、暗号化と復号に同一の(共通の)鍵を用いる[[暗号方式]]である<ref name="IPA_QA">{{Cite web |url=https://www.ipa.go.jp/security/enc/qa.html |title=暗号技術 Q&A |publisher=独立行政法人[[情報処理推進機構]] |accessdate=2017-10-02}}</ref><ref>以下、英語の出典は特記ない限り {{harv|IT用語辞典バイナリ}} による。</ref>。秘密鍵暗号方式 ({{en|secret key cryptosystem}}) 対称鍵暗号 ({{en|symmetric key encryption scheme}})、慣用暗号方式({{en|conventional encryptosystem}})、共通鍵暗号({{en|shared key cryptosystem}})ともいう<ref name="goo">{{Cite web |url=https://dictionary.goo.ne.jp/jn/56751/meaning/m0u/ |title=きょうつう‐かぎあんごう〔‐かぎアンガウ〕【共通鍵暗号】の意味 |work=[[goo辞書]] |publisher=[[NTTレゾナント]] |accessdate=2017-10-02}}</ref><ref name="Weblio">{{Cite web |url=http://www.sophia-it.com/content/%E7%A7%98%E5%AF%86%E9%8D%B5%E6%9A%97%E5%8F%B7 |title=秘密鍵暗号 |work=IT用語辞典バイナリ |publisher=[[ウェブリオ]] |ref={{SfnRef|IT用語辞典バイナリ}} |accessdate=2017-10-02}}</ref>


長所は[[公開鍵暗号]]方式と比べて処理が高速であること、短所は鍵の受け渡しに注意を要することである<ref name="ITPRO" />。どんなに複雑な鍵による暗号化を施しても、鍵さえ分かってしまえばだれでも復号化できてしまうためである。暗号化する人と復号化する人それぞれが同じ鍵を持つ必要があるが、鍵が漏洩する可能性は、保持者が増えるほど増すことになる<ref name="Weblio" />。受け渡し相手によってそれぞれ個別の鍵を持てばよいが、その場合は管理すべき鍵の数が相手の分だけ増加することになる。具体的には2人でだけ受け渡しをする場合は、1種類の鍵をそれぞれが持てばよいが、3人だと3種類、4人で6種類、5人で10種類と増えていく<ref name="ITPRO" />。n人の間で必要な鍵を求めるには、n x (n - 1) / 2 の数式に当てはめればよい。
== 概要 ==
共通鍵暗号方式では、暗号化に用いる鍵と同一、または、暗号化鍵から容易に導出可能な値を復号鍵として用いる。


共通鍵暗号は方式により[[ブロック暗号]]と[[ストリーム暗号]]に大別され、[[ストリーム暗号]]のほうがロジック量は少なくて済み、処理速度も有利とされる<ref name="mori2009">{{Citation |和書 |title=ストリーム暗号の現状と課題 |url=http://doi.org/10.1587/essfr.2.3_66 |last1=森井 |first1=昌克 |authorlink1=森井昌克 |last2=寺村 |first2=亮一 |authorlink2=寺村亮一 |journal=電子情報通信学会 基礎・境界ソサイエティ Fundamentals Review |volume=2 |number=3 |pages=3_66-3_75 |year=2009}}</ref>。代表的な共通鍵暗号としては、ブロック暗号に分類される[[Data Encryption Standard|DES]]、トリプルDES、[[FEAL]]、[[International Data Encryption Algorithm|IDEA]]、[[Advanced Encryption Standard|AES]]、[[Camellia]]<ref name="ITPRO">{{Cite web |url=http://itpro.nikkeibp.co.jp/article/COLUMN/20060601/239679/ |title=共通鍵暗号方式 |work=ITPro |publisher=[[日経BP]] |accessdate=2017-10-02}}</ref>、ストリーム暗号に分類される[[RC4]]、[[MUGI]]が挙げられる<ref name="mori2009"/>。
代表的な共通鍵暗号に[[Data Encryption Standard|DES]]、[[Advanced Encryption Standard|AES]]がある。


== 歴史 ==
それに対し[[公開鍵暗号]]方式では、暗号化鍵と復号鍵として非対称な鍵を用いる。復号鍵は、秘密の知識なしには暗号化鍵から容易には導出不可能な値を用いる。
[[ガイウス・ユリウス・カエサル]]の考案とされる[[シーザー暗号]]もこの方式であり、[[紀元前]]から存在するタイプの暗号である<ref name="todo2016">{{Citation |和書 |title=共通鍵暗号の発展 |url=http://doi.org/10.1587/essfr.10.1_23 |last=藤堂 |first=洋介 |journal=電子情報通信学会 基礎・境界ソサイエティ Fundamentals Review |volume=10 |number=1 |pages=23-33 |year=2016}}</ref>。シーザー暗号の[[アルゴリズム]]は、原文の文字列をそれぞれの文字についてある数の分だけシフトして得られる文字列を暗号文とするもので、文字数が鍵となる<ref>{{Cite web |url=https://kotobank.jp/word/%E3%82%B7%E3%83%BC%E3%82%B6%E3%83%BC%E6%9A%97%E5%8F%B7-191786 |title=シーザー暗号 |work=[[コトバンク]] |publisher=[[朝日新聞社]] |accessdate=2017-10-02}}</ref>。たとえば「ABC」という原文に対して3文字(鍵)右へシフト(アルゴリズム)すると「DEF」という暗号文が得られる。復号化する場合は逆に左へ3文字シフトすれば原文が得られるという仕組み。こういった、アルゴリズムさえ分かってしまえば解読が容易になる暗号は古典暗号として分類され、逆にアルゴリズムは公開しても、鍵さえ漏洩しないように管理していれば安全なタイプは現代暗号として分類される<ref name="todo2016" />。


1977年のDESが現代暗号の始まりであり、それとともに[[暗号理論|暗号学]]も始まったといえる<ref>以下、本段落は特記ない限り {{harv|藤堂|2016}} による。</ref>。アルゴリズムを公開してよい、すなわち議論の題材とできるため、研究が活発化したのである。暗号の解読方法の発見もこの学問の領域で、さまざまな危殆化に対応するため、新しい方式が考案されてきた。解読方法の例としては例えば総当たりの[[総当たり攻撃|ブルートフォース]]という原始的なものがある。また、二大攻撃法として知られる[[アディ・シャミア]]による[[差分解読法|差分攻撃]]、[[松井充]]による[[線形解読法|線形攻撃]]があり、これらによりDESもFEALも解読された。この松井により1995年に開発された[[MISTY1]]という暗号も2015年にDivision Propertyという技術を使ったIntegral攻撃により解読された。
<!--
== 呼称 ==
== 呼称 ==
古典的な暗号方式は全て共通鍵暗号方式であるので、公開鍵暗号方式が登場するまでは[[暗号]]と言えば共通鍵暗号方式のことであった。
古典的な暗号方式は全て共通鍵暗号方式であるので、公開鍵暗号方式が登場するまでは[[暗号]]と言えば共通鍵暗号方式のことであった。
19行目: 21行目:


後に「秘密鍵暗号」と呼ぶ代わりに「共通鍵暗号」という言葉を使うようになった。(公開鍵暗号方式における[[復号]]のための鍵を秘密鍵と呼ぶが、これと混同することがないようにするためである。)
後に「秘密鍵暗号」と呼ぶ代わりに「共通鍵暗号」という言葉を使うようになった。(公開鍵暗号方式における[[復号]]のための鍵を秘密鍵と呼ぶが、これと混同することがないようにするためである。)
-->


== 脚注 ==
== 脚注 ==
{{脚注ヘルプ}}
{{脚注ヘルプ}}
{{reflist}}
{{reflist}}
{{節スタブ|1=脚注形式での参照ページ番号の明記|date=2016年7月16日 (土) 11:46 (UTC)}}

== 参考文献 ==
<!--この節には、記事本文の編集時に実際に参考にした書籍等のみを記載して下さい。
書籍の宣伝目的の掲載はおやめ下さい。-->
{{節スタブ|date=2016年7月16日 (土) 11:46 (UTC)}}

== 関連項目 ==
* [[ブロック暗号]]
* [[ストリーム暗号]]
* [[暗号理論]]


{{cryptography navbox|block|stream}}
{{cryptography navbox|block|stream}}

2017年10月2日 (月) 09:01時点における版

共通鍵暗号方式(きょうつうかぎあんごうほうしき、英語: 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人の間で必要な鍵を求めるには、n x (n - 1) / 2 の数式に当てはめればよい。

共通鍵暗号は方式によりブロック暗号ストリーム暗号に大別され、ストリーム暗号のほうがロジック量は少なくて済み、処理速度も有利とされる[6]。代表的な共通鍵暗号としては、ブロック暗号に分類されるDES、トリプルDES、FEALIDEAAESCamellia[5]、ストリーム暗号に分類されるRC4MUGIが挙げられる[6]

歴史

ガイウス・ユリウス・カエサルの考案とされるシーザー暗号もこの方式であり、紀元前から存在するタイプの暗号である[7]。シーザー暗号のアルゴリズムは、原文の文字列をそれぞれの文字についてある数の分だけシフトして得られる文字列を暗号文とするもので、文字数が鍵となる[8]。たとえば「ABC」という原文に対して3文字(鍵)右へシフト(アルゴリズム)すると「DEF」という暗号文が得られる。復号化する場合は逆に左へ3文字シフトすれば原文が得られるという仕組み。こういった、アルゴリズムさえ分かってしまえば解読が容易になる暗号は古典暗号として分類され、逆にアルゴリズムは公開しても、鍵さえ漏洩しないように管理していれば安全なタイプは現代暗号として分類される[7]

1977年のDESが現代暗号の始まりであり、それとともに暗号学も始まったといえる[9]。アルゴリズムを公開してよい、すなわち議論の題材とできるため、研究が活発化したのである。暗号の解読方法の発見もこの学問の領域で、さまざまな危殆化に対応するため、新しい方式が考案されてきた。解読方法の例としては例えば総当たりのブルートフォースという原始的なものがある。また、二大攻撃法として知られるアディ・シャミアによる差分攻撃松井充による線形攻撃があり、これらによりDESもFEALも解読された。この松井により1995年に開発されたMISTY1という暗号も2015年にDivision Propertyという技術を使ったIntegral攻撃により解読された。

脚注

  1. ^ 暗号技術 Q&A”. 独立行政法人情報処理推進機構. 2017年10月2日閲覧。
  2. ^ 以下、英語の出典は特記ない限り (IT用語辞典バイナリ) による。
  3. ^ きょうつう‐かぎあんごう〔‐かぎアンガウ〕【共通鍵暗号】の意味”. goo辞書. NTTレゾナント. 2017年10月2日閲覧。
  4. ^ a b 秘密鍵暗号”. IT用語辞典バイナリ. ウェブリオ. 2017年10月2日閲覧。
  5. ^ a b c 共通鍵暗号方式”. ITPro. 日経BP. 2017年10月2日閲覧。
  6. ^ a b 森井昌克; 寺村亮一ストリーム暗号の現状と課題」『電子情報通信学会 基礎・境界ソサイエティ Fundamentals Review』第2巻、第3号、3_66-3_75頁、2009年http://doi.org/10.1587/essfr.2.3_66 
  7. ^ a b 藤堂洋介「共通鍵暗号の発展」『電子情報通信学会 基礎・境界ソサイエティ Fundamentals Review』第10巻、第1号、23-33頁、2016年http://doi.org/10.1587/essfr.10.1_23 
  8. ^ シーザー暗号”. コトバンク. 朝日新聞社. 2017年10月2日閲覧。
  9. ^ 以下、本段落は特記ない限り (藤堂 2016) による。