Сделайте вкладку криптография
Этот топик читают: Гость
Ответов: 3349
Рейтинг: 233
|
|||
карма: 1 |
|
Разработчик
Ответов: 26069
Рейтинг: 2122
|
|||
Ivann писал(а): Сделайте вкладку криптографияНа один несчастный компонент целую вкладку -- а моська не треснет |
|||
карма: 22 |
|
Ответов: 3349
Рейтинг: 233
|
|||
Разделить далее на симметричное и несимметричное.
|
|||
карма: 1 |
|
Разработчик
Ответов: 26069
Рейтинг: 2122
|
|||
Ivann писал(а): Разделить далее на симметричное и несимметричноеВот и займись, напишишь на WinAPI компонент несимметричного криптования, подумаем о создании отдельной вкладки |
|||
карма: 22 |
|
Ответов: 5446
Рейтинг: 323
|
|||
nesco, Ivann, я же предлагал - надо компонент ...Ex сделать, с асимметричным шифрованием.
|
|||
карма: 1 |
|
Разработчик
Ответов: 26069
Рейтинг: 2122
|
|||
iarspider, я рыбу сделал, сделал, довел ее до ума, довел. Остальное пытаемся делать сами. К тому же, я не нашел связанного с PROV_SSL провайдера
|
|||
карма: 22 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
iarspider писал(а): я же предлагал - надо компонент ...Ex сделать, с асимметричным шифрованием. |
|||
карма: 25 |
|
Разработчик
Ответов: 26069
Рейтинг: 2122
|
|||
iarspider, спешу тебя порадовать. Я написал IC, позволяющий производить обмен ключами по несимметричному алгоритму.
Те, с помощью этого IC и компонента Cryptjgraphy осуществляется рекомендованный способ шифрования данных -- сессионный ключ передается зашифрованным по несимметричному алгоритму отправляющей стороной моим открытым ключом, получается на выходе ключ обмена, этим же сессионным ключом шифруются данные и передаются вместе с ключом обмена мне, я расшифровываю ключ обмена своим закрытым ключом и получаю сессионный ключ отправителя, которым и расшифровываю его данные. Осталось добавить только цифровую подпись к ключу обмена. Я остановиляся на несимметричном алгоритме криптования ключей обмена -- RSA1024 или RSA2048, больше не стоит применять, очень медленно начинает шифровать. Шифровка криптующей пары ключей осуществляется симметричным алгоритмом AES_256 с личным паролем Честно сказать, замученный способ, особенно с экспортированием ключей, отличных от открытых. Да и сам по себе -- замученный способ. Про экспорт ключа обмена весь нет засыпан, но ничего толком, или очень скудно, про то как экспортировать/импортировать пары и нужные ключи в нужное время. Я уже на Дельфячий код плюнул, хоть бы в С было, а нифига, некотрые вещи пришлось додумывать самому. Думаю, пока выкладывать не стоит, или, все же, стоит |
|||
карма: 22 |
|
Ответов: 397
Рейтинг: 34
|
|||
nesco, ну может кто чего посмотрит и подскажет )
|
|||
карма: 0 |
|
Ответов: 5446
Рейтинг: 323
|
|||
nesco, раз уж разговор о несимметричных шифрах зашёл, то хорошо бы и сертификатов поддержку включить. На днях поищу код (кстати, для C/C++ много интересного можно на codeproject.com накопать).
|
|||
карма: 1 |
|
Разработчик
Ответов: 26069
Рейтинг: 2122
|
|||
iarspider писал(а): и сертификатов поддержку включитьЯ предполагаю подписывать только хэш данных со своей парой сертификационных ключей, подробно об этом написано вот здесь -- http://www.rsdn.ru/article/crypto/usingcryptoapi.xml, для этого есть все методы в CryptoAPI, остальное представляет собой очень замученные методы, чуть ли не с подписью у сертифицирующих центров. Для нас, ИМХО, такие сложные методы весьма сомнительны. Black-Light писал(а): ну может кто чего посмотрит и подскажетЯ уже сделал все сам и просто описывал, возникшие при решении задачи, сложности. Да и очень интересно бы знать, кто у нас тут сильный специалист в криптографии, судя по постам, то только iarspider где-то что-то слышал iarspider писал(а): раз уж разговор о несимметричных шифрах зашёлУже сделан полный прототип компонента обмена ключами -- ExchangeKeys, сейчас веду разработку прототипа компонента HashSignature |
|||
карма: 22 |
|
Ответов: 5446
Рейтинг: 323
|
|||
Быстыое гугдение дало вот что: SSL Socket, (Де-)Шифрование с использованием сертификатов PKCS#12
------------ Дoбавленo в 12.13: Дилме надо свой сертификационный центр (Certification Authority) для пользователей форума сделать. И распространять корневой сертификат вместе с Hiasm-ом (в виде инсталлятора-в-инсталляторе, чтобы при необходимости переносить на другие машины) |
|||
карма: 1 |
|
Разработчик
Ответов: 26069
Рейтинг: 2122
|
|||
Вот, можете посмотреть результат работы прототипа. Схема представлена чисто для ознакомительных целей, любое использование кода IC в своих целях крайне нежелательно -- cryptowithexchangekeys.sha
------------ Дoбавленo в 12.17: iarspider писал(а): чтобы при необходимости переносить на другие машиныПереносить нормально можно только пару ключей в зашифрованном виде. Подпись всех данных -- крайне затратная и ресурсоемнка операци, еще раз повторю -- не стоит с этим замрачиваться, достаточно подписать только хэш сумму доверительным сертификатом ------------ Дoбавленo в 12.20: iarspider писал(а): Быстыое гугдение дало вот чтоХочу уточнить, что метод полного несимметричного шифрования не используется для шифрования больших объемов данных, для этого применяют смешанный, симметрично-несимметричный, метод -- симметричным методом шифруются данные, несимметричный метод используется для передачи сессионных ключей. ------------ Дoбавленo в 12.32: Вот конкретно сказано в MSDN о симметрично/несимметричном шифровании -- Manual Session Key Exchanges |
|||
карма: 22 |
| ||
файлы: 1 | cryptowithexchangekeys.sha [49.2KB] [371] |
Ответов: 5446
Рейтинг: 323
|
|||
nesco, уж мне-то можешь про смешанный метод не рассказывать - я MSDN тоже умею читать
Подписывать все данные и не требуется. Ещё раз: я предложил Dilme сделать свой CA для пользователей HiAsm. Но заверять корневой сертификат такого центра в VeriSign (или ещё где) накладно, а без этого сертификат будет считаться недействительным как не выпущенный доверенным CA, то предлагалось распространять корневой сертификат вместе с HiAsm-ом (добавлять при установке в системное хранилище доверенных корневых центров сертификации). Но так как некоторые из нас разрабатывают программы на заказ, то им может потребоваться способ переноса этого сертификата на машину заказчика. Вот я и упомянул про дополнительный инсталлятор (на манер нынешнего драйвера портов) |
|||
карма: 1 |
|
Разработчик
Ответов: 26069
Рейтинг: 2122
|
|||
iarspider писал(а): уж мне-то можешь про смешанный метод не рассказывать - я MSDN тоже умею читатьТы умеешь, другим тоже интересно iarspider писал(а): то им может потребоваться способ переноса этого сертификата на машину заказчикаБез проблем -- экспортом сертификационной пары |
|||
карма: 22 |
| ||
Голосовали: | GAv |