привет гм добро пожаловать на заключительную сессию гм первых разработчиков econ 2 по протоколу zcash и его реализациям Я Джек или Стрэд, я отвечаю на оба, я криптографический инженер в ecc и ага, я пытаюсь писать криптовалюту, когда могу, но в основном я в конечном итоге причиняю боль кошкам реализация z cash d Эм и я Теор, я инженер по системам ржавчины в команде зебры и да, я слышал кошек в реализации зебры и попробовал и исправить очень сложные ошибки и попытаться поддержать наших криптографов с хорошими абстракциями вокруг своего кода да, да, да, это забавно, как то, что было происходит, потому что прошло чуть больше года, мягко говоря эээ, и все же мы сделали разумную сумму в этом эм, несмотря на все происходящее, я скажу всем, если вы, эээ, если вы сделали это в течение года надуться на спину эм, мы все заслужили это эм и что это принесло нам деньги, земля у нас есть э-э, видел семь релизов z cash d за последний год с тех пор, как эм, вы знаете, в это время в июне прошлого года, когда мы были бы у э-э в z con um у нас было э-э, зебра делала много веселья на их стороне да, у нас было около 10 альфа-релизов с декабря, когда мы выпустили нашу первую альфа-версию, мы хотели паттерн быстрого выпуска, так что мы просто привыкли к процесс выпуска обновлений, и они стали довольно расслабленно и непринужденно, поэтому мы выпустили один каждые две недели или около того каждые две недели с декабрь, да, хорошая, хорошая каденция, а если вы не заметили, мы за последний год тоже дважды обновили сеть так что сердцевина потухла, навес потух, они оба были развернуты относительно прямолинейно, и следующее обновление сети уже идет полным ходом как уже упоминалось несколько предыдущих спикеров эм, но да, там много чего происходит Так что в фонде Zed Cash и с зеброй мы потратили много времени на проверку консенсуса правила, которые мы сосредоточили на последнем обновлении сети. обновление 5, потому что именно там больше всего нового код и новый дизайн, и большая часть риска мы также проверяли консенсус правил Canopy и предыдущих обновлений сети zebra построена на параллельном стеке микросервисов поэтому у нас есть несколько сервисов, каждый из которых делает свое и обрабатывать запросы и отправлять ответы остальной части приложения мы потратили много времени на надёжность так что он в основном не дает сбоев и, честно говоря, сбои очень редко, и мы работаем над улучшением параллелизм сетевого стека, чтобы он не зависал, а просто продолжается, мы немного поработали над узлом мониторинг у нас есть трассировка и реализация метрик много действительно интересной статистики, и у нас есть куча панели инструментов в нашем репозитории, мы также поработали с zkhd, чтобы убедиться, что мы представляем одни и те же метрики с одинаковые имена, чтобы вы могли использовать одну и ту же панель управления, если хотите сравни зхд и зебра при всем этом ээ зебра основана как зебра написана ржавчиной с использованием асинхронных фьючерсов и услуги башни службы башни изначально были спроектированы для серверов, которые были немного меньше и, возможно, немного менее сложные, но мы обнаружили, что они довольно успешно выполняют то, что мы делаем, зебра в основном написано ржавчиной с зависимости от ржавчины, но у нас есть несколько маленьких с плюс плюс зависимости, включая скрипт zed cache реализация и база данных roxdb для наших постоянное состояние в nu5, у нас есть зависимости от ржавчины, такие как ящик halo 2 и ящик из сада ecc uh libra сказал, что кассовые библиотеки не податливы идентификаторы транзакций и история цепочки также из ecc и у нас есть куча криптографических зависимостей у нас есть асинхронная пакетная криптография, которая действительно ускоряет проверку подписей и из доказательств у нас есть специфичный для zed cache ed25519 реализация, которая появилась в недавнем обновлении сети и э-э мы просто представляем канонический работа работа эээ извините, мы просто перешли на каноническую вакансию сейчас для обновление сети пять переходят к вам прядь да ладно, у вас есть еще один, так что это сравнение как проверка партии улучшает проверку uh ed25519 Скорости, мы получаем, я думаю о удвоении скорости эээ, если все подписи сделаны с одним и тем же открытым ключом что характерно для очень больших транзакций, которые производятся, когда люди накатывают кучу разных выходов в ту же транзакцию, но в целом мы все равно получаем скорость вверх, если мы используем кучу разных открытые ключи очень хороши на ecc сторона мм, насколько я хочу, это была криптовалюта с эллиптической кривой, которую мы получили тратить на это большую часть времени означает, что у нас есть c плюс плюс работа, потому что конечно эм как многие из вас знают биткойн ядро ​​um реализация биткойн d дедушка историческая основа um, на которой z cash d строит um так что в дополнение к прошлому году мы, очевидно, развернули эм, в течение последнего года правила консенсуса по обновлению сети Canopy в это время в прошлом году мы были на расстоянии пары дней, я думаю от из Хартвуда активируется, так что да, это было в основном эта сеть появилась в прошлом году, мы сделали кучу надежности Улучшения в кодовой базе, переходящей на э-э используя c plus plus 17 и klang 11 как в качестве единого базового уровня, а также для того, чтобы подвести нас к тот же набор зависимостей, поэтому все построено с помощью llvm под капот тогда потому что мы у нас есть гибрид um cps plus и ржавчина Архитектура с э-э, все больше и больше ржавчины, э-э, окисляющая база кода, как мы можем, я также добавил в маленькую вечеринку Поппер за то, что, наконец, избавился от одного из наших больших эм и Herrera dependencies uh из стека um на rd стороне ecc мы ээээээ, очевидно, эээ работа, которую вы слышал в предыдущих беседах об эм вы знаете работа над частным масштабированием, как вы знаете, первоначально говорилось о это как экон в прошлый раз, что привело к груз в сад, а потом какой-то киборг на программируемые возможности экранированные активы, которые гм был упомянут в одном из предыдущих сегодняшних переговоров гм, а потом мы сделали много рефакторинга, было много технических долг, который мы взяли на себя в процессе выполнения деревце, которое нужно было заплатить с точки зрения ржавчины криптографические ящики и подобные им архитектуры проще в использовании, более модульный и так далее, поэтому в последнее время мы потратили большую часть В прошлом году я разбирал эти части на части и кое-что из этого на самом деле закончилось э-э в гм в кусках, которые могут быть использованы гм и зеброй Я сделал кучу улучшений в бэкэнде, чтобы ржаветь ящики гм, чтобы облегчить разработку мобильного кошелька гм, api доступа к данным был чем-то относительно ровным, но это потребовало гм был большой подъем от некоторых других инженеров основной команды к ммм, чтобы заставить разработчиков кошельков жить, у них есть немного проще, и у нас есть кое-что о производительности кошелька У нас есть кое-что, что мы потратили некоторое время работает над прозрачными расширениями zcash, которые как хлыст незавершенное производство zip для упрощая подключение частей к сети, ну, чтобы войти в протокол консенсуса, который понимает, как добиться баланса, чтобы как у нас есть пруд саженца в листе и пруд с фруктовым садом а потом у нас прозрачные адреса - это пул эм, мы довольно хорошо знаем, как подключать экранированные бассейны, но прозрачная сторона на самом деле не было очень хорошей поддержки для этого, поэтому tzd вроде эээ то, над чем мы работаем, на стороне они не эм еще эм, вы знаете, и вы готовы, но мы надеемся, что они они могут быть скоро, и тогда, конечно, вы знаете, в этом году фактически внедряют новые пять мм, поэтому мы имеют ореол 2, который, как я упоминал ранее, и также некоторые неподатливые идентификаторы tx, в которые я хотел просто вникнуть вкратце азара, как небольшая техническая интерлюдия, так что сейчас транзакции zcash v4 как распространенный формат в сети у вас есть байтовая кодировка, которая распространяется по сети и эта кодировка содержит все потенциально все биты и части, которые ваша транзакция может захотеть использовать, чтобы ваши прозрачные входы и выходы ваш сустав отростка раскалывается для тех из вас, кто все еще его использует а затем саженец вращается и выводится саженец и все они содержат различные части, которые гм, которые кодируют эффект транзакции действие, которое оно предпринимает в глобальной бухгалтерской книге а затем у них есть различные части, которые, ммм, разрешают это действие, чтобы ваш аппаратный кошелек сделал свою подпись или гм или ваш гм трехъядерный про трехъядерный процессор с восемью потоками приходит, чтобы сделать свои доказательства или что-то в этом роде, а затем все это кодируется в байтовую форму, которая просто хешируется напрямую и который формирует идентификатор транзакции, как это было сделано в биткойнах так мы унаследовали и так всегда делали проблема возникает, когда вы должны иметь возможность применять подписи и вы должны что-то назначить, чтобы сами подписи были по своей природе пластичный, и что я имею в виду под пластичным в том, что вы можете убрать подпись и заменить ее другой подпись, и он все равно авторизует транзакция, но поскольку эти подписи включены в дайджесте, который производит идентификатор транзакции это означает, что если вы измените какие-либо из этих данных, идентификатор транзакции изменится теперь это вызывает проблему, когда у вас есть код вне сети, который полагается на идентификатор транзакции является стабильным идентификатором для эффектов транзакция теперь это то, что вы можете напомню, что биткойн был с сегментом, а также были проблемы, и они хотел выпустить такие протоколы уровня 2, как молния и решение этого было гм эффекты неподатливости, когда вы в основном убираете эти части из-под идентификатора транзакции и что мы развертываем в u5 фактически то же самое, так что теперь мы разделили транзакцию в v5 для выполнения частей данных и авторизации частей данных затрагивающие части данных хешируются вместе в на самом деле в маленьком дереве Меркла изнутри, чтобы вы могли эм, вы можете привязать отдельные части к идентификатору транзакции, чтобы вы могли сказать, как указано этот идентификатор транзакции, вы знаете, что в этой транзакции произошел этот nullifier гм, а затем, чтобы связать все эти части, а затем все подтверждающие данные доказательства и подписи дается дайджест oauth, поэтому, если вы внесете какие-либо изменения в эту логику, orth дайджест изменится, но потому что все подписи и прочее там связывают эффекты транзакции, но не влияют ни на что из этого идентификатор транзакции не меняется, поэтому идентификатор транзакции может изменение - это если вы хотите изменить один из выходов, на который он собирается что-то, что вы хотели изменить и поэтому то, что вам нужно сделать, это привязать, вам все равно нужно привязать всю транзакцию к блокчейну так что в настоящее время у нас есть привязанные идентификаторы транзакций в этот хэш merkle root um в заголовке блока а затем у нас есть это другое поле, в котором мы застряли в начале это было зарезервировано, а затем это был маршрут отбора проб и тогда это был маршрут с такой же высотой, и мы меняем его в последний раз, когда Обещаю, что это будет хэш обязательств по блоку мы превратили его в связанный список, чтобы мы могли на неопределенное время добавить к нему в будущем, и поэтому в этом у нас теперь есть два параллельных дерева, одно из которых содержит все идентификаторы транзакций, а другой содержит все авторизация данных, и они вместе связывают то, что фактически входит в блок байты, которые входят в блок, полностью указаны гм, в то время как идентификаторы транзакций могут сохранить свои эффективные семантическое значение да, так что да, это довольно весело гм, так как мы все это делаем, это разумно хороший вопрос и я думаю, что это действительно начинается с взаимодействия, которое мы у нас есть эээ как сообщество разработчиков эм да я думаю, что большинство наших взаимодействий происходит github я бы сказал, разве они не скажут ах да, черт возьми, я чувствую, что живу на github несколько дней, так что мы потратили много времени обсуждение проблем с github и пул-реквестов на github у меня потрясающая команда зебры получила огромную помощь от различные разработчики ecc, которые приходят и помогают нам уточнить спецификацию или мы делаем то, что, возможно, не должны делать, и появляются пояснения к спецификациям и помочь нам понять, каков последовательный способ ведения дел так что это было действительно потрясающе и очень полезно мы также проводим довольно много времени, так что каждые две недели есть арборист звоните и разработчики тратят время на обсуждение последние изменения и планирование предстоящей работы эээ, они были действительно полезны, особенно с тех пор, как мы переключили их на происходит каждые две недели, а не каждый месяц и, наконец, есть сервер разногласий, zed cache rd discord, который мы говорили по множеству разных каналов реализация узла изменяется в соответствии со спецификацией и множество разных вещей, которые мы хотели бы увидеть в zcash и это было очень удобно для более продолжительных разговоров о проблемах, которые возможно, не подходит для видеозвонка или не подходит для конкретного э-э запрос на изменение или изменение спецификации да, становится намного проще Эм, чтобы просто разобраться во всем немного немного более благоприятные состояния, но без накладных расходов на встречу, так что большой эм-киоск хадсону джеймсу за настройку сервера разногласий, это было э-э, бесценный ум для перемещения вещей, э-э вы меня слышали немного об общих зависимостях и да, там довольно много, это вроде как независимо разработано нами, но есть разумное количество, которое мы начали делиться, и вы знаете, что у нас есть хороший Даг, что это не тот дэг, а это не дэг зависимости, который это список дел основной команды ecc, это немного большой эээээээээээто немного дэгэммээээээ то вещь, ээээ, мы идем эм как вы можете видеть отсюда у нас есть эм так Зависимости желтого золота здесь - это то, что было разработано в соотв. и зависимости от dodger blue взяты из zcash foundation и вы можете увидеть здесь зарождение bls431 и работа, которая лежит в основе многих существующих zcash набить гм ореолом 2 и который должен вроде как разветвляясь в данный момент как новый кусок, который приходит и затем zcash d со всеми его усиками, как бы поглощая все части вместе на высшем уровне и с зеброй вы можете увидеть, что там ящики с зеброй которые можно использовать независимо, если, скажем, вы хотите подключиться к сети или смоделируйте данные в блокчейне zcash и э-э вы также можете увидеть ed25519 zebra uh cryptographic и red jab jab зависимости, которые были включены в оба реализаций в последнее время, и вы также можете увидеть, как мы повторно используем реализация скрипта от zkhd, потому что разработка нашего собственного, мы думали, было довольно рискованным мы думали, что есть хороший шанс, что мы не будем проверять скрипты точно так же, и это будет много работать, чтобы попытаться сделать это, да и ммм, как вы можете видеть здесь пунктирные линии указывают, где между этими э-э между этими двумя стеками было очень интересно вроде да сделать шаг вперед выясняя основные биты, от которых мы зависим и способы, с помощью которых мы можем облегчить им зависимость от так, например, здесь, например, скрипт libsy Cash um начал свою жизнь как консенсус наличных денег Ливии в стране биткойнов эээ, но очевидно, что здесь есть намного больше, чем просто прозрачность проверка подписи, так что процесс извлечения что использовать для зебры было очень приятно на стороне zcash d, чтобы своего рода помощь в разбивке по модулям и в некотором роде в форму после того, как пришел в упадок эм, и вы также можете увидеть э-э, где зебра вот-вот будет зависеть из-за некоторых извинений за этот отрезок вы можете также посмотрите, где зебра вот-вот будет зависеть от примитивов zed cash для идентификаторы транзакций и история наличных денег zed для сердцевины история цепочки и обновления, которые произойдут в Nu5 до история цепочки с фруктовым садом да эм да другой компонент эм то, что действительно помогает нам с эм держать вещи в синхронизации и идти, это то, что я буду вроде примерно классов интеграционного тестирования гм но я могу думать о трех вещах с точки зрения того, как мы хорошо взаимодействовать здесь ну просто просто имея зебру вокруг, мы получаем более активную тестовую сеть и так вы знаете, что развертывание, как Дейдра отметил в предыдущем выступлении. э-э, зебра в какой-то момент была э-э, была довольно сильно влияет на сеть, и поэтому мы бы сейчас заметили, э-э когда есть проблема с сетью эм да эм тест в коробке - еще одна вещь, которая вышла из на самом деле эти ecc разные для команды, и я думаю, что это первая команда, которая будет используя его, это болт-лаборатории, гм, люди Работаю над гм болтом, являющимся двухуровневой цепью механизм для выполнения транзакций вне сети, который будет включен гм, его нельзя было бы развернуть без изменения неподатливости, которое мы выполняем развертывание в e5, так что эта логика позволяет просто как выбросить что-то в его собственную частную сеть и и э-э и разбить его на куски, это полезно, чтобы убедиться, что все не падай на обочину, и я думаю, что теоретически это возможно Чтобы запустить это с помощью zebra d, я не уверен, что это было сделано еще не проверено, список еще не проверен это в нашем списке дел, но да, мы в основном сосредоточились по проверке и исправлению ошибок, которые мы уже знаем о сетевом стеке, да, и это хороший переход к э-э тесты интеграции сети зиккурат, которые мы открыли черт возьми, в стеке сети zebra должно быть около 10 разных ошибок эээ, если не больше из-за работы команды зиккурата одна из причин этого в том, что у зебры есть совершенно новый параллельный сетевой стек, и поэтому есть всевозможные предположения, что мы встроили в его разработку, что теперь нам нужно проверить, с чем zcash d делает так это работает это хороший вопрос, как мы относимся к сотрудничеству идет гм и, в частности, что мы делаем Думаю, это эм, которого вы знаете как Дейдра, а также и э-э Стивен упоминается в разделе о том, что не планирует вы знаете, что есть некоторые ну вы знаете, очевидно, что обсуждается что-то вроде сколько должно происходить обмена и где имеет смысл размещать Эта линия, я думаю, да, Тара, если ты хочешь эээ, берегите себя, потому что у вас, вероятно, лучший вид, я думаю, как кто-то, кто должен был прийти и начать пытаться оперировать в существующей экосистеме, да, поэтому я думаю, что совместное использование определенно особенно хорош для команды зебры где компоненты не эээээ не нужны изменения должны быть более параллельными, поэтому одна из целей зебры - быть параллельная реализация узла и использование сколько бы ядер и какое бы качество сетевого подключения у вас ни было и так где ээ где протокол и где зависимости особо не нуждаются в изменениях для параллелизм нам было очень легко просто принять эти зависимости прямо сейчас, и мы делать это все чаще и чаще, чтобы мы могли расставить приоритеты в работе над параллелизм там, где это действительно важно, но в некоторых случаях мы сделали изменения, мы ввели проверку партии услуги по оформлению подписей и доказательств ну или, по крайней мере, для саженцев и доказательств прорастания и тогда я считаю, что они доступны для использования командой zeb casht эм, очевидно, просто нужно поставить это в наш конвейер, чтобы поместить их в но ээээ, но нет их присутствия там эээ абсолютно выгодно для нас, имея возможность э-э, знаете, что есть потенциальная оптимизация производительности просто сидеть в кармане, который мы можем вытащить, когда у нас будет время сделайте это в качестве примера некоторых общих зависимости, которые мы действительно хотели зависеть от исторические деревья обязательств, которые были введены в сердцевину и будут изменены в nu5, это зависимость, которая на самом деле не выиграть от параллелизма, потому что вам нужно знать всю цепочку блоков, чтобы зафиксировать историю для halo 2, это куча криптография, которую, вероятно, лучше всего сделать один раз пока что для неподатливых идентификаторов транзакций снова мы ничего не можем сделать, чтобы сделать они более параллельны, и для нас было очень полезно принять эту работу и произвести те расчеты, а не пытаясь реализовать хэш-дерево самостоятельно, но это то, что мы может сделать в будущем, если мы решим, что это полезно еще одно преимущество в том, что мы можем использовать одни и те же зависимости для подписей, которые абсолютно должны быть одинаковыми во всех все реализации, так что ed25519 и работа, а также вы можете увидеть куча других зависимостей там, безусловно, есть помогли нам сделать нашу реализацию более надежной потому что мы тестируем против кого-то другого вместо того, чтобы просто работать с собственными предположениями Зебры о том, как сеть должен работать, да, и это фактически подводит нас к приятно здесь, потому что с нашей точки зрения отдельная реализация была действительно полезной гм для гм z здоровье сети zcash в целом гм да, количество ошибок спецификации, эм, ошибок спецификации, которые есть у команды z Cash Foundation открыл ммм, я действительно не хочу возвращаться и посмотри сколько, но это просто фантастика другой взгляд на протокол, который реализуют это с нуля в смысл в том, что вы знаете, что это очень просто, когда разработка, вы знаете, разработка изменений, которые мы делаем как у нас есть полное представление о стеке, над которым мы работаем, и мы делаем мы делаем все возможное, чтобы задокументировать их как можно яснее за изменения, которые мы вносим, ​​но чтобы другие люди смотрели у них и нет, это на самом деле не ясно указан или есть вопрос по этому изделию здесь или о, здесь есть опечатка, и если бы это было реализовано как Это может сломать сеть, да, это было здорово да, тем меньше скрытых предположений, эм в этом да, из-за происхождения zcash в качестве биткойн-форка, мы унаследовал много неявного консенсусного поведения что мы не тратили много времени точно документируя это, потому что мы были Вы знаете, что мы делаем zk proof вещи, ну вы знаете, какие забавные вещи на сайте но эти части и консенсус биткойн уровня унаследованных частей и нет консенсуса, но вы знаете, что узлы могут взаимодействовать плохо, если он не очень хорошо определен и не понят работа, которая произошла в результате наличия второго узла реализация гм означает, что эти части эм гораздо более, гораздо более четко, гораздо более четко задокументировано, и мы можем начать как бы создать больше общих спецификаций для тех части, которые до сих пор были оставлены недокументированными еще одна вещь, которую мы делаем, это то, что мы были адаптировать изменения протокола так, чтобы они могут быть проверены последовательно или одновременно так, например, мы добавили поля в версию 5 транзакции, которая будет выпущен в следующем сетевом обновлении, так что он было легче проверить эти транзакции одновременно да, например, воспользоваться тем, что да, у нас разные стеки у нас разные подходы, и поэтому мы видим различные эффекты одного и того же консенсуса реальные изменения и может эм и может принести наши собственные эм да наши собственные взгляды на терпеть, чтобы сделать все это да, намного крепче и в идеале гм, да, мы идем, так что гм, что дальше у команд, которых мы эм да, у нас впереди еще один год, к сожалению ммм Так что для зебры мы собираемся начать работу в мемфисе транзакции, о которой узлы сплетничают и делятся неразминированными транзакции мы собираемся начать работу по зебре клиенты, чтобы пользователи могли отправлять транзакции с помощью zebra мы собираемся закончить валидацию для следующей сети обновить и заполнить пробелы от предыдущих обновлений сети, в которых мы еще не закончил валидацию но зебра уже делает контрольные точки на обновлении сети Canopy так что все, что было снято перед навесом например э-э-э-э-э-э э-э, что это за часть ростка отключен, и я никогда не смогу понять это правильно, создавая новые выходы ростков отключены, так что вы можете потратить росток, но вы не можете создать новый росток выходы из транзакций, поэтому нам не нужно беспокоиться об этом в зебре потому что он уже отключен, и мы проверяем прошлое точка, где было больше тех да, на стороне кассира Z ну, мы, очевидно, должны закончить в u5 как самая важная часть гм, чтобы вытащить это за дверь, а затем, я думаю, двое самые большие вещи, о которых я могу думать, что мы будем работа в течение следующего года для z наличных d будет Значительные обновления сетевого стека, так что у нас есть небольшая задержка для восходящих обратных портов от ядра биткойна, включая различные оптимизация однорангового уровня, которая была произведена в восходящем направлении, что мы на самом деле еще не нужны, потому что вы знаете, что у нас не было того же совершенно такой же объем, эм, проходящий по сети, но кое-что например, их версия компактных блоков отличается от наши компактные блоки, которые находятся на световом уровне, как клиентский уровень гм эм компактные блоки в форме вроде просто не отправляйте весь блок, когда приходит новый блок сделайте разницу в пулах памяти, чтобы выяснить, что гм, какие части, которые напрямую связаны с гм ckhd и против zebra d и как работают их мемпулы, что было бы весело гм, а затем еще один кусок, который мы в ecc хотели сделать для долгое время это замена кошелька c plus plus эм внутренности с чем-то эм чем-то лучше, и я думаю, что это Возможно, это произойдет, да, возможно, возможно скрестим пальцы, надеюсь, Стивен не кричит на меня, ммм да, если и когда мы заменим его, он заменит гм, в настоящее время кошелек на базе Berkeley db c plus внутри zcashg эм, по сути, он все еще жил бы там какое-то время ммм, но у нас было бы параллельный кошелек ржавчины ммм, в идеале в основном та же кодовая база это то, что используется в zcash как клиентские кошельки, потому что вы знаете логика кошелька может быть такой же, на самом деле не имеет значения, как он разговаривает с в сеть и получает свои данные, так что больше модульности, больше абстракции, и вы знаете строительные элементы, которые мы можем затем введите в zcash d, и вы знаете, что повторное использование таким образом, а затем в конце концов, возможно, отключим кошелек c plus plus, мы увидим Посмотрим, как нам повезло, а потом, да, до ДКС сеть глобально идет nu6 собираюсь устроить вечеринку по планированию для этого, я думаю в в тот момент, когда Nu5 выходит за дверь, и да если хм, если кто-то сейчас заинтересован в насильственной шестерке Настало время что-то предлагать эм, потому что мы будем знать, сидеть, знаешь, несколько месяцев эм от каких-то мыслей об эм планирование функций или выбор функций сейчас самое время идти, эй, вот кое-что, что я хотел бы увидеть в следующем обновлении сети или следующем обновлении сети и как часть обновления сетевого стека zkhd зебра будет внедрять аналогичные обновления или, по крайней мере, решать хотим ли мы поддерживать эти новые функции или нет, и это будет означать обновление до сам сетевой протокол и небольшая проработка взад и вперед если мы хотим адаптировать любой из этих проектов к zed cache да, легко могут быть части, которые имеют смысл в нашем контексте То, что мы можем делать одновременно да ладно, я думаю, это конец слайдов гм, так что давай зайдем в чат, чтобы задать вопросы Я вижу один вопрос, который я думаю, я думаю, tail4, не могли бы вы подробно описать зебру базы данных и зависимости скриптов, пожалуйста конечно, зебре нужен какой-то способ сохранить измененное состояние, чтобы, когда вы перезапустите зебру, она может начать с того момента, когда она остановился, поэтому зависимость базы данных zebra э-э это RockDB, которая является базой данных ac plus, которая в значительной степени параллельны, что является одной из причин, по которой мы выбрали его и мы используем это через ящик ржавчины, который обеспечивает безопасную ржавчину интерфейс с базой данных, зависимость сценария zed cache - это зависимость, я думаю, мы говорили об этом ранее в разговор, но это зависимость, что команда zkhd выделилась из своей библиотеки, и точно так же зебра использует безопасную ржавчину интерфейс к этой зависимости сценария, потому что сценарий проверка сложна, это немного язык само по себе и один из рисков независимости Независимая проверка скриптов заключалась в том, что мы не могли понять это правильно и будут некоторые крайние случаи, которые могут вызвать разделение консенсуса поэтому мы считали, что пока у нас не было времени сделать много тестирования, мы просто использовали бы общую зависимость поэтому я думаю, что следующий вопрос о zcash d и мы будем признательны за обновление текущего состояния zksd DevOps включает или включает автоматическое тестирование производительности изменения в проверке и модульном тестировании детерминированной цепочки инструментов сборки обновления распространение двоичных файлов для подписи образов и поддержка виртуализации пожалуйста, отметьте несколько из этих пунктов [Смех] У меня действительно есть набор инструментов, эм, да, я не тот эм лучше всего подготовлен, чтобы поговорить с некоторыми из них, потому что я не в команде DevOps эм, я направлю большинство из них на канал разногласий, но я скажет, что команда DevOps в ECC делала очень хорошая работа на нескольких из этих направлений. будет звонить конкретно это ci um, когда мы запускаем zcash ни один из свободно доступных гм с открытым исходным кодом, таких как гм, тестирование вещей, может ли все это обрабатывать zcash, потому что вы знаете, что вам нужно как четыре гигабайта памяти для создания транзакции и как ничто не могло этого сделать, так что нам пришлось раскрутить нашу собственную гм система ci, основанная на buildbot, и мы использовали ее последние пять лет и он показывает свой возраст, так что дайвинг для команды был работаю над новой системой um в прошлом um ну довольно какое-то время на основе тектона И я считаю, что Kubernetes, я просто подбрасываю модные словечки сейчас эм, но вы видели, что все это не объединяет открытие PR и закрытие для z hd, которое затем вы знаете, тестируя его в производстве, но на непроизводственный э-э-вопрос э-э-э э-э, так что это приближается наряду с очень хорошими детерминированными сборками у zcasd есть всегда были детерминированно построены, гм, если вы построите его хорошо, релизы будут если вы создадите его прямо из build.sh ммм, он не будет но у нас есть система getty and build, которую мы используем для для всех наших выпусков, так что у нас всегда было гм детерминированные сборки ммм там, ммм, и я думаю, что другая, которую я скажу, это да, нет запланированных изменений к способу, которым мы, подписавшие, распространяем двоичные файлы, ммм, в на этот раз я буду да, что это вопросы я оставлю на долю дивидендного белка, я мог бы также ответить на аналогичный вопрос для ci zebra, так как мы только делаем валидации у нас не было очень много проблем с памятью или мощности процессора мы раскручиваем собственные облачные рабочие места Google, чтобы мы могли быстрое представление о том, проходят ли тесты но нам до сих пор повезло, что стандартные действия github могут просто обрабатывать что мы делаем, я полагаю, это может быть немного иначе когда мы начинаем работу с нашим клиентом и начинаем генерировать доказательства и транзакции, и я думаю, мы поговорим с командой ecc на этом этапе да, мы будем, теперь это не проблема, я думаю как наша зависимость от ржавчины, так что у нас есть наш стек zcash d um ci, я, вероятно, должен уточнить и это использует billbot, и это все, потому что консенсус нет, это самое важное гм, чтобы убедиться, что мы все правильно, но все наши зависимости от ржавчины и sapling ммм, они просто запускают действия github, ммм и до сих пор и использование саженца большая производительность внесенные в него улучшения означают, что нам на самом деле не нужно было поразить такие виды использования памяти и тому подобное, это все еще медленно, потому что вы работаете на уровне эм доступность, которая, как вы знаете, ориентирована на открытый исходный код и мы открыты для этого кода, но мы немного по тяжелому сторона насколько вы знаете мы не мы не инструмент кли Но да, это определенно выполнимо, но вы все равно можете захотеть чтобы посмотреть на более индивидуальную настройку um to если вы, если скорость имеет значение, и я просто зачитаю следующий вопрос я думаю, что Strad может быть лучшим человеком, чтобы ответить на этот вопрос эээ - исправление гибкости транзакции только для будущего повышения безопасности или транзакции были искажены в прошлом, вызывая проблемы, если мы знаем, почему было злонамеренно или случайно дано, что у нас нет молниеносной сети или эквивалент, так что это действительно интересный вопрос эм, потому что ответ - мы не можем знать эм или, по крайней мере, мы не можем знать, и никто не выходит вперед, поэтому идентификатор транзакции проблема деформации - это проблема в основном в промежутке между тем, когда транзакция отправляется в сеть и когда он попадает в блок, этот период времени по своей сути не соответствует консенсусу вне правил консенсуса, поэтому мы не можем наблюдайте это все, что мы видим, это то, что заканчивается в блоке и как только он попадает в блок, это просто все, что угодно, что угодно двоичные биты транзакции находятся в этом блоке, вот что это такое гм, так что логика, которую мы представляем это проблема, о которой мы знаем, что мы знаем, и экосистема знает, что это проблема для протоколов вне цепи, таких как световой блок молнии где конкретно, если вы, когда у вас две вечеринки цепочка, совместно совершающая транзакцию им нужно договориться о некоторых частях государства эм вне сети и, например, Алиса и Боб могут совершать транзакции, которые они согласовывают о финансировании этого канала, а затем Боб идет, идет круто, я подпишу выкупную транзакцию и потому что это теория игр и то, как все это работает. первая транзакция, которую вы должны подписать, дает Алисе все средства после тайм-аута и боб остынет, что собираюсь потратить те, кто из этой транзакции, подписывают, что это сделано тогда Алиса может пойти и сменить подпись на первой, которую сможет может ли она уйти в отставку, что изменит сделку идентификатор первой транзакции и попадет ли она в цепочку У Боба нет возможности выполнить транзакцию по возврату потому что он подписан для идентификатора транзакции, который никогда не может существовать потому что создание этого идентификатора транзакции означало бы двойное расходование входных данных первая транзакция, ээ, потраченная, так что это но это не проблема, которую мы видим в цепочке, потому что все, что видит цепочка, это транзакция была добыта, и она отправила средства в место, которое затем через определенное время они вышли из строя и были отправлены в другое место эм, так это да, это то, о чем многие люди думали цепь эм, это не то, что мы увидим на цепочке ммм, но это то, что затем устраняется как проблема освобожденная этим изменением круто, я не вижу других вопросов, так что да, думаю, с этим мы можем завернуть эм спасибо еще раз всем, кто ставил это было очень приятно, наконец, вернуться практически все по крайней мере Что ж, спасибо, Стрэттон Теор и Стрэт, мне нравится цвет, который ты выбрал для изображения основа от этого зависит от пары вещей, которые выделялись я из той презентации, были ли преимущества наличия эээ вы знаете отдельные реализации протокола zcash что, как мы ожидали, будет получено из проекта zcash но все равно приятно видеть, что наше предположение подтвердилось еще до того, как zebra готова к производственному развертыванию, это также действительно интересно услышать о пользе зиккурата и что принесет этот проект был результатом крупного гранта, который подчеркивает выгоды от наличия механизма финансирования сторонняя работа с риском повторения, если вы есть идея, как улучшить или увеличить денежные средства, пожалуйста, продолжайте и подайте заявку на грант в комитет по крупным грантам zcash open ну это обертка для первого дня z Жульничество тех из вас, кто смотрит вживую с добрым утром добрый день добрый вечер и спокойной ночи в зависимости от в каком часовом поясе вы находитесь и мы вернемся завтра в 14:00 по стандартному времени