| ||||
| ||||
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 (время в миллисекундах) Чем можно объяснить такую высокую скорость? | ||||
Ответы: | ||||
| ||||
1.Точно. Более того, он невозможен и на открытом ключе. Экспорт сессионного ключа возможен только на ключе обмена (выработанном по алгоритму Диффи-Хеллмана) 2. Размер буфера для шифртекса рекомендуется взять равным размеру открытого текста плюс размер блока (8 байт) > 3. Чем можно объяснить такую высокую скорость? ПО оптимизировано для ускорения работы за счет реализации базовых функций на ассемблере | ||||