Пару недель назад новостные ресурсы пестрили заголовками:
Facebook несколько лет хранил пароли миллионов пользователей в не зашифрованном виде.

Что это значит?
Непосвященным людям может быть не понятно.

Давайте разбираться.
Я постараюсь максимально понятным языком объяснить что это значит.

Итак начнем.

Видео версия:

Текстовая версия:

Все пароли и логины, как правило хранятся в базе данных.
Схематично это выглядит так:

 

Здесь есть колонка пользователи (users) и колонка паролей (password).
У нас здесь три пользователя (user1, user2, user3).
И каждого свой пароль.

Храниться пароли должны вот в таком виде:

Видите?

Логины остались такими же.

А вот пароли уже другие.

На самом деле это так называемые хеши от тех паролей, которые вы видели. Только они сейчас в зашифрованном виде.

Расшифровать их крайне сложно.
Для паролей используют программы шифровальщики, которые работают только в одну сторону. Т.е. они шифруют и все.
Расшифровать их не возможно.

Хотя взломщики ищут методы и порой находят.
Старые методы уже скомпрометированы.

Но и методы шифрования совершенствуются.

У вас может возникнуть вопрос. Если пароль не храниться, то как же приложение узнает, что это я?
Все просто. Программа, когда вы авторизуетесь переводит ваш пароль в хеш, который вы только что вбили и сверяет его с тем, что храниться в базе данных.

Так вот мы отдалились от нашей темы.

Все это храниться в базе данных.
К базе данных имеют доступ разработчики.
Так же злоумышленники могут получить доступ к базе данных. Или к части этой базы.

Вот именно по этим причинам в базе должны храниться хеши.

А не пароли.

Если теперь кто-либо получит эти данные
То, он узнает только логины. А вот пароли нет. И соответственно не сможет зайти в ваш аккаунт и причинить вред.

А фейсбук хранил в открытом доступе часть паролей.
И это очень удивительно и крайне небезопасно.

Если у вас есть какие-либо вопросы — спрашивайте.
Постараюсь ответить.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Навигация по записям