Статус: Участник
Группы: Участники
Зарегистрирован: 08.10.2015(UTC) Сообщений: 14  Откуда: Москва Сказал(а) «Спасибо»: 1 раз
|
Всем добрый день. Возникла задача сделать расшифровку сообщения, зашифрованного через CryptEncryptMessage средствами PKCS#11 библиотек. Как выяснилось штатного механизма интерфейс PKCS#11 не предоставляет. Почитав и погуглив выяснил, что функция CryptEncryptMessage генерирует эфемерный ключ отправителя, и передает его открытую часть в сообщении. Как я понял, для того чтобы его расшифровать мне нужно выполнить следующие действия:
1. Получить из сообщения зашифрованный текст 2. Получить из сообщения открытый ключ отправителя. 3. Получить из сообщения зашифрованный сессионный ключ. 3. На основании ключа отправителя и ключа получателя сгенерировать ключ согласования. 4. При помощи него расшифровать сессионный ключ 5. Расшифровать этим ключом сообщение.
А для шифрования нужно соответственно: 1. Сгенерировать эфемерный ключ отправителя. 2. На основании его закрытой части и открытой части ключа получателя получить ключ согласования. 3. С его помощью сгенерировать сессионный ключ 4. Зашифровать сообщение полученным ключом. 5. Зашифровать сессионный ключ. 6. Упаковать все это в сообщение и добавить к нему открытую часть эфемерного ключа.
Вопросов собственно несколько: 1. Правильный ли механизм я описал? 2. Собственно интересует описание формата сообщения которое генрит CryptEncryptMessage. И соответственно: 2.1 Где в нем искать открытую часть ключа? 2.2 Где в нем искать зашифрованный сессионный ключ 2.3. Что, и в каком порядке туда класть, чтобы полученное сообщение можно было расшифровать через CryptDecryptMessage
|
|
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close