公開鍵ファイル暗号化ソフト 「公開鍵暗GO」


「公開鍵暗GO」

「公開鍵暗GO」は使いやすさを第一に設計した公開鍵暗号化ソフトです。
Windows XP SP3 上で開発しています。開発言語は、GUI部分はactivebasicで、暗号化部分のdllは、Dev-C++で動くMingwです。開発にあ たって、たくさんのホームページを参考にさせて頂きました。これらのソフトを作られた方や、ホームページを作られた方に感謝します。
「公開鍵暗GO」はWindows XP と Windows Vista で動作を確認しています。

公開鍵暗GO

秘密鍵・公開鍵ペアの作成

公開鍵暗GOver.1.02本体         koukaiang102.cab


公開鍵暗GO 主な改版履歴

ver.1.02     2010/07/11
・暗号化の途中で暗号化に失敗したとき、途中まで暗号化したファイルを削除するようにした。
・内部の圧縮ライブラリのzlibを1.2.5にバージョンアップした。

ver.1.01     2008/8/2
暗号化、復号化速度を改善した。

ver.1.0      2008/6/8
・正式公開版としてリリース


公開鍵暗GOの暗号化の方法 …… Mersenne素数を用いたElGamal方式の公開鍵暗号

以 下のPDFファイルにあるように、M系列乱数と同等な、Mersenne素数を用いた既約多項式の剰余類を使う、ElGamal暗号です。この方法は、理 論やアルゴリズムが単純なので、開発してみようと思いました。暗号化の方法と、その主要部分をコード化したものを掲載します。公開鍵暗号に詳しい方に御教 授頂ければ幸いですので、お気づきの点がござい ましたら、ぜひ御一報下さい。
 乗算に時間がかかりますが、2乗の計算と、剰余の計算部分が極めて高速です。私のコード では、athlon64 3700+ 2.2Ghzで、鍵長が1279ビットのときに、小さいデータの暗号化には約5/1000秒、復号化には約4/1000秒かかります。これより、処理速度 は約300kbit/secと、非常に高速に実装できました。また、乱数を特殊なものにして、さらに高速化することを考えてみました。RSA暗号よりかな り高速ではないかと思っています。
 また、SHA-256,SHA-384,SHA-512のコードを書きました。実行ファイルのアイコンにファイルをドラッグ&ドロップすれ ば、ハッシュ値が表示されま す。ネット上にあった幾つかのコードを参考にさせて頂きました。コードを公開して下さった方々に感謝します。ハッシュの仕様はNational Institute of Standards and Technology (NIST)で公開しているものであり、コードは自由に使ったり、参考にして頂いて構わないものとします。興味のある方は、NIST の fips180-2.pdf と照らし合わせて、コードを読んでみて下さい。
 さらに、SHA-256を用いてデジタル署名のコードを書いてみました。 「公開鍵暗GO」のコードは、整理がついていないので、とても他人に見 せられるような代物ではありません。そういう訳で、細かい処理をすべて削除し、単純な、コマンドラインでの暗号、復号をするコードだけを掲載しました。 Linuxにも簡単に移植できるはずです。
 
  コマンドラインの公開鍵暗号暗号ソフト    ang.zip
最初のページ に戻る