23.11.2004 12:08:36Скорости работы КриптоПро Ответов: 6
Василий Старостин
Скажите пожалуйста, каковы в вашей реализации:

1. Скорости работы алгоритмов симметричный ГОСТ-89, хэш ГОСТ-89, цифровых подписей (проверка) ГОСТ-94 и ГОСТ-2001?
(желательно, кол-во операций на типичном P4 hyperThreading)

2. Как измениться скорость работы цифровой подписи (проверка), если будут одновременно использоваться примерно 1000-2000 ключей? Это реально? То же самое интересует для симметричного шифрования.

3. Позволяет ли КриптоПро экспортировать закрытый ключ (подписи) в файл и затем загружать его обратно?
 
Ответы:
23.11.2004 14:05:54bor1
1. На Intel Pentium 4 HT 3.066 GHz скорость реализации ГОСТ28147-89, режим простой замены: 60 Мб/с, режим гаммирования с обратной связью: 44 Мб/с. хэш ГОСТ Р34.11-94: 43 Мб/с. ГОСТ Р34.10-2001, проверка: 390 операций/с. тестирование ГОСТ Р34.10-94 не проводилось. Все сказанное касается версии CSP 3.0, в настоящее время тестируемой.
2. В приницпе, можно и 1000 ключей. Тестирование производительности в таком режиме не проводилось.
3. нет, сам провайдер этого сделать не сможет.
23.11.2004 15:39:18Юрий
...Вопрос насчет второго пункта: а какая разница, сколько цифровых подписей (экспортированных сессионных ключей) в PKCS-сообщении? Все равно ведь для проверки ЭЦП используется фиксированно только один подписчик и определенный объем тестируемых данных. А вот скорость поиска и получения подписчиков может вариьроваться, но, на мой взгляд, от криптопровайдера это не зависит.

Или я в чем-то не прав?
23.11.2004 18:06:49bor1
Скорость зависит от числа параллельно запущенных нитей. Если на компьютере с n процессорами запустить m>n нитей, общая скорость не будет в n раз выше, чем при запуске одной нити.
Хотя мы работаем над тем, чтобы зависимость была минимальной :)
25.11.2004 16:28:10Василий Старостин
Спасибо за ответы. Еще вопросы:

> тестирование ГОСТ Р34.10-94 не проводилось
Ваша оценка его скорости по сравнению с 2001-м ?

> нет, сам провайдер этого сделать не сможет.
У вас в описании API указаны ф-ции
CPExportKey и CPImportKey. Разве они не решают эту задачу?

Насчет 1000 ключей, имеется в виду вот что: Есть сервер, у него есть 1000 клиентов, обращающихся к нему с периодичностью раз в 1-10 минут; у каждого клиента свой закрытый ключ для подписи сообщений. Т.е. системе (Windows) придется все время хранить и держать в памяти всю 1000 ключей. Учитывая особый размер ключа (я так понимаю, он храниться неявно), накладные расходы могут оказаться очень велики.
25.11.2004 17:56:52bor1
>Ваша оценка его скорости по сравнению с 2001-м ?
по идее, должны быть примерно одинаковы.

Не думаю, что разместить в памяти 1000 ключей, и поочередно обращаться к ним будет очень сложно или долго. Если Вы говорите, что минимальный интервал между запросами - минута, то чтобы забить мощности процессора работой с ключами, тысячи явно недостаточно.
25.11.2004 18:08:09Муругов Сергей Михайлович
А не проще ли при формировании ЭЦП в нее на стороне клиента подкладывать сертификат клиента, а на стороне сервера производить обычную процедуру проверки ЭЦП с построением цепочки сертификации. И ничего в памяти держать не надо, система динамически развиваемая получится.