 |
Шифрование данных с использованием средств криптографии WINDOWS.
Использование объектов криптографии CAPICOM в VisualFoxPro
Как известно, средства криптографии включены в состав Windows (по крайней мере, насколько мне
известно, начиная с Win95). Для использования этих средств в приложениях, Microsoft любезно
предоставила CryptoAPI. Но его использование может показаться сложным для разработчиков на
Фоксе не знакомых с языком программирования Си.
Однако есть еще одно решение с помощью которого применение средств криптографии Windows
становиться предельно просто, это CAPICOM. Весь код шифрования/дешифрования занимает несколько
строк, надо лишь иметь зарегистрированную в системе библиотеку CAPICOM.dll.
Шифрование строки символов
- oCAPI = CREATEOBJECT('CAPICOM.EncryptedData') && создаем
объект
- oCAPI.Content = "Test Data for
encryption" && шифруемая строка
- oCAPI.setsecret("MyPassword")
&& генерируем из пароля ключ шифрования
- cEncData = oCAPI.encrypt()
&& Шифруем
- release oCAPI
&& освобождаем объект
- ? cEncData
Переменная cEncData содержит теперь контент с зашифрованной строкой
Дешифрование
- oCAPI = CREATEOBJECT('CAPICOM.EncryptedData')
- oCAPI.setsecret("MyPassword")
- oCAPI.decrypt(cEncData)
- ? oCAPI.Content
Свойство Content теперь содержит расшифрованную строку.
Настолько просто, что теперь данные не шифрует только ленивый :0)
При необходимости использования алгоритма шифрования и длины ключа, отличных от используемых по
умолчанию необходимо перед вызовом метода setsecret() установить свойства объекта
Algorithm - Name и KeyLength.
Например:
- oCAPI.Algorithm.Name =
CAPICOM_ENCRYPTION_ALGORITHM_RC4
- oCAPI.Algorithm.KeyLength =
CAPICOM_ENCRYPTION_KEY_LENGTH_MAXIMUM
Список констант возможных алгоритмов см CAPICOM.h
При дешифровке нет необходимости указывать алгоритм и длину ключа, поскольку при шифровании,
CAPICOM “укладывает” эти данные в контент.
Кроме шифрования CAPICOM может быть использовано для формирования цифровой подписи, проверки
сигнатур, хеширования данных, работы с хранилищами сертификатов.
Скачать CAPICOM 2.0 можно здесь:
http://download.microsoft.com/download/whistler/Install/2.0/W982KMeXP/EN-US/CC2RINST.EXE
Установка
• Скопируйте CAPICOM.dll в системную папку Windows
• Зарегистрируйте, для этого в папке с установленным CAPICOM.dll в командной строке
введите команду:
- regsvr32 CAPICOM.dll
CAPICOM 1.0 - может быть использовано в среде Microsoft Windows 95, Microsoft Windows 98,
Microsoft Windows ME, Microsoft Windows NT 4.0, Microsoft Windows 2000, Windows XP и Windows .NET
Server.
CAPICOM 2.0 - Windows 98, Windows Me, Windows NT 4.0, Windows 2000, Windows XP и Windows .NET
Server.
Для обоих CAPICOM 1.0 и CAPICOM 2.0, требуется наличие Microsoft Internet Explorer не младше
версии 5.0.
|
|