C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
CryptoAPI, Ключ для шифрования
vvoid
Отправлено: 15.12.2004, 15:20


Машинист паровоза

Группа: Участник
Сообщений: 171



Всем приветы!!!
Есть в Винде, несколько кривая, на мой взгляд, библиотчка — CryptoAPI зовётся! Люди, если кно-нить пользовался и РАЗБИРАЛСЯ в ней, подскажите, как там узнать ключ (набор байтов, из которых состоит ключ), который используется для алгоритмов шифрования???
Функция CryptGenKey(...)возвращает некий хэндл ключа, который потом указывается при шифровании функцией CryptEncrypt(...). Так вот, я хочу просто увидеть этот ключ!!! НО КАК???

Заранее благодарен!

P.S.* и давайте не будем обуждать, зачем я использую библиотку, которую считаю кривой!
vvoid
Отправлено: 20.12.2004, 15:27


Машинист паровоза

Группа: Участник
Сообщений: 171



Сам задал, сам и отвечу!
А НИКАК ЕГО НЕ ПОЛУЧИШЬ
Судя по моим наблюдениям и исследованиям (чуток громко сказано), этот ключик хранится в "недоступном" месте и увидеть его можно только в ввиде набора байт зашифрованного на открытом ключе из пары ключей RSA, предназначенных именно для обмена именно такими ключами!

Вот такой замут!
Guest
Отправлено: 20.12.2004, 15:41


Не зарегистрирован







Кстати. В нормальных системах ни когда не хранят сам ключ, а хрянят результат применения ключа к чему-то и при проверке подлинности сравнивают именно результаты.
vvoid
Отправлено: 20.12.2004, 15:51


Машинист паровоза

Группа: Участник
Сообщений: 171



Это хранение пароля, а не ключа!
Действительно считают значения хеш-функии (однонаправленная функция — система нипель, так сказать smile.gif )от пароля и это значение хранят в определённой базе. Таким образом исключается возможность доступа непосредственно к паролю! А при идентификации пользователя действительно считается хеш от того, что он ввёл и сравнивается с тем, что есть.

А в случае с ключом, на котором потом ещё надо что-то шифровать-расшифровывать, то его всё ж необходимо хранить в определённом виде. Удобнее если он будет хранится на съёмном устройстве да и ещё в зашифрованном виде. Именно в зашифрованном — с последующей возможностью расшифрования и использования.

Надеюсь, что изложил всё доступно и главное ПРАВИЛЬНО. Если где ошибся — исправляйте!
Guest
Отправлено: 20.12.2004, 16:25


Не зарегистрирован







Да, погорячился. biggrin.gif
vvoid
Отправлено: 20.12.2004, 21:45


Машинист паровоза

Группа: Участник
Сообщений: 171



Да ладно. Я ведь не в обиду, а так сказать для всеобщего развития.

Вернуться в Вопросы программирования в C++Builder