我在验证文本字符串的 base64 中的 SHA1 摘要时遇到问题。
我在一个文件(test1)中有这个文本字符串:
2008-03-10;2008-03-10T15:58:00;FT 1/1;28.07;
我使用以下命令对其进行编码(请记住,我编码的是文本字符串而不是文本文件本身):
openssl dgst -sha1 -sign Private_key.pem < test1 | openssl enc -base64 > hash1
这导致以下摘要:
F8952fjEClltx2tF9m6/QTFynFjSuiboMslNZ1ag9oR5iIivgYYa0cNa0wJeWXlsf8QQVHUol303hp7XmIy5/kFOiV0v8QH6SF0Q5zNsDtpeFh2ZJ256y0DkJMSQqCq3oSka+9zIXXRkXgEsSv6VScCYv8VTlIcGjsablpR6A4=
现在我想使用公钥验证这个摘要,但是我使用的命令是 openssl how-to 中给出的示例:
openssl dgst -sha1 -verify Public_key.pem -signature hash1 test1
但这总是给我“验证失败”。
注意: hash1 文件没有任何 \n 并且 test1 文件包含已编码的字符串。