Комментарии 19
Кажется, вы и сами не понимаете что такое блокчейн. Блокчейн не система хранения данных, это система верификации текущего состояния и защиты данных от подмены. Сами данные могут храниться в чем угодно: SQL, NoSQL, в файлах на диске. Все что касается блокчейна это формула hash1=hashsum(hash0+state1)
. Т.е. по сути блокчейн – последовательность хэшсумм.
Так что не стоит путать и приписывать распределенную структуру и поддержку транзакций, как неизменное условие существования BC.
Тот факт, что в блокчейне каждый блок содержит хеш предыдущего является его неотъемлем свойством, но никак не в том контексте, что написали вы.
Я прекрасно знаю что говорю.
То что в биткойне блокчейн неразрывно связан с БД, вовсе не делает блокчейн базой данных. Для блокчейна необходимым условием является только последовательность хешей неразрывно связанных друг с другом. Все остальное: распределенная структура, транзакции, доверенные и недоверенные источники, голосование за блоки и прочее – это прикладная реализация.
Посмотрите сколько реализаций блокчейна есть на сегодняшний день и единственное общее у них – это цепочка хешей.
Профит простой вам нужно удостовериться что некоторые данные существовали в определенный момент времени, но вы не хотите предоставлять сами данные, наглядный пример юридическая или медицинская тайна. Сам блокчейн вы можете публиковать открыто, тогда другие участники смогут видеть факт записи и в случае необходимости удостоверить данные.
Примеров реальных проектов пока не приведу – все что знаю со своим хранилищем.
Если мы храним в виде hash1=hashsum(hash0+state1)
, то не важно что находится в state1
. Ответственность за хранение данных состояния ложится на заинтересованное лицо и не входит в задачу блокчейна. Самое главное чтобы вы могли высчитать hash1
повторно имея hash0
. Опубликовав цепочку в множество узлов сети, вы даете возможность удостоверить последовательность. Это квинтэссенция блокчейна.
Ну это в том случае, если вы хотите предоставить возможность проверить хэш сумму блока. Если взять хэш от данных state1=hashsum(data)
и поместить в блокчейн, тогда любой участник сможет высчитать все суммы и последовательно проверить всю цепочку. А сама цепочка будет выглядеть так:
hash2 state2 # state2=sum(data2),hash2=sum(state2 + hash1)
hash1 state1 # state1=sum(data1),hash1=sum(state1 + hash0)
hash0 state0 # state0=sum(data0),hash2=sum(state0 + initialhash)
initialhash
Но это уже частный случай.
Для блокчейна с несколькими участниками – да метаданные неоходимы, для блокчейна с одним участником – нет.
Я свой комментарий написал к тому, что путать систему хранения и систему верификации данных ни к чему. А хранить данные в блокчейне вовсе не необходимость. И для начала следовало бы разобраться с понятиями. А уже потом приводить тезисы и давать советы. Это все равно что рассуждать о целесообразности приобретения автомобиля, взяв за пример болид F1.
Как понять нужно ли интегрировать blockchain в ваш продукт?