You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Уже можно сделать хэш-таблицу:
{
"PostHash1": "PostMessage1"
, "PostHash2": "PostMessage2"
, ...
}
Один и тот же текст, имеет один и тот же хэш, и не может быть сохранён в хэш-таблице дважды.
Но возможны редчайшие коллизии хэша, для разных входных текстов
Например: PostHash1 = sha256(PostMessage1); PostHash1 = sha256(PostMessage2), где PostMessage1 и PostMessage2 - тексты разной длины.
Тогда, PostHash = sha256(PostMessage)+PostMessageLength; идентификатор текста, где PostMessageLength - байтовая длина текста.
Хэш-таблица, вида
{
"PostHash1": "PostMessage1"
, "PostHash2": "PostMessage2"
, ...
}
Содержит только тексты, доступные по хэшам.
PostMessage = ReplyToHash + PostMessage
{
"PostHash1": "ReplyToHash1+PostMessage1"
, "PostHash2": "ReplyToHash2+PostMessage2"
, ...
}
Это уже бесконечно-ветвящееся дерево, которое может быт преобразовано в таблицу, вида:
|PostHash|ReplyToHash|PostMessage|
Совместить эту хэш-таблицу можно с предыдущей, можно добавив ReplyToHash=00000000000000000000000000000000 к данным.
Если там 00000000000000000000000000000000, то не хэшировать ReplyToHash, а обрезать его, и прохэшировать только данные.
Данные могут быт двоичными - например, файл.
Файл, имеет свой хэш (идентификатор, если вместе байтовой с длинной файла указывать хэш),
и сообщения с этим идентификатором в ReplyToHash могут являть собой комменты к файлу и цепочки ответов к ним, и храниться в той же хэш-таблице.
Сообщение может быть размещено где угодно, в виде: (PostHash+ReplyToHash)+PostMessage,
в том числе на форуме, или на бумаге даже,
и из этого источника спарсено (отсканировано), и добавлено в хэш-таблицу.
Эти данные могут храниться где угодно, например в архивах, то есть это могут быт и историческими данные.
Так как, sha256-хэш слишком длинный, а два хэша (PostHash+ReplyToHash) - тем более, то можно уполовинить, как в наноборде:
PostHash1 = sha256(PostMessage1).substring(0, 32)
Тогда, PostHash+ReplyToHash будет длиной как 1 sha256-hash.
В хэш-таблицу может быть спам и вайп, поэтому POW и каптча внутри PostMessage, а такжe bb-коды, как в наноборде.
Хэш-таблица, может быть распределённой, и децентрализированной между множеством пиров в децентрализованной p2p-сети,
она может также являть собой глобальное облако данных, с репликацией их по несколько дублей - на разных носителях информации.
Именно распределённость хэш-таблицы, и возможность выкачать её контент с разных источников, гарантирует невозможность её модерации.
Тем не менее, локальные модерации, могут иметь место быть, так как невозможно каждого участника заставить хранить всю инфу,
и если он не хочет хранить ту или иную, многовесную, скажем, инфу - то он вполне может её локально удалить.
The text was updated successfully, but these errors were encountered:
PostMessage; некий текст.
PostHash = sha256(PostMessage); хэш текста.
Уже можно сделать хэш-таблицу:
{
"PostHash1": "PostMessage1"
, "PostHash2": "PostMessage2"
, ...
}
Один и тот же текст, имеет один и тот же хэш, и не может быть сохранён в хэш-таблице дважды.
Но возможны редчайшие коллизии хэша, для разных входных текстов
Например: PostHash1 = sha256(PostMessage1); PostHash1 = sha256(PostMessage2), где PostMessage1 и PostMessage2 - тексты разной длины.
Тогда, PostHash = sha256(PostMessage)+PostMessageLength; идентификатор текста, где PostMessageLength - байтовая длина текста.
Хэш-таблица, вида
{
"PostHash1": "PostMessage1"
, "PostHash2": "PostMessage2"
, ...
}
Содержит только тексты, доступные по хэшам.
PostMessage = ReplyToHash + PostMessage
{
"PostHash1": "ReplyToHash1+PostMessage1"
, "PostHash2": "ReplyToHash2+PostMessage2"
, ...
}
Это уже бесконечно-ветвящееся дерево, которое может быт преобразовано в таблицу, вида:
|PostHash|ReplyToHash|PostMessage|
Совместить эту хэш-таблицу можно с предыдущей, можно добавив ReplyToHash=00000000000000000000000000000000 к данным.
Если там 00000000000000000000000000000000, то не хэшировать ReplyToHash, а обрезать его, и прохэшировать только данные.
Данные могут быт двоичными - например, файл.
Файл, имеет свой хэш (идентификатор, если вместе байтовой с длинной файла указывать хэш),
и сообщения с этим идентификатором в ReplyToHash могут являть собой комменты к файлу и цепочки ответов к ним, и храниться в той же хэш-таблице.
Сообщение может быть размещено где угодно, в виде: (PostHash+ReplyToHash)+PostMessage,
в том числе на форуме, или на бумаге даже,
и из этого источника спарсено (отсканировано), и добавлено в хэш-таблицу.
Эти данные могут храниться где угодно, например в архивах, то есть это могут быт и историческими данные.
Так как, sha256-хэш слишком длинный, а два хэша (PostHash+ReplyToHash) - тем более, то можно уполовинить, как в наноборде:
PostHash1 = sha256(PostMessage1).substring(0, 32)
Тогда, PostHash+ReplyToHash будет длиной как 1 sha256-hash.
В хэш-таблицу может быть спам и вайп, поэтому POW и каптча внутри PostMessage, а такжe bb-коды, как в наноборде.
Хэш-таблица, может быть распределённой, и децентрализированной между множеством пиров в децентрализованной p2p-сети,
она может также являть собой глобальное облако данных, с репликацией их по несколько дублей - на разных носителях информации.
Именно распределённость хэш-таблицы, и возможность выкачать её контент с разных источников, гарантирует невозможность её модерации.
Тем не менее, локальные модерации, могут иметь место быть, так как невозможно каждого участника заставить хранить всю инфу,
и если он не хочет хранить ту или иную, многовесную, скажем, инфу - то он вполне может её локально удалить.
The text was updated successfully, but these errors were encountered: