Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline ber5erk  
#1 Оставлено : 24 февраля 2010 г. 22:27:11(UTC)
ber5erk

Статус: Участник

Группы: Участники
Зарегистрирован: 10.12.2009(UTC)
Сообщений: 24
Откуда: Москва

Добрый день.

Существует следующая проблема:
необходимо получить закрытый ключ подписи в расшифрованном виде.

Для этого применяется следующая схема:
1) AcquireContext( &hProv, CONT_NAME, CRYPT_MACHINE_KEYSET, &VTableProv );
2) GetUserKey( hProv, AT_SIGNATURE, &hSignKey );
3) GenKey( hProv, CALG_G28147, 0, &hCryptKey );
4) dparam = CRYPT_MODE_ECB;
SetKeyParam( hProv, hCryptKey, KP_MODE, pdparam, 0 ); // pdparam == &dparam
5) DuplicateKey( hProv, hCryptKey, NULL, 0, &hDecryptKey );
6) dparam = CALG_PRO_EXPORT;
SetKeyParam( hProv, hCryptKey, KP_ALGID, pdparam, 0 ); // pdparam == &dparam
7) ExportKey( hProv, hSignKey, hCryptKey, PRIVATEKEYBLOB, 0, &pucDataBuf[ 0 ], &uiDataBufLen );
8) SetKeyParam( hProv, hDecryptKey, KP_IV, pucCont1IV, 0 ); // pucCont1IV - IV ключа
9) Decrypt( hProv, hDecryptKey, 0, 0, 0, pucCont1PrivKey, &uiDataBufLen ); // pucCont1PrivKey - тело ключа

Правилен ли такой подход? Особенно интересны п.7 и п.9, в которых используются
по сути разные ключи (с разными параметрами) для симметричных действий
(зашифрование/расшифрование).
Offline Максим Коллегин  
#2 Оставлено : 25 февраля 2010 г. 1:13:24(UTC)
Максим Коллегин

Статус: Сотрудник

Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,398
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 37 раз
Поблагодарили: 719 раз в 623 постах
Хм. Тут написано что-то очень странное. Закрытый ключ можно получить зашифрованным (экспортированным) на симметричном, если экспорт из контейнера разрешен.
После Export возможен только Import в контейнер, но не Decrypt.
А какая стоит задача?
Знания в базе знаний, поддержка в техподдержке
Offline ber5erk  
#3 Оставлено : 25 февраля 2010 г. 16:18:25(UTC)
ber5erk

Статус: Участник

Группы: Участники
Зарегистрирован: 10.12.2009(UTC)
Сообщений: 24
Откуда: Москва

Задача описана в первом посте:
"необходимо получить закрытый ключ подписи в расшифрованном виде".

То, что в нормальных условиях необходимо делать экспорт/импорт на ключе
зашифрования (расшифрования) - это понятно. Нужен именно Decrypt после
экспорта, а не импорт в контейнер. Можно ли это сделать вашими средствами?
Offline ber5erk  
#4 Оставлено : 26 февраля 2010 г. 21:46:35(UTC)
ber5erk

Статус: Участник

Группы: Участники
Зарегистрирован: 10.12.2009(UTC)
Сообщений: 24
Откуда: Москва

Ответа, я так понимаю, ждать не стоит, да?
Offline Максим Коллегин  
#5 Оставлено : 26 февраля 2010 г. 21:48:07(UTC)
Максим Коллегин

Статус: Сотрудник

Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,398
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 37 раз
Поблагодарили: 719 раз в 623 постах
С помощью наших продуктов это сделать нельзя.
Знания в базе знаний, поддержка в техподдержке
Offline ber5erk  
#6 Оставлено : 4 марта 2010 г. 17:55:43(UTC)
ber5erk

Статус: Участник

Группы: Участники
Зарегистрирован: 10.12.2009(UTC)
Сообщений: 24
Откуда: Москва

Спасибо и на том. Будем стараться ;-).
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.