解密使用java中的openSSL加密的文本

问题描述 投票:0回答:1

如果生成RSA密钥和加密文本如下

$ openssl genrsa -out private.pem 1024
$ openssl rsa -in private.pem -out public.pem -outform PEM -pubout
$ echo 'too many secrets' > file.txt
$ openssl rsautl -encrypt -inkey public.pem -pubin -in file.txt -out file.ssl

现在我想用JAVA源代码解密。有没有办法做到这一点?

java public-key-encryption
1个回答
0
投票

是的,我们的代码就是这样做的。我们使用openssl工具加密数据库加密密钥,然后使用Java内置的Crypto包在Java中解密它们:

https://docs.oracle.com/javase/7/docs/api/javax/crypto/package-summary.html

我想这个S.O.帖子可能会为您提供所需的信息:

Java equivalent of an OpenSSL AES CBC encryption

这里似乎也是好东西:

Java decryption of an encrypted file with openssl aes 256 cbc

这个问题应该有多个答案可以通过Google或之前的S.O.除了这些之外的问题。我认为这些帖子的基本思路就在这里。诀窍是为您用于加密的任何加密参数使一切正确。您似乎正在使用所有默认值。我们使用-aes-256-cbc选项。如果您可以控制可以使用的加密参数,那么找到答案可能就更容易了。

© www.soinside.com 2019 - 2024. All rights reserved.