Когда: понедельник, 9 сентября 2019 @ 17: 00 UTC Где: #monero-research-lab (freenode/matrix) Повестка дня: Приветствия Круглый стол a. Sarang: протокол IACR 944, RandomRun's LRS и прочие бумажные ревизии b. Surae c. Прочие участники? Вопросы Ключевые моменты <sarang> ПРИВЕТСТВИЯ <suraeNoether> howdy! <ArticMine> Hi <xmrmatterbridge> <worriedrise> Привет <sarang> Значит, КРУГЛЫЙ СТОЛ, я могу пойти первым <sarang> Мета-заметка заключается в том, что мой следующий запрос на финансирование нуждается в обратной связи, чтобы определить,следует ли его вообще открывать: https://repo.getmonero.org/monero-project/ccs-proposals/merge_requests/96 <sarang> Кроме того, я работал над доказательствами для IACR 944, над которыми, как я знаю, также работает kenshamir[m] <sarang> Несколько заметок о эффективности: https://github.com/SarangNoether/skunkworks/tree/944-ipa-nozk/ipa-nozk <sarang> Я получил много правок/отзывов в ключе документа CLSAG <suraeNoether> *thumbs up для clsag* <sarang> И у нашего друга, RandomRun, есть отличная идея для применения системы доказательства роста к транзакциям, подробно описанным в соответствующем выпуске на GitHub: https://github.com/monero-project/research-lab/issues/56 <suraeNoether> также эта доказательная система является основой системой для сублинейных кольцевых сигнатур, которые когда-то были основой для RTRS <sarang> Размеры довольно большие, но можно использовать некоторые манипуляции из другого документа, чтобы уменьшить их <suraeNoether> это основополагающий документ <sarang> Да, его используют и в Lelantus <sarang> у меня всё <sarang> suraeNoether? <mikerah> Привет <suraeNoether> мои обновления включают в себя: 1) сопоставление, 2) доказательство о знании сигнатур и 3) рассмотрение omniring как общей системы доказательства для самого различного спектра применения <suraeNoether> re: 1) я сделал кучу локальных коммитов, которые буду сквашить и пушить в ближайшее время <suraeNoether> re: 2) я определил несколько основополагающих документов, которые буду использовать, чтобы сделать свой собственный аргумент <suraeNoether> re: 3) много читаю и задаю сопутствующие вопросы Сарангу <sarang> понятно <sarang> Прежде чем мы перейдем к вопросам и прочим обсуждениям, у кого-то есть другая интересная работа, чтобы поделиться ею? <suraeNoether> у меня есть стопка документов, которые я прикончил за последние несколько недель, начиная c BOLT и вплоть до прочтения билинейных парных документов, но многие из них были фоновым чтением <sarang> Хорошо, теперь вы можете задать ВОПРОСЫ <sarang> suraeNoether: PoKoS, вероятно, потребует операций сопряжения? <mikerah> У меня есть вопрос — несколько недель назад я пришел сюда, спрашивая о смарт-контрактах. Я все еще думаю об этом. Непохоже, что monero имеет какую-либо форму хранения. Мое предположение верно? <sarang> Что вы подразумеваете под хранением? <suraeNoether> да, все основополагающие вещи, которые я нашел, варьируются от «легкого» до «умеренного» в настройке пар, но имеют нулевые решения для настройки DL. Поэтому я думаю, как решить некоторые из этих проблем для настройки DL. Если я добьюсь прогресса в этом вопросе, это будет представлять независимый интерес для более широкого исследовательского сообщества и позволит получить некоторые улучшения для Monero ⇐ midnightmagic вышел (~midnightm@unaffiliated/midnightmagic): Причина: Бездействие в течении 264 секунд <kenshamir[m]> suraeNoether: Я читал бюллетень и увидел следующий вопрос: «Техническая заметка / бюллетень MRL о размещении STARKs в bulletproofs» <kenshamir[m]> Есть ли более подробная информация об этом? <kenshamir[m]> Вопрос: 43 <mikerah> @kenshamir: Как будут работать надстройки STARK внутри bulletproof? Я догадываюсь, как будет работать противоположная надстройка <suraeNoether> kenshamir[m]: я хотел написать техническую записку – re: эта тема, в смысле я хочу, чтобы ей занялся кто-то другой. Меня интересуют детали о том, как это будет работать в режиме «саженца» в bulletproof. Эта работа, которую исследователи из zcash уже, по-видимому, провели, но я хочу получить отдельное заключение. Это общая идея, которая сможет помочь многим, поэтому было бы здорово иметь документ, чтобы указать на эффективность и прочие моменты <sarang> документ zcash просто оценивает размеры / время на основе сложности схемы <suraeNoether> mikerah: bulletproof могут доказать утверждения о внутренних произведениях и о векторах, так что вы можете взять заявление в стиле Sapling и формализовать его в bulletproof <suraeNoether> sarang: действительно <sarang> Ну, bulletproofs может доказать самые различные схемы изначально <sarang> Доказательства диапазона, которые обычно используются, на деле являются самым малым спектром его применения <suraeNoether> *кивает* <sarang> (но более эффективны) <mikerah> @sarang: место в дополнительном пространстве транзакции, которое можно использовать для самых различных вещей. Bitcoin блоки имеют дополнительное пространство, которое люди использовали в прошлом для хранения сообщений. В Ethereum есть calldata. <mikerah> *дополнительное пространство в блоке <sarang> Существует произвольное поле данных, которое также используется для хранения определенных сведений о транзакциях и идентификаторов платежей <sarang> tx_extra <suraeNoether> у нас есть tx_extra, но хранение чего-либо, кроме однородных случайных данных, может привести к деанонимизации <sarang> угу <sarang> (или неоднородные, случайные, «типичные» данные) <suraeNoether> да-да <suraeNoether> я должен предупредить, что <sarang> в прошлом уже были идеи для таких вещей, как обратные адреса и т. д <suraeNoether> если какие-либо данные хранятся в tx_extra, они должны быть зашифрованы <mikerah> Я понял. Буду продолжать думать над этим, возможно я смогу придумать что-то <ArticMine> Это порождает вопрос – как обеспечить шифрование для tx_extra? <sarang> Буду обязан <Inge-> Что такое ограничение длины tx_extra? <xmrmatterbridge><worriedrise> Вы изучали двойные выходы для Lelantus? Может быть, если вместо использования хэша ключа подписи он возьмет хэш двух ключей подписи S = Hs (P||Q), а также, возможно, и обязательства для timelock, можно будет храниться в тройном обязательстве? Хотя я об этом особо не задумывался. <sarang> Inge-: нет жесткого ограничения (кроме каких-либо ограничений для самих блоков и т.д.) <sarang> worriedrise: интересно, но почему тройное обязательство? <sarang> Это обязательство может быть сохранено как стандартное обязательство Педерсена вместе с новыми результатами, не так ли? <xmrmatterbridge> <worriedrise> Это действительно возможно. Был бы еще один пункт, чтобы хранить это все <suraeNoether> «Это порождает вопрос – как обеспечить шифрование для tx_extra??»<--добавьте поле tx_extra_valid, измените tx_extra на пару элементов группы, используйте Switch commitments в tx_extra, а в tx_extra_valid храните доказательство знания о начале обязательства. Если вы спрячете открытый текст в tx_extra, вы не сможете открыть его как обязательство... Это так… Просто один из способов. Но я не уверен, что все будет работать <suraeNoether> хорошая идея... <suraeNoether> ArticMine: ^ <ArticMine> Существует возможный вектор атаки, если в tx_extra применяются незашифрованные данные или предоставляется стимул для использования этого поля. Мы обсуждали это на встрече о идентификаторе платежа <suraeNoether> *кивает*, принудительное выполнение того, что содержится в tx_extra и «выглядит одинаково», предоставляет огромный вектор для атаки <kenshamir[m]> sarang, для доказательств диапазона вы хотите переключить внутренний аргумент, используемый в настоящее время в bulletproofs, на тот, который используется в 944? <sarang> О, я просто думал над этим <kenshamir[m]> Для записи — я думаю, что ранее я уже упоминал, что в 944 содержатся модифицирующие внутренние доказательства bulletproofs, но bulletproofs – это и так внутренний аргумент <kenshamir[m]> Ах да <sarang> ? <kenshamir[m]> <sarang «?»> я сказал это на предыдущей встрече, хотя не уверен в этом <sarang> Да, я экспериментировал с алгеброй, необходимой для того, чтобы 944 IPA хорошо сочетался с оптимизированной проверкой в BP <sarang> ладно <sarang> Похоже, что авторы 944 сделали реализацию проверок диапазона BP с обоими внутренними аргументами и заявили о довольно существенном ускорении, если я правильно понимаю <sarang> Гораздо большее ускорение, чем я ожидал <ArticMine> suraeNoether, правильно, можно применять шифрование, но нельзя запретить публикацию ключа дешифрования вне его пределов <kenshamir[m]> <sarang «Похоже, что авторы 944 сделали реализацию проверок диапазона BP»> Да, я пытаюсь проверить это с помощью реализации Dalek, но я сделал паузу, поскольку что-то в статье не сходиться на данный момент <sarang> kenshamir[m]: и что? <kenshamir[m]> Надеюсь, что я смогу получить ответ на это и сравниться с Daleks в ключе оптимизации реализации <kenshamir[m]> <sarang «kenshamir: и что?»> \ Gamma_ {i}, который упоминается несколько раз <kenshamir[m]> и имеет размер n-2 x n-2 <sarang> Я предполагаю, что авторы 944 не развернули рекурсию IPA при проверке <kenshamir[m]> что работает только для квадратного уравнения <kenshamir[m]> первоначально я думал, что он будет содержать n-2 квадратных уравнения <sarang> разве это важно для базового IPA, отличного от zk? <kenshamir[m]> <sarang «Я предполагаю, что авторы 944»> Да, мне нужно будет реализовать ваш код, чтобы тесты были честными, и потому, что код Dalek делает тоже самое <sarang> Я подозреваю, что развернутая рекурсия уничтожает всё ускорение <sarang> Поскольку большая часть оптимизаций, по-видимому, относится только к скалярным операциям <kenshamir[m]> <sarang «разве это важно для базового IPA, отличного от zk?»> не имеет смысла, матрица содержит только одно уравнение, или я что-то не так понимаю? <sarang> Но это не влияет на использование базового IPA, отличного от zk, верно? <sarang> Таким образом, вы не имеете в виду, что недоразумение является препятствием для тестирования IPA? <kenshamir[m]> <sarang «Я подозреваю, что развернутая рекурсия»> Dalek использует функцию batch_invert для скаляров <sarang> Да, а также пакетные инверсии <sarang> на самом деле это всего лишь одна инверсия и некоторые скалярные умножения (которые по существу бесплатны) <kenshamir[m]> <sarang «Таким образом, вы не имеете в виду»> Я реализовал код с использованием плотных матриц, который неэффективен. Я полагаю, что будет большая разница, если мы сможем сохранить n-2 уравнения в одной матрице по сравнению с n-2 матрицами размера `n-2 x n-2` <sarang> Правильно, но если вы тестируете обмен внутренним аргументом в bulletproofs диапазоне, вам не нужен протокол более высокого уровня <sarang> не-zk IPA крепко стоит на своих двух <kenshamir[m]> <sarang «Правильно, но если вы тестируете обмен внутренним аргументом»> да, я понимаю, что вы имеете в виду <sarang> я предполагаю, что таблица в конце 944 уже сделала это <sarang> для общего применения <sarang> думаю, что мы на одной странице: D ⇐ xmrmatterbridge вышел (~xmrmatter@lists.getmonero.org): Причина: Удаленный хост разорвал соединение → xmrmatterbridge подключился (~xmrmatter@lists.getmonero.org) <kenshamir[m]> Я думал о небольшом тесте — 944 против bulletproofs. Но вы правы в том, что нам также нужно сравнить 944 IPA_Nozk с bulletproofs IPA <sarang> В документе есть оба варианта <sarang> Возможно, последние тесты были только в расширенной статье (я должен проверить) ⇐ glv вышел (~glv@2a01:e34:ed03:c7d0:c1ab:c05d:9d2f:9025): Причина: Удаленный хост разорвал соединение <sarang> на самом деле это всё неважно <sarang> последняя таблица синхронизации просто меняет местами zk IPA <kenshamir[m]> Да, первый и второй тесты показывают, что они идентичны, когда bulletproofs использует IPA_NoZK <kenshamir[m]> Угу <sarang> Несмотря на то, что ускорение было впечатляющим только для IPA_NoZK (следовательно, хотелось бы узнать, делает ли развертывание его менее продуктивным) <sarang> вроде ~ 30%? <sarang> что кажется абсурдным... <kenshamir[m]> Да <sarang> в любом случае стоит попробовать, чтобы подтвердить эти цифры <sarang> Наверное, стоит написать авторам <kenshamir[m]> Я протестирую обычный IPA_NOZK без multiexp и bulletproofs с multiexp <sarang> Я отправлю им свой алгоритм развертывания, чтобы обеспечить справедливое тестирование <sarang> multiexp будет большим <sarang> когда размер кольца будет становится больше <kenshamir[m]> Они также использовали универсальную библиотеку, возможно, она тоже играет роль в результатах тестах <kenshamir[m]> Правда, не уверен как именно <kenshamir[m]> <sarang «когда размер кольца будет становится больше»> Да <sarang> Да, это не имеет значения, в идеале, если они делали параллельные реализации <sarang> всё это часть препринта <sarang> в общем, получите от них обратную связь и дополнительную информацию! ⇐ midipoet вышел (uid316937@gateway/web/irccloud.com/x-gndbtjglwddmunnt): Выход: соединение разорвано из-за бездействия <sarang> kenshamir[m], возможно, мы сможем сотрудничать через обратную связь с авторами документа <sarang> но только после того, как у нас будут результаты тестов <sarang> также я думаю, что было бы полезно сделать комментарии к самой статье <kenshamir[m]> <sarang «вообщем, получите от них обратную связь»> Да, это было бы здорово <sarang> отлично! ⇐ xmrmatterbridge вышел (~xmrmatter@lists.getmonero.org): Причина: Удаленный хост разорвал соединение ⇐ wow-discord вышел (~wow-disco@104.248.17.142): Причина: Удаленный хост разорвал соединение <kenshamir[m]> Да, потому что это очень важный вклад <sarang> наверняка <kenshamir[m]> Система доказательства также великолепна → wow-discord подключился (~wow-disco@104.248.17.142) → xmrmatterbridge подключился (~xmrmatter@lists.getmonero.org) ⇐ xmrmatterbridge вышел (~xmrmatter@lists.getmonero.org): Удаленный хост разорвал соединение <sarang> 10/10? <sarang> =p <kenshamir[m]> <sarang> В интересах времени, есть ли другие вопросы? <sarang> OK! <sarang> Быстро пройдемся по КЛЮЧЕВЫМ МОМЕНТАМ перед закрытием встречи → xmrmatterbridge подключился (~xmrmatter@lists.getmonero.org) <sarang> Я поставил для себя несколько целей: построение системы для проверок и тестов, подготовка документов к подаче на рассмотрение ⇐ xmrmatterbridge вышел (~xmrmatter@lists.getmonero.org): Удаленный хост разорвал соединение <sarang> Не стесняйтесь комментировать мой запрос на финансирование, чтобы определить, должен ли он вообще быть открыт <sarang> suraeNoether: на чем сфокусированы ваши ключевые моменты? <suraeNoether> ах, да, извините: сделать скваши для кучи коммитов для сопоставления, доделать thring подписи перед конференции FC и начать излагать свои идеи для POKOS <suraeNoether> но в основном буду заниматься сопоставлением, потому что это уже находиться на том этапе, чтобы дать положительные результаты <sarang> Потрясающе! Другие ключевые моменты от участников? Или мы закрываем эту встречу? <suraeNoether> только то, что я люблю вас всех → xmrmatterbridge подключился (~xmrmatter@lists.getmonero.org) <suraeNoether> обязательно прокомментируйте запрос предложения Саранга ⇐ xmrmatterbridge вышел (~xmrmatter@lists.getmonero.org):Удаленный хост разорвал соединение <kenshamir[m]> <sarang> Ай! Ладно <sarang> Спасибо всем за участие! Журналы будут опубликованы на GitHub в ближайшее время Источник: Research meeting: 9 September 2019 @ 17:00 UTC #389 Перевод: Unholy (@Unholy) Редактирование: Mr. Pickles (@v1docq47) Коррекция: Kukima (@Kukima)