Обновление проекта Zilliqa #15 - Обновленная дорожная карта, маркетинг проекта, инфраструктура Zilliqa

Как всегда, мы сосредоточились на #BUIDLing за последние несколько недель. Команда Zilliqa стремится предоставить нашу безопасную, децентрализованную и масштабируемую блокчейн платформу. Мы стремимся не просто завершить нашу сеть до конца этого года, либо в начале 2019 года, но также продолжаем расширять границы блокчейн технологии и принятия его в долгосрочной перспективе. С самого начала мы использовали разумные меры по управлению рисками для финансовой поддержки высококачественных исследований и разработок на следующие 4 года, независимо от волатильности на рынке.

Мы обновили нашу дорожную карту на оставшуюся часть этого года, чтобы обеспечить плавное развитие к запуску главной сети Zilliqa в декабре 2018 года / январе 2019 года.

Q3 2018: поддержка шардинговых смарт-контрактов

Особенности: все основные функции / функциональные возможности основного протокола, включая реализацию смарт-контрактов, упрощающих передачу данных, настройку сложности PoW, разработку графического процессора и объединение новых узлов. Помимо обхода сети / транзакций, мы будем поддерживать смарт-контракты с полной функциональностью Scilla.

Q4 2018: широкомасштабные тесты и аудит безопасности

Особенности: Мы будем открывать нашу систему для публики и позволять узлам / пользователям присоединяться к тестированию. Мы также будем проводить тщательный крупномасштабный аудит безопасности.

Декабрь 2018 / Январь 2019: запуск сети

Особенности: Публичный запуск с инструментами для разработчиков и приложений для пользователей.

Как всегда, чтобы узнать больше о Zilliqa или обсудить технические аспекты проекта, вы можете связаться с нами через любой из наших официальных каналов ниже:

Telegram: https://t.me/zilliqachat

Slack: https://invite.zilliqa.com/

Twitter: https://twitter.com/zilliqa

Reddit: https://www.reddit.com/r/zilliqa/

Github: https://github.com/Zilliqa/zilliqa

Gitter: https://gitter.im/Zilliqa/

Мы только что объявили первую партию получателей грантов на экосистемы и с нетерпением ждем еще заявок!

Если вы или команда, которых вы знаете, хотели бы создать приложение или хотите изучить, как вы можете реализовать свою идею на Zilliqa, обратитесь к нам на Gitter https://gitter.im/Zilliqa/.

Обновления сообщества

#BuildonZil — наши первый десяток лауреатов гранта Zilliqa Ecosystem Grant

Мы считаем, что истинная сила blockchain протокола - это сообщество. Участие сообщества в рамках программы гранта обеспечит создание необходимых инструментов, библиотек для разработки новых «грандиозных приложений», которые будут построены на нашей платформе в будущем. Сегодня мы рады поделиться первой партией получателей грантов Zilliqa Ecosystem Grant, которые были выбраны после нескольких недель тщательного отбора и активных переговоров.

В Zilliqa мы стремимся к созданию процветающей экосистемы, и в то время как мы продвигаем нашу миссию по созданию масштабируемого и надежного блокчейн, мы очень рады, что следующие 12 проектов / разработчиков также будут работать вместе с нами для создания инфраструктуры, а также новых приложений на Zilliqa.

К ним относятся библиотеки Web3, кошельки, расширения, интеллектуальные контрактные библиотеки, сервер языка Scilla, игры, а также межсетевой протокол для выпуска BTC. Вы можете узнать больше о них здесь.

Новые участники команды Zilliqa

В дополнении к анонсу Yiling Ding присоединится к Zilliqa как CMO от Google, мы также добавляем новых членов в нашу команду.

Sophia Fang присоединяется как вице-президент по развитию бизнеса

Sophia Fang будет в качестве вице-президента по развитию бизнеса с упором на китайский рынок.

Sophia имеет обширный опыт в области консалтинга, бизнеса и технологий, а также руководила разработкой и многонациональным внедрением широкомасштабных и сложных технологических инициатив в широком спектре секторов. Благодаря сильному пониманию бизнес-операций и глубоких знаний в области технологий, София продемонстрировала последовательные способности идентифицировать уникальные возможности для бизнеса, облегчить планирование стратегии и обеспечить успешную реализацию решений, создать технологические возможности клиентов, чтобы соответствовать постоянно развивающейся бизнес-среде.

Deli Gong присоединяется в качестве разработчика ядра

Deli практик в создании распределенных и сетевых систем с использованием надежного оборудования, например, Intel SGX. Имеет большой опыт программирования высокопроизводительных, распределенных и FPGA-систем. Deli работал в научных исследованиях в Национальном университете Сингапура, уделяя особое внимание безопасности системы, надежности оборудования и защите от DDoS. До этого он получил степень бакалавра в области компьютерных наук, а также отличную студенческую премию в Университете Чжэцзян, в Китае. Он был лауреатом премии первого класса в ASC Student Supercomputer Challenge в 2015 году и первым лауреатом Национальной олимпиады по информатике в провинции - Шаньси, в Китае, в 2011 году.

Sandip Bhoir присоединяется в качестве разработчика ядра

Sandip имеет более чем 12-летний опыт разработки программного обеспечения в нескольких областях, таких как ATM, розничные банковские услуги и инвестиционно-банковские услуги. Ранее он был старшим разработчиком программного обеспечения в EPAM Systems и принимал активное участие в разработке систем для инвестиционных банков. Он участвовал в разработке различных распределенных систем с использованием C ++ с упором на надежность, масштабируемость и производительность.

Предстоящие события

Сентябрь будет месяцем, богатым событиями, и мы посетим много мероприятий по всему миру.

1. Клуж, Румыния

Дата: 4 сентября 2018 года с 10:00 до 18:00

Мероприятие: Семинар по полной школе Scilla - обучение программированию в Scilla

https://medium.com/cryptoland-tech/workshop-2-diving-into-scilla-a-safe-by-design-smart-contract-language-5cb23f71222b

2. Берлин, Германия

Дата: 6 сентября 2018 г.

Событие: децентрализованное

https://www.dezentral.io/

3. Пекин, Китай

Дата: 5 сентября 2018

Событие: PublicChain Odaily Developer Conference

https://www.odaily.com/post/5133227

4. Пекин, Китай

Дата: 7-9 сентября 2018 года

Событие: Конференция по делам конференций BlockChain

http://bccc.msup.com.cn/

5. Ханой, Вьетнам

Дата: 15-16 сентября 2018 г.

Событие: Диалог криптоконкурсов и цифровых активов

https://www.vietnamcryptodialogue.com/

**6. Сингапур **

Дата: 19-20 сентября 2018 года

Событие: Консенсус: Сингапур 2018

https://www.coindesk.com/events/consensus-singapore-2018/

**7. Сингапур **

Дата: 19 сентября 2018 года 7-9 вечера

Событие: Zilliqa x DMM.com x LayerX: инструменты, примеры использования и новые методы по внедрению блокчейн

https://www.meetup.com/Ethereum-Singapore/events/253942745/

Техническое обновление

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

Восстановление узла

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

Присоединение нового узла

Мы объединили PoW1 / 2 в один раунд PoW каждую эпоху DS. Таким образом, мы также изменили метод добавления новых узлов в систему. В текущей реализации новый узел периодически запрашивает блок / окончательный блок DS из поиска узла. Если наступающая эпоха для PoW, узел извлекает последние учетные записи из поиска узла. После того, как поиск получает сигнал от узлов DS, которые запустили PoW, он отправляет сообщение новому узлу, и новый узел начинает запускать PoW с использованием CPU / GPU для генерации решения. Впоследствии узел отправит свое решение узлам DS для присоединения к системе.

GPU майнинг

Мы завершили реализацию для поддержки разработки GPU с использованием OpenCL и CUDA. Теперь пользователи или майнеры могут включать / отключать параметр OpenCL / CUDA в файле констант и настраивать параметры устройств GPU. Мы обновили нашу страницу вики для настройки разработки графического процессора. Более подробную информацию и инструкции см. на нашей странице вики
https://github.com/Zilliqa/Zilliqa/wiki/GPU-mining. Мы приветствуем всех в сообществе, и просим опробовать программу GPU для локальной testnet и предоставить нам отзывы!

Поддержка шардинга смарт-контрактов

В нашем шаблоне sharding смарт-контракта, мы используем DS-узлы для обработки определенных типов транзакций смарт-контрактов с перекрестными ключами. Для этого требуется еще один раунд согласования микроблока на уровне DS, который возникает, когда узлы DS получают все микроблоки от нормальных sharding узлов. Узлы DS будут обрабатывать транзакции на основе состояний временной учетной записи, генерируемых дельта-состояния, полученных от микроблоков. Если согласование микроблока DS не удастся или тайм-ауты, узлы DS будут отбрасывать изменения дельта состояния, возникающие в результате микроблока DS, и перейти к окончательному соглашению блоков. Наконец, узлы DS будут генерировать окончательный блок с последним состоянием для всех sharding узлов. Вскоре мы опубликуем статью в блоге, чтобы подробно рассказать о деталях.

Сеть / Вход

Для защиты DDoS мы внедрили механизм «черного списка», чтобы предотвратить отправку / получение сообщений узлом из узлов черного списка. Для сети P2P мы обновили сетевое чтение, применили event_base & evconnlistener для обработки сокета bind () / listen () / accept (). Мы обернули функцию сокета read () и write () более модульной и добавили утилиту для преобразования между ASCII и цифровым представлением IP-адреса. Раньше наша метка регистрации имела только одну секунду точности. Многочисленные сообщения могут поступать в течение секунды, с разных узлов / потоков. Разработчикам было нелегко отличать сообщения, используя их временные метки. Мы реорганизовали реализацию, чтобы обеспечить точность отметки времени регистрации в миллисекундах, что было полезно для отладки.

Scilla интерпретатор

В Scilla команда была занята улучшением проверки typechecker и ее завершением. Напомним, что цель typechecker заключается в том, чтобы сообщать о несоответствиях типа в программе. Первая версия typechecker, которую мы выпустили несколько недель назад, сообщала только об ошибке несогласованности первого типа. В новой версии программа typechecker не останавливается, увидев ошибку, а вместо этого продолжает и собирает как можно больше независимых ошибок. Независимыми ошибками являются те, которые находятся в разных библиотеках или переходов. Это также связано с реорганизацией некоторых модульных тестов.

Scilla также поставляется с набором стандартных библиотек, например, BoolUtils - - библиотека, которая содержит реализацию стандартных булевых операций. Поскольку библиотеки составляют часть кода контракта, любая импортированная библиотека в контракте также должна быть проверена на основе типов. Чтобы сделать проверку типов стандартных библиотек более эффективной, мы добавили кэширование типов. Идея состоит в том, чтобы кэшировать информацию о типе для всех функций библиотеки в отдельном файле вместе с библиотекой. Когда библиотека должна быть проверена typechecked, typechecker пытается загрузить информацию о типе из кеша (после проверки отпечатка) вместо повторного ввода текста. Если библиотека обновлена, кэш также автоматически обновляется. Более тонкая версия (например, функции в одной и той же библиотеке) кэширования запланирована на будущее.

Ниже приводится сводка других улучшений и изменений кода на стороне интерпретатора:

  1. Очистка кода при подготовке к типу информации о кешировании для библиотек.
  2. Исправлена ​​ошибка в scilla-checker, которая проверяет наличие синтаксического анализа и вводит ошибки в контракте. scilla-checker также печатает JSON, который содержит информацию о переходах, изменяемых и неизменяемых переменных, определенных в контракте. Тем не менее, он использовался для печати JSON, даже когда ошибки типа присутствовали в контракте.
  3. Альфа-эквивалентность для сравнения типов.
  4. Более корректные проверки типов.
  5. Утилиты печати для литералов Scilla. Ранее использовались принтеры SExp (автоматически сгенерированные), что затрудняло чтение текстов. Утилиты также облегчают проведение тестов.

Мы также работали над рефакторингом кода интерпретатора Scilla, чтобы обеспечить многоэтапную обработку входного контракта. Цель рефакторинга - позволить пользователям Scilla писать собственные анализы и проверки и подключать их к существующему конвейеру интерпретатора. Рефакторинг не завершен, и все еще есть некоторые нерешенные вопросы о том, как справляться с принципами рекурсии для встроенных типов данных и кэшированной проверки типов стандартной библиотеки (оба из которых в настоящее время разобраны и описаны отдельно от основной программы) и о том, как данные JSON должны быть отформатированы после этого рефакторинга.

Средства разработки и библиотеки Dapp

За последние две недели мы оптимизировали библиотеку Zilliqa-Javascript-Library более низкого уровня в рамках подготовки к использованию продукции получателями гранта #BuildOnZil Ecosystem Grant. Изменения заключаются в следующем:

  1. Уменьшили окончательный размер пакета библиотеки до <190 кб (сокращение примерно на 50% от предыдущей версии), упростив криптографические зависимости до минимального минимума и полностью полагаясь на JS-native API. В качестве побочного эффекта теперь имеются два пакета; один для node.js и один для браузеров. Они должны быть автоматически связаны, без вмешательства на стороне потребительского кода.
  2. Портировали базу кода на TypeScript с сопровождающими автоматически генерируемыми определениями типов для разработчиков, которые предпочитают иметь дополнительную защиту для надежной проверки типов при написании кода клиента.
  3. Добавлен набор тестов, который автоматически выполняется в каждом запросе Pull или фиксируется в ветке. Слияние блокируется, если какие-либо тесты терпят неудачу. Важно отметить, что тесты выполняются против тестовых векторов, сгенерированных на основе нашей основной базы кода C ++, чтобы гарантировать, что поведение на стороне клиента совпадает с тем, что ожидается на стороне блокчейн.
  4. Реорганизованный код во многих местах, для обеспечения внутренней согласованности и надежности.
  5. Учитывая, что максимальный безопасный размер целых чисел в JavaScript составляет 53 бита, теперь мы применяем использование BigNum (bn.js) в местах, где возможны переполнения, в частности полеamount в транзакциях. Это нарушение.

Мы также начали работу над переделкой среды разработки Scilla. Это должно способствовать более широкому внедрению языка, предоставляя превосходный опыт разработчика.

Прогресс на текущий момент:

  1. Простой кодек для декодирования JSON-представления состояния смарт-контракта, возвращаемого интерфейсом Scilla. Например, Pair (T, T ') декодируется в псевдо-кортеж [T, T'] в JavaScript, а Map кодируются как простые объекты, чтобы облегчить жизнь разработчика пересекать или иным образом манипулировать состоянием интеллектуальных контрактов на стороне клиента. Со временем мы намерены сделать это еще более надежным, внедряя одни и те же структуры данных в JavaScript.
  2. Перенос текущего процесса сборки в Webpack, что должно позволить сократить время загрузки для разработчиков с медленными подключениями к Интернету.

Команда также работает над кодовой базой сервера Kaya RPC, где мы теперь создали автоматическое тестирование и непрерывную интеграцию. При подготовке будущих улучшений функций мы планируем реорганизовать код и сделать компоненты в Kaya RPC более модульными. Общая дорожная карта для сервера Kaya RPC теперь available на странице Github. Мы продолжим интегрировать больше тестовых примеров и улучшить качество программного обеспечения Kaya RPC в ближайшие две недели.

Продолжающаяся работа:

В течение следующих 2-4 недель наша техническая команда будет работать над автоматической настройкой PW-сложности, протоколом обновления, восстановлением тестовой сети, улучшением назначения осколков и реализацией событий Scilla..

Присоединяйтесь к Zilliqa!

Мы активно проводим собеседование и стремимся привлечь высококвалифицированных специалистов, чтобы помочь Zilliqa достичь максимального потенциала. Мы ищем программистов с глубоким опытом на C ++, инженеров-компиляторов, а также партнеров и руководителей в области развития бизнеса. Пожалуйста, протяните руку, если вы чувствуете, что можете принести пользу растущей экосистеме Zilliqa!

Новости Zilliqa

Охват объявления о найме Yiling:

Первые 12 проектов - номинантов на грант :

Интервью с Xinshu и Blockchaingamer: https://blockchaingamer.net/exclusive-interview-with-the-ceo-of-zilliqa-mr-xinshu-dong/

Coin Marketplace

STEEM 0.26
TRX 0.12
JST 0.031
BTC 61258.08
ETH 2873.80
USDT 1.00
SBD 3.56