2014-10-01 74 views
-1

我想用openssl创建一个签名。我有一个像下面这样的可执行命令,但我不知道如何将它转换为PHP。php openssl签名文件

openssl cms -sign -inkey key.pem -signer signature.pem -outform DER -in xy.xml 

如何在PHP中调用此命令?

+2

我们不是一个翻译服务。 – 2014-10-01 14:00:36

回答

2
exec('openssl cms -sign -inkey key.pem -signer signature.pem -outform DER -in xy.xml') 

使用这个命令可以使PHP调用操作系统的OpenSSL的命令,当你把它写在终端上像你一样。

如果你想这样做本机方式(PHP函数),你可以看看OpenSSL库http://php.net/manual/en/book.openssl.php和函数符号http://php.net/manual/en/function.openssl-sign.php

+4

请给你的答案添加一些解释。仅有代码的答案(有时)足够好,但代码+解释的答案总是更好 – Barranka 2014-10-01 16:35:47

+0

好的男人,完成:) – Uxio 2014-10-01 17:17:26

+0

我正在浏览OpenSSL库,但我无法弄清楚如何使用首选项执行函数PHP中的参数。所以我问了这个问题。因为符号函数不提供使用的参数,并且pkcs7函数有限制。所以我会使用shell_exec函数。 – 2014-10-02 06:36:09