我用delphi编写了以下代码。
with TIdHashMessageDigest5.Create do begin
st2.Position := 0;
Digest := HashValue( st2 );
SetLength( Hash, 16 );
Move( Digest, Hash[1], 16);
Free;
end;
我需要将其转换为使用 SHA1 哈希值。我在库中找不到 SHA1 类型。有人可以帮忙吗?我在互联网上寻求帮助,但找不到任何帮助。
看这里:
https://sergworks.wordpress.com/2014/10/25/high-performance-hash-library/
Delphi XE 中的 SHA1 哈希
https://sourceforge.net/projects/sha1implementat/
http://www.colorfultyping.com/generate-a-sha-1-checksum-for-a-given-class-type/
顺便说一句,你没有提到你的 Delphi 版本。如果您使用的是现代版本(XE 以后),我认为它的标准库应该支持 SHA-1、MD5 等。
你可以这样做:
uses IdHashSHA;
function SHA1FromString(const AString: string): string;
var
SHA1: TIdHashSHA1;
begin
SHA1 := TIdHashSHA1.Create;
try
Result := SHA1.HashStringAsHex(AString);
finally
SHA1.Free;
end;
end;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)