「機械式暗号」の版間の差分

削除された内容 追加された内容
m 箇条書きマークアップ修正等
1行目:
[[Image:Enigma.jpg|thumb|right|エニグマ暗号機]]
'''機械式暗号'''('''きかいしきあんごう''')とは、[[機械]]によって実装された暗号化アルゴリズムである。暗号化アルゴリズムを実装した機械を'''暗号機'''という。
 
筆記による暗号と比べると、複雑な手順を間違いなくかつ高速に実行できるという利点があった。
 
== 概要 ==
16世紀から19世紀にかけて、暗号解読技術の進歩と普及により単純な暗号は次々と解読されたため、暗号は次第に複雑な手順を行わざるを得なくなった。一方で、外交や軍事などで安全で簡易な暗号が必要とされ、20世紀初に発明されたのがロータマシンと呼ばれる暗号機である。第一次世界大戦から第二次世界大戦にて各国で広く使用された。20世紀後半、電子計算機や集積回路が発明されると暗号もこれらの技術を使って実装されるようになり、<!--(狭義の)-->機械式暗号は役割を終えた。
 
== 学理的な分類 ==
機械式暗号は外見やメカニックで分類されやすいが、多表内部の関係とその切替え方式で分類する事が重要である。
実用化された暗号機はその被解読性を高める為に以下の設計がいくつか盛り込まれている。
#* 利用できる多表の絶対数を増やす。
#* 多表切り替え周期を長く、擬似ランダムにする。
#* 多表内部の関係を秘匿し、解析され難くする。
#* 秘匿していた多表が解析された場合に備えて、多表を差替できるようにする。
#* 暗号機自体を2次暗号化に用いる (enciphered code)
#* 暗号強度を高めるアタッチメントを追加する
 
=== 換字式と転置式 ===
* 実用化された機械式暗号は凡て換字方式である。
* 転置方式は実用化されず、電子式暗号機の登場を待たねばならなかった。
 
=== cipher式とenciphered code式 ===
* cipher式は暗号機自体で1次暗号化のみをするもので、多くの暗号機がcipher式を前提に設計されている。
* encipherd code式は別の機械や手作業にてコード (code) で1次暗号化され、ついで機械式暗号で2次暗号化するもの。
** 1次暗号に秘匿性が無いのはテレプリンター暗号機が該当する
** 1次暗号に秘匿性が有るのは独海軍のエニグマが該当する。
** 本来は1次暗号用に開発されたが、強度に不安があって2次暗号用(乱数生成)に転用された日本陸軍の一式一号印字機もある。
 
=== 単表換字式と多表換字式 ===
* 単表換字式 (monoalphabetic) にはタイプライターのキーキャップを取り替えて使用する等の原始的なものが該当する。
* 多表式 (polyalphabetic) には殆どの凡ての機械式暗号機、アルベルティの暗号円盤からエニグマまでが該当する。
 
=== 多表式と組み合わせ多表式 ===
* 多表を1組しか持たないものにはアルベルティの暗号円盤やハーゲリンマシン (M-209) が該当する。
* 2組以上の多表を持ち、ある多表で換字した後に別の多表で換字する事により「見かけ上」膨大な多表を利用するものにはエニグマやパープルが該当する。
 
=== 順変多表式と乱変多表式 ===
* 秘匿された多数の多表を順繰りに切り替える順変多表式 (alphabet generators) にはエニグマやパープルが該当する。
* 一定少数の多表を擬似ランダムに切り替える乱変多表式 (key generators) にはクリハ、ハーゲリンマシンやバーナムが該当する。
 
=== 多表内部の関係有無 ===
* 関係が有るものにはスライド式、ディスク式、ハーフローター式そしてローター(鼓胴)式がある。
** スライド式、ディスク式、ハーフローター式は名称や見た目が異なるが多表の生成原理は同一である。多表自体の秘匿性は乏しく乱変多表式に利用される。
** ローター式は見た目には関係ないように見えるが内部配線は固定されているために「斜行特性」が残る。しかしスライド式に比べて多表の秘匿性が高いので順変多表式に利用される。
* 関係が無いものはロータリーラインスイッチ式があり、順変多表式であるパープルが該当する。
 
=== 換字制限の有無 ===
* 制限の無いものが通常である。いかなる原字もいかなる暗字に換字されその逆も然りである。
* 制限があるものは少数である。利便性と引き換えになっているものが殆どである。
** 反転ローターを持つエニグマは原字と暗字が同一にならないが、暗号化/翻訳化の切り替え機構が不要になった。
** 母音と子音を別の多表で換字するレッドやパープルは、電報料金の安い暗号電報を利用可能になった。
** 原字のZをスペースで代用したM-209は、翻訳文に単語間スペースが入り読み易くなった(原文から欠損したZは受信者が判読する)
 
=== 多表(配線)固定式、多表差替式 ===
多表自体の秘匿が重要な順変式多表暗号機に関わる分類である。順変式多表暗号機のアキレス腱ともなる項目であり、日本陸軍が暗号機採用に消極的であった理由でもある。
* 多表固定式が通常であり、組み合わせ多表においても個々の多表は固定されている。
* 多表差替式は少数であり、新規ローターを追加配布したエニグマが該当する。しかし新規ローターの作成と配布にも限界があり、旧ローターを破棄しないと強度は低下する。
* 末端ユーザーが指示により多表構成を自分で変更できるのが理想であるが実現化した暗号機は無い。なおプラグボードは多表差替の範疇には入らないので注意が必要である。
 
=== 鍵系列の配布式、合成式 ===
多表を切り替えていく順序(鍵系列)を指示する乱変式多表暗号に関わる分類である。
* 鍵系列自体をそのまま配布使用する方式には穿孔テープを用いるバーナム暗号が該当する。
* 初期状態のみを鍵として配布して鍵自体は機械内部で合成させる方式にはピンホイールとラグゲージを用いるM-209が該当する。
 
=== アタッチメントの追加 ===
暗号強度に不足(不安)が生じた場合に追加使用するものでプラグボードやエニグマのUHRボックスが該当する。なお運用途中から追加した場合には暗号強度が低下する。
 
== 種類 ==
(* ドイツ)
** [[エニグマ (暗号機)|エニグマ]]
(* ポーランド)
** Lacida/LCD
(* 日本)
** [[パープル暗号]]
** [[ジェイド暗号]]
** [[コーラル暗号]]
** [[九七式印字機]]
*:** など(詳細は[[日本の機械式暗号]]を参照)
(* アメリカ)
** Hebern rotor machine
** M-94 - 1917年に開発、1922年に採用され、1943年まで使用
** M-138
** [[M-209]]/CSP-1500 (C-38)
** [[M-325]] (SIGFOY) - 1936に設計
** SIGGOO/M-229
** ECM Mark II/M-134 (SIGABA) - 1950年頃まで使用
** TSEC/KL-7 (ADONIS) - 1950年代に導入
(* スイス)
** NEMA - 1947年から導入
(* イギリス)
** [[TypeX]] - 1937年から導入
(* ロシア)
** Fialka (M-125)
*** など
* HX-63 - 1952年設計
 
== 歴史 ==
=== 暗号機の先祖 ===
暗号機、特にロータマシンの先祖にあたる器具として最も古いのは、最初の多表式換字暗号の考案者でもある[[レオン・バッティスタ・アルベルティ]]の暗号円盤だとされる。これは、大小2つの円盤に[[アルファベット]]を刻み、中心をピンで留めたもので、内側の円盤を回転させることで2つの円盤のアルファベットの対応を任意の文字数だけシフトできる。例えばアルファベット順に文字を刻み、3文字シフトした状態に固定すれば[[シーザー暗号]]用の換字表になる。当時、シーザー暗号などの単純な暗号には安全性の問題があると指摘されていた。そこでアルベルティは換字表を複数用意して1文字ごとに切り替えて使用することを考案した。アルファベット26文字を刻んだ暗号円盤を1文字暗号化する毎に回転させれば、26個の換字表を順次変更しながら暗号化できる。これがシンプルとはいえ、多表式換字暗号のはじまりであった。その後、多表式暗号は[[ヴィジュネル暗号]]へと進化したが、[[1854年]]には解読法が発見され、安全ではなくなった。
 
104行目:
ロータマシン以外の暗号機には、(stub)。
 
=== 暗号機の発明 ===
[[1918年]]、シェルビウスによって[[エニグマ (暗号機)|エニグマ]]が発明された。これは円盤に相当するローター(内部に電気的な配線をもつ鼓胴)が複数枚ついていて、それらが別に回転するので、より複雑な暗号であった(詳しくはエニグマの項を参照)。筆記とは比べ物にならない速さで暗号化することができ、安全性も確保した。しかし、[[イギリス]]は解読に成功し、末期には[[コンピュータ]]の原型となる機械によって高速に解読されていた。
 
日本も[[パープル暗号]]機などを開発した。[[第二次世界大戦]]時には、絶対解読不可能と信じ込まれながらもアメリカに解読された。
 
アメリカは、電気を使わない小型の暗号機[[:en:M-209|M-209(209(英語)]]を使用していた。スウェーデン人の[[ボリス・ハーゲリン]]による暗号機を改良したものであった。ドイツは、[[1943年]]に解読に成功している。日本でも、釜賀一夫たちが解読していたといわれている。
 
=== 暗号機の後継 ===
コンピュータの発明によって計算によって暗号化することが主流になった。これにより、暗号機の行う作業をコンピュータが事実上行うことになる。また、例えば暗号機をより複雑化するためにローターを増やしたいなどというときに、暗号機ならば本物のローターをつけなくてはならないが、コンピュータではプログラムを改変するだけで済み、経済的にも有用である。さらに、機械自体の運搬は必要なく、プログラムの輸送で事足りるという利点がある。
 
=== 暗号機の問題点 ===
* 機械式暗号とは紙と鉛筆で暗号化できる作業を機械化した事に他ならない。解読者側では同じ暗号機が手元に無くても解読は可能であり、解読を機械化する際にもオリジナルと同一である必要は無い。しかしながら運用側には「機械式暗号は暗号機が盗まれないと解読できない」という誤謬が生じ、被解読性の評価を心理的に妨げてきた。
* 他にも機械式暗号を運用する場合の欠点はある。
#** 融通が利かない。暗号事故等で暗号機自体の強度に疑義が生じても鍵規約の変更頻度を上げるしかない場合が多い。例えば手書きの乱数式暗号ならば、乱数表を逆向きに読み取る、縦読みする等と応急処置が可能である。
#** 暗号強度に見合ったサイズと重量を提供するとは限らない。野戦用、艦艇用暗号機は小型化や軽量化が工夫されるが、それでも同じ重量の暗号書や乱数表の方が暗号強度的に優れている可能性もある。
#** 破棄処分が困難。敵襲や艦船沈没といった緊急時に暗号機を完全に処分するのは容易でない。ハンマーで砕いてからテルミットで焼却する等の事例もある。
 
== 関連項目 ==
* [[日本の機械式暗号]]
* [[暗号史]]