Технология информационной безопасности сейчас очень распространена. Но, так как это сравнительно новая ниша, мы предлагаем немного разобраться что это такое и как это работает.
Blockchain («цепочка блоков») – это последовательный набор блоков, каждый следующий блок в котором, включает кодируемую информацию, в котором учитывается значение кода от предыдущего блока.
Технология blockchain используется для организации журналов транзакций, при этом под транзакцией может пониматься что угодно: перевод между счетами, авторизации, записи о выполненных ТО автомобилей. При этом событие считается случившимся, если запись о нём включена в журнал - блок.
В таких системах есть три группы действующих лиц:
- источники событий;
- источники блоков;
- получатели (читатели) блоков.
В зависимости от реализации, эти группы могут пересекаться. В системах типа BitCoin, например, все участники распределённой системы могут выполнять все три функции. Хотя за создание блоков обычно отвечают вычислительные мощности - компьютеры, а управляющих ими людьми называют майнерами.
Основное требование к таким журналам таково:
Невозможность модификации журнала: после добавления кода в журнал удаление либо изменение его должно быть невозможно.
Для того чтобы понять, как можно выполнить требование на запрет модификации, стоит разобраться со следующими вопросами:
Каким образом гарантируется, что внутри блока нельзя поменять информацию?
Каким образом система гарантирует, что уже существующую цепочку блоков нельзя перегенерировать, тем самым исправив в них информацию?
Ответ на первый вопрос прост: нужно снабдить каждый блок суммированным кодом от всего его содержимого. Напомним, каждый блок вытекает из предыдущего с информацией уникального кода. Тогда для того, чтобы поменять что-то в блоке без разрушения доверия клиентов к нему, нужно будет это сделать таким образом, чтобы код от блока не поменялся. А это как раз практически невозможно, если у нас используется криптографически уникальный код. Получается, что для того, чтобы поменять информацию в одном из блоков, нужно будет перегенерировать всю цепочку блоков, начиная с модифицируемого. Как вы думаете, можно ли это сделать?
Источник: https://habrahabr.ru
Опубликованно: 30.10.17
Часто, перед тем, как приступить к обучению программирования, люди сталкиваются с сомнениями, которые значи...
Пришло время рассказать о нашем первом проекте этого года! Мы запускаем курсы английского языка специа...
Почему сейчас лучшее время, чтобы стать веб-разработчиком? У этой профессии нет карьерного потолка, с её п...