我正在寻找一款免费且最新的加密库,用于Delphi 2010,可实现RSA和AES(Rijndael)功能。
我需要一个免费的库,因为我计划编写并发布一些使用它的示例代码。
虽然TurboPower LockBox的Delphi 2010版本已经发布在SongBeamer网站上,包括这两个功能,但我担心它有点过时。例如,RSA密钥长度较短,并且多年来没有新的安全功能。
更新: 是否认为LockBox过时或缺少重要功能是不正确的?它对生产开发仍然有意义吗?(特别是RSA密钥大小)
我正在寻找一款免费且最新的加密库,用于Delphi 2010,可实现RSA和AES(Rijndael)功能。
我需要一个免费的库,因为我计划编写并发布一些使用它的示例代码。
虽然TurboPower LockBox的Delphi 2010版本已经发布在SongBeamer网站上,包括这两个功能,但我担心它有点过时。例如,RSA密钥长度较短,并且多年来没有新的安全功能。
更新: 是否认为LockBox过时或缺少重要功能是不正确的?它对生产开发仍然有意义吗?(特别是RSA密钥大小)
TurboPower LockBox 3.1.0已经发布,它支持:
http://sourceforge.net/projects/tplockbox/ 和 http://lockbox.seanbdurkin.id.au/
RSA算法并非过时,但关键长度很重要。它仍然广泛使用。如果需要在2030年之后保证安全性,应该使用一个3072位的RSA密钥长度。这只是计算能力提高的结果,不是算法的弱点。
在 SongBeamer开始维护LockBox(Delphi 2007)之前,我发现RSA不稳定 - 会偶尔崩溃或产生错误的结果。虽然这可能已经被修复了。如果打算使用它,请确保它支持所需的密钥长度,并创建一些已知输入和输出的自动化测试,确保它稳定运行。如果确实稳定,则可以放心使用。
您还可以使用Microsoft Crypto API来进行RSA加密。我为Delphi 2007写了一个包装器,但没有更新到Unicode版本(我知道,这很不好)。其他人可能轻松地将其更新为Unicode版本。
另一个选择是通过COM互操作或其他方式使用.NET Framework的加密功能。
嗨,Bruce,我使用这个库自从 Delphi 5 开始:
是免费软件,附带源代码,不幸的是不包括 RSA。
看起来D2010工作已完成:
TurboPower LockBox . 数据加密 . 2009年9月4日 . 下载
状态:应该正常工作。
此库已扩展,以支持Ansi和UnicodeStrings的加密。
2009年9月4日
* Delphi 2010包
* 应该能够编译而无需提示和警告
正如Argalatyr所提到的,DCPCrypt可以与Delphi 2009一起使用,但它不支持RSA;
ChillKat支持Delphi的RSA和AES,但它是收费的;
Sergey Kirichenko制作了一个免费的Rijndael实现,您可以在此处下载:http://rcolonel.tripod.com/dwnload/rc_rnd.zip。这些文件的日期是2000年11月,因此我不知道它是否可以直接在更新的Delphi中使用。
曾经有一个zip文件可以在此处下载Delphi代码:http://ace.ulyssis.student.kuleuven.ac.be/~triade/GInt/bin/RSA.zip,但开发人员可能已经完成了他的研究,大学删除了他的主页。在这个中国网页上,我可以看到文件的内容(在页面上搜索RSA.pas并单击链接)。
我不知道您所说的“long in the tooth”(老?)是什么意思,但我会选择Lockbox,因为它提供了您需要的一切。除了2009年更新之外,最后一个官方更改是在2003年进行的。但是,如果它能正常工作,那就没问题。
我还没有在D2010中尝试过,但是DCPcrypt据说可以在D2009中使用。
这是开源的,所以请随意贡献。
好像有很多免费的 Delphi AES 实现。欢迎在这里添加你喜欢的。
似乎没有那么多免费的 RSA 实现,而且几乎没有库提供两者都支持的功能。
看起来 LockBox 仍然是一个相当合理的选择。特别是因为我不需要需要数年才能破解的加密。
我认为直接使用 Microsoft 的 Crypto API 可能是最实用的选择。