ご利用される方へお願い
  現在配布中のソフトは、Alpha Edition (開発中版) または、Beta Edition(動作確認中版) です。
 動作エラーや計算結果が不正確なケースを発見しましたら、 当方の 掲示板 へ、フィードバックをお願いします。
 
 

 
 
ENIGMA Base64 Ver.2.10  Alpha Edition (開発中版)  [2010/02/26]
 &
Base64 Encode/Decode Ver.1.00 Alpha Edition(開発中版) [2010/02/26]
 
for AutoCAD VBA (dvb) DownLoad(EB64A210.zip/128,249byte)
for Excel VBA (xls) DownLoad(EB64E210.zip/162,238byte)
VBA Export Files
(bas, frm, frx)
 
(VBA 6 or later)
DownLoad(EB64F210.zip/40,170byte)  

注意

VBAからエクスポートしたファイルなので、
解凍したファイル(*.bas, *.frm, *.frx)を同一フォルダに置いて、
ご使用のVBAで(*.bas, *.frm)ファイルをインポートしてご利用下さい。

Reflector, Rotor, Plugboard data

All supported DownLoad(RRP4EB64.zip/6KB)

Sample data
暗号化したデータです
復号確認にご使用下さい

All supported DownLoad(EB64SampleDate.zip/92KB)
 
 
 
解説
ENIGMA Base64
 第二次世界大戦時にナチス・ドイツが用いていたことで有名な
 ロータ式暗号機の ENIGMA の換字要素を、
 MIME Base64の64文字に拡張した、暗号化・復号ソフトです。
 
 暗号文を同じ鍵で再暗号化すると平文が得られる特徴があります。
 変換できるのは、
 MIME Base64の64文字 (ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/) のみ
 
 
 反転性(暗号文を同じ鍵で再暗号化すると平文が得られる)、不完全性(自分自身に換字されない)、
 などの特徴は ENIGMA と同様です。
 
 その他の ENIGMA Base64 独自の特徴として、
  ・ローターの設置数に制限がない
  ・ローターに設置出来るノッチ(隣のローターを回転させるタイミング)に制限がない(64箇所全てに設置も可能)
 などがあります。
 
 
 正確な暗号化・再暗号化(復号)には、入力する文字が Base64 である必要がありますが、
 76文字ごとの改行コード(MIMEの基準)は条件ではありません。
 
 
Base64 Encode/Decode
 MIME (Multipurpose Internet Mail Extension) の基準に準拠した、
 Base64 エンコード(符号化:encode)・デコード(復号:decode) ソフトです。
 
 
 
暗号化・再暗号化(復号)

 
Reflector/Rotor/Plugboard/Setting

 
note(1)

 
note(2)

 
About

 
Base64 Encode/Decode

 ※ 画像は開発中の以前のバージョンものです

  
 
Base64 (64文字)
 
 
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
 
 
Relector(反転ローター)・Rotor(ローター)・Plugboard(プラグボード)の設定
 
位置 設定
文字数
仕様 解説
Reflector 64
 
(Base64のみ)
重複不可、
反転性必須
各文字は、Base64を順に64文字並べた場合の文字と単文字換字します。

設定文字列は、Base64の64文字を全て使用して並べ替えたもので、
エニグマの特徴である反転性(元文字と暗号文字は必ず異なる)は
ここによるのでBase64を順に26文字並べた場合の文字と一致してはいけません。
具体例
OK 一番最初(A文字位置)の "Y" とY番目の位置にある "A" は対になっている
様に以下全ての文字が他の文字と対になっていること
Y R U H Q S L D P X N G O K M I E B F Z C W V J A T ・・・
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z ・・・
NG  Base64順に同じはNG
 C→D→B 対にならず循環しているのはNG
  文字の重複はNG
A C D B Z Z X ・・・
A B C D E F G ・・・
LeftRotor
MiddleRotor
RightRotor
64〜128
 
(Base64 64
+
半角スペース
0〜64)
重複不可 各文字は、Base64を順に64文字並べた場合の文字と単文字換字します。
 
設定文字列は、Base64の64文字を全て使用して並べ替えたもので、
Reflectorと異なり文字位置に制限はありません(対になっている必要もありません)
ただし、隣のローターを回転させるタイミング(ノッチ)の位置にスペースが最低1つ必要です。
スペースが1つもない場合には設定文字列の最後にあるものと見なします。
また、最初の1文字目のスペースは最後のスペースと同じです。
(ENIGMA実機では最大2個までですが、このENIGMA Base64では最大64個[各文字毎]可能)
具体例
OK  Base64順に同じはOK 
 ローターがE(S)からF(I)への回転時に隣(※)のローターも回転させる
 ※実機では左隣のローターですが、このシミュレーターでは1つ上のローター
A J D K S (スペース) I R U X B L H W T M C Q G Z N P Y F V O E ・・・
A B C D E ノッチ F G H I J K L M N O P Q R S T U V W X Y Z ・・・
NG   文字の重複はNG
A C D B Z Z X ・・・
A B C D E F G ・・・
  C→D→B 対にならず循環しているのはOK
Plugboard 64
 
(Base64 or
半角スペース or
_
(半角アンダーバー)
64文字)
重複不可 現バージョンでは未実装です
 
各文字は、Base64を順に64文字並べた場合の文字と単文字換字します。

設定文字列は必ず対になっている必要があります。
半角スペースまたは半角アンダーバーは、設定を見やすくする為の省略記号で、
Base64を順に64文字並べた場合の文字と同一です。
 
この頁以外に使用方法(操作マニュアル)はありません
 
注意事項など
  開発中の Alpha Edition です
動作に致命的な不具合や暗号化・復号化の結果が不正確な可能性があります
重要なデータを同時に開いた状態では使用しないで下さい
 
 
 
その他
  そのほか使用条件等は上記ファイルに添付されている readme.txt ファイルをお読み下さい。
 
 
更新内容
 
[2010/02/26] Ver.2.10 Alpha Edition 追加修正 MIME Base64 Encode/Decode 追加
ENIGMA BASE64 修正多数
[2010/02/17] Ver.2.01 Alpha Edition 修 正 ENIGMA_Base64 Base64の64文字以外の処理
[2010/02/17] Ver.2.00 Alpha Edition 新規公開
 
以前のバージョン
日にち バージョン for 
AutoCAD VBA (dvb)
for
Excel VBA (xls)
VBA Export Files
(bas, frm, frx)
(VBA 6 or later)

注意

VBAからエクスポートしたファイルなので、
解凍したファイル(*.bas, *.frm, *.frx)を同一フォルダに置いて、
ご使用のVBAで(*.bas, *.frm)ファイルをインポートしてご利用下さい。
[2010/02/17] Ver.2.01
Alpha Edition (開発中版)
DownLoad(EB64A201.zip/64KB) DownLoad(EB64E201.zip/72KB) DownLoad(EB64F201.zip/24KB)
[2010/02/17] Ver.2.00
Alpha Edition(開発中版)
DownLoad(EB64A200.zip/64KB) DownLoad(EB64E200.zip/72KB) DownLoad(EB64F200.zip/24KB)
   
参考リンク
http://ja.wikipedia.org/wiki/%E3%82%A8%E3%83%8B%E3%82%B0%E3%83%9E_(%E6%9A%97%E5%8F%B7%E6%A9%9F)
http://en.wikipedia.org/wiki/Enigma_machine
http://en.wikipedia.org/wiki/Enigma_rotor_details
 
http://www.enigma-replica.com/
http://www.cripto.es/
http://www.hut-six.co.uk/
http://offthebroiler.wordpress.com/2008/07/06/bletchley-park-the-forge-of-computer-creation/
http://www.sscnet.ucla.edu/geog/gessler/collections/crypto-fialka.htm
http://www.mlb.co.jp/linux/science/genigma/enigma-referat/index.html
http://slashdot.jp/security/article.pl?sid=06/03/03/1434206
http://gigazine.net/index.php?/news/comments/20060911_enigma/
 
シミュレーター
http://enigmaco.de/enigma/enigma.html
http://www.mlb.co.jp/linux/science/genigma/
http://www.codeproject.com/KB/security/enigma_emulator.aspx?fid=171455&df=90&mpp=25&noise=3&sort=Position&view=Quick&select=1188863
http://edipermadi.wordpress.com/2008/07/15/implementing-enigma-m3-cipher-machine-on-pic16f84/
 
検索
http://www.google.co.jp/search?hl=ja&ie=Shift_JIS&q=%83G%83j%83O%83%7D&btnG=Google+%8C%9F%8D%F5&lr=
http://www.google.co.jp/search?hl=ja&inlang=ja&ie=Shift_JIS&q=enigma&btnG=%8C%9F%8D%F5&lr=
http://www.google.co.jp/search?hl=ja&ie=Shift_JIS&q=Enigma+Rotor&btnG=Google+%8C%9F%8D%F5&lr=
http://images.google.co.jp/images?hl=ja&ie=Shift_JIS&q=Enigma+Rotor&lr=&um=1&sa=N&tab=wi&gbv=1