Асимметричное шифрование Delphi
Я ищу реализацию Delphi асимметричного алгоритма шифрования без каких-либо зависимостей от внешних DLL. Есть ли свободные?
моя цель-зашифровать / расшифровать строку (или массив байтов) с помощью пары открытый/закрытый ключ.
6 ответов
SecureBlackBox от Eldos предлагает собственное, комплексное решение-включая управление сертификатами и доступ к внешним криптографическим устройствам (т. е. токенам USB)
LockBox теперь улучшен. Он позволяет длинные ключи для RSA, шифра AES и находится в активной разработке. Это бесплатный, с открытым исходным кодом и 100% собственный код без DLL.
вы можете попробовать Lockbox -http://sourceforge.net/projects/tplockbox/. Это бесплатно и включает в себя RSA среди других (Blowfish, MD5, SHA-1, DES, triple-DES, Rijndael и цифровая подпись сообщений).
Он поставляется в комплекте с хорошим примером RSA, который демонстрирует, как генерировать ваши открытые/закрытые ключи и как на самом деле шифровать и расшифровывать данные с помощью ключей.
в настоящее время я использую его с Delphi 2010.
Я понимаю, что в исходном вопросе указано "нет внешних библиотек DLL", но при отсутствии приемлемого ответа, Возможно, вам стоит взглянуть на Библиотеки Библиотеки OpenSSL вместе с это Delphi link который содержит единицу импорта для библиотеки и некоторые хорошие примеры ее использования, включая шифрование RSA.
Я возился с этим и надо работать. Есть некоторые изменения, необходимые для работы с Unicode Delphi , но в основном это сделайте с изменением PChar на PAnsiChar или PBytes.
Простые оболочки Delphi теперь позволяют мне подписывать / проверять / шифровать sym или asym и использовать SSL. И давайте будем честными - распределение DLL OpenSSL намного проще, чем некоторые из предложений Microsoft. Плюс он бесплатный и ухоженный.
взгляните на пакет FGInt на этом сайте:http://submanifold.be/
Если вы можете переварить использование служб Windows, есть крипто API:http://msdn.microsoft.com/en-us/library/aa380255 (v=VS.85).aspx
Если вы нацелены на Vista и выше, есть новый API криптографии: следующее поколение. Это также поддерживает эллиптическую кривую crypto:http://msdn.microsoft.com/en-us/library/aa376210 (VS.85).aspx
еще один очень хороший довольно полный пакет - это Delphi Encryption Compendium (DEC) 5.2. Вы можете скачать (бесплатно с источником) изhttp://www.torry.net/pages.php?id=519#939342.