Если вам интересно, вот как правильно хранить пароли

Каждая статья о паролях должна начинаться с обсуждения одной и той же темы, поэтому вот она: Вы’Мы выбрали слабый пароль и использовали его неразумно. Эта статья, однако, не’t выбор пароля в качестве основного направления. В последнее время в новостях было много шума о пользователях, которые’Мы были сожжены, потому что взломанные организации неправильно сохранили свои пароли. Вот’как это сделать правильно.


Даже если ваш пользователь выбирает пароль “123456,” это не’Я освобождаю вас от обязанности хранить и защищать его как можно надежнее. Многие компании не’это сделать - по словам одного хакера, 30 процентов сайтов он’S взломаны хранить свои пароли в виде простого текста.

Если вы правильно храните свои пароли, вы гарантируете, что даже если (когда) вы будете взломаны, ваши пользователи будут пользоваться полной защитой. Если вы этого не сделаете, вы можете быть привлечены к ответственности за судебный иск, и положить ваших пользователей’ имена, банковские счета и репутация в Интернете под угрозой.

Одного шифрования недостаточно

Шифрование является самой старой формой информационной безопасности. Первый документированный пример криптографии восходит к 1900 г. до н.э., когда безымянный египетский писец использовал измененные иероглифы для шифрования планшета. Современное шифрование, такое как стандартный алгоритм шифрования AES, берет открытый текст, загружает его в квадрат 4X4 и шифрует его, используя алгоритм симметричного ключа. Симметричные алгоритмы используют один и тот же ключ для шифрования и дешифрования данных..

Вот’s большая слабость, присущая самому шифрованию для хранения паролей. Где вы положили ключ? Вы можете поместить его на отдельный сервер или в USB-ключ внутри сейфа, но это’с явно неоптимальным. Если у вас есть средства для расшифровки и просмотра ваших пользователей’ пароли, тогда эти средства могут быть взяты у вас. Для того чтобы пароли были действительно безопасными, вы должны скрывать их даже от себя.

Соль и хэш для максимальной безопасности

Сокрытие части информации от себя звучит как нечто, чего вы могли бы достичь только с помощью электрошоковой терапии, лекарств или плановой операции на головном мозге. Математика, однако, превращает это в более простое предприятие.

Есть несколько незначительных недостатков шифрования, которые хакеры превратили в главное преимущество. Во-первых, ваша криптосхема может выводить зашифрованный текст, который’такой же длины, как и обычный текст. Если я знаю, что ваш пароль определенно всего шесть символов, то я знаю, что он’Стоит попытаться взломать (потому что атака грубой силой съест пароль из шести символов на завтрак). какая’Более того, ванильное шифрование может выдавать один и тот же вывод с использованием того же ввода. Если я увижу, что Джок и Таня имеют зашифрованный пароль 6qzY13, я могу выяснить, что они’оба используют один и тот же открытый текстовый пароль, и что это может быть что-то простое.

С помощью хэша весь зашифрованный текст, независимо от его длины ввода, имеет одинаковую длину вывода. Хороший алгоритм хеширования также не оставит следов исходного сообщения. Вместо хранения открытого текста вы сохраняете только хешированный вывод. Когда ваш пользователь входит в систему, он вводит свой незашифрованный пароль. Затем открытый текст временно сохраняется в памяти, хэшируется, а затем проверяется на соответствие хешу, который вы’хранится на вашем сайте. Если хэши совпадают, они’хорошо. Опять же, так как вы’только сохраняя хеш, вы никогда не сможете увидеть своего пользователя’s незашифрованный пароль - таким образом скрывая эту информацию от себя.

Там’Один последний шаг, чтобы сделать. Позволять’скажем, все ваши пользователи выбирают тупые пароли, как ‘123456,’ ‘пароль,’ ‘Бэтмен,’ и т.д. Это делает их уязвимыми для того, что’s называется предварительно вычисленной атакой по словарю. Хакеры определят какой ты хеш’используйте список глупых паролей, а затем хешируйте их, используя тот же алгоритм. Затем они’проверим их выходные хеши по вашему списку, и ваши пользователи будут pwned.

Соление вашей базы данных является способом защиты от этого. Это означает, что вы добавляете немного случайной информации каждому из ваших пользователей’ пароли до хеширования. Так что, если Дон’с паролем ‘Бэтмен,’ соление превратит этот пароль в нечто вроде ‘87132458DCU4batman,’ и затем зашифруйте это. Соль не’важнейшая информация сама по себе, и может’не может быть использован для взлома хэша, поэтому’Хорошо, чтобы сохранить его в вашей базе данных.

Помните, что хакеры становятся сильнее с каждым годом

Мур’Закон против тебя. У АНБ сейчас есть дата-центр для взлома паролей, который может сделать один триллион угадываний в секунду. Другие национальные государства радуют’далеко позади, и даже злоумышленники, работающие в саду, могут сломать хэш с помощью компьютера, который стоит дешевле, чем новый автомобиль.

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

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

Brayan Jackson Administrator
Sorry! The Author has not filled his profile.
follow me