2.0 KiB
Общая структура блока
Блок — это бинарная запись фиксированного формата:
[ RAW ][ signature64 ][ hash32 ]
RAW — данные блока (участвуют в хэшировании и подписи) signature64 — Ed25519-подпись над hash32 hash32 — SHA-256 от preimage (привязан к цепочке и владельцу)
RAW-часть (BigEndian) recordSize int32 — размер RAW (без signature+hash) recordNumber int32 — глобальный номер блока timestamp int64 — unix time (seconds) lineIndex int16 — индекс линии lineNumber int32 — номер блока внутри линии bodyBytes bytes — тело блока (type+version+payload)
Общая структура блокчейна
Блокчейн — это: линейная цепочка блоков (по recordNumber) внутри неё — параллельные логические линии (lineIndex) каждая линия имеет собственную нумерацию (lineNumber) и prevLineHash вся цепочка связана ещё и prevGlobalHash
👉 Таким образом, каждый блок: связан с предыдущим глобальным блоком и с предыдущим блоком своей линии
Это даёт: строгий порядок всей истории и независимую валидацию логических потоков
Криптографический смысл блока
Хэш блока считается от: "SHiNE" + login + prevGlobalHash32 + prevLineHash32 + RAW
Это означает: блок жёстко привязан к владельцу (login) блок невозможно перенести в другую цепочку подмена предыдущего блока ломает всю цепь Подпись Ed25519 делается над этим хэшем.