24.07.2003 18:44:363 вопроса по КриптоПро CSP Ответов: 1
Maxim Egorushkin
1. Поддерживается ли экспорт сессионных ключей (конкретно блочного ключа алгоритма ProCSP ГОСТ 28147-89) в PLAINTEXTKEYBLOB, т.е. открытым текстом, без шифрования его открытым ключом получателя. Я так понял, что не поддерживается. Так ли это?

2. Почему не реализована возможность получения необходимой длины буфера для шифрования? Т.е.
DWORD buffer_needed(/*data size*/);
::CryptEncrypt(key, 0, false, 0, 0, &buffer_needed, 0);
Возвращает ошибку - очень неудобно.

3. Аномально высокая скорость шифрования алгоритмом ProCSP ГОСТ 28147-89, криптопровайдер Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider, параметры алгоритма по-умолчанию, режим CBC, нулевой ВИ.
Вот результаты:
1048576 8388608 33554432
BSafe DESX 168 bits
encryption 130 1091 4376
decryption 150 1191 4776
Microsoft Strong Cryptographic Provider DES 64 bits
encryption 120 931 3695
decryption 120 1021 4095
Microsoft Strong Cryptographic Provider 3DES 192 bits
encryption 290 2323 9173
decryption 300 2413 9673
Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider GOST 28147-89 256 bits
encryption 30 150 570
decryption 30 250 931

(время в миллисекундах)

Чем можно объяснить такую высокую скорость?
 
Ответы:
25.07.2003 10:29:59Василий
1.Точно. Более того, он невозможен и на открытом ключе. Экспорт сессионного ключа возможен только на ключе обмена (выработанном по алгоритму Диффи-Хеллмана)

2. Размер буфера для шифртекса рекомендуется взять равным размеру открытого текста плюс размер блока (8 байт)

> 3. Чем можно объяснить такую высокую скорость?

ПО оптимизировано для ускорения работы за счет реализации базовых функций на ассемблере