Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
Нужен совет по ассиметрии, плиз! 11.01.02 07:55 Число просмотров: 1634
Автор: Artik Статус: Незарегистрированный пользователь
|
> > 2. Что конкретно делает "сервер шифрования" в ситуациях > > чтения данных Юзером и записи данных Админом? > > запись админом: > > сервер берет plain данные,
А как он их берет? Прокачивает по каналу 2 От Админа?
> получает по каналу 2 ключ зашифровки (приватный ключ RSA), генерирует > ключ AES , шифрует plain данные этим ключом , шифрует ключ AES ключом > RSA ,вставляет необходимые проверки целостности и > отправляет по каналу 1 в базу зашифрованные блоки, хеши и > шифрованный AES ключ. > > чтение данных юзером. > > сервер запрашивает по каналу 2 зашифрованные блоки, хеши,
Ты наверное имел ввиду канал 1, а не 2? Т.е. сервер запрашивает инфу в базе?
> шифрованный ключ AES. По каналу 1 получает от юзера
А тут, наверное, наоборот, канал 2?
> публичный RSA ключ. С помощью этого ключа расшифровывает > зашифрованный ключ AES. С помощью полученного ключа AES > расшифровывает зашифрованные блоки, получает plain текст. С > помощью hash ф-й проверяет корректность расшифровки.
Ага, понятно. Но тут, как я понял, нужно, что-бы канал 2 (между сервером и сборищем пользователей) был полностью защищен (и от доступа и от изменения данных), ведь по нему передается:
1) Открытый текст при записи данных
2) Открытый текст при чтении данных
3) Оба ключа RSA
Я правильно понял?
<--- skip --->
> > > Послал rnd , принял обратно rnd и hash(rnd+hash(password)) , > > > достал из базы хранимое pwdhash > > > (равное hash(password)), вычислил и сравнил значения, все. > > > > Понятно, о чем ты. Тут плохо то, что нужно что-то > > сравнивать. Если злоумышленик достанет все алгоритмы на > > обоих сторонах, он подделает hash(rnd+hash(password)), > > т.к. у него будет алгоритм, по которому ты будешь считать. > > неважно. плюс криптографии в том, что при полном знании > всех используемых алгоритмов стойкость системы определяется > только стойкостью ключа. > hash(rnd + hash(password)), подделать невозможно без знания > password, т.к. это односторонняя ф-я по определению. Можно > толькопосерединевклиниться, но это уже активный > перехват и может быть закрыт физически.
Согласен. Я имел ввиду, что т.к. pwdhash хранится на сервере, то если злоумышленник достанет его, то не зная пароля он тем не менее получит искомое hash(rnd+hash(password)). Для сравнения, в моей схеме, если злоумымленник знает все алгоритмы + всю инфу с сервера, он сделать все равно ничего не сможет. Хотя, согласнен, что так, как ты предложил, во многих случаях вполне допустимо, и даже лучше.
> зы. Приятная беседа получилась. Кстати, я давно как-то
Мне тоже понравилось, спасибо ;)
> делал очень похожую на твою штуку на Java, там была защита > web-страниц без использования CGI, апплет лез на сервер, > читал шифрованный файл данных и т.п. Там правда записи не > было, только чтение. Не доделал....
Удачи! Artik.
|
|
|