如何使用PHP将数字签名(RSA,证书等)添加到任何文件?
发布时间:2020-12-13 18:25:24 所属栏目:PHP教程 来源:网络整理
导读:我需要知道是否可以使用RSA,证书和那些东西,或者只有特定类型的文件可以签名,以数字方式签署任何类型的文件.所有这些,使用 PHP. 例如:纯文本文件可以用数字签名吗?图像怎么样(png,jpeg,bmp)? 我不需要用图形签名“附加”图像. 谢谢您的帮助. 使用 phpsecl
我需要知道是否可以使用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 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |