如何使用PHP将数字签名(RSA,证书等)添加到任何文件?

前端之家收集整理的这篇文章主要介绍了如何使用PHP将数字签名(RSA,证书等)添加到任何文件?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要知道是否可以使用RSA,证书和那些东西,或者只有特定类型的文件可以签名,以数字方式签署任何类型的文件.所有这些,使用 PHP.

例如:纯文本文件可以用数字签名吗?图像怎么样(png,jpeg,bmp)?

我不需要用图形签名“附加”图像.

谢谢您的帮助.

使用 phpseclib,a pure PHP RSA implementation(更新 here):
<?PHP
include('Crypt/RSA.PHP');

$rsa = new Crypt_RSA();
extract($rsa->createKey());

$plaintext = 'terrafrost';

$rsa->loadKey($privatekey);
$signature = $rsa->sign($plaintext);

$rsa->loadKey($publickey);
echo $rsa->verify($plaintext,$signature) ? 'verified' : 'unverified';
?>

与CLI openssl类似,如下所示:

openssl dgst -sha1 -sigopt rsa_padding_mode:pss -sigopt rsa_pss_saltlen:-1 -out signature.txt -sign privatekey.txt plaintext.txt 
openssl dgst -sha1 -sigopt rsa_padding_mode:pss -sigopt rsa_pss_saltlen:-1 -prverify privatekey.txt -signature signature.txt plaintext.txt

猜你在找的PHP相关文章