私は El Gamal 暗号システムで遊んでいます。私の目標は、長い一連のテキストを暗号化および解読できるようにすることです。
El Gamal では、平文が整数である必要があります。String の .getBytes() メソッドを使用して文字列を byte[] に変換し、byte[] から BigInteger を作成しました。暗号化/復号化の後、BigInteger の .toByteArray() メソッドを使用して BigInteger を byte[] に変換し、byte[] から新しい String オブジェクトを作成します。
1035 ビットのキーを使用していますが、これは最大 129 文字の文字列を暗号化/復号化するときに完全に機能します。130 文字以上の場合、解読メソッドから生成される出力が文字化けします。
誰かがこの問題を解決する方法を提案できますか?