Разница между SHA-256 и Keccak-256

Опубликовано: 8 Октября, 2022

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

Как работает SHA-256?

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

SHA-256 по-прежнему используется?

  • Сегодняшнее использование SHA-256 по-прежнему полезно и включает блокчейн, криптовалюты, сертификаты Secure Sockets Layer (SSL) и многое другое.
  • SHA-256 используется в приложениях блокчейна и криптовалюты для майнинга, доказательства работы и создания адресов криптовалюты. Майнер должен пройти через процесс, чтобы генерировать хеш-значения для вновь созданных блоков, и этот процесс включает SHA-256. Аналогично, открытый ключ, необходимый для создания новых биткойн-адресов, должен соответствовать SHA-256.
  • Своего рода технология безопасности, называемая сертификатом SSL, используется для создания зашифрованного соединения между клиентом и сервером. Благодаря этому веб-сайты и веб-сервисы могут безопасно обмениваться данными. Некоторые криптографические компоненты сертификации SSL используют SHA-256, текущий отраслевой стандарт.

Кекчак-256

Keccak-256, криптографическая функция, является частью Solidity (семейство SHA-3). Эта функция вычисляет хэш входных данных для выходных данных фиксированной длины, получая единственный 32-байтовый хэш из любого количества входных данных. Эта криптографическая хэш-функция может использоваться только в одном направлении и не может быть обращена вспять.

Как работает Keccak-256?

В качестве входных данных введите строку, например «Намасте Дуния», затем отправьте ее с помощью хеш-функции с помощью keccak256. Это приведет к:

Namaste Duniya -> keccak-256(hashing function) -> 8a0fe4fd16bb35fbecde2e774008fb7f92a8568a680f3fa93d0948bcfbf68dc3

Строка «Намасте Дуния» — это не то же самое, что «Намасте Дуния». Если мы смешаем «намасте дуния», то получим совершенно другой результат.

namaste duniya -> keccak-256(hashing function) -> 544ff8f09d34fdfbfa5a8dcb9d7d57deb6c862026cb8b655cfd7bf9c192e4d21

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

Каковы варианты использования Keccak-256?

Вот несколько вариантов его использования:

  • Ethereum использует Keccak-256 в механизме консенсуса под названием Ethash.
  • Криптографическая подпись небольшого размера (путем подписи хэша вместо ввода большего размера).
  • Для извлечения детерминированного уникального идентификатора из набора данных.

SHA-256 против Кеккак-256

Ниже приведены некоторые различия между SHA-256 и Keccak-256.

S № ША-256 Кекчак-256
1. SHA-256 — это реализация стандарта SHA-2 с 256-битным ключом. Keccak256, криптографическая функция, является частью Solidity (семейство SHA-3).
2. SHA-256 слабее, чем Keccak-256. Keccak-256 намного сильнее по сравнению с SHA-256.
3. Вычисляет хеш SHA-256 ввода. Вычисляет входной хэш Keccak-256.
4. sha256 (байты памяти) возвращает (bytes32). keccak256(байт памяти) возвращает (bytes32).
5. Биткойн-блокчейн широко использует SHA-256, в том числе при идентификации хэшей транзакций и когда майнеры выполняют майнинг с доказательством работы. Ethereum использует Keccak-256 в механизме консенсуса под названием Ethash.