Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/279.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
使用OpenSSL/PHP加密库从Windows Crypto API解密RSA_Php_Winapi_Encryption_Openssl_Cryptoapi - Fatal编程技术网

使用OpenSSL/PHP加密库从Windows Crypto API解密RSA

使用OpenSSL/PHP加密库从Windows Crypto API解密RSA,php,winapi,encryption,openssl,cryptoapi,Php,Winapi,Encryption,Openssl,Cryptoapi,我开发了一个C应用程序,其中包含一个组件,该组件使用RSA 2048密钥对小的明文进行加密。加密是使用Windows增强加密api完成的。它似乎工作正常,并向文件输出128字节的密文 我不知道密文的加密形式是什么(是否填充、编码等)(我只是导入公钥并用它加密(没有额外设置)) 无论如何,我需要能够解密密文回明文使用私钥与php脚本 在测试期间,我曾尝试通过命令行使用openssl,但我得到了一个大于mod len的数据错误 在尝试解密密文之前,我需要对其进行任何转换,或者需要使用openssl_

我开发了一个C应用程序,其中包含一个组件,该组件使用RSA 2048密钥对小的明文进行加密。加密是使用Windows增强加密api完成的。它似乎工作正常,并向文件输出128字节的密文

我不知道密文的加密形式是什么(是否填充、编码等)(我只是导入公钥并用它加密(没有额外设置))

无论如何,我需要能够解密密文回明文使用私钥与php脚本

在测试期间,我曾尝试通过命令行使用openssl,但我得到了一个大于mod len的数据错误

在尝试解密密文之前,我需要对其进行任何转换,或者需要使用openssl_private_decrypt指定任何设置。(我目前拥有pem格式的私钥,但我可以将其转换为更多格式)

此外,如果您对其他php库的任何建议比openssl更有效,我们将不胜感激


谢谢。

如果要使用OpenSSL解密数据,请逐字节反转数据。这是因为OpenSSL将它们视为big-endian


这可能对你有帮助。我在计算散列时遇到了类似的问题。当我颠倒字节顺序时,它在OpenSSL中工作得非常好。因此,这可能会对您有所帮助。

对于OpenSSL命令的帮助,这可能是一个更好的论坛。堆栈溢出主要是一个编程问答网站。如果您正在进行任何编程,这可能会有所帮助:。Qt使用OpenSSL,所以我很确定这是一个Windows/OpenSSL问题。还要注意,
PRIVATEKEYBLOB
可能是字节交换的(小端字节数组而不是大端字节数组)。