12.03.2007 15:00:02Шифрование\расшифрование файлов Ответов: 4
Волков
Зашифрование файлов происходит с использованием симметричного алгоритма на сессионном ключе, ключ генерируется функцией CryptGenKey, далее следует зашифрование этого сессионного ключа функцией CryptExportKey и передача его абоненту. Получившая файл сторона расшифровывает сессионный ключ и использует его для расшифрования файла. Вопрос возможно ли обойтись без передачи сессионного, т.е. возможно ли его сгенерировать получптелем сообщения или нет? Заранее благодарен
 
Ответы:
12.03.2007 15:21:10Kirill Sobolev
Симметричный ключ для расшифрования должен быть такой же, как и для шифрования. Если не хотите передавать, можете впоспользоваться функцией CryptDeriveKey
13.03.2007 7:05:18Волков
В функции CryptDeriveKey есть такой параметр HCRYPTHASH hBaseData, что он из себя представляет и как его получить?
13.03.2007 7:16:49Волков
Этот параметр является хэшэм ключевой информации, тогда получается что с помощью CryptDeriveKey можно генерировать сессионные ключи только на основе скажем пароля который знают оба обонента, нельзя никак использовать открытые закрытые ключи пользователей?
13.03.2007 10:20:54Kirill Sobolev
Да, именно так. Схему, которая использует секретные ключи, Вы описали в 1м посте :)