Как сохранить файл размером 30 КБ с помощью децентрализованного хранилища данных блокчейна на NXT (nxtcoin) путем прикрепления сообщений?

Мне любопытно, как можно хранить файл размером 30 КБ в блокчейне NXT, поскольку протокол NXT может прикреплять сообщение размером 1000 байт. Мой тестовый сценарий хранит миди-файл размером 30 КБ в блокчейне nxt, а затем вызывает его обратно, чтобы снова сформировать файл либо в браузере, либо в виде загруженного файла. Я хочу иметь возможность делать это через локальный клиент nxt через его API, а также через онлайн-сервисы, API которых открыт для запроса блокчейна nxt. Мне нужно знать и подтвердить следующее:

  • Из-за ограничения в 1000 байт, я полагаю, что для формирования этого файла потребуется около 30+ отдельных сообщений.
  • Чтобы преобразовать файл, нам нужно будет пометить каждое сообщение в правильном порядке, чтобы объединить его.
  • Можно ли все это сделать, используя только javascript и запрашивая API удаленного блокчейна nxt?
  • Нужно ли нам превращать байт-код в base64 для децентрализованного хранения?
  • С какими еще проблемами мы можем столкнуться?

Если мы сможем запустить тестовый сценарий, технически мы сможем хранить/извлекать/встраивать данные на наши веб-сайты/приложения без необходимости использования централизованного сервера.

лучший тестовый пример — сохранить эту шахматную партию размером 1 КБ в блокчейне nxt: 1kchess.an3.es, а затем снова получить ее с помощью js и встроить на веб-страницу.
Поддерживает ли NXT BIP16? Посмотрите на webbtc.com/tx/… Эта транзакция содержит большое количество «дополнительных данных». Загрузите его в двоичном виде и просмотрите как необработанные данные в шестнадцатеричном редакторе.
Если вы добавите его в 30 отдельных сообщений, вам нужно будет отслеживать, где сообщения находятся в цепочке блоков, что займет 30 * (32 + 4) ~ = 1 КБ данных. Не похоже на очень эффективное хранилище.
похоже, что новый клиент nxt поддерживает вложения большего размера!

Ответы (1)

Похоже, что новая версия 1.5 nxt дает пользователям возможность присоединять до 40 КБ данных в блокчейне. Глянь сюда:

Децентрализованное хранилище NXT 1.5 на блокчейне

Также нашел обсуждение переходных данных NXT , где данные могут временно храниться в блокчейне, а затем удаляться через определенное время, чтобы уменьшить раздувание блокчейна. Как обсуждалось до свидания, Жан-Люк: https://nxtforum.org/general-discussion/price-speculation/msg126548/#msg126548

Мы могли бы добавить вложение «временных данных», которое может иметь больший размер, но хранится в блокчейне только в течение ограниченного времени, скажем, 24 часов. Хэш полного вложения будет включен в подписанные байты транзакции и будет храниться постоянно, так что подпись транзакции всегда можно будет проверить, но фактические данные будут удалены по истечении этого периода. Тогда раздувание блокчейна и дополнительный трафик будут ограничены этими вложениями за последние 24 часа. Это было бы не так полезно для изображений товаров, которые продавцы постоянно хранят на складе, но для товаров с коротким сроком службы или даже сообщения с прикрепленным изображением могут работать. Просто идея.

Децентрализованное хранилище файлов, выпущенное на производственной цепочке блоков:

введите описание изображения здесь