我正在实施XML数字签名.我从小步骤开始,所以现在我想解决SHA-1哈希的问题.
在SO中有很多关于此的问题:
......可能还有更多.但是,我正在使用Delphi XE.到目前为止,我已经试过的Lockbox 2(两个Songbeamer和Sourceforge的版本),锁箱3,DCPCrypto2和其他一些人(哈希值是一个易于使用的单位,使用Windows加密功能)
我准备了一个小型试验台,它给了我以下内容:
LockBox2
FAILED: 1 ('abc')
Got: '9f04f41a848514162050e3d68c1a7abb441dc2b5'
Expected: 'a9993e364706816aba3e25717850c26c9cd0d89d'
FAILED: 2 ('abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq')
Got: '51d7d8769ac72c409c5b0e3f69c60adc9a039014'
Expected: '84983e441c3bd26ebaae4aa1f95129e5e54670f1'
Run Code Online (Sandbox Code Playgroud)
LockBox3
FAILED: 1 ('abc')
Got: '9f04f41a848514162050e3d68c1a7abb441dc2b5'
Expected: 'a9993e364706816aba3e25717850c26c9cd0d89d'
FAILED: 2 ('abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq')
Got: '51d7d8769ac72c409c5b0e3f69c60adc9a039014'
Expected: '84983e441c3bd26ebaae4aa1f95129e5e54670f1'
Run Code Online (Sandbox Code Playgroud)
DCPCrypto2
FAILED: 1 ('abc')
Got: '9f04f41a848514162050e3d68c1a7abb441dc2b5'
Expected: 'a9993e364706816aba3e25717850c26c9cd0d89d'
FAILED: 2 ('abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq')
Got: '51d7d8769ac72c409c5b0e3f69c60adc9a039014'
Expected: '84983e441c3bd26ebaae4aa1f95129e5e54670f1'
Run Code Online (Sandbox Code Playgroud)
哈希
Test 1 passes
Test 2 passes
Run Code Online (Sandbox Code Playgroud)
您是否已成功在Delphi XE下编译提到的库并使它们具有适当的值?我对DCPCrypt2 SelfTest程序特别感兴趣.
编辑:我已经用固定的源代码添加了这个答案.谢谢大家的帮助,非常感谢.