シンプルテキストを暗号化された形式に変換するためにRSA暗号化を使用しています。
my plain text is : hello
encrypted text : [B@d7eed7
さて、暗号化されたテキストを単純なプレーンテキストに変換する方法私は次のコードを使用しています
KeyPairGenerator keygenerator = KeyPairGenerator.getInstance("RSA");
SecureRandom random = SecureRandom.getInstance("SHA1PRNG", "SUN");
keygenerator.initialize(1024, random);
KeyPair keypair = keygenerator.generateKeyPair();
PrivateKey privateKey = keypair.getPrivate();
PublicKey publicKey = keypair.getPublic();
Cipher cipher = Cipher.getInstance("RSA");
String arrayStr = "[b@d7eed7";
byte ciphertext = arrayStr.getBytes();
cipher.init(Cipher.DECRYPT_MODE, privateKey);
byte[] cleartext1 = cipher.doFinal(ciphertext);
System.out.println("the decrypted cleartext is: " + new String(cleartext1));
javax.crypto.BadPaddingExceptionが発生します:データはゼロで始まる必要があります
助けが必要 !!