Я разрабатываю приложение nodejs и пытаюсь интегрировать в него блокчейн. Здесь, в моем приложении, я хочу создать блокчейн, в котором только сервер (мое приложение) может создавать блоки. Блокчейн является общедоступным, и каждый может его просмотреть. Мне просто нужен простой способ публично хранить эту цепочку блоков, и у всех есть разрешение на чтение.
С моими ограниченными знаниями я создал систему, используя node и MongoDB. где каждый блок хранится как документ в БД. используя API, любой может просмотреть базу данных, что не сработало.
Какую внутреннюю технологию я должен использовать, чтобы сделать это? Какие конкретные модули npm должны быть включены?
Прежде всего, мне нужно лучшее решение для хранения, которое является синхронным и последовательным. использование mongodb было не очень хорошим, потому что, когда несколько запросов поступают в два блока, они связаны с одним родительским блоком, таким образом создавая ветвь вместо цепочки. Я хочу, чтобы он хранился на децентрализованной платформе.
Зачем ему создавать цепочки, если вы единственный, кто может создавать блоки? Зачем вам использовать блокчейн, если вы его централизуете, весь смысл блокчейна в децентрализации.
@JBaczuk Я просто хочу, чтобы мои данные (хэши файлов) были общедоступны, многие предлагали мне блокчейн (концепция публичной книги поможет), поправьте меня, если я ошибаюсь. Если блокчейн не то, что я ищу, что я должен использовать. заранее спасибо.
Просто сделайте открытый API и веб-сайт, чтобы сделать эту информацию общедоступной. Блокчейн предназначен для децентрализованного консенсуса и является излишним для того, что вам нужно.
@Susmith Я думаю, вы действительно хотите задать другой вопрос, касающийся вашей проблемы с синхронизацией (т. Е. Две операции выполняются одновременно, и вы хотите правильно их упорядочить). Для этого вообще не нужен блокчейн. Это просто стандартная проблема синхронизации базы данных. Я предлагаю закрыть этот вопрос и открыть вопрос о основной проблеме. Зачем вам вообще нужно хранить его децентрализованно; почему бы просто не иметь сервер? Это то, что нужно включить в вопрос. Но вам определенно не нужен блокчейн.
Существует три типа блокчейна: общедоступный блокчейн, частный блокчейн и блокчейн консорциума. Что вам нужно, так это консорциум Blockchain, в котором вы можете иметь контроль над блокчейном, и он является полудецентрализованным.
Чтобы взаимодействовать с блокчейном, чтобы показать все данные, вам нужно создать распределенное приложение и использовать Web3 Libraray для взаимодействия с блокчейном.
Таким образом, все ваши данные могут быть доступны через API библиотеки web3, и вы показываете их своему приложению. Благодаря этому любой может видеть данные публично.
Спасибо, я думаю, это то, что я ищу. Есть ли какие-либо популярные сервисы или приложения, использующие эту технологию.
Для начала я бы посоветовал создать локальную цепочку блоков и использовать Truffle для разработки приложения с использованием angularjs truffleframework.com.
«используя API, любой может просмотреть базу данных, что не сработало» Почему это не сработает?