2017-02-17 176 views
2

好的,所以我有一个名为Kryptert的文本文件被加密。 使用私钥命名private的密钥文件。我想要输出在一个名为Klartext的文本文件中。OpenSSL,用私钥解密

我正要撕掉我的头发,因为我似乎无法弄清楚这一点。

openssl rsautl -decrypt -inkey C:\private.key -in C:\Kryptert.txt -out C:\Klartext.txt 

上面的命令是我用什么,我得到在CMD窗口下面的输出:

C:\Users\Marco>openssl rsautl -decrypt -inkey C:\private.key -in C:\Kryptert.txt -out C:\Klartext.txt 
Loading 'screen' into random state - done 
RSA operation error 
8560:error:0407106B:rsa routines:RSA_padding_check_PKCS1_type_2:block type is not 02:.\crypto\rsa\rsa_pk1.c:190: 
8560:error:04065072:rsa routines:RSA_EAY_PRIVATE_DECRYPT:padding check failed:.\crypto\rsa\rsa_eay.c:592: 

任何人能帮助我了解什么是错的,我怎么能解决这个问题?谢谢。

+1

什么命令被用来加密文件? –

+0

Stack Overflow是编程和开发问题的网站。这个问题似乎与题目无关,因为它不涉及编程或开发。请参阅帮助中心的[我可以询问哪些主题](http://stackoverflow.com/help/on-topic)。也许[超级用户](http://superuser.com/)或[Unix&Linux堆栈交换](http://unix.stackexchange.com/)会是一个更好的地方。另请参阅[我在哪里发布有关Dev Ops的问题?](http://meta.stackexchange.com/q/134306) – jww

回答

5

在这里,你有你需要加密或者使用OpenSSL的解密命令:

解密:

$ openssl rsautl -decrypt -in $ENCRYPTED -out $PLAINTEXT -inkey keys/privkey.pem 

加密:

$ openssl rsautl -encrypt -in $PLAINTEXT -out $PLAINTEXT.encrypt -pubin -inkey keys/pubkey.pem 

希望这有助于! :)