私は暗号についてもっと学ぶためにRSAプログラムを書こうとしています。私はJavaを使用していますが、一般的なアドバイスを探しています。より良いプログラミング実践
私の質問は、ファイルの内容を取得し、それを倍のブロックに変換してパワーにする最良の方法は何ですか?
私はhamlet(またはK & RCなど)の全文を含むASCIIテキストファイルを持っています。 私はこれをバイトのブロックに変換し、ブロック全体をパワーアップします。各バイトをパワーアップすると、周波数解析が脆弱になります。
今、ファイルをバイト配列に読み込んで、ダブル配列にキャストし、それをサイズ[64] [file/64]の2次元double配列に変換し、2次元配列連結の各double [すべてのdoubleを文字列に倍精度化し、その文字列をdoubleにキャストします(またはbigintegerにする必要がありますか?)。次に、私の計算を行います。
これはひどく複雑です。
私は2次元配列を使わなくてもそれを行うことができましたが、それはjavaで配列をスライスすることができないため、ブロックを扱う簡単な方法のように思えました。 私にコードを与える必要はありませんが、私はより良いアーキテクチャを探しています。
私はテキスト全体を数字として扱うことはできませんが、すべてのバイトを暗号化すれば、パターンを探すプログラムを作成するのは簡単です – Muricula
テキスト全体を数字として扱うことはできませんが私はちょうどあらゆるバイトを暗号化します、それは頻度分析に落ちます。ブロック全体をパワーアップする必要があります。また、AESのような対称アルゴリズムで何かを暗号化すれば、RSAのポイントは何でしょうか?私はあなたがキーの暗号化に関して何を言っているのか見ていますが、なぜduffie hellman鍵交換を使用しないのですか? 私はdouble型を使用しています。これは、それらが最大の基本データ型だからです。彼らは恋人よりも長い。私はすぐにbigIntegersのためにそれを修正すると思います、私は簡単に始めています。他の実装についてアドバイスしていますか? – Muricula
コメントを編集する際にタイムスタンプをダンプします – Muricula