прочитал несколько первых и несколько последних страниц, но так и не понял что такое Ardor, с чем его кушать и нафига он вообще нужен.
Ardor - это следующий (
next :-) этап развития криптоплатформы Nxt, развития в направлении пользовательских дочерних цепей (ChildChain) и высокой производительности при компактном блокчейне.
Платформа Ardor решает две основные проблемы криптовалют (включая биткоин), на которые их разработчики предпочитают закрывать глаза. Это огромный, беспрерывно растущий блокчейн, и низкая производительность (количество транзакций в секунду).
Попутно решается вопрос торговли Asset за Asset на встроенной в платформу Ardor распределённой бирже Asset Exchange.
Whitepaper
Ardor &
Ignis на русском:
https://www.jelurida.com/sites/default/files/JeluridaWhitepaper-Russian.pdfРазработчики Nxt в течение 3-х лет последовательно готовились к решению этих проблем, и создали необходимый инструментарий -
Prunable Data,
Data Cloud, а также
Monetary System как прообраз дочерних цепей.
План перехода Nxt ко второму этапу (сейчас получившему название "Ardor") был сформулирован ещё в начале 2014 года:
RFC: Parallel Chains concept
Master Chain
Contains only checkpoints of all slave chains. Checkpointing is done once a day and only when 1440 blocks r built on top of the corresponding slave chain. Master chain is never pruned. Growth rate is [32 bytes * numberOfSlaveChain] per day.
Slave Chains
Contains only 1 type of transactions. Different currencies can be implemented as different chains. Forgers can choose what chains to secure. The market balances TPS rate.
Migration plan
Create slave chains that implement all transactions types existing in Nxt. Add a new type for checkpointing. Reject attempts to include non-checkpointing transactions into the master chain.
Side-effects
The Chinese could use a separate currency inside their borders for very high TPS rates. Only checkpointing transactions have to bypass Great Firewall of China. Speculators provide currency exchange service - the business they love to do. NXTs become "tokens", users buy them for fiat to spend for fees, it's similar to prepaid coupons/tickets for provided services.
Платформа Ardor решает проблему производительности при помощи сайдчейнов (дочерних монет). Любой бизнес сможет создать свою собственную валюту, комиссию при этом можно будет платить в этой локальной валюте (а не в ARDR). Создатель валюты сам будет решать, какое подмножество функционала Nxt ему необходимо, например, он может отказаться от Миксинга. Транзакции в этом множестве сайдчейнов будут выполняться параллельно, что и обеспечит высокую общую производительность.
Для обеспечения безопасности дочерних блокчейнов форжинг всех блоков выносится в отдельный компактный блокчейн (ARDR), в котором будут сохраняться только хэши всех блоков всех сайдчейнов.
Фактически core-разработчики предлагают проблему производительности решить за счёт виртуализации (параллельного выполнения пользовательских процессов): ARDR - это тонкий гипервизор по типу Hyper-V, а сайдчены - это виртуальные машины (разные гостевые ОС).
Торговля Asset1 за Asset2 на AssetExchange станет возможной благодаря тому, что ассеты будут глобальными между всеми сайдчейнами Ardor.
То есть кто-то (типа SuperNET-а) сможет запустит сайдчейн под названием "SuperBTC" (или "USD"), в котором токенами будут эквиваленты ассета SuperBTC, и за эти токены на Asset Exchange можно будет покупать/продавать все существующие (и будущие) ассеты, например, JINN.
Согласно "
дорожной карте" от мая 2016 г. тестовая версия Ardor будет запущена в первом квартале, а основная - в третьем квартале 2017 года:
Сравнительная таблица функциональных различий Nxt и Ardor: https://nxtforum.org/core-development-announcements/ardor-vs-nxt-functional-comparison Функционал | Nxt | Ardor |
Блокчейны | Одна цепь | Одна материнская цепь, и много дочерних блокцепей |
Транзакционные монеты | Одна и та же монета (NXT) используется как для достижения консенсуса и обеспечения безопасности блокчейна, так и в качестве основное единицы стоимости во всех транзакциях | Только монета материнской цепи (ARDR) используется в консенсусе Proof-of-Stake и обеспечивает, таким образом, безопаснсоть всех дочерних цепей. Монеты дочерних цепей используются только как транзакционные единицы стоимости. |
Комиссия | Комиссия за транзакции взимается только в монетах NXT, то есть пользователи должны иметь NXT на балансе. | В дочерних блокцепях комиссия взимается в родных монетах этих цепей. Пользователю нет необходимости иметь монеты ARDR. |
Функционал | Asset Exchange, Monetary System, Aliases, Messaging, Digital Goods Store, Voting System, Shuffling, Data Cloud, Phasing, Account Control, Account Properties | Весь этот функционал сохранён в Ardor, и доступен в каждой дочерней цепи. Опционально в дочерней цепи могут быть запрещены те или иные функции. Материнская цепь поддерживает ограниченный набор функций, т.к. должна лишь обеспечивать консенсус, но не повседневные транзакции. |
Аккаунты | Каждая парольная фраза соответствует одному аккаунту. Парольная фраза не может быть изменена, и файл кошелька не используется. | Используется то же соответствие номера аккаунта парольной фразе, что и в Nxt. Аккаунты глобальны по всем дочерним блокцепям и аккаунт может иметь балансы в каждой из существующих дочерних монет, так же как в монетах ARDR. |
Активы | Есть одна монета (NXT), и произвольное число эмитируемых пользователями Ассетов и валют Monetary System. | Каждая блокцепь имеет свою монету. Ассеты и MS-валюты могут эмитироваться на каждой дочерней цепи, и могут торговаться глобально. Ассеты и MS-валюты опционально могут быть ограничены* только некоторыми дочерними цепями. |
Торговля | Ассеты и MS-валюты торгуются только за NXT. | Ассеты и MS-валюты могут торговаться на любой дочерней цепи за монеты этой цепи. |
Coin Exchange | Отсутствует | Новый функционал, Coin Exchange, позволяет торговать монеты дочерних цепей за монеты других цепей, и за монету материнской цепи (ARDR). |
Дивиденды | Дивиденды за ассеты выплачиваются только в NXT. | Дивиденды за ассеты можно выплатить в монетах любой цепи, транзакцией в этой цепи. В дополнение к этому, реализована выплата дивидендов другим ассетом или MS-валютой. |
Краудфандинг | Функционал краудфандинга доступен в Monetary System, но средства можно собирать только в NXT. | Функционал краудфандинга доступен на всех дочерних цепях, в монетах соответствующей цепи. |
Миксер | Доступно перемешивание NXT, ассетов, и MS-валют. | В каждой дочерней цепи поддерживается перемешивание соотвествующей монеты и любых ассетов и MS-валют. |
Алиасы | Имена алиасов уникальны. | Имена алиасов уникальны только в каждой дочерней цепи. |
MS-валюты | Коды и названия валют уникальны. | Коды и названия валют уникальны только в каждой дочерней цепи. |
Удаляемость | Удаляемость (Pruning) доступна для обычных, и шифрованных сообщений, и для именованных данных (функционал "data cloud"). По запросу удаляемые данные автоматически восстанавливаются из архиваторных нод. | Удаляемость и восстанавливаемость - как в Nxt. В дополнение, сами транзакции в дочерних цепях являются удаляемыми, каждой новой ноде нет нужно хранить их постоянно или восстанавливать. Собственно удаление транзакций будет реализовано позднее.* |
Идентификаторы транзакций | ID транзакций - 64-х битовые и уникальные. | Не гарантируется уникальность 64-х битовых ID транзакций во всех дочерних цепях. Вместо них в качестве идентификаторов транзакций используются 256-ти битные sha256-хэши транзакций. |
Генерация блоков | Для создания новых блоков используется "форжинг", вероятность генерации блока пропорциональна балансу NXT (стейку). | Алгоритм форжинга такой же, как в Nxt, зависит только от баланса монет ARDR. |
Пакетирование | Отсутствует | Для упаковки транзакций дочерней блокцепи в тразакцию материнской цепи используется новый процесс, "пакетирование" ("bundling"). Роль упаковщика может исполнять любой аккаунт. Процесс пакетирования также включает в себя обмен пользовательских комиссий в дочерних монетах на монеты ARDR, которые и принимаются затем форжерами в качестве комисии материнской цепи. |
p2p сеть | На основе HTTP, с поддержкой WebSocket, с передачей данных между пирами в JSON-формате. | Полностью переписана и оптимизирована, использует нативные Java сокеты и двоичные сообщения. Распространение блоков и транзакций значительно улучшено за счёт кэширования. |
API | API HTTP запросы, JSON ответы. | В основном не изменились, за исключением: 1. В каждый цепе-зависимый API-запрос добавлен параметр "chain". 2. 64-х битовые ID транзакций заменены на 256-ти битные хэши. 3. Ранее все цены и курсы выражались в QNT ("сатоши") основной монеты, теперь - в "сатоши" актива. |
Масштабируемость | Транзакции хранятся в блокчейне постоянно, и нуждаются в загрузке и проверке каждой нодой, что со временем становится существенным узким местом. | Транзакции всех дочерних блокцепей могут быть полностью сжаты (удалены) без снижения безопасности, но с огромным выигрышем в размере блокчейна. Вновь присоединяемые к сети ноды загружают только транзакции материнской цепи и последний снапшот текущего состояния системы.* |
* Функционал, отмеченный звёздочкой, запланирован к реализации в будущих релизах Ardor. Вся другая функциональность уже разработана и проверяется в тестовой сети.