Каким лучшим образом закодировать пароли?
От: zubrik  
Дата: 25.05.08 13:39
Оценка:
Пароли будут хранится в бд SQL Server, каким образом их кодировать, и функция их проверки. Хочется мощную защиту, нужны примеры.
... << RSDN@Home 1.2.0 alpha 4 rev. 1089>>
Re: Каким лучшим образом закодировать пароли?
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 25.05.08 14:07
Оценка: 2 (2) +3
Здравствуйте, zubrik, Вы писали:

Z>Пароли будут хранится в бд SQL Server, каким образом их кодировать, и функция их проверки. Хочется мощную защиту, нужны примеры.


Обычно хранят не пароли, а их хеш. Примеры в MSDN.
... <<RSDN@Home 1.2.0 alpha 4 rev. 1090 on Windows Vista 6.0.6001.65536>>
AVK Blog
Re: Каким лучшим образом закодировать пароли?
От: aloch Россия  
Дата: 25.05.08 14:07
Оценка:
Здравствуйте, zubrik, Вы писали:

Сами пароли в закодированном виде практически никогда не хранятся. Храняться хеши паролей (например, MD5, но можно использовать и более надежные хеши). При вводе пароля пользователем вычисляем его хеш и сравниваем с хешем, хранящимся в базе. Если хеши совпали, то считаем, что введен правильный пароль (вероятность того, что для разных паролей получится одинаковый хеш считаем ничтожно малой), если нет — то точно введен неправильный пароль.


Re[2]: Каким лучшим образом закодировать пароли?
От: zubrik  
Дата: 25.05.08 14:21
Оценка:
а какие хеши лучше md5?
... << RSDN@Home 1.2.0 alpha 4 rev. 1089>>
Re[3]: Каким лучшим образом закодировать пароли?
От: adontz Грузия http://adontz.wordpress.com/
Дата: 25.05.08 14:45
Оценка:
Здравствуйте, zubrik, Вы писали:

Грубо говоря, чем больше бит, тем лучше хеш. Кстаи именно MD5 использовать уже не стоит, есть rainbow tables для обращения. Неплохой компромисс — SHA512.
A journey of a thousand miles must begin with a single step © Lau Tsu
Re: Каким лучшим образом закодировать пароли?
От: Odi$$ey Россия http://malgarr.blogspot.com/
Дата: 25.05.08 17:13
Оценка: 12 (1)
Здравствуйте, zubrik, Вы писали:

Z>нужны примеры.


http://rsdn.ru/article/files/Classes/passwd.xml
Автор(ы): Alex Fedotov
Дата: 22.05.2005
В этой статье вашему вниманию предлагается небольшой класс Password, который облегчает безопасное хранение паролей, выполняет их проверку, а также может использоваться для генерирования случайных паролей.
... << RSDN@Home 1.2.0 alpha 4 rev. 1088>>
Re[2]: Каким лучшим образом закодировать пароли?
От: zubrik  
Дата: 25.05.08 17:18
Оценка:
А есть готовые классы в .NET для работы с MD5, SHA512 к примеру, функции, чтобы можно было создать хэш и проверить пароль по хэшу?
... << RSDN@Home 1.2.0 alpha 4 rev. 1089>>
Re[3]: Каким лучшим образом закодировать пароли?
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 25.05.08 19:16
Оценка:
Здравствуйте, zubrik, Вы писали:

Z>А есть готовые классы в .NET для работы с MD5, SHA512 к примеру, функции, чтобы можно было создать хэш и проверить пароль по хэшу?


Есть. См. наследников System.Security.Cryptography.HashAlgorithm
... <<RSDN@Home 1.2.0 alpha 4 rev. 1090 on Windows Vista 6.0.6001.65536>>
AVK Blog
Re[2]: Каким лучшим образом закодировать пароли?
От: Pzz Россия https://github.com/alexpevzner
Дата: 26.05.08 00:05
Оценка: +2
Здравствуйте, aloch, Вы писали:

A>Сами пароли в закодированном виде практически никогда не хранятся. Храняться хеши паролей (например, MD5, но можно использовать и более надежные хеши). При вводе пароля пользователем вычисляем его хеш и сравниваем с хешем, хранящимся в базе. Если хеши совпали, то считаем, что введен правильный пароль (вероятность того, что для разных паролей получится одинаковый хеш считаем ничтожно малой), если нет — то точно введен неправильный пароль.


Желательно хешировать не пароль, а, например, login+пароль. Тогда если у 2-х пользователей случайно оказался одинаковый пароль (что не редкость, у многих пароли очень простые), этого будет не видно.
Re[3]: Каким лучшим образом закодировать пароли?
От: Pzz Россия https://github.com/alexpevzner
Дата: 26.05.08 00:06
Оценка:
Здравствуйте, zubrik, Вы писали:

Z>а какие хеши лучше md5?


Имейте ввиду, что чем хеш лучше, тем он в среднем медленней.
Re[4]: Каким лучшим образом закодировать пароли?
От: PaulMinelly  
Дата: 26.05.08 04:06
Оценка: +1 :)))
Z>>а какие хеши лучше md5?

Pzz>Имейте ввиду, что чем хеш лучше, тем он в среднем медленней.


А что при сравнении пароля — надо дикую производительность аля 1,000,000 паролей в секунду?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: Каким лучшим образом закодировать пароли?
От: Константин Владимирович todosoft.org
Дата: 26.05.08 04:18
Оценка: +1
Здравствуйте, aloch, Вы писали:

A>Здравствуйте, zubrik, Вы писали:


A>Сами пароли в закодированном виде практически никогда не хранятся.

Кроме тех случаев, когда необходимо хранить параметры подключения куда-нибудь. А это к сожалению отнюдь не "практически никогда" и бьёт по безопасности.
Re[3]: Каким лучшим образом закодировать пароли?
От: aloch Россия  
Дата: 26.05.08 05:40
Оценка:
Здравствуйте, Константин Владимирович, Вы писали:


Такие случаи, конечно, бывают. Просто в исходном вопросе об этом не спрашивали. Наверное в этом случае лучшим будет использовать хеш логина+пароля пользователя в качестве ключа шифрования этих данных (как я понимаю, так поступает, например, Windows в EFS)


Re[5]: Каким лучшим образом закодировать пароли?
От: Pzz Россия https://github.com/alexpevzner
Дата: 26.05.08 11:57
Оценка:
Здравствуйте, PaulMinelly, Вы писали:

Pzz>>Имейте ввиду, что чем хеш лучше, тем он в среднем медленней.


PM>А что при сравнении пароля — надо дикую производительность аля 1,000,000 паролей в секунду?


Зависит от задачи. Если у Вас сервер, который обрабатывает 1,000,000 логинов в секунду, тогда да, Вам надо иметь дикую производительность аля 1,000,000 паролей в секунду
Re: Каким лучшим образом закодировать пароли?
От: nikov США http://www.linkedin.com/in/nikov
Дата: 26.05.08 12:20
Оценка:
Здравствуйте, zubrik, Вы писали:

Z>Хочется мощную защиту, нужны примеры.


http://search.live.com/results.aspx?q=password+hash+salt
Re[3]: Каким лучшим образом закодировать пароли?
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 26.05.08 16:12
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Желательно хешировать не пароль, а, например, login+пароль. Тогда если у 2-х пользователей случайно оказался одинаковый пароль (что не редкость, у многих пароли очень простые), этого будет не видно.


Лучше сгенерить случайный кусок (salt) и добавить его в пароль, а потом этот кусочек сохранить рядом с хешем.
... <<RSDN@Home 1.2.0 alpha 4 rev. 1090 on Windows Vista 6.0.6001.65536>>
AVK Blog
Re[3]: Каким лучшим образом закодировать пароли?
От: Аноним  
Дата: 26.05.08 19:20
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Желательно хешировать не пароль, а, например, login+пароль. Тогда если у 2-х пользователей случайно оказался одинаковый пароль (что не редкость, у многих пароли очень простые), этого будет не видно.


А для чего это прятать?!
Re[4]: Каким лучшим образом закодировать пароли?
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 26.05.08 19:30
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>А для чего это прятать?!


Снижает криптостойкость
... <<RSDN@Home 1.2.0 alpha 4 rev. 1090 on Windows Vista 6.0.6001.65536>>
AVK Blog
Re[4]: Каким лучшим образом закодировать пароли?
От: Pzz Россия https://github.com/alexpevzner
Дата: 26.05.08 20:40
Оценка:
Здравствуйте, AndrewVK, Вы писали:

Pzz>>Желательно хешировать не пароль, а, например, login+пароль. Тогда если у 2-х пользователей случайно оказался одинаковый пароль (что не редкость, у многих пароли очень простые), этого будет не видно.


AVK>Лучше сгенерить случайный кусок (salt) и добавить его в пароль, а потом этот кусочек сохранить рядом с хешем.


А чем лучше?
Re[4]: Каким лучшим образом закодировать пароли?
От: Pzz Россия https://github.com/alexpevzner
Дата: 26.05.08 20:43
Оценка: 1 (1) +1
Здравствуйте, Аноним, Вы писали:

Pzz>>Желательно хешировать не пароль, а, например, login+пароль. Тогда если у 2-х пользователей случайно оказался одинаковый пароль (что не редкость, у многих пароли очень простые), этого будет не видно.


А>А для чего это прятать?!


Если у Маши и Васи одинаковые пароли, и Вы знаете пароль Маши тот факт, что они одинаковые, тем самым Вы знаете и пароль Васи. А так если Маша пишет свой пароль на стенке, Васю это не затрагивает.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.