Интернет 

«Засолите» свои пароли

Безопасность хранимых паролей может быть повышена с помощью процесса известного как «засолка» – в котором случайные значения (именуемые «соль») добавляются к обычному тексту перед процессом хеширования.

Это сильно повышает число возможных хэш-значений для пароля и означает, что даже если два человека выберут идентичные пароли, их хешированные пароли будут иметь совершенно различные значения.

Хешированный пароль и соответствующая соль хранятся на сервере. Когда пользователь пытается получить доступ к компьютеру, его пароль и соль соединяются, хешируются и сравниваются с хешированным хранимым значением.

«Засолка» эффективна, только если:

 – Действительно случайная «соль» используется для каждого пароля (некоторые системы используют одну и ту же «соль» для каждого пароля, либо изменяют ее при перезагрузке компьютера).

 – «Соль» имеет достаточную длину, чтобы после добавления ее к паролю, она создавала достаточно сложные хешируемые значения, чтобы взломщик не мог создать таблицу, содержащую возможный хеш для словаря с «солью». Например, пароли использующиеся UNIX-ом в начале 70-х ограничивались восемью символами и использовали 12-битную «соль».

Когда этот метод только придумали, он был достаточно надежным – было невозможно сгенерировать хеш для всех возможных паролей, каждый из которых был «просолен» всеми 4096 «солями». Однако компьютеры стремительно увеличивали свою мощность и объем хранимой информации – это означало что потребуются более длинные «соли». Обычно рекомендуется чтобы соль была той же длины что и исходная хеширующая функция. Так что, если ваша хеширующая функция создает 256-битный хэш, необходимо использовать 256-битную соль.

соль

Пример успешной атаки: LinkedIn

В середине 2012-го года, сайт процветающей социальной сети LinkedIn подвергся атаке хакеров из России. Пароли около 6.5 миллионов аккаунтов были похищены, и хотя они хранились с хеш-значениями, пароли не были «просолены».

Хеширование выполнялось с использованием довольно устаревшего алгоритма хеширования SHA-1, который выполняется на очень высокой скорости (настольный компьютер может рассчитать несколько десятков миллионов SHA-1 хэшей за секунду).

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

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

  • По материалам The Open University.
  • Перевод thingshistory.com. Использовать только с разрешения!

Читать далее