Описанные здесь
функции поддерживают операции зашифрования и расшифрования. До
вызова функций CryptEncrypt и CryptDecrypt необходимо получить
криптографический ключ. Это можно осуществить при помощи функций
CryptGenKey, CryptDeriveKey и CryptImportKey. Когда ключ создан,
определяется алгоритм зашифрования. При помощи функции CryptSetKeyParam можно установить
дополнительные параметры зашифрования.