Обновление проекта Zilliqa #14 - Корпоративные партнерства, открытый исходный код Scilla

Команда Zilliqa стремится создать безопасную, масштабируемую и децентрализованную blockchain платформу. За последние несколько недель мы сделали несколько усовершенствований для нашего протокола, как представлено в нашем техническом документе (выпущенном в августе 2017 года). Например, мы объединили два PoW (как указано в техническом документе) в один PoW (подробнее об этом см. в этом сообщении). Мы также изменили совместное использование данных транзакций с обменом состояниями.

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

  • Провести тщательные проверки безопасности
  • Подготовить и выполнить обмен токенами
  • Интеграция с кошельками
  • Разрабатывать инструментальные сети
  • Привести больше dapps

Мы будем уведомлять сообщество по поводу обновления времени на разработку сети. На этом этапе мы ориентируемся на конец этого года или январь 2019 года. Мы считаем, что это отвечает интересам долгосрочного будущего проекта и хотели бы получить вашу поддержку и понимание.

Что касается развития бизнеса, а также технологической стороны, мы продолжаем прогрессировать. Мы объявили о партнерстве с ведущим разработчиком программного обеспечения Infoteria, которое предоставит платформе ZIlliqa доступ к японскому корпоративному рынку.

Кроме того, на стороне смарт-контрактов у нас есть Scilla, безопасный язык для создания смарт-контрактов, который ZIlliqa будет использовать на https://github.com/Zilliqa/scilla. Мы хотели бы воспользоваться возможностью, чтобы пригласить членов сообщества экспериментировать с Scilla, а также помочь нам в дальнейшем его улучшить.

Как всегда, чтобы узнать больше о 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/ (Темы, связанные с разработкой, включая грант экосистемы)

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

Партнерство с Infoteria

2 августа мы объявили о партнерстве с Infoteria, ведущей компанией по производству программного обеспечения в Японии (см. Раздел Токийской фондовой биржи 1: 3853). Партнерство позволит корпоративным системам легко использовать платформу Zilliqa для высокопроизводительной блокчейн сети Zilliqa для использования корпоративными предприятиями и децентрализованных приложений (DApps).

Infoteria и Zilliqa будут продвигать платформу Zilliqa на ASTERIA - продукт промежуточного ПО Infoteria, который в настоящее время насчитывает более 6500 корпоративных клиентов и 41% рынка в Японии. Мы также начнем поддержку развития DApps предприятия на базе Zilliqa blockchain и ASTERIA в этом году. Zilliqa также разработает специальную платформу для подключения ASTERIA, чтобы предприятия могли легко использовать платформу Zilliqa, как показано ниже.

Xinshu с Pina, CEO Infoteria

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

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

Министр образования Сингапура Ong Ye Kung посетил офис.

Недавно мы проводили конкурс на китайское имя, а победная запись была 晶 砺 (Ли Цзин). В нашем офисе у нас был победитель нашего конкурса.

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

Zilliqa будет участвовать в Консенсус-Сингапур 19-20 сентября, поэтому загляните на наш стенд.

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

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

В предыдущей реализации у нас было два раунда доказательства работы (PoW), чтобы избрать новые узлы DS и новые шардинговые узлы. Чтобы уменьшить сложность и унифицировать интерфейсы системы, мы объединили два раунда PoW в один раунд.

По-прежнему существует блок минимальной сложности для всех выбранных узлов, которые должны быть выбраны как шардинговые узлы. В то же время с тем же случайным набором, но с большим количеством 0 в представлении PoW, узел будет иметь более высокую вероятность выбора в качестве узла DS.

В настоящее время каждый узел может отправить свое решение PoW на текущий DS. Мы позволяем текущим узлам DS предлагать структуру блока и структуру DS для всех узлов. Новый лидер DS присоединится к DS-комитету, а самый старый узел DS присоединяется к одному из шардинговых.

Мы разработали библиотеку с использованием OpenCL для поддержки разработки GPU для нашей Poash на основе Ethash. Раньше у нас была только поддержка для разработки CPU для нашей тестовой сети. С помощью этой новой функции майнеры могут начать использовать свои графические процессоры для тестирования тестовых Zill. В нашей текущей реализации, которая в основном основана на классе PoW от Zilliqa, мы настраиваем алгоритм интеллектуального анализа Ethminer и используем функцию обертки для обертывания майнинг части Ethminer. Теперь мы поддерживаем графические процессоры с поддержкой OpenCL и вскоре выставим поддержку графических процессоров на базе CUDA.

Каждое обновление мы добавляем на Github, мы сразу же выпустили новую тестовую сеть, чтобы убедиться, что эти изменения хорошо работают при крупномасштабном тестировании. В течение последних двух недель мы также идентифицировали несколько проблем с памятью и параллелизмом, используя мощные средства обнаружения ошибок во время выполнения, то есть AddressSanitizer и ThreadSanitizer, и обнаружили потенциальные уязвимости в безопасности. В ближайшие недели мы снова включим функцию восстановления, чтобы все данные (токены тестирования, пользовательские транзакции и смарт-контракты и т.д.) По-прежнему были доступны через перезапуск тестовых сетей.

Несмотря на то, что мы сильно продвигаемся по качеству кода, совершенствование объектов тестирования также продолжается. После рассмотрения рабочего процесса CI / CD мы удалили трудоемкие части и очистили проблемы кэширования на Travis, сделав каждую автоматическую сборку более быстрой, чем раньше. Это позволяет быстрее развертывать наши разработки после создания и тестирования своего кода и сокращает отставания на Travis.

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

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

В-третьих, мы привязали дельту состояния к сообщению Microblock, когда узлы отправили его в DS. Затем узлы DS объединяют все дельта состояния и генерируют дельту конечного состояния для каждой эпохи. Узлы DS присоединяют окончательную дельту к сообщению финального блока, которое будет передаваться каждому узлу, который обновляет свой AccountStore.

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

  • Исправлен номер блока микроблока.
  • Внедрение отсутствующего извлечения транзакции.
  • Исправлены непечатные символы ascii («тип блока» и «сложность») в сообщении журнала.
  • обрабатываются различные угловые случаи смены вида.
  • Улучшена кодовая документация для изменения вида.

Kaya

Недавно мы выпустили первую версию RPC-сервера node.js для тестирования и разработки контрактов Scilla на Zilliqa. Мы назвали его Kaya. Для тех, кто является разработчиками Solidity, Kaya похож на TestRPC или Ganache.

Kaya делает разработку децентрализованных приложений быстрее и проще. Вместо того, чтобы ждать подтверждения блока в цепочке через IDE Blockchain, Kaya обеспечивает почти мгновенный ответ разработчикам, значительно ускоряя процесс разработки.

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

По мере того, как Kaya работает локально, разработчики теперь могут закрывать процесс разработки своего кода и раскрывать свой код контракта публике, когда он готов через публичный блокчейн или тестовую сеть.

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

Вы можете попробовать наш Kaya путем клонирования [https://github.com/Zilliqa/kaya]https://github.com/Zilliqa/kaya).

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

Мы завершили реализацию первой версии typechecker для контрактов Scilla. Теперь вы можете попытаться определить тип контракта Scilla, используя двоичный scilla-checker, который можно найти в папкеbin Scilla project repository. Скоро мы добавим typechecker в среду IDE.

Мы также внедрили проверки для не исчерпывающих совпадений шаблонов, которые во время выполнения гарантируют, что выражение совпадения шаблонов не будет терпеть неудачу (если не выполняется подвыражение). Проверки также включают проверку недостижимых шаблонов. Они не приводят к тому, что контракт терпит неудачу, но они указывают на то, что программист совершил ошибку, поскольку шаблон никогда не сможет успешно совместить сопоставимое значение. Проверка выполняется при построении дерева решений, описывающего соответствие шаблона. Проверка в настоящее время встроена в typechecker, но будет перенесена в отдельную фазу на более позднем этапе.

Ниже приведены некоторые другие незначительные изменения винтерпретаторе:

  1. Удалено ограничение в нижнем регистре для шестнадцатеричных значений (адресов / хэшей) в Scilla. Поскольку внутреннее представление для шестнадцатеричных значений является строками, наличие верхнего и нижнего регистров может привести к разным результатам при хэшировании значений. Следовательно, изменение включало нормализацию (в нашем случае, преобразование в нижний регистр) внутренних представлений после синтаксического анализа (из источника Scilla или JSON).
  2. Сделано определение дополнительной библиотеки. Раньше парсер утверждал, что раздел библиотеки объявляется в контракте (даже если пустой).
  3. Улучшена проверка литералов ADT (включая согласованность типов) в разборе JSON. При этом во время разбора JSON будет обнаружено еще много ошибок, и для демонстрации были добавлены тесты.
  4. Добавлена ​​проверка структурного типа для литералов. Это рекурсивно обходит литералы и ADT, и проверяет, что они правильно сформированные типы.
  5. Мы также перенесли систему сборки Scilla с jbuilder наdune.

Hiring

Мы рады объявить нового члена команды Zilliqa: [Ян Тан] (https://www.linkedin.com/in/ian-tan-001129156/). Ян имеет интересный академический профиль. Он имеет степень бакалавра права в Университете Бристоля. Изучая закон, он решил отказаться от разработки программного обеспечения и программирования.

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

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

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

Новости Zilliqa

Партнерство Infoteria широко освещалось в японских СМИ.

https://www.infoteria.com/jp/news/press/2018/08/02_01.php

https://jp.cointelegraph.com/news/infoteria-partnered-with-zilliqa-to-inplament-dapps

http://coinview.jp/news/3959/