Java 非商业密钥加密不起作用
下面提到的代码在运行时显示异常。想了解公钥/私钥的工作原理Java 非商业密钥加密不起作用,java,security,Java,Security,下面提到的代码在运行时显示异常。想了解公钥/私钥的工作原理 KeyPairGenerator generator = KeyPairGenerator.getInstance("RSA"); KeyPair keyPair = generator.generateKeyPair(); PublicKey publicKey = keyPair.getPublic(); PrivateKey privateKey = keyPair.getPriva
KeyPairGenerator generator = KeyPairGenerator.getInstance("RSA");
KeyPair keyPair = generator.generateKeyPair();
PublicKey publicKey = keyPair.getPublic();
PrivateKey privateKey = keyPair.getPrivate();
Cipher aes = Cipher.getInstance("AES/ECB/PKCS5Padding");
aes.init(Cipher.ENCRYPT_MODE,publicKey);
byte[] cipherText = aes.doFinal("my password".getBytes());
System.out.println(new String(cipherText));
下面提到的是例外
线程“main”java.security.InvalidKeyException中的异常:密钥大小或默认参数非法您在使用AES加密时实例化了RSA密钥生成器。不确定该实现,但AES是对称密码。在这里,您可能会找到更多关于如何选择不对称的信息。非常感谢你。我已经将AES更改为RSA,将cipher.getInstance的行更改为RSA/ECB/PKCS1Padding,这对我来说很好。