А почему бред (2tny2001)

Barlone

Guest
Автор оригинала: makRo
Поэтому то, минус этого способа, что "пароль" (md5("пароль")) на сервере хранится в открытом виде, и приемущества хранения зашифрованного пароля на сервере - сходят на нет..
Если хакер сумел добраться до базы, то собственно пароли ему скорее всего уже и не нужны. Хотя, конечно, в каких-то редких ситуациях возможно получение сначала доступа только для чтения, тогда хранение пароля в зашифрованном виде важно. Но, кажется, единственный способ добиться хранения зашифрованых паролей на сервере, и передачи другим способом зашифрованых паролей по сети - это использование криптоалгоритмов с открытым ключом. Причем пара ключей должна генерироваться для каждого запроса авторизации, потому что секретный ключ, хранящийся на сервере, уязвим в той же степени, что и пароли в открытом виде...
 

makRo

Guest
Автор оригинала: Barlone
Если хакер сумел добраться до базы, то собственно пароли ему скорее всего уже и не нужны. Хотя, конечно, в каких-то редких ситуациях возможно получение сначала доступа только для чтения, тогда хранение пароля в зашифрованном виде важно.
На моей практике, это весьма частый случай..
Правда, получение доступа "для чтения" на сервере более сложно (или для меньшего числа людей), чем перехват данных снифером. И наверно передача хэшированного пароля более предпочтительно...
Похоже на выбор "из двух зол" :)

Но, кажется, единственный способ добиться хранения зашифрованых паролей на сервере, и передачи другим способом зашифрованых паролей по сети - это использование криптоалгоритмов с открытым ключом. Причем пара ключей должна генерироваться для каждого запроса авторизации, потому что секретный ключ, хранящийся на сервере, уязвим в той же степени, что и пароли в открытом виде...
Именно так..

Резюмируя, условно можно построить иерархию "предпочтений":
1. SSL (шифрованный пароль на сервере)
2. Передача хэша пароля, подписи к данным при каждом запросе, смена хэшей ("открытый" пароль на сервере) - обсуждаемый способ, на схеме способ №2
3. Передача хэшированного пароля только при авторизации ("открытый" пароль на сервере), важные действия пользователя подтверждать вводом пароля тоже хэшированного. На схеме способ №1
4. Открытая передача данных (шифрованный пароль на сервере)
 
Сверху