17.04.2006 13:34:55Алгоритмы создания ключей Ответов: 7
Андрей Свердличенко
Добрый день.
Не рассказано ли где-нибудь в документации, как именно функция CPDeriveKey создает ключ для ГОСТ 28147-89 из хэша? Нужно сделать совместимую с ней.
 
Ответы:
17.04.2006 16:08:01Василий
Вообще-то, использование этой функции в принципе не рекомендуется по соображениям безопасности. Кроме того, можно обойтись и без её использования.
17.04.2006 16:33:06Андрей Свердличенко
Да, я в курсе что не рекомендуется и можно обойтись, если применить схему с асимметричной криптографией. Но это выходит за рамки текущих работ. В настоящий момент надо обойтись уже имеющимся shared secret.
17.04.2006 17:39:01Василий
Можно и так. Только... если хотите использовать CryptDeriveKey (или CPDerriveKey) - то и используйте её. Зачем аналог?
17.04.2006 17:43:27Андрей Свердличенко
Затем, что под FreeBSD 6.x CPDeriveKey отсутствует :)
18.04.2006 17:19:53Василий
Вот ответ наших программистов:

Независимо от платформы и способа компиляции (драйвер или недрайвер) CSP содержит CPDeriveKey.

Вопрос - как Вы пытаетесь её вызывать, почему считаете, что её нет?
18.04.2006 17:28:12Андрей Свердличенко
Ее нет, потому что нет самого CSP.

Есть два абонента, один на FreeBSD, второй на Windows. Та сторона, что на Windows, использует CSP. Та, что на FreeBSD не использует CSP вообще, потому что его нет. Надо обеспечить обмен информацией.
Шифрование совместимое у нас есть, осталось получить общий ключ. Т.к. загрузить ключ в CSP в открытом виде невозможно, он вырабатывается из shared secret при помощи DeriveKey. Чтобы он вырабатывался одинаково, мне нужно сделать такую же функцию на стороне FreeBSD.
20.04.2006 13:16:08Василий
Понятно. Хотя... почему бы не использовать КриптоПро CSP 3.0 на FreeBSD...
По поводу алгоритма - вопрос к нашему руководству. Обратитесь к Сергею Леонтьеву, lse@cryptopro.ru