-->
Надежность и целостность блокчейна основывается на том, что нет никаких шансов для каких-либо мошеннических действий или транзакций, таких как двойные расходы. Краеугольным камнем технологии в целом и ключевым компонентом в поддержании этой надежности является хеширование.
Хеширование — это процесс преобразования массива входных данных произвольной длины в (выходную) битовую строку фиксированной длины. Например, хеш-функция может принимать строку с любым количеством знаков (одна буква или целое литературное произведение), а на выходе получать строку со строго определенным числом символов (дайджест).
Хеш-функции имеются практически в любом языке программирования. Например, они используются для реализации хеш-таблиц и множеств (HashMap/HashSet в Java, dict и set в Python, Map, Set и объекты в JavaScript и так далее). Отдельная категория хеш-функций — криптографические хеш-функции. К ним предъявляются существенно более строгие требования, чем к функциям, обычно используемым в хеш-таблицах. Поэтому и применяются они в более «серьезных» случаях, например для хранения паролей. Криптографические хеш-функции вырабатываются и тщательно проверяются исследователями по всему миру.
Хорошая хеш-функция обеспечивает защиту от коллизий (невозможно получить два одинаковых хеша при разных начальных данных) и обладает так называемым эффектом лавины, когда малейшее изменение входных данных значительно преобразует выходное значение. Эффект лавины в хеш-функции SHA-256 выглядит следующим образом:
>>> hash_hex(‘Blockchain’)
‘625da44e4eaf58d61cf048d168aa6 … и т.д.’
>>> hash_hex(‘blockchain’)
‘ef7797e13d3a75526946a3bcf00da … и т.д.‘
>>> hash_hex(‘Bl0ckchain’)
‘511429398e2213603f4e5dd3fff1f9 … и т.д.‘
Хэширование резко повышает безопасность данных. Любой, кто пытается расшифровать данные, глядя на хэш, не сможет определить длину зашифрованной информации на основе хэша. Криптографическая хэш-функция должна иметь несколько важных качеств, которые будут считаться полезными, к ним относятся:
Хэширование защищает данные, обеспечивая уверенность в том, что они не были подделаны, прежде чем их увидит предполагаемый получатель. Например, если вы скачали файл, содержащий конфиденциальную информацию, можете запустить его с помощью алгоритма хеширования, вычислить хэш этих данных и сравнить его с тем, что показал вам тот, кто отправил данные. Если хэши не совпадают, вы можете быть уверены, что файл был изменен до его получения.
Хеши в блокчейнах гарантируют «необратимость» всей цепочки транзакций. Дело в том, что каждый новый блок транзакций ссылается на хеш предыдущего блока в реестре. Хеш самого блока зависит от всех транзакций в блоке, но вместо того, чтобы последовательно передавать транзакции хеш-функции, они собираются в одно хеш-значение при помощи двоичного дерева с хешами (дерево Меркла). Таким образом, хеши используются как замена указателям в обычных структурах данных: связанных списках и двоичных деревьях.
За счет использования хешей общее состояние блокчейна — все когда-либо выполненные транзакции и их последовательность — можно выразить одним-единственным числом: хешем самого нового блока. Поэтому свойство неизменности хеша одного блока гарантирует неизменность всего блокчейна.
Как уже упоминалось, малейшее изменение какой-либо части входных данных приводит к огромному изменению выходных данных; в этом заключается неопровержимая безопасность технологии блокчейн. Изменение любой записи, которая ранее произошла в блокчейне, изменит все хэши, сделав их ложными и устаревшими. Это становится невозможным, когда учитывается прозрачная природа блокчейна, так как эти изменения должны быть сделаны на виду у всей сети.
Первый блок блокчейна, известный как блок genesis, содержит транзакции, которые при объединении и проверке производят уникальный хэш. Этот хэш и все новые транзакции, которые обрабатываются, затем используются в качестве входных данных для создания совершенно нового хэша, который используется в следующем блоке цепочки. Это означает, что каждый блок ссылается на свой предыдущий блок через его хэш, образуя цепочку обратно в блок genesis, отсюда и название блокчейн (blockchain). Таким образом, транзакции могут быть добавлены безопасно, пока узлы в сети находятся в консенсусе относительно того, каким должен быть хэш.
Уважаемый обучающийся!
Вы прошли открытую часть интерактивного обучения в уникальной онлайн Блокчейн Академии. Надеемся, что наши качественные и проработанные материалы лучшим образом способствуют усвоению сложных технических моментов при изучении столь революционной и многообещающей технологии Блокчейн.
Действительно, сейчас мы находимся на пороге того времени, когда можно обозначить черту и разделить время на "до" и "после". Будущее за данной технологией - это точно, только не представляется возможным предположить в каких это будет масштабах, возможно это изменит наше представление о привычном мире данных.
В следующих главах Академии будет описаны следующие аспекты технологии и способы её применения в своем бизнесе или же в организации инновационного стартапа, или во внедрении в Институты Государства. Помимо этого, узнать про уже существующие новейшие финансовые инструменты, инструменты взаимодействия и виды бизнеса. Изучить как их освоить или организовать, их нюансы и особенности. Вперед в будущее вместе с нами!
Что такое ICO, как правильно инвестировать и минимизировать риски, как правильно изучать ICO перед инвестированием, что такое Whitepaper, ключевые моменты и как провести самому ICO.
Что такое криптовалюты, в чем их особенности, как заработать на них, что такое Биткоин, меры безопасности при пользовании криптовалютами.
Это лишь малый список вопросов на которые вы найдете подробнейшие и исчерпывающие ответы с прекрасной инфографикой и кейсами.
Продолжение обучения доступно только зарегистрированным обучающимся.
Для контактов: support@thebcj.ru либо напишите в Telegram
Что дальше?
Протоколы консенсуса являются одним из самых важных и революционных аспектов технологии блокчейн. Они создают неопровержимую систему согласования между различными устройствами в распределенной сети, организовывая при этом эксплуатацию системы. Здесь мы рассмотрим, как эти системы работают и как различные протоколы отличаются друг от друга.
1.1. Добро пожаловать в основы Блокчейна
1.1.1. Что такое блокчейн
1.1.2. Блокчейн просто о сложном
1.1.3. История денег
1.2.1. Что такое одноранговая сеть (P2P)?
1.2.2. Криптография в блокчейне
1.2.3. Что такое цифровая подпись?
1.2.4. Что такое узел (нода)?
1.2.5. Что такое Хеширование?
1.2.6. Протоколы консенсуса Блокчейна
1.2.7. Что такое Византийская Отказоустойчивость?
1.2.8. Что такое Proof of Stake? (PoS)
1.2.9. Что такое Delegated Proof of Stake? (DPOs)
1.2.10. Что такое Proof of Work? (PoW)
Меню навигации будет доступно в процессе обучения
Меню навигации будет доступно в процессе обучения
Меню навигации будет доступно в процессе обучения
Меню навигации будет доступно в процессе обучения
Меню навигации будет доступно в процессе обучения