我在一个名为 digital_signatue1.txt 的文件中有一个 base64 编码的数字签名:
LE3v7aHDOtCYEWrURYfxrq4tAx5zg0siBK0yBdYJTxWTFw/tLoEOcT0JZPRy8RMY
bkCuLClsdVnjYhyfots3RyVl4uaSd2gpEnIN6YCo/DBCBltfWri3rFwtSeV/Gm9K
4+fMNiziTYjUWFS+1v1rbFxv4MbsRFEfYEtU0+xVHN8=
为了对这个数字签名进行 base64 解码,我使用了以下命令:
openssl base64 -d -in digital_signature1.txt -out digital_signature2.txt
然后为了验证数字签名是否由发件人签名,我使用了以下命令:
openssl rsautl -verify -inkey sender-cert.pem -certin -in digital_signature2.txt
但是,它给了我以下输出:
Loading 'screen' into random state - done
RSA operation error
4080:error:0407006A:rsa routines:RSA_padding_check_PKCS1_type_1:block type is not 01:./crypto/rsa/rsa_pk1.c:100:
4080:error:04067072:rsa routines:RSA_EAY_PUBLIC_DECRYPT:padding check failed:./crypto/rsa/rsa_eay.c:699:
知道我做错了什么吗?