Free Pascal是否有实现SHA256或SHA512的方法?

4
在Free Pascal库中,有一个哈希库,可以使用MD5和SHA1哈希算法(http://wiki.freepascal.org/hash)。但是,如果我想使用更高级的算法,比如SHA256或SHA512,我能在Free Pascal中实现吗?搜索FP Wiki没有找到SHA256\SHA512的相关内容。

我不是指“它是否具有进行这种哈希计算的计算能力” - 我意识到如果它能计算MD5或SHA1,它可以计算更大的数字。我的意思是,是否有在FP内编写的函数或一系列函数可以让我做到这一点,因为我找不到任何信息?谢谢。 - Gizmo_the_Great
3个回答

5
在最近的版本中(大约2年左右),有一个名为“hash”的包,其中包含“sha1”和“md5”单元,实现了一些基本的哈希和校验和。
如果需要更多,大多数人使用DCPCrypt,因为它很容易转换

http://www.cityinthesky.co.uk/opensource/dcpcrypt

至少我经常在列表上看到人们在使用它


我即使在Delphi中也使用FPC的md5(使用DLL),因为它比Delphi的快得多。FPC是用Pascal编写的,但具有ROR / ROL内置函数。 - Marco van de Voort

3
在Google代码搜索中,我找到了几个用Pascal实现的单元。
查询: sha256 | sha512 lang:pascal 其中sources之一来自Double Commander,它是一个使用FreePascal和Lazarus开发的norton/total commander克隆版,所以你可以去看看。

FPC 包含的内容是字节序和 64 位清洁。 - Marco van de Voort
谢谢 - 这很有帮助。我还发现了由FreeOTFE开发者编写的组件,名为SDeanComponents - http://www.sdean12.org/ - Gizmo_the_Great

1

对于其它哈希函数,我使用“Delphi Encryption Compendium(DEC)5.2”。我不知道它是否适用于FPC,但你应该试一下。其中包括THash_SHA512THash_SHA256。 可以从这里下载:http://www.torry.net/pages.php?id=519#939342


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接