我正在寻找一个用于Delphi(7)的FOSS SHA1实现。
最好是一些小的,甚至是独立的SHA1,而不是一个庞大的图书馆。易于安装和使用是很好的,但当然可靠性是优先级1。
更新:谢谢,Rob,这段代码就像一个梦想
答案 0 :(得分:6)
使用操作系统内置的Cryptography API。您可以使用Domingo Seoane的Hashes.pas单元在Delphi中使用它,或者您可以使用CryptAcquireContext,CryptCreateHash,重复调用CryptHashData,最后使用CryptGetHashParam编写您自己的例程来获取结果。
我意识到它既不是免费的(如在演讲中)也不是开源的,但也没有分发要求,因为它已经包含在所有客户的系统中。
答案 1 :(得分:5)
TurboPower LockBox是免费且开源的,并且实现了SHA1以及许多其他功能:
功能
版本3正式支持Delphi 2007和Delphi 2010(但可能与Delphi 7一起使用),但版本2支持旧版本的Delphi。
答案 2 :(得分:5)
您在SynCrypto.pas单元中拥有开源MD5,SHA-1,SHA-256和Adler32实现。还包括AES-256加密。
该装置针对速度进行了非常优化(SHA-256和AES-256甚至可以在asm级别进行分析),并且还可以使用VIA C3 / C7 / Nano CPU的非常快速的实时指令(如果可用)。
从Delphi 6到XE。
答案 3 :(得分:3)
您很可能已经在IdHashSHA1
单元(Indy 10的一部分)中预装了SHA-1实现。