将字符串而不是文件传递给openssl_pkcs7_sign()

时间:2016-02-26 08:46:36

标签: php encryption openssl php-openssl

我正在研究php openSSL库,需要使用pub和priv key来签名字符串。文档中的函数openssl_pkcs7_sign()似乎将文件路径作为文件参数,但我在需要加密的变量中有字符串。我看到它的所有例子都指向写文件。

有什么方法可以将字符串传递给函数吗?或者可能还有其他一些功能?将文件写入磁盘对我的用例来说似乎不太实用。

1 个答案:

答案 0 :(得分:1)

据我所知,不可能

根据the source code of OpenSSL PHP extension,他们使用openssl库函数PKCS7_sign

此函数将BIO流作为输入,可以是缓冲区。

但是,在OpenSSL PHP扩展中,the BIO stream is created as a file,将文件名作为参数。

您可以通过RFC要求实现此新功能,但您可能希望首先在内部邮件列表中讨论此问题。