Алгоритм безопасного хеширования SHA-256

Алгоритм безопасного хеширования SHA-256

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

Криптографические хэш-функции — это математические операции, выполняемые с цифровыми данными, сравнивая вычисленный «хэш» (результат выполнения алгоритма) с известным и ожидаемым хэш-значением, человек может определить целостность данных. Например, вычисление хэша загруженного файла и сравнение результата с ранее опубликованным результатом хэша может показать, была ли загрузка изменена или подделана. Ключевым аспектом криптографических хэш-функций является их сопротивление столкновению: никто не должен быть в состоянии найти два разных входных значения, которые приводят к одному и тому же хэш-выходу.

Три основных цели хэш-функции:

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

Алгоритм представляет собой вариант SHA-2, разработанный Агентством национальной безопасности (NSA). SHA-256 также используется в популярных протоколах шифрования, таких как SSL, TLS, SSH и операционных системах с открытым исходным кодом, таких как Unix / Linux. SHA-256 используется правительством США для защиты конфиденциальной информации благодаря своей способности проверять содержимое данных, не раскрывая его из-за использования цифровых подписей.

SHA-2 — это алгоритм, обобщенное представление о том, как хешировать данные. SHA-2 имеет несколько вариантов, все из которых используют один и тот же алгоритм, но используют разные константы. SHA-256 — устанавливает дополнительные константы, которые определяют поведение алгоритма SHA-2, одна из этих констант — размер вывода, 256. 256 и 512 в SHA-256 и SHA-512.

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

Алгоритм безопасного хеширования SHA-256
Алгоритм безопасного хеширования SHA-256