Хэш-функция: различия между версиями

Материал из Decimal Wiki
Перейти к навигации Перейти к поиску
[непроверенная версия][досмотренная версия]
(Created page with "<div class="mikio-article-content"> <div class="mikio-tags"> </div> <span id="xesh-funkcija"></span> = Хеш-функция = <div class="level1"> '''Хеш-функция''' — это математическое преобразование информации в короткую строку определённой длины. 1000px|class=mediacenter Логика этого процесса такова: '''вы вводите ч...")
 
м (CryptoUser переименовал страницу Хеш-функция в Хэш-функция)
 
(не показано 8 промежуточных версий 3 участников)
Строка 1: Строка 1:
<div class="mikio-article-content">
{{#seo:
 
                    |title= Хеш-функция — материал из Decimal Wiki
<div class="mikio-tags">
                    |titlemode= append
 
                    |keywords= Хеш-функция
 
                    |description= Хеш-функция: как работают криптографические хеш-функции
 
                    }}
</div>
[[File:Wiki-images.jpg|700px|thumb|right]]
<span id="xesh-funkcija"></span>
'''Хеш-фу́нкция''' или '''хэш-функция'''  (англ. ''hash function'' от ''to hash'' — «превращать в фарш, мешанину») — математическое преобразование информации в короткую строку определённой длины.
= Хеш-функция =
 
<div class="level1">
 
'''Хеш-функция''' — это математическое преобразование информации в короткую строку определённой длины. [[File:Wiki-images.jpg|1000px|class=mediacenter]]


Логика этого процесса такова: '''вы вводите что-то длинное, а на выходе получается что-то короткое, олицетворяющее то длинное.'''
Логика этого процесса такова: '''вы вводите что-то длинное, а на выходе получается что-то короткое, олицетворяющее то длинное.'''


В случае криптографических хеш-функций '''ввод''' не обязательно является длинным. Это может быть что-то очень короткое, например, слово «бит», или очень длинное, например, весь текст Yellow Paper DecimalChain, и на выходе вы получите уникальную строку установленной длины.
В случае криптографических хеш-функций '''ввод''' не обязательно является длинным. Это может быть что-то очень короткое, например, слово «бит», или очень длинное, например, весь текст [[Yellow Paper]] [[DecimalChain]], и на выходе вы получите уникальную строку установленной длины.


Кроме того, '''в отличие от простых «сокращателей»''' ссылок, хеш-функции в критовлютах действуют только в одном направлении. Несмотря на то что одни и те же данные всегда дадут один и тот же хеш, воспроизвести изначальную информацию по полученному из них хешу невозможно.
Кроме того, '''в отличие от простых «сокращателей» ссылок''', хеш-функции в [[криптовалюта]]х действуют только в одном направлении. Несмотря на то что одни и те же данные всегда дадут один и тот же хеш, воспроизвести изначальную информацию по полученному из них хешу невозможно.


'''Понятие «хэширование»''' означает однозначное и точно известное вычисление набора символов фиксированной длины на основе входных данных произвольной длины. При этом изменение хотя бы одного символа в исходных данных гарантирует, что и полученная фиксированная строка будет иной. Можно сказать, что хеширование — это «снятие отпечатка» с большого набора данных.
'''Понятие «хеширование»''' означает однозначное и точно известное вычисление набора символов фиксированной длины на основе входных данных произвольной длины. При этом изменение хотя бы одного символа в исходных данных гарантирует, что и полученная фиксированная строка будет иной. Можно сказать, что хеширование — это «снятие отпечатка» с большого набора данных.


Анализ при помощи хеш-функций часто используют для контроля целостности важных файлов операционной системы, программ и данных. Контроль может производиться как по необходимости, так и на регулярной основе.
Анализ при помощи хеш-функций часто используют для контроля целостности важных файлов операционной системы, программ и данных. Контроль может производиться как по необходимости, так и на регулярной основе.
Строка 25: Строка 20:
Вначале определяют, целостность каких файлов нужно контролировать. Для каждого файла производятся вычисления значения его хеша по специальному алгоритму с сохранением результата. Через необходимое время делают аналогичный расчёт и сравнивают результаты. Если значения отличаются, значит, информация содержащаяся в файле была изменена.
Вначале определяют, целостность каких файлов нужно контролировать. Для каждого файла производятся вычисления значения его хеша по специальному алгоритму с сохранением результата. Через необходимое время делают аналогичный расчёт и сравнивают результаты. Если значения отличаются, значит, информация содержащаяся в файле была изменена.


'''Давайте рассмотрим пример''' : вы скачали большой файл (положим, zip-архив) и желаете убедиться, что в нём нет ошибок. Вы можете узнать «хэш-сумму» (тот самый отпечаток) этого файла и сверить его с опубликованным на сайте. Если строки хеш-сумм различаются, то файл однозначно «битый».
{{комментарий|'''Давайте рассмотрим пример''': вы скачали большой файл (положим, zip-архив) и желаете убедиться, что в нём нет ошибок. Вы можете узнать хеш-сумму (тот самый отпечаток) этого файла и сверить его с опубликованным на сайте. Если строки хеш-сумм различаются, то файл однозначно «битый».}}
 
 
</div>
<span id="kak_rabotajut_kriptograficheskie_xesh-funkcii"></span>
= Как работают криптографические хеш-функции =
 
<div class="level1">


== Как работают криптографические хеш-функции ==
Существуют разные виды криптографических хеш-функций, и каждая из них работает по-разному.
Существуют разные виды криптографических хеш-функций, и каждая из них работает по-разному.


Хеш-функция SHA-256, применяемая в DecimalChain (биткоин и многих других блокчейнах), работает на основе формулы, связанной с отражением света от эллипсов. Вам не стоит слишком переживать, если вы что-то не поняли. Суть в том, что криптографические хеш-функции — это практически магия, и если вы не математик, то никогда их до конца не поймёте.
Хеш-функция [[SHA-256]], применяемая в DecimalChain ([[биткоин]] и многих других [[блокчейн]]ах), работает на основе формулы, связанной с отражением света от эллипсов. Вам не стоит слишком переживать, если вы что-то не поняли. Суть в том, что криптографические хеш-функции — это практически магия, и если вы не математик, то никогда их до конца не поймёте.
 
 
</div>
<span id="kak_xesh-funkcii_primenjajutsja_v_decimalchain"></span>
= Как хеш-функции применяются в DecimalChain =
 
<div class="level1">
 
Чтобы блокчейн работал, он должен обновляться и вести актуальные записи всех транзакций и монет, имеющихся у каждого участника сети. Именно при обновлении транзакционной информации любая аутентифицирующая система уязвима для атаки. Банк сглаживает этот риск благодаря наличию строгой централизованной иерархии, гарантирующей подлинность на свой собственный риск. Блокчейну DecimalChain удаётся обновляться, оставаясь децентрализованным, так как он использует криптографическую вероятностную хеш-«игру», называемую «делегированным доказательством доли» (Delegated Proof-of-Stake).
 
Так обеспечивается консенсус, а также предотвращаются атаки, нацеленные на манипулирование системой. Таким образом, криптография делает блокчейны более безопасными, чем любой банк с человеческой верификацией.
 


</div>
== Как хеш-функции применяются в DecimalChain ==
<span id="xehsh-ukazatel"></span>
Чтобы блокчейн работал, он должен обновляться и вести актуальные записи всех [[транзакция|транзакций]] и [[монета|монет]], имеющихся у каждого участника сети. Именно при обновлении транзакционной информации любая аутентифицирующая система уязвима для атаки. Банк сглаживает этот риск благодаря наличию строгой централизованной иерархии, гарантирующей подлинность на свой собственный риск. Блокчейну DecimalChain удаётся обновляться, оставаясь децентрализованным, так как он использует криптографическую вероятностную хеш-«игру», называемую «делегированным доказательством доли» ([[Delegated Proof-of-Stake]]).
= Хэш-указатель =


<div class="level1">
Так обеспечивается [[консенсус]], а также предотвращаются атаки, нацеленные на манипулирование системой. Таким образом, [[криптография]] делает блокчейны более безопасными, чем любой банк с человеческой верификацией.


Блокчейн представляет собой связанный список, содержащий данные и указатель хеширования на предыдущий блок, создавая связную цепочку.
== Хэш-указатель ==
Блокчейн представляет собой связанный список, содержащий данные и указатель хеширования на предыдущий [[блок]], создавая связную цепочку.


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


Представим, что хакер атакует блок 9 и пытается внести коррективы в данные. Из-за свойств хеш-функций даже небольшое изменение сильно трансформирует хеш. Это означает, что любые незначительные исправления, произведённые в блоке 9, изменят хеш, хранящийся в блоке 8, что, в свою очередь, изменит данные и хеш блока 2, а это приведёт к изменениям в блоке 1 и так далее. Цепочка будет полностью изменена, а это невозможно.
{{комментарий|Представим, что хакер атакует блок 9 и пытается внести коррективы в данные. Из-за свойств хеш-функций даже небольшое изменение сильно трансформирует хеш. Это означает, что любые незначительные исправления, произведённые в блоке 9, изменят хеш, хранящийся в блоке 8, что, в свою очередь, изменит данные и хеш блока 2, а это приведёт к изменениям в блоке 1 и так далее. Цепочка будет полностью изменена, а это невозможно.}}
 
 
 
</div>
<div style="clear:both">
 
 


</div>
== Ссылки ==
* [https://academy.binance.com/ru/articles/what-is-hashing Что такое хеширование? | Binance Academy]


</div>
[[Категория:Терминология]]
[[Категория:Криптобезопасность]]

Текущая версия от 12:15, 22 сентября 2024

Хеш-фу́нкция или хэш-функция  (англ. hash function от to hash — «превращать в фарш, мешанину») — математическое преобразование информации в короткую строку определённой длины.

Логика этого процесса такова: вы вводите что-то длинное, а на выходе получается что-то короткое, олицетворяющее то длинное.

В случае криптографических хеш-функций ввод не обязательно является длинным. Это может быть что-то очень короткое, например, слово «бит», или очень длинное, например, весь текст Yellow Paper DecimalChain, и на выходе вы получите уникальную строку установленной длины.

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

Понятие «хеширование» означает однозначное и точно известное вычисление набора символов фиксированной длины на основе входных данных произвольной длины. При этом изменение хотя бы одного символа в исходных данных гарантирует, что и полученная фиксированная строка будет иной. Можно сказать, что хеширование — это «снятие отпечатка» с большого набора данных.

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

Вначале определяют, целостность каких файлов нужно контролировать. Для каждого файла производятся вычисления значения его хеша по специальному алгоритму с сохранением результата. Через необходимое время делают аналогичный расчёт и сравнивают результаты. Если значения отличаются, значит, информация содержащаяся в файле была изменена.

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

Как работают криптографические хеш-функции

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

Хеш-функция SHA-256, применяемая в DecimalChain (биткоин и многих других блокчейнах), работает на основе формулы, связанной с отражением света от эллипсов. Вам не стоит слишком переживать, если вы что-то не поняли. Суть в том, что криптографические хеш-функции — это практически магия, и если вы не математик, то никогда их до конца не поймёте.

Как хеш-функции применяются в DecimalChain

Чтобы блокчейн работал, он должен обновляться и вести актуальные записи всех транзакций и монет, имеющихся у каждого участника сети. Именно при обновлении транзакционной информации любая аутентифицирующая система уязвима для атаки. Банк сглаживает этот риск благодаря наличию строгой централизованной иерархии, гарантирующей подлинность на свой собственный риск. Блокчейну DecimalChain удаётся обновляться, оставаясь децентрализованным, так как он использует криптографическую вероятностную хеш-«игру», называемую «делегированным доказательством доли» (Delegated Proof-of-Stake).

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

Хэш-указатель

Блокчейн представляет собой связанный список, содержащий данные и указатель хеширования на предыдущий блок, создавая связную цепочку.

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

Представим, что хакер атакует блок 9 и пытается внести коррективы в данные. Из-за свойств хеш-функций даже небольшое изменение сильно трансформирует хеш. Это означает, что любые незначительные исправления, произведённые в блоке 9, изменят хеш, хранящийся в блоке 8, что, в свою очередь, изменит данные и хеш блока 2, а это приведёт к изменениям в блоке 1 и так далее. Цепочка будет полностью изменена, а это невозможно.

Ссылки