【问题标题】:Verifying a SHA1 Digest from a text string从文本字符串验证 SHA1 摘要
【发布时间】:2011-03-30 21:17:03
【问题描述】:

我在验证文本字符串的 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 文件包含已编码的字符串。

【问题讨论】:

    标签: string openssl sha1 decode digest


    【解决方案1】:

    openssl dgst -sha1 -verify Public_key.pem -signature hash1 test1

    我不熟悉openssl,但是我在上面的命令中没有看到任何参数表明哈希文件是用base64编码的。也许您应该在验证之前将 base64 编码文件转换为二进制文件?

    【讨论】:

      【解决方案2】:

      你应该先base64 docode openssl dgst -sha1 -verify Public_key.pem -signature hash1_decoded test1

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-08
        • 2011-07-08
        • 1970-01-01
        • 2011-11-13
        相关资源
        最近更新 更多