Неизменяемость (Immutable) — это свойство, обозначающее невозможность быть измененным, особенно с течением времени.
Что такое неизменяемость?
Неизменяемость — это основная определяющая характеристика блокчейна. Термин «неизменяемый» подразумевает, что данные не могут быть изменены или модифицированы кем-либо после их создания. Необходимость в неизменяемости в сети блокчейн обусловлена тем, что все узлы должны соглашаться с достоверностью данных перед их передачей. Суть использования блокчейна в качестве технологии распределенных книг (DLT) состоит в том, чтобы гарантировать, что ни один отдельный субъект не сможет внести изменения в записи после их добавления в блокчейн.
Речь идет о способности записывать транзакции, такие как контракты, продажи, покупки и т.д., таким образом, что после их добавления данные в этих записях невозможно изменить задним числом без изменения всех последующих блоков и сговора сети.
Как блокчейн становится неизменяемым?
Криптографическое хэширование — то, что обеспечивает неизменяемость блокчейна. Хеширование — это метод шифрования, при котором на вход принимается открытый текст любой длины и создается уникальное хеш-значение. Значение хэша всегда имеет фиксированную длину, независимо от свойств входных данных, на основе которых оно создается.
Хеширующий алгоритм очень прост, но при этом его удивительно трудно реверсировать. Если применить алгоритм хэширования SHA-256 к фразе " быстрый лис перепрыгивает через ленивую собаку", то в результате получится 256-битное (32 символа) шестнадцатеричное число вида "9e107d9d372a5dcea0c3f78f5340d8d4". Если применить этот алгоритм к любой другой строке текста (например, к вашему паролю), вы всегда получите один и тот же результат (32-значное шестнадцатеричное число).
В целях обеспечения целостности данных хэш можно использовать в качестве цифровой подписи. Отправляя некоторые данные по сети, можно использовать их хэш-значение в качестве отпечатка пальца. Получив те же данные, можно вычислить их хэш и проверить, совпадает ли он с нашим оригинальным отпечатком. В противном случае мы узнаем, что кто-то подделал наши данные во время их передачи.
Плюсы неизменяемости
Преимущества неизменяемости относятся к безопасности, целостности данных, удобству аудита и предотвращению мошенничества на блокчейн. При использовании традиционной системы баз данных, если кто-либо получает доступ к данным, он может их испортить или уничтожить. При использовании блокчейна любые изменения данных требуют, чтобы их приняли все узлы сети. По этой причине в блокчейне нет риска потери данных, и поэтому он считается неизменяемым.
Неизменяемость технологии блокчейн гарантирует защиту целостности данных. Цельность цепи подтверждается простым пересчетом значения хэша. Несоответствие между данными блока и соответствующим им хэш-значением свидетельствует о недействительности транзакций.