Перейти к контенту

Рекомендуемые сообщения

Кто нибудь может мне объяснить что здесь происходит???

HCRYPTKEY hKey;

if(!CryptGenKey(hCryptProv, alg, CRYPT_EXPORTABLE, &key)) {
return false;
}

if(!CryptExportKey(key, 0, SIMPLEBLOB, 0, 0, &size)) {
return false;
}

QByteArray dump1(size, 0);

if(!CryptExportKey(key, 0, SIMPLEBLOB, 0, (BYTE*)dump1.data(), &size)) {
return false;
}

QByteArray dump2(size, 0);

if(!CryptExportKey(key, 0, SIMPLEBLOB, 0, (BYTE*)dump2.data(), &size)) {
return false;
}

if(dump1 != dump2) {
puts("ЧО ЗА ФИГНЯ???");
}

Как вы думаете, что появится на экране? Правильно! Надпись "ЧО ЗА ФИГНЯ???"

А ПОЧЕМУ???

Ссылка на комментарий
Поделиться на других сайтах

  • 2 недели спустя...

А что собственно смущает? И с какой целью выполняется данный код?

Ключ экспортируется всегда в зашифрованном виде. У нас используется 3 режима экспорта из них 2 зависят от синхропосылки (а для эллиптических асимметричных все 3). Поскольку во втором параметре передается 0, а предыдущего кода не видно, то сказать что происходит сложно. Скорее всего ключ экспортируется на производном от пароля в режиме гаммирования с обратной связью со случайной синхропосылкой. Блобы в этом случае естественно разные получаются.

Просьба более подробно описать решаемую задачу в письме на hotline@infotecs.ru

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...

Важная информация

Продолжая пользоваться сайтом вы принимаете Условия использования.