10 историй успеха клиентов блокчейна | IBM Blockchain Российская Федерация
Компании iPoint-systems GmbH требовался технический опыт, чтобы в кратчайшие сроки создать сеть блокчейна для контроля происхождения минералов, применяемых в производстве.
Компания iPoint воспользовалась услугами IBM® Garage™, чтобы оперативно разработать и запустить пилотное блокчейн-решение на основе IBM Cloud™, обеспечивающее отслеживание минералов из шахт, находящихся в затронутых конфликтами и особо опасных зонах, таких как Демократическая Республика Конго и Руанда. Технология блокчейна позволяет исключить поставку «конфликтных материалов» на производство за счет создания неизменяемых записей и цифровых копий ресурсов в цепочке поставок.
Отслеживание конфликтных минералов в цепочке поставок
Термины «кровавые алмазы» и «конфликтные минералы» получили широкую известность.
ЕС и США вводят законодательные ограничения, согласно которым компании, приобретающие минералы в затронутых конфликтами и особо опасных регионах, обязаны обеспечить ответственную и бесконфликтную поставку этих ресурсов. В США действует закон Додда-Франка, обязывающий публичные компании предоставлять Комиссии по ценным бумагам и биржевым операциям отчеты с информацией о том, используют ли они в своей деятельности и для изготовления продукции минералы, поступающие из Демократической Республики Конго.
Помимо государственного контроля, повышенное общественное внимание означает, что потребителям важно знать, что используемые ими товары и их поставщики не способствуют финансированию конфликтов и нарушению прав человека.
«Многие технологические компании и автопроизводители очень заинтересованы в том, чтобы их продукция никаким образом не была связана с детским трудом, рабством и финансированием конфликтов, — говорит Себастиан Галиндо Шали (Sebastian Galindo Schaly), руководитель проекта iPoint SustainBlock. — Наши решения призваны помочь компаниям в этом стремлении». Компания iPoint, которая уже предлагает решение SustainHub, помогающее соблюдать нормативные требования и обеспечить рациональное использование ресурсов, приняла решение разработать технологию отслеживания ресурсов 3TG от шахты до магазина.
iPoint поставила перед собой задачу разработать блокчейн-решение для подтверждения ответственного и рационального подхода к добыче ресурсов, позволяющее вышестоящим покупателям обеспечить соблюдение законодательных требований США и ЕС. Даже шахты малого и среднего размера в таких странах, как Руанда и Конго, должны доказывать, что они применяют ответственные методики ведения бизнеса. Для того чтобы присоединиться к этой платформе, владельцы шахт должны обеспечить соответствие требованиям к экологической безопасности и бесконфликтной добыче.
В процессе подготовки к разработке платформы стало очевидно, что компания iPoint не обладает достаточным опытом работы с технологией блокчейна, чтобы выпустить рабочее решение к моменту вступления в силу закона ЕС о минералах 3TG. Оставив попытки разработать решение с нуля, компания iPoint обратилась к экспертам по блокчейну из IBM Garage.
Идеальный сценарий применения блокчейна
Компания iPoint воспользовалась услугами IBM Garage и методологией IBM Enterprise Design Thinking™ , чтобы оперативно разработать и запустить пилотную блокчейн-сеть SustainBlock на основе IBM Cloud, обеспечивающую отслеживание минералов из шахт в затронутых конфликтами и особо опасных зонах, таких как регион Великих Африканских озер.
Зная о лидирующих позициях IBM в сфере блокчейна, компания iPoint назначила встречу с консультантами из IBM Garage for Blockchain. Марьян Станкович (Marjan Stanković), архитектор программного обеспечения и ведущий разработчик SustainBlock в компании iPoint, рассказывает: «В первую очередь мы отметили, насколько хорошо бизнес-консультанты IBM разбираются в Hyperledger и технологии блокчейна».
Консультанты IBM Garage очень быстро убедили представителей iPoint в том, что у них есть превосходный сценарий для блокчейна. Они предложили компании iPoint подход Enterprise Design Thinking, предусматривающий создание минимального жизнеспособного продукта (MVP) как самый быстрый способ запустить пилотное блокчейн-решение. «Мы не хотели тратить время на работу с несколькими поставщиками», — говорит Станкович. — С IBM мы могли обсуждать любые актуальные проблемы. Короче говоря, мы чрезвычайно довольны и впечатлены сотрудничеством с IBM Garage».
Специалистам iPoint и IBM удалось наладить продуктивный обмен опытом: знания IBM в сфере блокчейна для цепочек поставок и Hyperledger Fabric дополнялись опытом iPoint в сфере сбора данных, экологической безопасности и отслеживаемости в цепочке поставок с ответственным отношением к минералам.
SustainBlock: блокчейн для будущего
В течение четырех недель с момента обращения к специалистам IBM Garage компания iPoint получила минимальный жизнеспособный продукт (MVP), построенный на основе IBM Cloud. Пришло время поверить блокчейн в деле.
Вместе с Европейским партнерством по ответственной поставке минералов (EPRM) и BetterChain компания iPoint запустила пилотное решение SustainBlock. Технология блокчейна позволяет создавать цифровые копии ресурсов, которые можно отслеживать на всех этапах цепочки поставок, включая шахту, металлургический комбинат и производителя.
Успех проекта во многом зависел от того, насколько быстро компания iPoint сможет запустить пилотный проект. На момент первого обращения в IBM Garage компания iPoint уже разработала требования к программному обеспечению и хотела в кратчайшие сроки получить MVP, однако скептически относилась к методике проектного мышления. «Сначала мы сомневались и думали, что этап проектного мышления займет слишком много времени», – говорит Галиндо. – В итоге оказалось, что расчет времени был очень точным».
Станкович подводит итог: «Для меня как технического специалиста несомненным преимуществом было отсутствие необходимости тратить время на метод проб и ошибок, что было бы неизбежно без опыта и знаний специалистов IBM». После рассмотрения методики проектного мышления вместе со специалистами IBM Garage решение было принято. «Мы считаем, что подход Garage пригодится нам еще не раз. Он экономит время и ресурсы. В конечном счете это помогает сократить расходы».
Пилотный проект был сосредоточен на двух шахтах по добыче вольфрама в регионе Великих Африканских озер с неблагоприятными условиями добычи и труда. Ценная информация из цепочки поставок помогает производителям оригинального оборудования (OEM) ответственно подходить к выбору поставщиков минералов, а также обеспечивать надлежащее соблюдение существующих и будущих нормативных требований.
Галиндо отмечает, что помимо возможности достоверного определения происхождения минералов, они пытаются улучшить условия труда в шахтах малого и среднего размера в затронутых конфликтами и особо опасных регионах. Для того чтобы присоединиться к сети, компании должны доказать, что используют ответственные деловые практики. После того как добывающая компания станет частью блокчейн-консорциума и начнет работу с клиентами, она может продолжить совершенствовать методики и условия добычи.
В апреле 2019 года генеральный директор iPoint Йорг Уолден был избран сопредседателем рабочей группы Social Impact в составе Международной ассоциации доверенных блокчейн-приложений (INATBA). По мнению этой группы блокчейн предлагает уникальный комплект инструментов, способных решить самые актуальные проблемы современного человечества, включая рабство, бедность и коррупцию.
iPoint видит огромный потенциал технологии блокчейна сегодня и в будущем. Планируется продолжить внедрение технологии, чтобы помочь компаниям стать частью экономики замкнутого цикла. В ЕС действует инициатива Circular Economy Framework, нацеленная на значительное сокращение отходов за счет переработки и использования вторичных ресурсов в производстве. «Мы планируем создавать цифровые копии ресурсов и отслеживать их на всех этапах жизненного цикла, включая проектирование, производство, эксплуатацию и утилизацию, чтобы впоследствии обеспечить их извлечение и перенаправление в новый цикл», – говорит Гюнтер Уолден (Gunther Walden), основатель CircularTree, инновационного центра iPoint.
Сведения о компании iPoint: основанная в 2001 году, компания iPoint является поставщиком программного обеспечения и услуг в сфере соблюдения нормативных требований и рационального использования ресурсов. Она предлагает специализированное программное обеспечение для цепочек поставок, помогающее контролировать продукты на всех этапах жизненного цикла, включая проектирование, эксплуатацию, переработку и повторное использование. Центральный офис iPoint в Рейтлингене (Германия) управляет работой 170 сотрудников в 14 филиалах в США, Европе, Азии и Австралии. В активе компании более 50000 клиентов из 100 стран, включая 250 крупнейших производителей в мире.
Общая информация — Документация Документация Apla Blockchain Platform
Блокчейн-платформа Apla разработанна для построения цифровых экосистем на базе интегрированной среды разработки приложений с многоуровневой системой управления правами доступа к данным, интерфейсам и смарт-контрактам. Платформа построена на базе программного продукта разработанного компанией EGAAS S.A.
Apla по своей структуре и функционированию принципиально отличается от большинства существующих блокчейн-сетей.
- Написание и использование блокчейн-приложений происходит в автономных программных средах с фиксированным членством, называемых экоситемами.
- Деятельность в экосистемах основана на создании реестров и поддержке их функционирования с помощью смарт-контрактов, а не на обмене транзакциями/сообщениями между аккаунтами.
- Управление правами доступа к реестрам и регулирование отношений между членами экосистем осуществляется с помощью правовой системы на базе смарт-законов.
Сеть
Apla построена на базе одноранговой сети. Полные узлы сети содержат актуальную версию блокчейна и базу данных, в которой фиксируется текущее состояние платформы. Пользователи сети получают данные обращаясь к базам данных полных узлов с помощью программного клиента (или команд REST AP). Новые данные отправляют в сеть в виде подписанных пользователем транзакций, которые по сути являются командами модификации базы данных. Из транзакций формируются блоки, которые присоединяются к блокчейнам на узлах сети, и одновременно с этим происходит отработка транзакции — изменение состояния базы данных.
Валидирующие узлы
Полные узлы сети, имеющие право формировать блоки, называются валидирующими. Число валидирующих узлов ограничено и задается параметром count_of_nodes в настройках платформы.
Список валидирующих узлов хранится в параметре full_nodes в формате
[["host1:port","-1222","nodepub1"], ["host2:ip","-1222", "nodepub2"]], где
- host1:port — это адрес хоста, на который пересылаются транзакции и новые блоки, также с этого адреса можно получить всю цепочку блоков начиная с 1-го;
- -1222 — номер виртуального аккаунта, на который нода получает комиссию; если кошелек не существует, то комиссия не снимается.
- nodepub1 — публичный ключ узла, необходимый для проверки подписей блоков, созданных им.
Транзакции
Транзакция формируется программным клиентом (или командой contract REST API) и содержит данные для выполнения специального программного контролера — контракта («смарт-контракта»), вызываемого пользователем. Транзакция имеет следующий формат:
- Type — ID вызываемого контракта,
- Data — параметры, передаваемые контракту,
- KeyID — идентификатор пользователя отправившего транзакцию,
- PublicKey — публичный ключ пользователя (опционно),
- BinSignatures — подпись транзакции,
- Time — время отправления транзакции,
- EcosystemID — номер экосистемы, из которой отправлена транзакция,
- ТokenEcosystem — номер экосистемы, в токенах которой оплачивается транзакция,
- MaxSum — максимальная комиссия за транзакцию,
- PayOver — дополнительная плата за ускорение в очереди.
Транзакция подписывается приватным ключом владельца аккаунта. Ключ вместе с функцией подписания может храниться: в браузере, в программном клиенте, на сим-карте, на специальном физическом устройстве. В текущей реализации приватный ключ хранится в программном клиенте Molis в зашифрованном алгоритмом AES виде. Транзакции подписываются с помощью алгоритма ECDSA.
Сетевой протокол
Транзакция отправляется пользователем на один из валидирующих узлов, где она проходит базовую проверку формата и встраивается в очередь транзакций, а также рассылается по сети другим валидирующим узлам, где она также попадает в очередь транзакций.
Узел, имеющий в данный момент право генерировать блок (согласно параметру full_nodes), извлекает транзакции из очереди и посылает в блок-генератор. Параллельно с формированием блока происходит отработка транзакций: транзакция посылается в виртуальную машину, где происходит выполнение контракта с параметрами, переданными транзакцией, в результате чего происходит модификация состояния базы данных.
Новый блок проверяется на наличие ошибок, и если он признается валидным, то рассылается другим валидирующим узлам.
Валидирующие узлы добавляют полученный блок в очередь блоков. Очередной блок после валидации присоединяется к блокчейну, а содержащиеся в нем транзакции отрабатываются, обновляя состояние базы данных.
Проверка блока и транзакций
Проверка блока, проводимая валидирующим узлом после его формирования, а также на всех других валидирующих узлах после его получения, содержит следующие тесты:
- равен ли первый байт 0, если нет, то полученные данные не являются блоком,
- время генерации блока не больше текущего,
- имел ли право узел подписавший блок сделать это в указанное в блоке время,
- номер блока больше последнего блока в имеющейся цепочке,
- не превышен ли общий лимит на оплату транзакций блока,
- проверка правильности подписи блока ключом создавшего блок узла; подписываются BlockID, Hash предыдущего блока, Time, Position в full_nodes, MrklRoot от всех транзакций блока,
- проверка правильности всех транзакций блока:
- уникальность хеша транзакции,
- не превышен ли лимит транзакций подписанных одним ключом (max_block_user_tx),
- не превышен размер транзакции (max_tx_size),
- время посылки не больше времени формирования блока и не меньше времени формирования блока минус 86400 сек,
- правильность подписи транзакции,
- существуют ли токены, в которых происходит оплата ресурсов в списке sys_currencies,
- достаточно ли токенов на виртуальном аккаунте пользователя для оплаты необходимых для выполнения транзакции ресурсов.
База данных платформы
Единая база данных платформы, копии которой поддерживаются на каждом полном узле сети, используется для хранения больших объемов данных (реестров) и быстрого получения значений контрактами и интерфейсами. При формировании очередного блока и присоединении его к блокчейну на всех полных узлах платформы происходит синхронное обновление таблиц базы данных. Таким образом, база данных хранит текущее (актуальное) состояние блокчейна, что обеспечивает идентичность данных на всех полных узлах и однозначность выполнения контрактов на любом из валидирующих узлов. При запуске нового полного узла сети актуальное состояние базы данных реализуется последовательным выполнением всех транзакций записанных в блоках блокчейна.
На данный момент на платформе используется СУБД PostgreSQL.
Пространство данных Apla разбито на множество относительно самостоятельных кластеров — экосистем, в которых реализуется деятельность пользователей сети. Экосистемы представляют собой автономные программные среды, включающие в себя множество приложений и пользователей, создающих приложения и работающих с ними. Открыть новую экосистему может любой владелец аккаунта.
Программно экосистема представляет собой совокупность приложений — систем интерфейсов, контрактов, таблиц базы данных. На принадлежность элементов приложений к конкретной экосистеме указывает префикс в их имени, например, @1name, в котором после знака «@» указывается ID экосистемы. При обращении к элементам приложений внутри одной экосистемы префикс можно опустить.
В каждой экосистеме через программный клиент Molis доступны инструменты управления таблицами базы данных, редактор контрактов, редактор интерфейсов и другой функционал, необходимый для проектирования приложений без привлечения каких-либо дополнительных программных модулей.
Пользователем платформы можно стать только получив приватный ключ для доступа в одну из экосистем (традиционно в экосистему №1). Пользователь может быть членом любого количества экосистем. Переход между экосистемами осуществляется при помощи специального меню программного клиента.
Интегрированная среда разработки
В программном клиенте платформы Molis для создания блокчейн-приложений реализована полнофункциональная интегрированная среда разработки (IDE), работа в которой не требует от программистов специальных знаний в области блокчейн-технологий. В состав IDE входят:
- таблица параметров экосистемы,
- редактор контрактов,
- инструменты для администрирования таблиц базы данных,
- редактор интерфейсов и визуальный конструктор интерфейсов,
- редактор языковых ресурсов,
- сервис экспорта/импорта приложений.
Приложения Apla
Приложение на платформе Apla — это система таблиц, контрактов, интерфейсов с настроенными правами доступа выполняющая некоторую функцию или реализующая отдельный сервис.
Каждая экосистема для создания приложений создает собственный набор таблиц, что, однако, не исключает возможность обращения к таблицам других экосистем, с указанием их префикса. Таблицы никак не связаны с конкретными контрактами и могут использоваться всеми приложениями. Возможность записи данных в таблицы контролируется настройками прав доступа. Для управления правами могут использоваться специальные контракты — смарт-законы.
Проектирование и создание приложений не требует от программистов знаний о структуре и протоколах сети, понимания алгоритма формирования блокчейна и синхронизации баз данных полных узлов. Работа в программном клиенте Molis — создание элементов приложений, чтение данных из таблиц, запуск контрактов, отображение результата — выглядит как оперирование модулями некой программной среды, развернутой на локальном компьютере.
Таблицы экосистемы
В каждой экосистеме возможно создание неограниченного числа таблиц в базе данных платформы. Как уже отмечалось, таблицы экосистемы идентифицируются по префиксу, содержащему номер экосистемы, который не отражается в программном клиенте при работе «внутри» экосистемы. Запись в таблицы других экосистем возможна, если позволяют настройки прав доступа.
Инструменты для администрирования таблиц
Инструменты управление таблицами экосистемы доступны в разделе Tables административной секции программного клиента Molis, где реализованы следующие функции:
- просмотр списка таблиц и их содержимого,
- создание новых таблиц,
- добавление в таблицы новых колонок с выбором типовых форматов данных: Text, Date/Time, Varchar, Character, JSON, Number, Money, Double, Binary,
- установление правами доступа на запись данных и изменение структуры таблиц.
Операции с данными таблиц
Для работы с базой данных язык контрактов Simvolio и язык шаблонизатора Protypo содержат функции DBFind, обеспечивающие получение из таблиц как отдельных значений, так и массивов. Язык контрактов содержит функции добавления строк в таблицы DBInsert и изменения значений в существующих записях DBUpdate (при изменении значения переписываются только данные в таблице базы данных, в блокчейн же добавляется новая транзакция с сохранением всех предыдущих транзакций). Данные в таблицах не удаляются.
С целью минимизации времени выполнения контрактов в функциях DBFind не реализовано обращение сразу к нескольким таблицам, то есть не поддерживаются запросы с JOIN. Поэтому целесообразно отказаться от нормализации таблиц приложений и записывать в строки таблиц полную информацию, дублирующую данные в других таблицах. Однако, это не просто вынужденная мера, а необходимое требование к блокчен-приложениям, в которых сохраняться (подписываться приватным ключом) должен некий полный, законченный, актуальный на определенный момент времени набор данных (документ), который не может быть модифицирован вследствие изменения значений в других таблицах (что неизбежно в реляционной схеме).
Параметры экосистем
В разделе Ecosystem parameters административной секции программного клиента Molis доступны для просмотра и редактирования параметры экосистемы, которые можно разделить на несколько групп:
- общие параметры: название экосистемы (ecosystem_name), описание (ecosystem_description), аккаунт основателя (founder_account) и некоторые другие,
- параметры доступа, которые определяют исключительные права доступа к элементам приложений (changing_tables, changing_contracts, changing_page, changing_menu, changing_signature, changing_language),
- технические параметры: например, пользовательские стили (stylesheet),
- пользовательские параметры экосистемы, в которых хранятся константы или списки (через запятую), необходимые для работы приложений.
Для каждого параметра экосистема указываются права на его изменения.
Для получения значений отдельных параметров экосистемы и в языке контрактов Simvolio, и в языке шаблонизатора Protypo имеется функция EcosysParam, в которой в качестве аргумента указывается имя параметра. Для возврата элемента списка (записанных в параметр экосистемы через запятую) необходимо вторым параметром функции указать его порядковый номер.
Параметры платформенной экосистемы
Все параметры платформы хранятся в таблице параметров платформенной экосистемы. Это такие параметры как:
- промежуток времени, отведенный на создание блока валидирующим узлом,
- код исходных страниц, контрактов, таблиц, меню новых экосистем,
- список валидирующих узлов,
- максимальные размеры транзакции, блока, максимальное число транзакций в блоке,
- максимальное количество транзакций от одного аккаунта в блоке,
- максимальное количество Fuel расходуемое на одну транзакцию, один блок,
- курс Fuel к APL и другие.
Управление параметрами платформенной экосистемы с программной точки зрения ничем не отличается от управления параметрами обычных экосистем. В отличие от обычных экосистем, при создании которых все права по управлению параметрами принадлежать основателю экосистемы, права по изменению параметров в платформенной экосистеме возможны только через контракт UpdSysContract, управление которым прописано в правовой системе платформы.
Список параметров платформенной экосистемы
- default_ecosystem_page — какой код по умолчанию вставить в первую страницу только что созданной экосистемы.
- default_ecosystem_menu — какой под по умолчанию вставить в первое меню только что созданной экосистемы.
- gap_between_blocks — множитель, на который умножается количество секунд, которые нода ждет, пока не получает право сгенерить следующий блок. 0 < gap_between_blocks < 86400.
- rb_blocks_1 — максимальное количество блоков, на которое можно откатиться. Влияет на количество блоков которое можно за раз скачать. 0 < rb_blocks1 < 10000.
- new_version_url — хост для проверки доступности новых версий (апдейт сервера).
- number_of_nodes — максимальное количество полных нод. 0 < number_of_nodes < 1000.
- max_block_size — максимальный размер блока в байтах. max_block_size > 0.
- max_tx_size — максимальный размер транзакции в байтах. max_tx_size > 0.
- max_tx_count — максимальное количество транзакции в блоке. max_tx_count > 0.
- max_columns — максимальное количество колонок в созданном пользователем реестре. max_columns > 0.
- max_indexes — максимальное количество индексов в созданном пользователем реестре. max_indexes > 0.
- max_block_user_tx — максимальное количество транзакции в блоке от одного пользователя. max_block_user_tx > 0.
- max_block_generation_time — максимальное время в миллисекундах на генерацию блока.
- max_fuel_tx — максимальный расход топлива на одну транзакцию. max_fuel_tx > 0.
- max_fuel_block — максимальный расход топлива на блок. max_fuel_block > 0.
- size_fuel — множитель, на который умножается плата за количество данных в смарт контракте.
- commission_wallet — адреса кошельков, на которые начисляется комиссия в зависимости от текущей экосистемы. Представляет из себя массив из пар (номер экосистемы, идентификатор кошелька). Например, [[«1»,»-943604719945132508»]]. При записи идет проверка на валидность номеров кошельков.
- commission_size — процент коммиссии, который будет начисляется с каждой операции на commission_wallet. commission_size >= 0.
- fuel_rate — курс конверсии APL к топливу. Представляет из себя массив из пар (номер экосистемы, множитель). Например, [[«1»,»1000000000000000»]]. Значение множителя должно быть больше 0.
- full_nodes — список нод, которые могут генерировать блоки. Представляет собой список списков вида [[хост, адрес аккаунта, публичный ключ],].
- extend_cost_(funcname) — стоимость вызова встроенной функции в fuel. x_extend_cost >= 0.
- (table|column|page|menu|contract)_price — стоимость создания какой либо сущности в fuel. x_price >= 0.
Платформа обладает многоуровневой системой управления правами доступа. Условия доступа устанавливаются на операции создания и изменения всех элементов приложений: контрактов, таблиц базы данных, интерфейсов, параметров экосистемы. Также фиксируются и права на изменения прав.
По умолчанию все права на изменение всех элементов приложений экосистемы принадлежит ее основателю (что прописано в контракте MainCondition, который имеется в экосистеме по умолчанию). Однако после создания специальных смарт-законов, контроль прав может быть передан членам экосистемы или их группе.
Контролируемые операции
Права устанавливаются в поле Permissions в соответствующих разделах административной секции программного клиента Molis: в редакторах контрактов, таблиц, интерфейсов (страниц, меню, страничных блоков). Фиксируются права на следующие операции:
- Table column permission — право на изменение значения в колонке таблицы,
- Table Insert permission — право на запись в таблицу новой строки,
- Table New Column permission — право на добавление новой колонки,
- Conditions for changing of Table permissions — право на изменение прав, перечисленных в п.п. 1-3,
- Conditions for change smart contract — право на изменение контракта,
- Conditions for change page — право на изменение страницы интерфейса,
- Conditions for change menu — право на изменение меню,
- Conditions for change of ecosystem parameters — права на изменение определенного параметра настроечной таблицы экосистемы.
Способы управления правами
Правила, задающие права доступа, записываются в поля Permissions в виде произвольного выражения на языке Simvolio. Доступ предоставляется если на момент обращения выражение имеет значение true. Если поле Permissions остается пустым, то оно автоматом приобретает значение false, и выполнение соответствующих действий запрещается.
Простейшим способом предоставления прав является запись в поле Permissions логического выражения, например, $member == 2263109859890200332, в котором указан идентификационный номер конкретного члена экосистемы.
Универсальным и рекомендуемым методом фиксации прав является использование функции ContractConditions, которой в качестве аргумента передается имя контракта, содержащего условия, в которых могут использоваться данные таблиц (например, таблицы ролей) и параметры экосистемы.
Еще одним методом управления правами доступа является использование функции ContractAccess, которой в качестве параметров передается список контрактов, имеющих право реализовывать соответствующее действие. К примеру, если в таблице, содержащей аккаунты в токенах экосистемы, ввести в поле Permissions колонки amount функцию ContractAccess("TokenTransfer")
, то изменение значения amount будет разрешено исключительно контракту TokenTransfer (все контракты, предусматривающие перевод токенов с аккаунта на аккаунт, смогут сделать это только через вызов контракта TokenTransfer). Условия получения доступа к самим контрактам контролируются в секции conditions и могут быть достаточно сложными, включающими множество других контрактов.
Исключительные права
Для разрешения конфликтных или опасных для деятельности экосистемы ситуаций в таблице Ecosistem parameters введены специальные параметры (changing_smart_contracts, changing_tables, changing_pages), в которых прописываются условия получения исключительных прав доступа к любым смарт-контрактам, таблицам или страницам. Эти права устанавливаются специальными смарт-законами, к примеру, предусматривающими голосование членов экосистемы или наличие нескольких подписей различных ролей.
На платформе существует возможность создания оффчейн-серверов (OBS), обладающих полным функционалом обычных экосистем, но работающих вне блокчейна. В OBS можно создавать полноценные приложения с использованием языка контрактов и языка шаблонизатора, таблиц базы данных и другого функционала программного клиента. При этом через API возможно вызвать контракты из блокчейн-экосистем.
Обращение к web-ресурсам
Основным отличием OBS от обычных экосистем является возможность обращения из ее контрактов к любым web-ресурсам по HTTP/HTTPS. Для этого используется функция HTTPRequest, в которую передаются URL, метод запроса (GET или POST), заголовок и параметры запроса.
Права на чтение данных
Поскольку данные OBS не записываются в блокчейн (который доступен для чтения), то в них реализована возможность установления права на чтение таблиц. Права на чтение определяются как для отдельных колонок, так и для любых строк с помощью специального контракта.
Использование OBS
OBS можно использовать для создания регистрационных формы с отправкой пользователям на почту или телефон проверочной информации, хранения данных вне публичного доступа, для написания и тестирования работы приложений с последующим их экспортом и импортом в блокчейн экосистемы. Также в OBS есть возможность настроить запуск контрактов по таймеру, что позволяет создавать оракулы для получения web-данных и посылки их в блокчейн.
Создание OBS
OBS создается на любом из полных узлов сети. Администратор узла должен определить список экосистем, которым разрешено пользоваться функционалом оффчейн-серверов, а так же указать пользователя, который будет обладать правами основателя экосистемы: сможет устанавливать приложения, принимать в экосистему новых членов, настраивать права доступа к ресурсам экосистемы.
Платежи в блокчейне — Bitcoin Association
Блокчейн Bitcoin SV — сценарии использования в качестве платежного средства
Когда люди думают о биткоине, первое, что обычно приходит на ум, — это деньги; в конце концов, если верить заголовкам новостей, биткоин — главным образом инструмент для зарабатывания денег и спекулятивный актив.
Но реальное преимущество биткоина в качестве платежного средства заключается в его способности функционировать как одноранговая платежная система, обеспечивающая быстрое перемещение средств между пользователями и предприятиями при очень низких комиссиях.
Однако в большинстве блокчейнов это преимущество сведено на нет из-за лимитов на размер блоков, которые приводят к искусственному ограничению количества обрабатываемых транзакций. В результате емкость блоков становится дефицитным ресурсом, что приводит к повышению стоимости транзакции и увеличению времени, необходимого для их подтверждения.
Из-за медленных, дорогостоящих транзакций большинство блокчейнов пригодны для использования в качестве платежного средства исключительно при переводе крупных сумм, когда размер комиссии и скорость проведения расчетов не имеют принципиального значения.
Но настоящий биткоин не такой.
Благодаря отсутствию ограничений на размер обрабатываемых блоков Bitcoin SV является единственным блокчейном, который можно использовать в качестве быстрого и экономичного платежного средства. Поскольку количество транзакций, которые могут быть обработаны в пределах одного блока неограниченно, Bitcoin SV способен обрабатывать транзакции с низкой фиксированной комиссией в размере менее одного цента, обеспечивая при этом быстрое включение платежей в новые блоки при добавлении их в блокчейн.
Функциональные возможности Bitcoin SV не только позволяют ему выступать в качестве платежного средства в традиционном смысле, но также открывают новые возможности для предприятий через использование микроплатежей. Когда стоимость транзакций снижается до долей цента, становятся возможными платежи размером всего в несколько центов и появляется новая модель цифровой экономики, открывающая для предприятий совершенно новые пути монетизации.
Тематическое исследование: Money Button
Система Money Button, использующая преимущество быстрых и экономичных платежей на базе Bitcoin SV, представляет собой полнофункциональный и при этом невероятно простой интерфейс биткоина для компаний и индивидуальных клиентов.
«Money Button — это простая платежная система. Идея состоит в том, чтобы сделать отправку денег через Интернет элементарно простой как для конечного пользователя, так и для бизнеса, использующего услуги Money Button, — объясняет Райан Чарльз, генеральный директор Money Button. — С помощью Money Button мы хотим устранить все барьеры для отправки платежей через Интернет и решить такие проблемы, как высокие комиссии за транзакции и сложность пользовательского интерфейса, чтобы сделать весь процесс настолько доступным и понятным, насколько это вообще возможно».
Отправить платеж через Money Button (как следует из названия, которое переводится как «денежная кнопка») так же просто, как сдвинуть кнопку на экране одним движением пальца. Разработанная по аналогии с интуитивно понятной кнопкой «нравится» в Facebook, система помогает новым компаниям легко и эффективно адаптироваться и интегрироваться в экосистему биткоина.
«При этом Money Button не просто позволяет осуществлять платежи, — говорит Чарльз. — Со временем Money Button будет обеспечивать все функции, которые предоставляет биткоин. На данный момент мы уже поддерживаем примерно половину из них, но каждый день мы работаем над добавлением нового функционала».
Для компаний и пользователей, которым требуются более продвинутые возможности, такие как смарт-контракты и функции обработки данных, Money Button объединяет их в простой в использовании, но многофункциональный пакет.
«С точки зрения бизнеса Money Button — это способ начать взаимодействие с блокчейном, не отвлекаясь от самого бизнеса, — говорит Чарльз. — Мы решаем все технические проблемы, которые возникают при переносе бизнеса в блокчейн, а конечному пользователю остается только сдвинуть кнопку Money Button, чтобы отправить соответствующий платеж».
Микроплатежи стали простыми
Для взаимодействия с Money Button конечному пользователю достаточно всего лишь создать новую учетную запись, при регистрации которой будет создан пользовательский кошелек ВSV и сгенерирован персональный адрес Paymail. Последний выполняет по сути функции адреса электронной почты и позволяет пользователям обмениваться прямыми одноранговыми платежами.
Пополнить баланс Money Button можно из любого внешнего источника, поддерживающего BSV, после чего он будет отображаться в кошельке в виде выбранной фиатной валюты. Далее пользователи могут напрямую рассчитываться друг с другом или с компаниями, поддерживающими Money Button. Для авторизации платежа достаточно просто сдвинуть кнопку Money Button, и соответствующая сумма будет списана с баланса пользовательского кошелька Money Button.
Дополнительное преимущество для компаний, которые интегрировали Money Button в свое приложение или веб-сайт, заключается в том, что они могут предложить своим пользователям целый комплекс услуг. При этом кошелек Money Button функционирует как учетная запись для входа в систему, привязанная к логину пользователя, и позволяет использовать платные функции, связанные с доступом к услугам, подпискам или покупкам.
«Мы создаем метод устранения любых препятствий для адаптации пользователей к этой технологии. Это подразумевает минимизацию действий, необходимых со стороны пользователя для регистрации в Money Button, приобретения монет BSV и последующего их использования в приложении; это всегда было ключевым направлением для нашего бизнеса, — говорит Чарльз. — Благодаря Money Button компании получают невероятно высокий уровень функциональности, но для конечных пользователей все очень просто — им достаточно сдвинуть кнопку и произвести
«Уже сейчас систему Money Button используют достаточно много предприятий, чтобы можно было судить о ключевых приоритетах для бизнеса и наборе функций, который им необходим, — объясняет Чарльз. — В течение следующего года мы планируем разработать множество новых функций, которые сделают Money Button еще более привлекательным для бизнеса. С точки зрения конечного пользователя Money Button не изменится, но я вижу потенциал для дальнейшего развития бизнеса с добавлением новых функциональных возможностей, которые сделают сервис еще более ценным».
В апреле компанией была представлена новейшая функция: кнопка-невидимка Invisible Money Button, с помощью которой пользователи могут авторизировать автоматические платежи или создавать предустановленные правила для платежей, по сути позволяя компаниям подтверждать оплату через Money Button от их имени. Эта функция позволяет предприятиям создавать премиальные, коммерческие модели обслуживания клиентов (например, модели распространения контента на основе подписки), в которых пользователям не приходится каждый раз осуществлять платеж вручную.
«Интерфейс на основе скользящего движения пальцем («свайпа») был тщательно спроектирован, чтобы обеспечить удобство пользователей в большинстве вариантов применения, но он не может быть оптимальным для каждого случая, — объясняет Чарльз. — При использовании Invisible Money Button сама кнопка вообще не появляется на экране. Это делает усовершенствованные приложения более удобными для пользователя, позволяя выполнять микроплатежи в социальных сетях, использовать приложения для обмена сообщениями и загружать данные в блокчейн».
Разработки на базе Bitcoin SV
«Сама система Money Button возникла на основе другого проекта, который назывался Yours. Первоначально мы использовали Bitcoin Core, пока их комиссии не стали слишком высокими, после чего нам пришлось перейти на Litecoin, — объясняет Чарльз. — В тот момент мы заинтересовались дебатами о размере блока в биткоине. Для нас было совершенно очевидно, что правильнее всего будет двигаться в сторону больших блоков и возвращения к оригинальному протоколу. Именно поэтому мы выбрали Bitcoin SV».
Имея значительный опыт работы с другими блокчейнами, в том числе находящимися на стадии разработки (он был первым инженером, нанятым платформой Reddit, когда та занималась собственным проектом цифровой валюты), Чарльз убежден в большом потенциале Bitcoin SV для разработчиков.
«Ключевое преимущество Bitcoin SV очень простое — это неизменный протокол с возможностью масштабирования; если вы являетесь компанией, больше вам ничего не нужно знать, — объясняет Чарльз. — С технической точки зрения не существует верхней границы для размера блока, но при этом предприятия могут строить инфраструктуру и генерировать, либо подтверждать транзакции параллельно и последовательно. Биткоин спроектирован точно так же, как реальная система распределенных вычислений, хранения и передачи, которая по своей сути масштабируема, тогда как другие блокчейны — нет».
Но система Money Button процветает не только благодаря преимуществам базовой платформы Bitcoin SV, на которой он построен, но и за счет быстрорастущей экосистемы предприятий, использующих цифровую валюту.
«После перехода на Bitcoin SV у нас было около 1,3 миллиона взаимодействий с нашей кнопкой, то есть 1,3 миллиона раз люди использовали Money Button для совершения платежей. Через Money Button мы провели платежи на сумму в более чем 10 миллионов долларов, причем объемы росли в геометрической прогрессии. Эти цифры, безусловно, выглядят неплохо, — говорит Чарльз. — Money Button использует более 150 активных предприятий для реализации пользовательских платежей в своих приложениях, либо сохранения данных в блокчейне. Это уже сильная и активная клиентская база, но мы и дальше продолжаем наблюдать невероятный рост. Экосистема предприятий, использующих Bitcoin SV, растет очень быстро, и это открывает перед Money Button замечательные перспективы».
Пример использования: HandCash
На фоне остальных кошельков HandCash выделяется интуитивно понятным пользовательским интерфейсом, который прекрасно подходит для самых разнообразных сервисов экосистемы Bitcoin SV. Неудивительно, что HandCash заслужил репутацию «биткоин-кошелька, который можно смело рекомендовать», ведь команда разработчиков из Испании прилагает все усилия для того, чтобы использование цифровых валют в повседневной жизни стало более доступным и повсеместным.
«С самого первого дня мы пытаемся сделать биткоин более привлекательным для широкой публики, — рассказывает Алекс Агут, сооснователь и генеральный директор HandCash. — Одна из особенностей, которая делает нас уникальными, — это удобство использования нашего продукта. Еще в первой версии приложения мы сделали акцент на простоте пользовательского интерфейса и удобстве его использования. Наш кошелек прост и надежен, и именно это нравится пользователям HandCash».
Пакет продуктов HandCash предлагает множество способов взаимодействия с блокчейном Bitcoin SV: кошелек HandCash представляет собой простое, но многофункциональное приложение, предназначенное для конечных пользователей, в то время как HandCash Connect сочетает в себе набор инструментов для предприятий и разработчиков, стремящихся интегрировать биткоин со своим продуктом.
«Я думаю, что благодаря функции микроплатежей, шифрованию и токенизации в скором времени появится множество новых вариантов использования биткоина в коммерческих целях; эта технология может открыть для нас целый мир новых возможностей, — объясняет Агут. — Но сначала нам необходимо сделать биткоин более доступным для разработчиков и потребителей. HandCash — это доступное и понятное решение как для рядовых пользователей, так и для биткоин-разработчиков, что чрезвычайно упрощает его использование и интеграцию».
Кошелек HandCash — это удобная отправная точка для потребителей, желающих использовать сеть Bitcoin SV для проведения одноранговых транзакций. Однако HandCash надеется внести по-настоящему важный вклад в развитие биткоина через разработку инструментов для бизнеса, дополняющих платежную инфраструктуру приложения.
«В процессе работы с биткоином стало очевидно, что невозможно переиграть такие компании, как Visa, на их поле: у них огромная инфраструктура, высокая доходность и отличный бизнес, — говорит Агут. — Но есть одна сфера, где биткоин может превзойти Visa, и это микроплатежи. Visa не может предложить экономически выгодные трансграничные микроплатежи, а мы можем. Так мы нашли нашу нишу — микроплатежи для приложений».
Биткоин для бизнеса
«HandCash Connect — это быстрое и гибкое решение для создания абсолютно любых приложений на базе биткоина, — объясняет Рафаэль Хименес Сейбане, технический директор HandCash. — HandCash Connect — это решение, интегрирующее биткоин с серверной частью приложения, что дает не только полную свободу в создании приложений на любой платформе, но и, что более важно, в создании нативных приложений».
Набор инструментов HandCash Connect — это универсальный пакет для разработки программного обеспечения (SDK), который предлагает бизнес-пользователям шесть новых функциональных возможностей на основе блокчейна: мгновенные платежи, обещанные платежи, идентификация и вход в систему, хранение данных в блокчейне и право собственности на эти данные.
«Все, что требуется для использования этих модулей, — это простые фрагменты кода, которые по сути написаны на понятном английском языке. Любому разработчику, который захочет их использовать, не придется тратить время на изучение принципов работы биткоина — вместо этого он сможет сосредоточиться на непосредственной работе над своим приложением, — рассказывает Сейбане. — Никакого специфического жаргона, никаких отвлекающих факторов: HandCash Connect — это возможность сфокусировать внимание на создании собственного проекта. Вы делаете все возможное, чтобы создать лучший продукт, а мы позаботимся об остальном».
Использование биткоина в качестве платформы для создания новых моделей цифрового бизнеса — это главная составляющая ценностного предложения HandCash. Последнее основано на потребности рынка, о которой разработчики узнали во время работы над совершенно другим продуктом.
«Мы считаем, что это очень важная инициатива с учетом нашего собственного опыта [попытки интегрировать биткоин-платежи в приложение] еще в 2015 году, когда не было готового SDK или набора API, которые мы могли бы просто подключить к нашему приложению для добавления функции проведения микроплатежей или платежей в биткоинах, — объясняет Агут. — Компании не должны сталкиваться с необходимостью переучивать своих программистов для работы с биткоином или его сценариями, чтобы применять эту технологию в своих продуктах. Благодаря HandCash Connect это проблема решена: мы сделали так, чтобы интеграция биткоина была такой же простой, как использование вызовов API для подключения к нашей инфраструктуре».
При первоначальной разработке HandCash наша команда не просто разрабатывала специфический продукт для определенного блокчейна или платформы — они стремились создать продукт, который позволил бы в максимальной степени реализовать их конечную концепцию. Однако проблемы со структурой комиссионных платежей и отсутствие предсказуемости в конкурирующих блокчейнах привели команду HandCash к мысли о том, что Bitcoin SV — это единственный вариант, который предлагает практически реализуемое решение для их проекта.
«Проблема с блокчейном [Bitcoin Core] заключалась в том, что структура комиссий была ужасной, точнее ее просто не было. Сама сеть была ненадежной, и это тоже серьезная проблема. При использовании Bitcoin SV вы знаете, что завтра сеть будет работать точно так же, как она работала сегодня. Но самое главное для нас — это то, что размер комиссии будет более или менее на одном уровне, поэтому можно говорить о настоящей надежности, — рассказывает Агут. — Код Bitcoin SV очень хорош, он стабильно работает и масштабируется. Но я считаю, что лучшее, что у вас есть, — это бизнес-среда, то есть осмысленное развитие платформы и улучшение работы узла. Это очень важно, потому что это демонстрирует компаниям серьезное отношение Bitcoin SV к бизнесу в долгосрочной перспективе».
Размер блокчейна биткоина достиг значения выше 300 гигабайт
В минувшую субботу, 19 сентября, полный размер блокчейна Биткоина превысил 300 гигабайт. К этому значению первая криптовалюта шла без малого более 10 лет.
Блокчейн биткоина вырос до 300 гигабайтИзображение: Blockchain.com
Хотя такой объем данных может показаться значительным, обычный терабайтный жесткий диск сможет без проблем вместить в себя весь этот объем и останется место ещё на одно или два десятилетия. Ещё более ничтожным размер выглядит на фоне раздутого блокчейна Эфириума, размер которого уже составляет более 5 терабайтов и продолжает увеличиваться с рекордной скоростью (справедливости ради стоит заметить, что усеченная нода занимает всего 165 гигабайт).
Но в последние несколько лет блокчейн Биткоина рос намного более быстрыми темпами, чем в первые дни. Во многом это связано с увеличением числа ежедневных транзакций, а также внедрением решения по масштабированию сети SegWit, которое фактически удвоило размер блока до двух мегабайт.
За первые четыре года своей жизни блокчейн Биткоина достиг 20 ГБ. Только к 2016 году, когда он достиг 54 ГБ, его рост начал ускоряться — вероятно, из-за роста числа пользователей в экосистеме. На текущий момент блокчейн Биткоина растет примерно со скоростью 58 ГБ в год.
Хотя размер блокчейна Биткоина никак не влияет на скорость сети, в конце концов, полный узел должен загружаться только один раз во время первой синхронизации, некоторые его части все-равно ещё можно оптимизировать.
Одним из аспектов раздувания объема являются выходные неизрасходованные транзакции (UTXO), они создаются, когда часть биткоинов перемещаются на другой адрес, а оставшаяся часть монет отправляется обратно в кошелек как «неизрасходованные». По словам разработчика Utreexo Кэлвина Кима, хотя на сегодня они занимают всего 4 гигабайта пространства, они могут стать узким местом масштабируемости в будущем.
И это то, что Utreexo пытается решить. Utreexo разработала алгоритм по сжатию этих данных без ущерба безопасности для пользователей Биткоина. Этот проект уже получил поддержку. 100x Group, материнская компания BitMEX, недавно предоставила Utreexo годовой грант в размере $40 000. Но заставить Биткоин измениться — это медленный и трудоемкий процесс, поэтому может пройти продолжительное время, прежде чем это предложение будет реализован. С другой стороны в связи с этим есть много времени для адаптации.
Будь в курсе! Подписывайся на Криптовалюта.Tech в Telegram.
Обсудить актуальные новости и события на Форуме
Хакатон IBM EE/A по разработке проектов на платформе Blockchain
Цель хакатона.
Получение базовых навыков работы с Blockchain студентами и преподавателями университетов, и применение их при решении задач, взятых из реальной жизни.
Технологии: Blockchain Composer/IBM Hyperledger
Партнеры: Русские хакеры и хакатон Hack.Moscow
Порядок проведения.
Хакатон состоит из трех этапов – обучения, проектирования и финала. На этапе обучения формируются команды и осуществляется регистрация участия. После чего участникам открывается доступ к учебным материалам. В ходе проектирования команды придумывают темы проектов и выполняют моделирование задач с использованием блокчейн.
Оформление проекта.
Результаты проектов (описание не более 1 стр. текста, презентация, не более 3 слайдов, и код – демо-версия проекта или скриншот или видео) направляются жюри. В качестве задач могут быть выбраны реальные транзакции из следующих областей: финансовые транзакции, электронная коммерция, социальные задачи, образование, и другие. Критерии хорошего проекта: уменьшение уязвимости транзакции, повышение степени доверия полученным результатам, добавленная стоимость по сравнению с традиционными способами их реализации. Студенты и преподаватели регистрируются в программе «Академическая инициатива IBM» и получают доступ к необходимым облачным ресурсам и информации. Преподаватели могут также исполнять ролевые функции капитанов команд, консультантов и членов жюри. В финале участвую отобранные жюри победители. Финал будет проходить в Клиентском центре IBM (Москва, Пресненская 10). Вышедшие в финал участники присутствуют на защите лично, либо виртуально ( WebEx, Skype). Победители получают сувениры и сертификаты Академической квалификационной программы IBM. О результатах сообщается в компьютерной прессе.
Ключевые даты проведения.
Этап обучения и регистрации пройдёт с 25 октября по 7 ноября. Выполнение проектов – 7–21 ноября. Итоговый отбор финалистов будет произведён 21–26 ноября с направлением приглашения для участия в финальной части. Финал хакатона состоится в Клиентском центре IBM (Москва, Пресненская 10) 29 ноября под руководством объединённой команды менторов.
Этап финала включает в себя консультации, а также демонстрации и защиту проектов.
Заявки на участие, материалы оформленных проектов, а также возможные вопросы адресовать Александру Сорокину, менеджеру университетских проектов в России и СНГ, тел.: +7 (495)-258-6484, 8-905-727-8737, e-mail: [email protected]
PayPal и Visa присоединяются к венчурному фонду Blockchain Capital размером в 300 миллионов долларов | Блокчейн24
PayPal и Visa, как партнеры венчурного фонда Blockchain Capital, инвестируют в криптоиндустрию. Во вторник фонд объявил о создании стратегического резервного фонда в размере 300 миллионов долларов США, сообщает CoinDesk.
Компании, которые все больше разбираются в криптовалютах, являются относительными новичками в криптовалютном венчурном капитале. Хотя оба инвестировали напрямую в несколько криптостартапов, присоединение к ним в качестве партнеров с ограниченной ответственностью (LP) означает, что внешний менеджер будет размещать более широкие инвестиции в акционерный капитал от их имени. PayPal подтвердил, что это его первая подобная договоренность с крипто-венчурной фирмой.
Генеральный партнер Спенсер Богарт сообщил, что Blockchain Capital — одна из старых и крупных фирм венчурного капитала, владеющих криптовалютой, под управлением которой находится более 1,5 млрд долларов. Он сказал, что пятый фонд фирмы также получил поддержку от пенсионных фондов и пожертвований университетов, но отказался назвать дополнительных LP.
По словам Богарта, платежные гиганты жаждут более смелых инвестиционных возможностей в отрасли, в которую они верят, но нуждаются в помощи «полевого руководства», чтобы полностью ориентироваться.
«Нет ничего лучше, чем направить стартап на ранней стадии в такие компании, как Visa или PayPal, помочь им заключить коммерческое соглашение и помочь убедиться, что на стороне Visa и PayPal у них есть решения для продуктов, которые они хотят запустить», — сказал Богарт.
Богарт сказал, что путь LP дает этим фирмам косвенный потенциал роста капитала, а также дает возможность заранее узнать о стартапах для заключения партнерских сделок.
PayPal тоже так считает.
«Инвестирование в новый фонд Blockchain Capital позволяет нам взаимодействовать и учиться у предпринимателей, которые определяют будущее цифровых валют и блокчейнов», — сказал руководитель отдела криптовалюты в PayPal Хосе Фернандес да Понте.
Blockchain Capital стремится вложить эти 300 миллионов долларов «в драгоценные камни» на ранней стадии — «это еще не всемирно известные коинбейcы и кракены», — сказал Богарт. Он начал размещать капитал более 12 месяцев назад, но большая часть его нового фонда находится в ожидании. (Coinbase, Kraken, Anchorage и OpenSea — предыдущие инвесторы в Blockchain Capital.)
По словам Богарта, новый фонд сохраняет фокус на играх с крипто-инфраструктурой, таких как создание стартапов для поддержки децентрализованного финансирования (DeFi) и невзаимозаменяемых токенов (NFT), избегая при этом самих активов.
Четвертый фонд Blockchain Capital, объявленный в марте 2018 года, составил 150 миллионов долларов.
Что такое блок Биткоина и за что отвечает его размер
Количество обрабатываемых транзакций в сети Биткоина зависит от одного важно параметра — размера блока. Блоки являются главной составляющей цепочки блокчейна, в которой есть информация о переводах BTC вообще за всю историю Биткоина. И хотя главные свойства блоков были заданы ещё анонимным создателем криптовалюты Сатоши Накамото, дебаты о целесообразности ограничений об их размере не утихают даже сегодня.
Что такое блок в Биткоине?
Блок — это информация о транзакциях в сети Биткоина. Каждый блок можно представить себе в виде страницы в бухгалтерской книге (блокчейне). В случае с криптовалютами страницы нельзя «вырвать» — блоки заносятся в блокчейн навечно.
Представьте, что бухгалтер записал все транзакции за последние десять минут в бухгалтерскую книгу, прошил её и поставил печать. Теперь страницу не получится вырвать, ведь все заметят нехватку данных и не захотят пользоваться такой книгой.
Забавный момент: сразу после запуска сети Биткоина в 2009 году размер его блоков составлял 36 мегабайтов. 14 июля 2010 года он был уменьшен до одного мегабайта.
Почему размер блока так важен?
Согласно замыслу создателя криптовалюты Сатоши Накамото, бухгалтерская книга пополняется новыми страницами раз в 10 минут. Иногда немного быстрее, иногда чуть медленнее, но в среднем это именно 10 минут. Размер каждой страницы (блока) ограничен, то есть количество записываемых туда транзакций тоже ограничено. В итоге у нас есть два лимита: на число транзакций в блоке и периодичность его нахождения.
Если желающих отправить биткоины будет слишком много, блоки заполняются очень быстро, и образуется очередь на попадание в них. Говоря умными словами, увеличивается мемпул — очередь из переводов в сети Биткоина, которые ждут подтверждения. Это приводит к росту комиссий за транзакций, ведь кто больше заплатит, тот быстрее попадёт в блок и проведёт перевод.
Источник: AppleInsider
В начале 2013 года блоки Биткоина были заполнены в среднем на 125 килобайтов. К маю 2015 года этот показатель уже вырос до 425 килобайт, при этом блоки стабильно заполнялись полностью несколько раз в день. То есть транзакций пользователей было достаточно.
Зачем нужно расширять блоки?
За несколько лет существования Биткоина предложение увеличить размер блока звучало десятки раз. Сторонники этого действия считают, что только так BTC сможет выдержать огромную нагрузку при распространении во всём мире. С увеличенными блоками в сети криптовалюты будет проводиться больше транзакций за тот же период времени, то есть ей сможет пользоваться больше людей.
4 мая 2015 года главный научный сотрудник Bitcoin Foundation Гэвин Андресен опубликовал статью, которую в оригинале можно найти по запросу «Why increasing the max block size is urgent». В ней разработчик заявил, что увеличение размера блока — необходимая мера для Биткоина.
Если количество транзакций будет действительно огромным, сеть криптовалюты станет слишком загруженной и непродуктивной. В конце концов люди перестанут использовать Биткоин, потому что время проведения каждого перевода монет вырастет в разы.
Чуть позже Андресен заявил, что займётся разработкой аналогичного клиента Bitcoin XT, первая версия которого была выпущена в декабре 2014 года ещё одним критиком размера блока Биткоина Майком Хёрном.
В июне 2015 года руководства крупнейших китайских пулов для добычи криптовалюты F2pool, BTCChina, Antpool, Huobi и BW подписались под предложением увеличить блок Биткоина из-за растущего количества транзакций. В этом же месяце Андресен опубликовал предложение по улучшению Биткоина (BIP — Bitcoin Improvement Proposal) 101. В нём разработчик предложил отказаться от фиксированного ограничения на максимальный размер блока и перейти на новую модель, в котором лимит будет расти с предсказуемой скоростью.
Что было в BIP 101?
BIP 101 предполагал увеличение размера блока до 8 мегабайтов с 11 января 2016 года. Затем лимит должен был удваиваться каждые 730 дней вплоть до января 2036 года.
Считалось, что благодаря увеличению блока до 8 мегабайтов Биткоин сможет обрабатывать до 24 транзакций в секунду. BIP 101 понравился многим криптоэнтузиастам и крупным майнинговым пулам. И всё же у нововведения были противники. Создатель Bittorrent Брам Коуэн заявил, что столь резкие изменения в протоколе криптовалюты противоречат её главной идее.
Источник: Reddit
16 августа 2015 года BIP 101 был интегрирован в код Bitcoin XT. И хотя апгрейд поддерживался многими, его интеграция не смогла придать популярности альтернативному клиенту Биткоина.
Какие предложения по увеличению размера блока понравились комьюнити?
Bitcoin XT, Bitcoin Unlimited, Bitcoin Classic и Segwit2x были популярными инициативами в 2016 году, однако ни одна из них не привела к расширению лимита блока Биткоина.
В январе 2016 года было решено отказаться от поддержки BIP 101 в Bitcoin XT и просто перейти на единовременное увеличение размера блоков до 2 мегабайтов. Это привело к серьёзному падению интереса к Bitcoin XT. К январю 2017 года менее 30 нод (узлов) в сети клиента поддерживались майнерами. Ещё год назад их количество превышало 650 единиц.
Через месяц был создан Bitcoin Classic путём форка оригинального Биткоина. Инициатива получила поддержку от Coinbase, Bitstamp, Circle, Роджера Вера и Гэвина Андресена. К сожалению, в 2017 году майнеры Bitcoin Classic не смогли достичь консенсуса по поводу очередного форка, после чего создатели криптовалюты решили прекратить её разработку, высказав свою поддержку Bitcoin Cash.
Примерно в одно время с созданием Bitcoin Classic консорциум крупнейших майнинговых пулов, кошельков и бирж Bitcoin Roundtable обсудил планы в отношении протокола Segregated Witness. Речь шла об увеличении размера блока оригинального Биткоина до 2 мегабайтов.
Что такое SegWit?
Segregated Witness или SegWit это улучшение, в котором размер блока освобождается за счёт выноса данных о подписях транзакций во внешний блок, именуемый «отдельным свидетелем». Именно так переводится словосочетание «Segregated Witness». Благодаря этому в один блок можно вместить почти в четыре раза больше транзакций.
31 марта 2017 года было предложено ввести SegWit путём софтфорка, за ним должен был состояться хардфорк SegWit2x для расширения размера блока до 2 мегабайтов. Детали апгрейда были обсуждены во время нью-йоркского соглашения, в котором приняли участие 58 крупнейших владельцев узлов сети Биткоина. Сообщается, что на тот момент они контролировали 83.28 процента мощности всех вычислительных устройств для добычи криптовалюты.
SegWit был принят в августе 2017 года, а вот по SegWit2x майнерам так и не удалось достичь консенсуса — апгрейд был отменён за несколько дней до его предполагаемой интеграции.
Почему разделился блокчейн Биткоина?
Консенсус в комьюнити по поводу «правильного размера блока» так и не был достигнут. В августе 2017 года состоялся хардфорк криптовалюты, который привёл к разделению её блокчейна.
Источник: Slate
1 августа 2017 года под эгидой Роджера Вера был создан Bitcoin Cash. В форке Биткоина размер блока был увеличен до 8 мегабайтов, при этом интеграция Segregated Witness была отклонена. В мае 2018 Bitcoin Cash прошёл через новый хардфорк, в ходе которого блоки вовсе были увеличены до 32 мегабайтов. Правда, эта инициатива так и не сделала альткоин популярнее оригинального Биткоина. Да и смысла в ней не было. Как оказалось, майнеры BCash всё так же используют блоки на 2 мегабайта, ведь в большем объёме нет смысла.
Заглядывайте в чаш крипточат миллиардеров. Там обсудим все подробности.
ПОДПИСЫВАЙТЕСЬ НА НАШ КАНАЛ В ТЕЛЕГРАМЕ, ЧТОБЫ БЫТЬ В КУРСЕ.
Биткойн-блокчейн вырос до 300 гигабайт в размере
Размер полной биткойн-блокчейна 19 сентября превысил 300 гигабайт данных, согласно Blockchain.com.
Это размер полной истории транзакций биткойнов за последние 10 лет. Это также объем информации, который полные узлы майнинга должны загрузить и сохранить на своих жестких дисках после синхронизации с сетью Биткойн.
Блокчейн Биткойна сейчас «весит» более 300 гигабайт. Изображение: Блокчейн.comХотя такой объем данных может показаться значительным, терабайтный жесткий диск легко поместит его — и так будет продолжаться еще десятилетие или два. Напротив, архивный узел в блокчейне Ethereum уже имеет размер более пяти терабайт — и увеличивается с рекордной скоростью с увеличением размера блока, — хотя сокращенный узел занимает всего 165 ГБ.
Но блокчейн Биткойн за последние несколько лет рос более быстрыми темпами — в отличие от его первых дней. Во многом это связано с увеличением количества транзакций, совершаемых ежедневно, и внедрением решения масштабирования SegWit, которое фактически удвоило размер блока до двух мегабайт.
За первые четыре года своей жизни блокчейн Биткойн достиг 20 ГБ. Только в 2016 году, когда он достиг 54 ГБ, его рост начал ускоряться — вероятно, из-за большего количества людей, использующих сеть. Сейчас он растет примерно до 58 ГБ в год.
Хотя размер блокчейна Биткойна не обязательно влияет на скорость сети сегодня — в конце концов, полные узлы должны загружать все это только один раз во время синхронизации — некоторые его части все еще можно оптимизировать.
Включение масштабирования блокчейна
Один из небольших аспектов раздува Биткойн — неизрасходованные выходы транзакций (UTXO) — они создаются, когда часть биткойнов отправляется, а оставшаяся часть кошелька отправляется обратно в кошелек как «неизрасходованные».«Хотя сейчас они занимают всего четыре гигабайта пространства, в будущем они могут стать узким местом масштабируемости, — считает разработчик Utreexo Кэлвин Ким.
И это то, что Utreexo пытается решить. Utreexo сжимает эти доказательства до размера менее одного килобайта и предоставляет долгосрочное решение для масштабируемости по мере роста их размера.
«Utreexo — это накопитель на основе хешей, который позволяет сжимать неизрасходованные выходные данные до меньшего размера. Нет потери безопасности; вместо этого бремя отслеживания средств перекладывается на владельца этих средств », — поясняется в сообщении в блоге.
Этот проект уже получил поддержку. 100x Group, материнская компания BitMEX, недавно предоставила Utreexo годовой грант в размере 40 000 долларов. Но заставить Биткойн измениться — медленный и трудоемкий процесс (намеренно), поэтому может пройти некоторое время, прежде чем он будет реализован. Но поскольку Биткойн медленно растет, у него есть много времени для адаптации.
Если бы мы жили в биткойн-будущем, насколько большим должен был бы быть блокчейн?
Подсказка: это НЕ красиво…
Давайте представим, что Биткойн совершил немыслимое — он стал единственной настоящей валютой, используемой для одноранговых платежей по всему миру.
Давайте представим, что все безналичные платежи в этой биткойн-Валгалле осуществляются с помощью биткойнов. Вместо кредитных карт люди достают свое любимое биткойн-оборудование или мобильные кошельки в кофейнях и парикмахерских по всему миру. Сколько таких безналичных платежей было бы в этом идеальном мире?
Сегодня безналичные платежи составляют около 522 миллиардов транзакций в год по всему миру, и это число, кажется, увеличивается квадратично, а это означает, что к тому времени, когда мы перейдем к Bitcoin Valhalla, оно будет намного больше.Невозможно предсказать, когда именно мы туда доберемся, поэтому давайте представим, что биткойн стал доминирующей валютой сегодня .
То, где мы находимся с точки зрения безналичных транзакций по всему миру, источник: worldpaymentsreport.comТеперь, конечно, Биткойн должен убедиться, что его система может обрабатывать огромное количество транзакций без узких мест. Итак, давайте погрузимся в исходный код и щелкнем переключатель масштабируемости, который, казалось, был там все время — , давайте увеличим размер блока настолько, чтобы учесть наши 522 миллиарда транзакций.
Насколько большим должен быть наш блок?
Давайте посчитаем на салфетке, насколько велик наш новый блок.
522 миллиарда транзакций в год означает 1,4 миллиарда транзакций в день.
Это эквивалентно 9 722 220 транзакциям каждые 10 минут , что совпадает с частотой публикации блоков в цепочке блоков Биткойн.
Если предположить, что размеры транзакций остаются примерно одинаковыми, равными 250 байтам, это означает, что каждый блок будет содержать около 2.4 гигабайта данных .
Этот объем транзакции будет генерировать около 350 гигабайт в блокчейне каждый день, или 127 терабайт каждый год.
Для тех, кто не знает, реестр блокчейна поддерживается и распространяется узлами, которые являются пользовательскими машинами, на которых хранится копия текущего действующего реестра блокчейна Биткойн. Все эти узлы работают вместе, чтобы поддерживать децентрализованную цепочку блоков, которую мы полюбили.Узлы получают новые транзакции из кошельков пользователей, их проверяют майнеры, а затем получают добытые блоки от майнеров для добавления в свою бухгалтерскую книгу. Затем узлы также немедленно распространяют эти проверенные блоки на другие узлы в сети Биткойн.
Визуализация гармоничной работы узлов БиткойнСегодня узлы проверяют и распространяют блоки размером примерно 1 мегабайт на другие узлы по всему миру. Согласно этому анализу о влиянии проверки блока на использование памяти, процесс проверки отдельного блока на узле (т.е. сериализация и хеширование) занимает около 1,25 гигабайта памяти и занимает примерно тридцать секунд . Анализ также утверждает, что время проверки блока масштабируется квадратично, и для проверки блока размером восемь мегабайт потребуется примерно 150 минут . Однако, учитывая только две точки данных и для простоты, давайте предположим, что время проверки и потребление памяти масштабируются только линейно.
Вот как мог бы выглядеть масштаб проверки блока, если бы Биткойн сегодня захватил мир с 2.Блоки по 4 ГБПри экстраполяции для соответствия нашим новооткрытым монстрам, мы рассчитываем время проверки более 51000 минут на блок, или примерно 35,4 дня! Для проверки любого блока, который он получает, потребуется в течение месяца для узла, на котором работает текущее оборудование потребительского уровня. Кроме того, потребление памяти на проверку блока находится в диапазоне 3 терабайта . Единственная машина, которая, кажется, даже близко подошла к такому уровню памяти (за пределами серверных стоек), — это невыпущенный HP Z8, который будет стоить намного больше 10 000 долларов при запуске.
Может быть произведена оптимизация (например, проверка блока не выполняется параллельно), и мы можем ожидать, что мощность ЦП продолжит расти, поэтому время проверки более 30 дней, вероятно, является нереалистичным предположением. Но хватит ли масштабируемости вычислительной мощности?
Эта машина также должна будет хранить 127 терабайт данных, генерируемых каждый год. Учитывая, что стоимость хранилища колеблется на уровне 1,9 цента за гигабайт, оператору этой машины необходимо будет тратить примерно 2413 долларов в год на расходы на хранение, чтобы не отставать от роста блокчейна!
Для сравнения: сегодня блокчейн производит около 50 ГБ данных каждый год, что составляет около 0 долларов США.95 в годовой стоимости.
Сразу все это начинает выглядеть совершенно нелепо, но потерпите меня еще немного.
Пропускная способность для наших блоков
Таким образом, нашим узлам также нужна возможность как загружать эти блоки с узлов, так и затем передавать их другим узлам. Давайте посмотрим на текущее распределение узлов по всему миру. Источник
: https://bitnodes.earn.com/Следует отметить, что согласно Биткойн-Вики, существует до 15 раз больше узлов (150 000+), которые не показаны в диаграммах распределения, таких как приведенная выше. , в основном из-за конфигурации портов, но опять же, давайте будем простыми и предположим, что данный дистрибутив является точным.Предположим, наш узел должен загружать блок каждые 10 минут и загружать минимум 144 блока в день, рекомендованных руководящими принципами узла Биткойн. Это дает более 691 ГБ полосы пропускания ежедневно, или 20,73 терабайт в месяц .
Давайте посмотрим на стоимость полосы пропускания в США, где находится наибольшее распределение узлов. Поскольку ни одна сеть потребительского уровня не могла обеспечить такой уровень пропускной способности, мне пришлось прибегнуть к удобному агрегатору CDN, чтобы узнать, какие у нас варианты подключения.
источник: www.cdncalc.comМы предполагаем, что оптоволоконные сети достаточно распространены, чтобы скорость не была проблемой. Абсолютно самая низкая цена, которую оператор одного узла в США может заплатить за распространение блоков биткойнов, составит 600 долларов в месяц.
Итак, подведем итоги. Если бы Биткойн сегодня захватил мир, один оператор узла Биткойн в Соединенных Штатах:
- должен был бы купить машину, способную предоставить 3 ТБ памяти, , которая, вероятно, будет стоить намного больше $ 10 000
- потребуется 2413 долларов долларов в год для хранения блокчейна на машине
- должен будет маршрутизировать блоки через оператора CDN, что будет стоить более 600 долларов в месяц .Прошли времена Google Fiber и AT&T ! Для
- потребуется время проверки блока до один месяц на каждый блок . Так что наш узел может вообще ничего не делать.
Все это для запуска единственного узла Биткойн.
Не похоже, что из более чем 150 000 узлов, работающих сегодня, хватит времени на то, чтобы увидеть нашу Биткойн Валгаллу. Вместо этого они будут уценены и заменены монополизированными и централизованными организациями с достаточными финансовыми возможностями для обслуживания серверных стоек, которые могут обрабатывать сотни миллиардов потребительских транзакций в год. Погодите, это подозрительно похоже на Visa, MasterCard и современную банковскую систему!
Я написал эту статью больше всего для себя, чтобы визуализировать и понять, насколько радикальным будет влияние блокчейна большого размера, масштабируемого для удовлетворения потребностей нашего общества. Это не формальный анализ, и его не следует рассматривать как таковой. Однако этот крайний биткойн-эндшпиль действительно подчеркивает, почему мы не должны позволять размеру блока выходить из-под контроля.
Если ничего, кроме огромных корпораций, не останется, чтобы поддерживать несколько полных узлов Биткойн в нашем обществе, правила консенсуса Биткойн исчезнут, и безопасность сети почти полностью находится в их руках.В этом случае Биткойн больше не будет надежной одноранговой сетью, которой должен был быть, и вы также можете вернуться к ежемесячной выписке по кредитной карте.
Есть также некоторые дыры в моей математике салфетки. Например, к тому времени, когда Биткойн достигнет этого уровня принятия, стоимость технологий упадет и не будет столь безумной, как я ранее отмечал. Также, вероятно, произойдет непредвиденный прогресс в технологии блокчейн, который может компенсировать влияние увеличенного размера блока.
Обратите внимание, что я учел только безналичные платежи — наличные платежи по-прежнему занимают большинство транзакций в мире и открывают совершенно другое измерение немасштабируемости. Также обратите внимание, что если узел поражен вредоносным недопустимым блоком, он будет тратить все больше времени на его проверку.
Безналичные платежи также быстро растут с каждым годом, поэтому использование оборудования, несомненно, будет выше, когда мы приблизимся к этому уровню использования биткойнов.
Прошлые дыры в моей салфетке из пословиц, вот центральное сообщение, которое все это должно передать:
В конце концов, красота работы узла Биткойн заключается в его простоте.Вы или я могли бы запустить узел Биткойн на наших компьютерах прямо сейчас, если у нас есть для этого место на жестком диске. Узел Биткойн может работать на Raspberry Pi за 90 долларов или на инстансе EC2 за 20 долларов в месяц. Эта простота является причиной того, что в мире, вероятно, более 150 000 узлов, и почему Биткойн продолжает бесперебойно функционировать как одноранговая сеть без доверия.
Биткойн-узла размером с ладонь — они существуют! источник: bitseed.orgЕсли использование биткойнов начнет приближаться даже отдаленно к цифрам, которые я обрисовал, способность поддерживать сеть биткойнов быстро перейдет из рук пользователей в руки централизованных организаций.
Все это также не означает, что Биткойн не может масштабироваться. Биткойн может и будет масштабироваться, чтобы удовлетворить потребности миллиардов. И это можно сделать без раздувания блокчейна! В разработке есть несколько инновационных решений, направленных на элегантное масштабирование сети Биткойн в долгосрочной перспективе без необходимости увеличения размера блока, наиболее важные из которых я описал в своей недавней обстоятельной статье.
Эти сложные решения требуют времени на разработку, поэтому мы не видим немедленных результатов, но, как гласит старая пословица из «Истории игрушек», «Искусство нельзя торопить.
Я призываю читателей попробовать создать узел Биткойн сегодня. Идите и посмотрите, как это просто!
Убедитесь, что вы помните, как это просто, потому что это именно то, что поддерживает Биткойн.
ОБНОВЛЕНИЕ: Я получаю много отзывов (и это фантастика) относительно того, что цена на технологии упадет, и поэтому эти цифры не вызывают особого беспокойства. Это верный момент, и я подчеркнул это в своем заключении.
Тем не менее, Биткойн быстро внедряется, и если вы делаете ставку на то, чтобы Биткойн как можно скорее достиг массового распространения, вы также делаете ставку на то, что стоимость технологий упадет еще быстрее.Я лично не хочу делать такую ставку.
Я не призываю ограничивать потребление оборудования до уровня, когда узлы все еще должны работать на Raspberry Pis. Но в какой момент времени разумно ожидать, что пользователи (или даже майнеры) разместят машины с номерами, даже отдаленно близкими к указанным выше? Цены на хранение стагнируют. Закон Мура пытается выжить.
Я также не касался влияния этого уровня масштабирования цепочки на майнеров. Даже если вы считаете, что узлы, не связанные с майнингом, не являются необходимостью, с учетом требуемого аппаратного масштаба, многие майнеры будут иметь аналогичные цены, и, вероятно, будет продвигаться централизация майнинга.В чем разница между доверием небольшому количеству майнинговых пулов стоимостью около миллиарда долларов, обеспечивающих безопасность сети, и серверным стойкам VISA?
Если вы заинтересованы в более подробных и информативных статьях, подобных этой, в будущем, я рекомендую подписаться на меня здесь на Medium и в Twitter !
Если у вас есть отзывы или вы заметили какие-либо ошибки, которые я сделал, не стесняйтесь, дайте мне знать в комментариях или в личной заметке!
Если вы хотите узнать больше об узлах Биткойн, Биткойн-вики — отличное место для начала .
BTC Адрес: 3MGguJhw1bm95tDQjZ3b8ySBwZLJ77CgG1
Я также понимаю, что SPV достаточно для большинства пользователей — это правда! Но полные узлы по-прежнему необходимы для обеспечения децентрализации и консенсуса. Мы должны поощрять их использование, а не отговаривать их.
Отличный фрагмент, дополнительно объясняющий важность дизайна Биткойна:
Блокчейн, деньги и социальная масштабируемость от Ника Сабо
Истории по теме
Теги
Присоединяйтесь к хакеру ПолденьСоздайте бесплатную учетную запись, чтобы разблокировать свой индивидуальный опыт чтения.
Как справиться с растущим размером книги блокчейна в контейнерах
По своей природе — узлы криптовалюты присоединяются только к базам данных. Это означает, что требования к хранилищу для узла всегда будут увеличиваться в прямой зависимости от количества транзакций, обрабатываемых в секунду.
По мере роста популярности криптовалюты в ближайшие несколько лет мы увидим огромное увеличение требований к хранилищу для работы этих узлов. В декабре 2017 года размер реестра биткойнов составлял 149 гигабайт, и прогнозируется, что в ближайшие годы он будет экспоненциально вырасти до терабайт данных, поскольку по мере роста внедрения происходит все больше и больше платежей.
Это будет увеличиваться в прямой зависимости от количества узлов, которые вы запускаете параллельно — каждому потребуется собственная записываемая копия реестра, и если вы работаете в любом масштабе (сотни или даже тысячи узлов) — требования к хранилищу становятся операционная проблема.
Размер постоянно растущей книги
По двум причинам — требования к хранилищу для систем блокчейн будут расти по двум причинам:
- По мере роста базы пользователей происходит больше транзакций в секунду
- Каждая транзакция увеличивает размер реестра, и, поскольку это только добавление, всегда существует тенденция к увеличению потребления хранилища
Сравните это с изменяемыми системами, в которых значения заменены на , и вы увидите, что по мере продвижения вперед мы начинаем страдать от постоянно растущего размера реестра.
Существуют способы сократить размер реестра , но растет беспокойство по поводу того, что через несколько лет размер этих реестров вырастет за пределы разумного размера доступных дисков.
В традиционном облачном приложении — где вы можете использовать базу данных, такую как Cassandra — можно было бы добавлять новые узлы в кластер и, таким образом, увеличивать емкость хранилища для решения этой проблемы.
Однако — системы блокчейнов — это базы данных , и поэтому просто использовать распределенную базу данных в качестве основного механизма хранения невозможно.
Мы могли бы взломать и реализовать файловую систему FUSE, которая фактически записывала данные в кластер Cassandra — но это напрямую повлияет на производительность, а производительность узлов криптовалюты может напрямую коррелировать с прибылью при работе в масштабе
Проще говоря, нам нужно решение, которое позволит нам увеличить емкость хранилища, не влияя на производительность или не выполняя миграции, что приведет к простоям.
Пул хранения Portworx
Portworx использует другой подход к традиционному подходу к подключению одного диска к контейнеру — он объединяет нижележащих дисков в структуру хранилища .
Как это выглядит при использовании одного диска на контейнер:
А как это выглядит, когда мы объединяем диски в пул и отделяем хранилище от контейнеров:
Эта настройка означает, что контейнеры получают по запросу виртуальные срезы базового пула хранения. Он может реплицировать данные на несколько узлов и работать вместе с планировщиками, такими как Kubernetes, для обеспечения эффективной конвергенции контейнеров и данных.
Однако сегодня мы рассмотрим возможность:
представляет в контейнере том, который БОЛЬШЕ, чем любой из ваших физических дисков
Недостаточно места на физическом диске
Представьте, что у вас есть диск емкостью 1 ТБ, и ваш набор данных использует 99% этого диска.Увеличение вашего набора данных на один процент приводит к ужасному сообщению disk is full .
Обычно это приводит к тому, что к узлу необходимо добавить диск большего размера, отключить существующий контейнер и затем переключить его на использование нового диска большего размера. У вас также есть проблема, заключающаяся в том, что новый диск пуст, что означает, что узел криптовалюты должен будет повторно загрузить всю бухгалтерскую книгу, что может занять некоторое время и означает длительное время простоя для вашей службы. Другое решение состоит в том, чтобы скопировать содержимое старого диска на новый, что, хотя и работает быстрее, все равно потребует простоя и внесет операционную сложность, которой можно избежать при использовании Portworx.
Думайте об этом как о двух коробках для вещей — одна в X, а другая в 2 раза больше. По мере того, как мы добавляем материал в первую меньшую коробку, мы заполняем ее. Поскольку каждый ящик полностью отделен от другого — как только меньший ящик будет заполнен, нам придется вынуть все содержимое из первого ящика, поместить его во второй и затем продолжить заполнение второго ящика.
Ключевой фактор здесь:
есть однозначное отображение физического хранилища на том контейнера
Если диск заполняется — нужно переключиться на диск большего размера:
Тогда у вас возникнет другая проблема — что, если размер реестра для узла криптовалюты начнет становиться больше, чем емкость любого из ваших дисков?
Использование сети хранения Portworx
Поскольку Portworx отделяет хранилище от контейнеров — это означает, что у нас есть программно определяемая структура хранилища, расположенная между самим контейнером и базовыми ресурсами хранилища.
Это означает, что мы можем:
Вернемся к нашему хранилищу в примере коробки — теперь у нас есть воронка, в которую мы можем помещать материал, которая знает, насколько заполнена каждая коробка, и разумно помещает ее в коробку, в которой есть место.
С логической точки зрения — у нас есть одна очень большая коробка — нам не нужно беспокоиться о том, какая коробка заполнена и в какую коробку мы должны положить следующую вещь. Умная воронка делает это за нас.
Portworx делает именно это, но для данных и дисков — он может маршрутизировать запись на любое из нижележащих устройств хранения, но по-прежнему представляет логический том в контейнер, который состоит из комбинации всех этих дисков.Контейнер просто видит массивный диск!
Думайте об этом как о RAID0, но для — это кластер машин . Добавьте к этому тот факт, что Portworx может одновременно реплицировать данные синхронно, и мы получим:
Программное решение RAID0 и RAID1 с поддержкой кластера для контейнеров
Давайте посмотрим, как это работает с точки зрения кластера:
Главное в том, что с операционной точки зрения вы хотите разделить следующие две вещи:
- Для каждого контейнера, какой объем хранилища он использует — при заполнении динамически изменять размер
- Для всего кластера — какова моя общая емкость пула хранения — при заполнении динамически добавлять устройства хранения
Эти операции упрощаются с помощью pxctl — инструмента командной строки, который управляет кластером Portworx.
В обоих случаях — без перезапуска контейнеров вы можете увеличить размер тома контейнера и добавить устройства в базовый пул хранения.
Это значительно упрощает операционную сложность запуска кластера с интенсивным хранением, который становится особенно полезным для узлов криптовалюты.
Возможность иметь контейнерный том, превышающий размер любого из ваших физических дисков, буквально невозможен без использования какого-либо программного решения для хранения данных, и Portworx является лидером в этой области со многими клиентами, работающими в производственной среде.
Заключение
По мере того, как криптовалюты становятся все более распространенными, проблемы хранения, которые мы видим сегодня, будут только расти в геометрической прогрессии. Важно заложить прочный фундамент вашей системы до того, как возникнет настоящая проблема глобального использования.
Подводя итог, можно сказать, как справиться с постоянно растущим размером книги:
- Используйте программно определяемое решение для хранения, которое отделяет хранилище от контейнеров
- Затем вы можете добавить устройства хранения в свой пул, чтобы увеличить общую емкость
- Затем увеличьте логический размер тома контейнера
- Решение, которое вы используете, должно выполнять эти две задачи без простоя контейнера
Убедитесь, что вы также прочитали другие сообщения из этой серии:
Обязательно загрузите и попробуйте Portworx сегодня, чтобы вы могли увидеть, как он работает, и получить представление о продукте — это бесплатно, чтобы попробовать в течение 30 дней!
Вот несколько ссылок, которые могут быть вам полезны, чтобы узнать больше о нашем продукте и замечательной команде:
* Документы
* Введение в продукт
* Наши клиенты
* Команда
Кай работает над интернет-системами с 1998 года и в настоящее время использует Kubernetes, Docker и другие контейнерные инструменты, а также программирование на Node.js и Go.
Вернуться в блог
Блокчейн: это то, чем отличаются Биткойн и Эфириум
После того, как мы увидели в первых двух частях этой серии, какие проблемы могут быть решены с помощью блокчейна (Блокчейн: децентрализованные византийские генералы) и как это делается технически (Блокчейн : Хэш-функции и деревья Меркла), в этом последнем посте мы сосредоточимся на различиях между блокчейнами Биткойна и Эфириума.
Сходства
Оба блокчейна представляют собой большие деревья Меркла, состоящие из множества ветвей.Сегодня размер всей цепочки биткойнов составляет около 200 гигабайт. В зависимости от реализации узла Ethereum имеет разные размеры блокчейнов. В связи с экспоненциальным ростом в начале 2018 года размер блокчейна Ethereum превышает 1 терабайт (1000 гигабайт). Все процессы (транзакции) в этом довольно большом количестве данных связаны хешами. Любой, кто использует данные, может (и должен) проверить их точность. При проверке данных отдельные блоки загружаются физически отдельными компьютерами.Это похоже на файлы в протоколе Bittorrent. После проверки вы становитесь частью распределенного проекта, так называемого узла.
Свойства
Две системы не являются «конкурентами», но ориентированы на решение разных задач. В то время как Биткойн — это «всего лишь» валюта, Ethereum предлагает валюту под названием Ether и способ заключения контрактов. Контракт можно рассматривать как услугу с определенными правилами, которые автоматически заполняются и выполняются.
Начало у обоих проектов было разным.
Биткойн «внезапно появился». Первый блок блокчейна Биткойн был сгенерирован, как и все последующие блоки. В Ethereum была предварительная продажа их валюты под названием Ether по фиксированным курсам. Сам Ethereum стартовал годом позже. Оба проекта достигают консенсуса благодаря работе, которую необходимо выполнить (создание хеш-значений из транзакций). Однако в 2018 году Ethereum начал использовать алгоритм консенсуса, основанный на участии. Это важно, потому что в настоящее время работа потребляет много электроэнергии, а алгоритм участия «экономит электроэнергию».Биткойн использует стандарт SHA-256 для создания хэшей, Ethereum использует собственную систему Ethash. Блок генерируется каждые 10 минут для биткойнов, каждые 14-15 секунд для Ethereum.
Биткойн | Эфириум | ||
---|---|---|---|
Inventor | Сатоши Накамото | Виталик Бутерин | |
Старт /1 | 908Метод | Первый блок сгенерирован (генезисный блок) | Предпродажа в 2014 г. (2000 Eth стоимость 1 биткойн = около 600 долларов США) |
Использование блокчейна | Валюта (биткойн ) | Валюта (эфир) и контракты («Смарт-контракты») | |
Алгоритм консенсуса | через работу (Proof of Work) | в настоящее время в работе (доказательство работы ) , позже через форму участия (подтверждение ставки). | |
Майнинг | SHA-256 | Ethash | |
Blocktakt | каждые 10 минут | каждые 14-15 секунд |
Есть много других особенностей и отличий условия сделок.
Для обзора базовой структуры достаточно приведенного выше обзора.
Блокчейн
Обычно блокчейн выглядит как на этом рисунке.
Общая структура цепочки блоков
Каждый блок состоит из четырех частей:
- хэш предыдущего блока,
- корневой хэш транзакций (дерево Меркла)
- метка времени
- одноразовый номер (случайное содержимое строка)
Из этих четырех компонентов вычисляется хэш блока.Блокчейн на самом деле является цепочкой многих деревьев Меркла.
Блокчейн Биткойн
Блокчейн Биткойн занимается управлением транзакциями. Например, если я хочу «перевести» вам два биткойна, эта транзакция должна быть хэширована в блокчейне биткойнов. Упрощенное представление выглядит так:
очень упрощенная цепочка блоков биткойнов
Каждый блок содержит транзакции биткойнов, включая мой «перевод».
Блокчейн Ethereum
Ethereum немного отличается.Транзакция в Ethereum — это статус программного кода.
очень упрощенный блокчейн Ethereum
Итак, когда дело доходит до передачи Ethereum Currency Ether, статус программы, управляющей эфиром, сохраняется. Эта функция Ethereum позволяет сохранять любые другие состояния программного кода. Эта функция называется смарт-контрактом Ethereum. На первый взгляд смарт-контракт — это что-то вроде контракта с отдельными абзацами. На первый взгляд, это программа с определенными сохраняемыми состояниями.
Примеры
Вероятно, наиболее показательным примером является CryptoKitties.
https://www.cryptokitties.co/
Право собственности CryptoKitties отслеживается с помощью смарт-контракта в блокчейне Ethereum. CryptoKitties распределяются автоматически с помощью смарт-контрактов, по одному каждые 15 минут (672 в неделю) в течение одного года. Каждый CryptoKitty представлен в виде невзаимозаменяемого токена ERC-721, который позволяет каждой сущности иметь определенные атрибуты.Существует ограничение в 4 миллиарда кошек, которых можно «разводить». Каждая кошка имеет определенную внешность («фенотип»), которая определяется ее неизменными генами («генотип»). Гены хранятся в смарт-контракте. Поскольку кошки являются токенами в блокчейне, их можно покупать, продавать или передавать в цифровом виде («передавать») в эфире (ETH).
Помимо игровой индустрии существует несколько проектов, основанных на блокчейне Ethereum. Чтобы лучше понять, я хочу упомянуть два из них.
uPort
uPort — это платформа управления идентификационной информацией.В ноябре 2018 года швейцарский город Цуг официально запустил свой Zug eID, позволяющий его жителям зарегистрироваться для получения децентрализованной цифровой идентичности. С тех пор жители Цуга получили возможность пользоваться электронными услугами, такими как онлайн-голосование и подтверждение места жительства. На основе eID также можно использовать такие службы, как AirBie, служба проката велосипедов в городе Цуг.
Golem
Golem — это глобальный рынок простаивающих вычислительных мощностей. Вы можете использовать Golem в качестве инициатора запросов, чтобы арендовать вычислительные мощности и ускорить рабочий процесс, и / или в качестве провайдера, сдавая неиспользованные вычислительные мощности в аренду другим участникам сети.ETH используется для покрытия комиссий за транзакции в блокчейне Ethereum. Это полезно, например, для рендеринга и перекодирования видео. Подумайте о Netflix и размере мирового рынка потокового и транскодирования видео. Golem — это своего рода Airbnb для вашего компьютера.
Отличие
Биткойн — это скорее продукт, Ethereum — это платформа, на которой могут разрабатываться такие продукты, как Cryptokitties, uPort и Golem.
Ссылки
Размер блокчейна Ethereum превысил 1 ТБ, и да, это проблема | Автор StopAndDecrypt | HackerNoon.com
(TL; DR: это не имеет ничего общего с ограничениями места для хранения)
Введение
Это прямой ответ из на следующую статью Афри Шёдона, разработчика клиента Parity Ethereum, написанную менее чем год назад:
Я хочу прояснить, что я уважаю почти всех разработчиков в этой сфере, и это не предназначено для нападок на кого-либо. Он предназначен для того, чтобы подробно рассказать о реальных проблемах и объяснить, почему исходная статья ничего не делает для решения этих реальных проблем.Я действительно хотел бы увидеть что-то, что делает, потому что тогда мы можем бросить это в биткойн. При этом есть некоторые разработчики, которые вводят в заблуждение, скрывают, игнорируют и атакуют с помощью путаницы в протоколах, как это произошло с 2X и драмой защиты от повторного воспроизведения, но большинство из них не такие. Вы не можете смотреть что-то подобное или читать что-то подобное и ненавидеть этих разработчиков. Они на самом деле пытаются вести в том же бою, что и мы, и я считаю, что Афри является частью второй группы, а не первой.
https://github.com/paritytech/parity/issues/6372Если вы читали другие мои статьи, вы увидите повторение некоторых небольших фрагментов этой информации. До сих пор я писал в основном о Биткойне с «максималистской» точки зрения (до сих пор) и сосредоточился на конфликтах внутри этого сообщества. Что вам может показаться интересным, если вы будете наблюдать только краем глаза, так это то, что причина «конфликта» здесь точно такая же. Я даже буду использовать Proof-of-Stake в качестве дополнительного рычага для моей аргументации, не критикуя ее.
Редактировать: Похоже, люди не читают субтитры и что-то не понимают. Это не про архивные узлы. Речь идет о полной проверке узлов. Меня не волнует, сокращаете ли вы историю или пропустите очередь, чтобы догнать всех остальных. Речь идет о том, чтобы оставаться в синхронизации постфактум. Световые узлы не являются узлами.
Эта статья состоит из двух частей. Когда вы закончите с этой статьей, вы можете прочитать следующую:
Индекс
- Мой аргумент: Каталог неуправляемых данных Ethereum размером — это только верхушка.
- Мой прогноз: Все будет работать, пока не перестанет.
- Мое предложение: Транспонировать.
Все очень просто. — это центральный аргумент всего криптовалютного сообщества в отношении масштабирования. Не многие люди, знакомые с протоколом блокчейн, на самом деле это отрицают. Ниже приводится отрывок из того, что я считаю очень хорошо составленным объяснением различных вариантов масштабирования «Уровня 2». (из которых единственный рабочий уже реализован на Bitcoin.)
https://medium.com/l4-media/making-sense-of-ethereums-layer-2-scaling-solutions-state-channels-plasma-and-truebit-22cb40dcc2f4Эта статья написана Джошем Старком . Он понимает. Его компания даже анонсировала проект, который призван отразить Lightning Network на Ethereum. (Что является странным совпадением, учитывая, что Компания Элизабет Старк помогает создавать Lightning.)
Проблема? Отложив все, что касается Proof of Stake, полностью в сторону, структура стимулов базового уровня полностью нарушена, потому что нет ограничения на размер блока Ethereum, и даже если бы он был установлен, он должен был бы быть разумным , а затем эти Даппсы даже не работали, потому что сейчас они почти не работают без ограничения.Даже не имеет значения, какое это ограничение установлено для этого аргумента, потому что прямо сейчас нет на месте.
Давайте вернемся немного назад. Я собираюсь вкратце дать определение блокчейну и расстроить людей.
Вот что предоставляет блокчейн:
- Неизменяемая и децентрализованная бухгалтерская книга.
- Вот и все.
Вот что нужно блокчейну для сохранения этих свойств:
Децентрализованная сеть со следующими прерогативами:
- Распространить мою бухгалтерскую книгу — Подтвердить
- Добавить мою бухгалтерскую книгу — Работа
- Стимулировать мои потребности — Токен
Здесь это то, что убивает блокчейн:
- Любая функция, встроенная в блокчейн, которая отвлекает от целей сети.
Блокчейн — это просто инструмент для сети. На самом деле это очень специфический инструмент , который может использоваться только в очень специфической сети типа . Настолько, что они требуют друг друга для существования и разваливаются, когда они не работают совместно с -работают, уделяют достаточно времени. Вы можете построить поверх этой сети, но, откровенно говоря, все остальное, встроенное в на базовый уровень (L1) , которое негативно влияет на способность сети выполнять свою работу, поставит всю сеть на колени … достаточно времени.
Вот пример функции L1, которая не влияет на сеть: Multisig.
Это действительно требует, чтобы узел проделал небольшую дополнительную работу, но она «маргинальная». Важно отметить, что аппаратное обеспечение не является узким местом для этих сетей (правильно спроектированных) , а задержка сети является. Такая простая вещь, как оплата на адрес с несколькими подписями, не облагает сеть налогом больше, чем оплата на обычный адрес, потому что вы платите побайтово за каждую транзакцию.Это функция блокчейна, которая не вредит способности сети продолжать выполнять свою работу, потому что данные, отправляемые по сети, (1) оплачиваются за байт, и (2) регулируется через ограничение размера блока. Регулируемый , без «искусственного ограничения». Размер блока не ограничивает поток транзакций, он регулирует объем широковещательных данных, отправляемых по сети. В этом и заключается проблема.
Когда мы говорим о размере «каталога данных», это прямая ссылка на размер всей цепочки блоков из исходного блока генезиса, но если принять это за чистую монету, мы получим стандартные ответы:
- Дисковое пространство дешево, см. также Закон Мура.
- При необходимости вы можете обрезать блокчейн.
- Вам не нужно проверять все, начиная с блока генезиса, последних X блоков достаточно, чтобы доверять состоянию сети.
Что они полностью игнорируют, так это данные в секунду , которые должен обрабатывать узел.
Если хотите, вы можете прочитать всю мою статью о законе Мура, но ниже я приведу отрывок из важной части. В стране Оз пытаются аргументировать: «Вам не нужно запускать узел, только майнеры должны решать, какой код запускать».Это на грани абсурда, но мне не о чем беспокоиться здесь, потому что Proof of Stake полностью удаляет майнеры и помещает все на узлы. (Так было всегда, но теперь нет майнеров, которые могли бы отклонить аргумент.)
- Закон Мура — это показатель темпов роста интегральных схем, который в среднем составляет 60% в год. Это не показатель средней доступной пропускной способности (что более важно) .
- Скорость роста пропускной способности ниже. Ознакомьтесь с законом Нильсена.Начиная с соотношения 1: 1 (отсутствие узкого места между оборудованием и пропускной способностью) , при ежегодном росте на 50%, 10-летний совокупный рост дает соотношение ~ 1: 2. Это означает, что полоса пропускания масштабируется вдвое медленнее за 10 лет, в 4 раза медленнее за 20 лет, в 8 раз за 40 лет и так далее… (На самом деле это намного хуже, чем это, но я сохраняю простоту, и это все еще выглядит действительно плохо.)
- Задержка сети масштабируется медленнее, чем пропускная способность. Это означает, что по мере увеличения средней скорости полосы пропускания между узлами в сети скорости передачи блоков и данных не масштабируются с одинаковой скоростью.
- Более крупные блоки требуют лучшего распространения данных (задержка) для противодействия централизации узлов.
Строго говоря, с точки зрения Ethereum с будущей сетью только узлов после перехода на Proof of Stake, вы, как правило, хотите убедиться, что централизация узлов не является проблемой. Узким местом для сети Биткойна является его размер блока (как и должно быть) , потому что он гарантирует, что скорость роста сетевых требований никогда не превысит скорость роста внешних (и в некоторых случаях неопределимых) ограничений , таких как вычислительная производительность или производительность сети.Из-за экспоненциально растущего размера блока Ethereum узкое место не регулируется ниже этих внешних факторов и, как таковое, приводит к сокращению и большей централизации сети из-за требований сети, которые все больше и больше превышают оборудование и пропускную способность среднего пользователя.
Биткойн-клиенты SPV не являются узлами. Они не распространяют блоки или транзакции по сети, они извлекают, и все, что они извлекают, — это заголовки блока .
- Вы можете поместить недопустимые транзакции в блок и при этом создать действительный заголовок блока .
- Если сеть контролируется 10 FULL -узлами, вам понадобится только половина из них, чтобы игнорировать / утверждать недействительные транзакции, пока заголовок действителен.
Вот почему проверка транзакций важна с точки зрения сети, и почему вам нужна большая децентрализованная сеть. Это не имеет значения с точки зрения моей бабушки, и это нормально, но мы не говорим о моей бабушке. Речь идет о , обеспечивающем рост, а не сокращение сети работающих и активно участвующих узлов.
Этот узел принимал участие , пока он не был отключен из-за роста спроса на сеть:
https://www.reddit.com/r/ethereum/comments/58ectw/geth_super_fast/d908tik/Это не редкость, и это продолжается произойдет:
https://github.com/ethereum/go-ethereum/issues/14647Обратите внимание, как можно решить проблему «найти хорошего партнера» или «обновить свое оборудование»? Хорошие коллеги не должны быть узким местом. Аппаратного тоже быть не должно. Когда все ваши одноранговые узлы охвачены таким количеством других, высасывающих из них (потому что хорошие узлы — это те, кто выполняет настоящую работу) , вы создаете сеть из мастеров и ведомых устройств, которая постепенно тяготеет к одному ведущему и всем ведомым. (Если вы не согласны с этим утверждением, вам необходимо обосновать, как эта тенденция не утихнет в будущем, потому что в настоящее время это направление, в котором она идет, и она не остановится, если не будет установлен предел Если ваш ответ — шардинг, я обращаюсь к этой волшебной пыли в конце.) Это определение централизации . Нерегулируемые блоки централизуют сети. Большие блоки (но с ограничением) лишь ненамного лучше, но создают прецедент для постоянно увеличивающегося размера блока, что не менее плохо, потому что создает прецедент увеличения размера «в случае необходимости», что отражает блок. результаты нерегулируемых размеров блоков.Вот почему мы не сдвинемся с места в отношении размера блока биткойнов.
Я писал об этом в Твиттере несколько раз, но явно не думал, что этого достаточно. Мой Твиттер не очень-то распространяется на пространство Ethereum.
Эта диаграмма является символической и не представляет никаких реальных чисел. Он служит только для визуального выражения того, что я пытаюсь донести. Чтобы уточнить, зеленая кривая представляет собой агрегированное среднее значение различных требований сети Ethereum. В какой-то момент ваш узел выйдет из строя из-за этого, или будет установлено ограничение размера блока.Это может произойти сейчас, или это может произойти через 10 или 50 лет, но ваш узел в какой-то момент выйдет из синхронизации с такой скоростью. никогда не будет в биткойнах. Вы можете отрицать это сейчас, сколько хотите, но эта статья будет здесь, когда это произойдет, и когда это произойдет, такие глупые Dapps, как CryptoKitties, Shrimp Farm, Pepe Farm и все, что будет дальше, перестанут работать. Именно это случилось с сервисом Райана Чарльза Yours.org, который он изначально построил на биткойнах. Единственная разница в том, что у Биткойна уже есть ограничение, и Райан либо не предвидел этого из-за непонимания, либо по какой-то причине ожидал, что размер блока будет продолжать расти.Вместо переоценки он удвоил ставку на BCash, тем временем Yalls.org взял его концепцию и реализовал ту же самую вещь поверх Lightning Network Биткойна.
http://bc.daniel.net.nz/ ← Больше не обновляет статистику, диаграмма редактируется и экстраполируется с использованием РЕАЛЬНЫХ текущих данных. Https://ethereum.stackexchange.com/questions/143/what-are-the-ethereum -disk-space-needsПриведенная выше таблица даже не является прогнозом. Это я заполняю пробелы (желтым) на том, что было последним оставшимся графиком, который сравнивал каталоги данных обеих цепочек, а затем экстраполировал из него.Вот что мы знаем:
- Будущее Биткойна предсказуемо. Рост блокчейна и потребности сети всегда будут линейными. (Идеально)
- Объем данных, которые должен обрабатывать узел Ethereum, в секунду проходит через крышу и поднимается. (Unideal)
- Если внутрисетевой спрос на Ethereum замерзнет там, где он есть сейчас, рост блокчейна продолжит линейный тренд, обозначенный этой пунктирной линией. (Очень плохо)
- Если спрос на цепочку Ethereum продолжит экспоненциально расти, количество людей, жалующихся на рассинхронизацию их узлов, достигнет критической точки. (Есть только один вариант, когда это происходит.)
Этот график выше? Владелец прекратил попытки поддерживать узел. Физические требования также являются проблемой, как и временные ограничения в вашей личной жизни. Требования к обслуживанию должны быть низкими, не высокими, не разумными… низкими.
Знаете ли вы, что я делаю для обслуживания своего узла Bitcoin / Lightning? Я оставляю свой ноутбук включенным. Вот и все . Если мне нужно перезагрузиться, я закрываю службы, перезагружаюсь и снова запускаю их.Ежедневно я использую свой ноутбук для множества других задач, ни одна из которых не препятствует его способности запускать программное обеспечение узла. При всем уважении, если бы изменение было реализовано и навязано мне, что привело к тому, что мой узел больше не был совместим с сетью и не мог поддерживать синхронизацию, я бы свалил с ума из-за идиотизма, который позволял это, если бы я был дезинформированным человеком. К счастью, это не так, и я подписался на блокчейн с предвидением (Биткойн) .
Проблема? Я не думаю, что большинство людей, использующих узлы Ethereum, достаточно информированы, чтобы знать, на что они подписались.Я не думаю, что они понимают фундаментальные модели стимулирования, и я не думаю, что они полностью понимают, где и почему они терпят неудачу из-за чего-то столь же простого, как отсутствие ограничения на размер блока. Надеюсь, эта статья научит этому.
Так что же произойдет, когда психологический переломный момент будет достигнут? Люди сдаются? Сколько узлов должно быть потеряно, чтобы это произошло? Веб-сайты проводников больше даже не отслеживают эти данные. Etherscan.io больше не отслеживает каталоги полной или быстрой синхронизации, Etherchain.org говорит: Ошибка: не найдено
[PDF] Сегментный блокчейн: механизм хранения с уменьшенным размером для блокчейна
ПОКАЗЫВАЕТ 1–10 ИЗ 44 ССЫЛОК
СОРТИРОВАТЬ ПО РелевантностиБольше всего затронутых статейНедавность
RapidChain Полное масштабирование блокчейна с помощью RapidChain
предлагается первый общедоступный блокчейн-протокол на основе сегментирования, который устойчив к византийским сбоям до 1/3 части его участников и обеспечивает полное сегментирование коммуникационных, вычислений и накладных расходов на хранение при обработке транзакций, не предполагая какой-либо надежной настройки. .Развернуть- Просмотреть 1 отрывок, справочная информация
Византийский узел n / 2 допускает подход сегментирования блокчейна
В этом документе представлен новый подход сегментирования блокчейна, который может выдержать до n / 2 узлов, являющихся плохими, и доказано, что эта конструкция намного более безопасна, чем традиционные модели, и размер Shard может быть значительно уменьшен. Развернуть- Просмотреть 5 выдержек, ссылочные методы и справочную информацию
LSB: облегченная масштабируемая цепочка блоков для безопасности и конфиденциальности IoT
Предлагается облегченная масштабируемая цепочка блоков (LSB), оптимизированная для требований IoT, а также обеспечивающая сквозную безопасность Качественные аргументы демонстрируют, что этот подход устойчив к нескольким атакам на систему безопасности.Развернуть- Просмотреть 3 выдержки, справочная информация
Временная цепочка блоков: формальный анализ
Предлагается цепочка блоков с временным перемещением, которая решает проблему ее текущего экспоненциального роста, вместо этого заменяя ее блокчейном постоянного фиксированного размера, сравнивая результаты к традиционной модели блокчейна, чтобы продемонстрировать, что удаление данных из блокчейна не влияет на безопасность. ExpandBlockstack: глобальная система именования и хранения, защищенная блокчейнами
В этом документе описывается опыт работы с большим развертыванием децентрализованной службы PKI, построенной на основе блокчейна Namecoin, и представлены различные проблемы, связанные с надежностью, пропускной способностью и безопасностью сети. необходимо было преодолеть при регистрации и обновлении более 33000 записей и 200000 транзакций в блокчейне Namecoins.ExpandМасштабируемое финансирование сетей каналов микроплатежей Биткойн
Предлагается новый уровень, который находится между цепочкой блоков и платежными каналами, который решает проблему масштабируемости, обеспечивая финансирование каналов вне цепочки блоков без доверия и снижает стоимость открытия новых каналов. Развернуть- Просмотреть 1 отрывок, справочная информация
Размер блока | CoinMarketCap
Блоки — это одни из самых маленьких компонентов в реестре цепочки блоков. По сути, блоки представляют собой сгруппированные вместе пакеты данных транзакций, которые позже объединяются в цепочку, которая формирует распределенный реестр.
Что такое размер блока?
Размер блока довольно прост — это объем данных, который может содержать один блок. Например, с мая 2021 года один блок в цепочке блоков биткойнов может содержать данные, эквивалентные 1 МБ. Это ограничение было введено в действие в 2010 году, чтобы ограничить возможность перегрузки блокчейна и остановить возможные DoS-атаки.
Изначально блокчейн Биткойн был разработан для работы с блоками размером до 36 МБ; однако из соображений безопасности возникла необходимость в значительно меньших размерах блоков.
Почему важен размер блока?
Одна из основных проблем, связанных с размером блока для блокчейнов, — это перегрузка сети. Чем быстрее блоки заполняются транзакциями, тем больше вероятность того, что время ожидания подтверждения транзакции увеличится. Например, блокчейн Биткойна более склонен к замедлению обработки транзакций из-за небольшого размера блока, составляющего всего 1 МБ. В гипотетической ситуации, когда узлы не могут справиться с количеством ожидающих транзакций из-за ограниченного размера блоков, пользователи могут страдать от очень низкой скорости обработки или даже отменять передачи.
Это неприемлемо для финансового решения нового века, которое направлено на революцию в мировой экономике.