Функция CPDuplicateKey() создает
точную копию заданного ключа, включая все его переменные,
определяющие внутреннее состояние ключа (например, вектор IV).
[in] Дескриптор криптопровайдера. Получается при помощи функции
CPAcquireContext().
hKey
[in] Дескриптор исходного (копируемого) ключа. Возможно
дублирование только ключей класса ALG_CLASS_DATA_ENCRYPT (см.
CryptGetProvParam в MS CryptoAPI 2.0 ).
pdwReserved
[in] Параметр зарезервирован для будущего использования и
должен быть NULL.
dwFlags
[in] Параметр зарезервирован для будущего использования и
должен быть нулевым.
phKey
[out] Адрес, по которому функция возвращает дескриптор
скопированного ключа.
Возвращаемые значения:
При успешном завершении функция возвращает TRUE, в противном случае
возвращается FALSE. Если возвращается FALSE, соответствующий код
ошибки (см. таблицу) может быть получен через функцию
GetLastError().
Windows
2000/XP/2003: Необходимо Windows 2000 SP4 или старше с Internet
Explorer 6.0 или старше. Windows
NT/95/98/ME: CSP 3.0 не поддерживает (см. КриптоПро CSP
2.0 ). Solaris: 9
Update 4 или выше. FreeBSD:
FreeBSD 5.2 или выше Linux: RedHat
7.3, RedHad 9.0. Файл описания:
Прототип описан в файле wincsp.h. Ядро Windows
NT: IRQL < DISPATCH_LEVEL