Метка «хеширование»

image
Привет! Недавно у меня возникла идея создать собственный алгоритм хеширования, на вход которого можно бы было подать информацию любой длины и получить хеш определенного размера. Особенность всех алгоритмов хеширование — в их необратимости. Но существует и другой, не менее важный момент — однозначность.
Читать полностью »

image

В очередной раз заканчивая проводить аудит информационной безопасности веб-проекта, моя личная бочка с гневом переполнилась негодованием так, что оно перелилось через край в этот пост.

Постараюсь очень лаконично и быстро обрисовать ситуацию с хэшами.

Сразу определю какую задачу применения хешей буду рассматривать — аутентификация пользователей. Не токены восстановления паролей, не аутентификация запросов, не что-то еще. Это также не статья про защиту канала передачи данных, так что комментарии по challenge-response и SSL неуместны!

Читать полностью »

Читая разные статьи по информационной безопасности я часто встречаю подобное утверждение. Обосновывают его так: количество вариантов входных данных второй хеш-функции уменьшается до количества выходных вариантов первой.

И, в принципе, это правда. Если количество этих вариантов изначально было большим.
Читать полностью »

30 наиболее популярных паролей, украденных с LinkedIn
Компания Rapid7 провела анализ 165.000 украденных с LinkedIn паролей и составила инфографику самых употребляемых.

Вполне ожидаемо на первом месте оказлся пароль «link» — 941 раз.

Количество цифровых паролей обратно пропорционально их сложности:
«1234» — 435 паролей
«12345» — 179 паролей
«123456» — 76 паролей
«1234567» — 28 паролей
Читать полностью »

Здравствуй. Сегодня я напишу, как можно использовать полиномиальные хеши (далее просто хеши) при решении различных алгоритмических задач.

Введение

Начнем с определения. Пусть у нас есть строка s0..n-1. Полиномиальным хешем этой строки называется число h = hash(s0..n-1) = s0 + ps1 + p2s2 +… + pn-1sn-1, где p — некоторое натуральное число (позже будет сказано, какое именно), а si — код i-ого символа строки s (почти во всех современных языках он записывается s[i]).

Хеши обладают тем свойством, что у одинаковых строк хеши обязательно равны. Поэтому основная операция, которую позволяют выполнять хеши — быстрое сравнение двух подстрок на равенство. Читать полностью »

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

Общие рассуждения

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

  • передачу пароля можно перехватить (троян, обезьяна в середине)
  • базу с паролями могут украсть, и расшифровать

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js