Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 使用公钥进行Openssl解密_Linux_Openssl - Fatal编程技术网

Linux 使用公钥进行Openssl解密

Linux 使用公钥进行Openssl解密,linux,openssl,Linux,Openssl,我需要解密一个使用私钥加密的文件。我有一个公钥,可以用来解密这个文件。我怎样才能做到这一点。我做到了: openssl rsautl -in file -inkey key.pem 但这是行不通的。这将错误显示为: unable to load Private Key 3074128072:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:696:Expecting: ANY PRIVATE KEY 公钥不能用于

我需要解密一个使用私钥加密的文件。我有一个公钥,可以用来解密这个文件。我怎样才能做到这一点。我做到了:

openssl rsautl -in file -inkey key.pem
但这是行不通的。这将错误显示为:

unable to load Private Key
3074128072:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:696:Expecting: ANY PRIVATE KEY

公钥不能用于解密,它们只能用于加密和验证加密签名。

与所有人不同的是,事实上,只有在使用适当的私钥对数据进行加密的情况下,才可以使用公钥进行解密

至于如何对其进行解密,从我所看到的来看,openssl实用程序并不附带此功能。似乎您必须使用一些利用OpenSSL C API()的东西


可以直接使用C API,也可以使用PHP与OpenSSL的绑定。

但对我来说,这就是我所拥有的一切。。。我能把公钥转换成私钥a然后解密吗。。。有可能吗?没有其他因素。我不明白你想说的。加密应该用你的公钥完成,解密应该用匹配的私钥(很明显,只有你有)-这也是我搜索的全部内容。。。但我的问题是我说了什么。。。有办法解决这个问题。。但我必须对此进行大量研究……这通常是通过签名API来处理的。签名是使用私钥完成的,因此任何使用公钥的人都可以验证真实性。