LockBox现在得到了改进。它允许RSA,AES密码的长密钥,并且正在积极开发中。 它是免费的,开放源代码和100%本机代码,没有DLL。
看看这个网站上的FGInt包: http://submanifold.be/
如果您可以使用Windows服务,那么就有Crypto API: http://msdn.microsoft.com/en-us/library/aa380255(v=VS.85).aspx
如果您的目标是Vista及以上版本,那就是新的Cryptography API:Next Generation。这也支持Elliptic Curve加密: http://msdn.microsoft.com/en-us/library/aa376210(VS.85).aspx
SecureBlackBox 来自Eldos提供原生的全面解决方案 - 包括证书管理和访问外部加密设备(即USB令牌)
我意识到原始问题说“没有外部DLL”,但在没有可接受的答案的情况下,你应该看一下 OpenSSL DLL 随着 这个Delphi链接 其中包含库的导入单元和一些如何使用它的好例子,包括RSA加密。 我对此进行了修改并使其工作得很好。使其与unicode Delphi一起工作需要进行一些更改 - 但这些更改主要与将PChar更改为PAnsiChar或PBytes有关。 简单的Delphi包装器现在允许我签署/验证/加密sym或asym并使用SSL。说实话 - OpenSSL DLL的分发比一些微软产品更直接。此外,它是免费的,维护良好。
你可以试试Lockbox - http://sourceforge.net/projects/tplockbox/ 。它是免费的,包括RSA等(Blowfish,MD5,SHA-1,DES,三重DES,Rijndael,以及消息的数字签名)。
它附带了一个很好的RSA示例,演示了如何生成公钥/私钥以及如何使用密钥实际加密和解密数据。
我目前正在使用Delphi 2010。
另一个非常好的相当完整的软件包是Delphi Encryption Compendium(DEC)5.2。您可以从下载(免费提供) http://www.torry.net/pages.php?id=519#939342 。