Перевод.
Оригинал здесь:
https://bitcointalk.org/index.php?topic=1608859.new#newПопулярно на русском здесь:
http://forklog.com/byteball-kriptovalyuta-bez-blokchejna-i-ico/ ,
https://t.me/ByteballRussiaWhitepaper на русском здесь:
https://iwillunderstand.cc/doc/byteball.pdfКак раздавались монеты, и что уже сделано - см. следующий пост.
Полное техническое описание - в "Белой книге":
https://obyte.org/Byteball.pdfТорги:
https://bittrex.com/ https://cryptox.pl https://cryptopia.co.nz/ https://stealthex.io/ , встроенные в кошелёк
trading bot и
P2P смарт-контракт.
Эксплорер:
https://explorer.obyte.orgОсновная сеть запущена. Кошельки:
или скомпилируйте из
исходника на Гитхабе.
Кошельки для компьютеров - либо лёгкие, либо полные ноды (после старта какое-то время синхронизируются с сетью).
Мобильные кошельки - это лёгкие клиенты.
Для тестовой сети посетите
https://byteball.org/testnet.html чтобы получить тестовые
байты на пробу:
Как это устроеноВ O
byte (ранее - Byteball) нет блоков, поэтому нет проблемы размера блоков. Каждая новая транзакция ссылается на одну или несколько предыдущих (родительских) транзакций путём включения в свой состав и подписи их хэшей. Ссылки транзакций друг на друга формируют DAG (directed acyclic graph,
направленный ациклический граф):
Включая хэши родительских транзакций, каждая новая транзакция косвенно включает и подтверждает родителей родителей и т.д. По мере добавления новых транзакций поверх вашей количество подтверждений растёт как снежный ком, снеговик (snowball), отсюда и название "Байтовик" - Byteball (байты транзакций - как снежинки).
КонсенсусНет ни PoW, ни PoS, ни майнинга. Вместо этого есть DAG, который сам по себе уже создаёт
частичную упорядоченность среди транзакций, с добавлением
Основной цепи внутри DAG:
Основная цепь (ОЦ) задаёт
линейно упорядоченное множество между транзакциями: транзакции, которые включены ранее в ОЦ (прямо или косвенно), считаются более ранними в упорядоченном множестве. В случае двойной траты действительной считается та транзакция, которая в упорядоченном множестве встречается раньше, остальные считаются недействительными.
Основная цепь определяется детерминированным образом, исходя из позиций транзакций на графе. Подробности - в "Белой книге", но в целом Основная цепь тяготеет к транзакциям, подписанным общеизвестными пользователями ("свидетелями"). Список "свидетелей" определяется самими пользователями, поскольку они включают его в каждую свою транзакцию. Затем Основная цепь прокладывается в графе следующим образом:
1. списки свидетелей соседних в ОЦ транзакций либо идентичны, либо различаются только одной мутацией,
2. ОЦ проходит через транзакции, подписанные наибольшим числом свидетелей (по сравнению с альтернативными цепями).
Вышеизложенное является очень кратким и схематичным описанием, многие важные детали опущены, полное описание смотрите в "Белой книге".
Комиссии и внутренняя стоимостьКомиссия за включение чьей-то транзакции (или любых других данных) в базу данных Byteball равна размеру хранимых данных. Если размер вашей транзакции 500 байт, то в качестве комиссии вы платите ровно 500
байт (внутренняя валюта Byteball). Это означает, что
байты имеют внутреннюю ценность: возможность постоянного хранения соответствующего объёма информации в неизменной децентрализованной базе данных. Для данных, представляющий финансовые транзакции, ценность скорее
общественная, а не личная, потому что вам безусловно необходимо хранить полную историю монет, чтобы доказать каждому последующему владельцу подлинность своей монеты.
Часть комиссии достаётся тем, кто первым сошлётся на вашу транзакцию как на родительскую, а другая часть - свидетелям. Первое из этих обстоятельств поощряет ссылки на самые свежие транзакции, в результате чего DAG растет только в одном направлении (подобно стволу дерева) и остаётся настолько узкими, насколько позволяет латентность сети. Если новые транзакции достаточно редки, так что до появления новой транзакции все узлы сети имеют достаточно времени для синхронизации, то DAG будет выглядеть почти как цепь, с редкими ветвлениями и быстрыми слияниями.
Денежная массаОбщее число
байт равно 10
15, все
байты будут эмитированы в генезисной транзакции. Поскольку комиссия возвращается в обращение, денежная масса остаётся постоянной.
Детерминированная завершённостьВ Byteball есть правило: транзакция должна включать предыдущую транзакцию, отправленную с этого же адреса (если таковая имеется), т.е. все транзакции с одного адреса должны формировать
частично упорядоченное множество. Нарушение этого правила приравнивается к двойной трате, поэтому такая "неупорядоченная" транзакция считается недействительной. Если предположить, что большинство свидетелей следуют этому правилу (а для этого их и избирают), то они должны ссылаться лишь на достаточно свежие транзакции. Таким образом, они больше не могут влиять на Основную цепь (которая связана со свидетелями) в старой части графа (DAG), и эта часть, таким образом, становится устойчивой. Точные критерии достижения устойчивости сформулированы в "Белой книге". Важно, что эти критерии - детерминистские, и если транзакция оказывается на устойчивой части Основной цепи, то такая транзакция становится окончательной и неизменной.
Таким образом, в Byteball, в отличие от других криптовалют, реогрганизации невозможны.
Это
обстоятельство чрезвычайно важно для применения как в финансовых организациях, так и в повседневной жизни, так как большинство людей привыкли ожидать определенности в вопросах денег и прав владения, и не приветствуют ситуацию "вероятностной завершённости".
Ассеты и встроенная биржаБайты являются внутренней валютой Byteball. Пользователи могут эмитировать любые другие токены (активы, ассеты). Ассет может представлять, к примеру, некое обязательство эмитента. Обязательство может быть выражено, например, в фиатной валюте, или в натуральных единицах (бочки, килограммы, кВтч, и т.д.). Эмитенты долга могут идентифицировать себя и/или могут пройти добровольную аттестацию у надёжной третьей стороны, например у
Certification authority. Это позволяет использовать существующую правовую систему для предотвращения мошенничества.
Ассеты могут использоваться наравне с
байтами в качестве платежного средства. Также возможна торговля ассеты/
байты и ассеты/ассеты посредством подписи обеими сторонами
одного блока с двунаправленными транзакциями обмена, то есть эти две транзакции либо происходят одновременно, либо не происходят вообще. Такие подписи называются многосторонними. Для таких торгов не требуется ни доверия к сторонней бирже, ни биржевых комиссий (кроме обычной комиссии за размер данных).
Неотслеживаемые приватные платежиАссеты могут быть публичными или частными. Все транзакции с публичными ассетами в децентрализованной базе данных видны всем, как в Биткоине.
Байты являются предопределенным публичным ассетом.
Платежи приватными ассетами не записываются в публичную децентрализованную базу данных. Вместо этого в базе данных хрянится только хеш транзакции, в то время как её полный состав передаётся непосредственно от плательщика к получателю. Для защиты от двойной траты в базу данных Byteball дополнительно записывается
доказательство траты, содержащее хэш расходуемого выхода. Таким образом, в случае повторной траты того же выхода
доказательство траты неизбежно будет точно таким же.
Этот дизайн уже описан в
https://bitcointalksearch.org/topic/hiding-entire-content-of-on-chain-transactions-1574508 , подробности - в "Белой книге".
Регламентированные ассетыФинансовые учреждения могут эмитировать ассеты, удовлетворяющие требованиями KYC/AML. Каждая передача такого актива удостоверяется эмитентом, то есть незаконные сделки он просто не утвердит.
Таким образом, банки могут выпускать привязанные к фиату ассеты и оставаться полностью в рамках закона. Они могут открывать депозиты как ассеты, и отслеживать их в Byteball. Торговля такими ассетами возможна (с одобрения банка) за
байты, и за другие ассеты.
Прочий функционал- Условные траты (AKA смарт-контракты) на понятном декларативном языке:
https://bitcointalksearch.org/topic/declarative-smart-contracts-in-byteball-1617816- Multisig: частный случай условных трат
- On-chain данные, помещаемые оракулами непосредственно в базу данных (например, временные метки, курсы валют, погода, различные события), на эти данные могут ссылаться условные траты
- Частные p2p сообщения для передачи конфиденциальных данных о платежах, для общения как с продавцом, так и в multisig сценариях.
Начальное распределениеНе будет ни ICO, ни краудфандинга. Я уверен, что успех валюты зависит от количества людей, которые владеют ею. Исследования Peter R показывают, что историческая капитализация Биткоина следуюет
закону Меткалфа:
https://bitcointalksearch.org/topic/empiricalmathematical-method-to-choose-which-cryptocurrency-community-to-join-572106 , т.е. она пропорциональна квадрату числа активных пользователей. Вот почему я хочу, чтобы Byteball был в руках настолько большого числа людей, насколько это возможно:
- 98% всех байтов и тёмных байтов (неотслеживаемая приватная валюта) будут распределены
в несколько этапов среди тех владельцев биткоинов, которые свяжут свой byteball адрес со своим биткоин-адресом. Платить не нужно, биткоины остаются вашими, и вы получаете байты и тёмные байты. - 1% я резервирую для себя
Сеть была запущена 25 декабря 2016 года, когда 10% всех
байтов и блэк
байтов были распределены тем, кто связал свои биткоинные и байтболльные адреса. Всего
было привязано боле 70,000 BTC.
Распределение
байтов продолжается!
см: https://bitcointalksearch.org/topic/m.16285391Чем вы можете помочь- попробуйте кошельки, поставьте на несколько устройств, спарьте их для multisig. Сообщайте об ошибках.
- для помощи сети запустите облачный ретранслятор. Он не хранит приватных ключей, так что особой безопасности не требуется. Исходник ретранслятора: https://github.com/byteball/byteball-relay
- для лучшего прохождения приватных платежей запустите хаб (также он включает в себя и ретранслятор). Безопасность также не критична, так как все сообщения p2p зашифрованы. Пользователи могут изменять адрес хаба в настройках кошелька. Исходник хаба: https://github.com/byteball/byteball-hub
- исправляйте ошибки, вносите улучшения в репозитории: https://github.com/byteball. Особенно в части ускорения синхронизации и UI. До настоящего момента приоритетом была простота алгоритмов, теперь можно обратить внимание и на скорость. Достигнуть 10-ти кратного ускорения будет несложно; следующие 10 раз, вероятно, дадутся сложнее. Обсуждайте крупные изменения, прежде чем собственно программировать их.
- создавайте новые приложения/утилиты, которые, как вы считатете, будут полезны пользователям Byteball
- распространяйте информацию о Byteball, и помните, что его ценность пропорциональна квадрату числа активных пльзователей.
-------------------------
И последнее. Оставшийся 1% будет роздан первым 100 млн пользователей (100 К
байт каждому), которые установят Byteball кошелёк.
Этa aкция прoдлится 5 месяцев с того момента, когда мы будем готовы к таким масштабам
-------------------------
Совершенство - в простоте