Шифрозмий

Шифрозмий

Аудитория: 484 подписчика
Категория: Блоги
#zkp #rust #stoicism #work #personal

✍️ О чем: https://t.me/zmiy_rs/21

Статистика канала

484 подписчиков

Последние посты

Шифрозмий
#zkp folding | Часть 1 Ⅰ. Целеполагание Я уже говорил в посте по ссылке о zkp и зачем он нужен. Мы можем доказывать наличие секрета, не раскрывая самого секрета. Мы можем доказывать факт проведения объемных вычислений. Но теперь мы идем немного дальше. …
1 320
Шифрозмий
Превью публикации
#zkp folding | Часть 1Ⅰ. ЦелеполаганиеЯ уже говорил в посте по ссылке о zkp и зачем он нужен. Мы можем доказывать наличие секрета, не раскрывая самого секрета. Мы можем доказывать факт проведения объемных вычислений. Но теперь мы идем немного дальше. Одно из ключевых преимуществ протокола — масштабирование. Вы можете выполнить миллионы операций, а затем за O(1) проверить, что результат корректный. Но вот генерация доказательства для этих миллионов операций все еще будет требовать больше ресурсов, чем обычное выполнение.Возьмем виртуальную машину (VM). Выполняя программу внутри нее, мы получаем трассу — некоторое количество operation code (opcode). Мы также можем арифметизировать все операции и сделать circuit, доказывающий факт их выполнения. Такой подход называется zk-VM и позволяет использовать zkp протоколы для обычного кода, а не описывать каждую операцию вручную (как мы делали в #workshop_1).Но, конечно, все не так просто. Напоминаю, что circuit всегда синтезирует все возможные ветки сразу, поэтому как размер witness, так и время синтеза для всех операций VM будет внушительным.  Нужен какой-то способ разбивать наборы инструкций на куски и агрегировать их вместе.Такой способ у нас, конечно, есть.Ⅱ. Простой путь — РекурсияОбычный процесс выглядит так:1. Алиса подает приватные и публичные входы в circuit, синтезируется witness (свидетель факта вычисления) и далее на его основе генерируется доказательство.Alice -{input, pub_input}-> circuit::synthetize -> witness -> circuit::prove -> proof2. Боб подает публичые данные и доказательство на вход и может проверить верность доказательства.Bob -{proof, pub_input}-> circuit::verify -> is_valid?Проверка доказательства — это простые математические операции. А что нам мешает сделать проверку внутри circuit? Правильно, ничего.Тогда мы сможем создать recursive_circuit, который будет включать в себя как полезную логику, так и верификацию i-1 доказательства поданного на вход. Мы получим цепочку произвольной длины, а в конце — все то же одно компактное доказательство.(Этот же прием используется для смены proof-system на лету, но это чуть дальше от нашей темы).Ⅲ. Рекурсивный VMВернемся к нашей виртуальной машине и примеру с opcode. Тут сразу становится понятно, что все не так просто. Opcode выполняется на определенном состояние VM (память, регистры), и нам важна консистентность между шагами: i-й шаг работает с состоянием, порожденным i-1-м шагом. Можно попытаться передавать все это в качестве публичного входа, но все то, что мы не хотим показывать, находится как раз внутри памяти.На помощь нам придет хэш-функция. Состояние VM остается приватным, но хэш от него мы помещаем как публичный вход и валидируем в circuit. Тогда рекурсия будет работать для данного случая. В чем подвох?Есть несколько решаемых проблем, однако, самая основная — производительность. Каждый раз мы проводим полноценный цикл zk-протокола, получая оверхед сполна. А можно ли как-то обобщить и упростить эту схему? Да! Обобщение называется Incrementally Verifiable Computation (IVC). О нем — в следующем посте...
1 340
Шифрозмий
🛠 Я наконец-то полностью закончил грант для Ethereum Foundation! Можно и с канала пыль сдуть.Пока я дописываю пост про zk-folding, посоветую вам книжку, которая закрыает вопрос "Какой уровень математики нужен чтобы работать в #zkp / #mpc / #fhe?". Если вам доступно понять что в ней написано, то уровня хватит.📕 Introduction to Programmable Cryptography (bigbook.pdf) Нашел я ее еще пару месяцев назад, но дочитал и осознал в праздники и теперь с чистым сердцем советую вам, как хороший пример введения для разработчиков. Еще я добавил к этому два выпуска (p1, p2) от ББ про #fhe и теперь почти не чувствую себя самозванцем, когда называюсь progcrypto-developer (а не просто zkp-dev) 😅
1 340
Шифрозмий
🧠 Осознанное потребление информации | ЦелеполаганиеДопустим, мы разобрались с тем, как осознанно потреблять информацию. Но всё это не сработает, если не ответить на простой вопрос: а зачем? Можно идти исключительно по велению сердца, куда вас позовёт любознательность. Но моя любознательность зовёт меня всюду одинаково, поэтому приходится придумывать себе рамки. Как можно двигаться?Вот несколько вариантов: - Выбрать образец для подражания- Формализовать социальные роли и оттолкнуться от них- Оттолкнуться от своих же ценностейВ море доступной информации сформировать образ будущего себя — задача нетривиальная, но зато какой простор для выбора! Поверьте, очень приятно видеть именно этот пройденный путь спустя годы. А не хаотичные метания от темы к теме, которые позволяют только поверхностно умничать в разговоре.В моей голове всегда была картинка интеллектуала, которым я хотел бы стать. До него мне ещё не одна сотня книг, а его образ дополняется новыми атрибутами с каждым годом. Держать этот образ цельным и реалистичным — отдельная задача. Но я знаю людей, страдающих синдромом «я не знаю, чего я хочу». Поэтому мне грех жаловаться!А еще, когда у вас есть цель, раз в год вы можете посмотреть, как вы к ней движетесь. А зачем еще длинные новогодние праздники, если не для личной ретроперспективы? 😅
1 070
Шифрозмий
Превью публикации
🧠 Осознанное потребление информацииЯ часто чувствую себя ребенком в магазине сладостей, когда оказываюсь один на один с интернетом в свободное время. Столько всего интересного, бесплатно и в одном клике — глаза разбегаются, начинаешь брать всего и побольше, не можешь остановиться и… обнаруживаешь себя объевшимся и с болью в животе.Если бросаться на любую информацию и успокаивать себя словами «общее развитие», то сложно построить что-то, кроме статуса генералиста-дилетанта. А благодаря эффекту Даннинга-Крюгера можно и самому поверить, что что-то знаешь, и эта постыдная самоуверенность ударит в самый неподходящий момент. Краеугольный камень в образовании для взрослых людей — это самокритичная оценка своего интеллектуального багажа. А главное, — объема знаний, которые ты можешь качественно усвоить за единицу времени.Для себя я выбрал некоторые техники, чтобы процесс шел проще:Ⅰ. Правило 5/25 Правило простое. Выпишите тридцать интересующих вас тем и отсортируйте по важности. Первые пять — ваш фокус, оставшиеся — ваши заклятые враги. Вы опасаетесь этих тем, вы их не трогаете, вы обходите стороной ссылки на них, или хотя бы откладываете в дальний ящик. Нельзя съесть всё и сразу, важна умеренность.Я каждый год, с болью в сердце, ранжирую свой список, но огромный эффект от техники я ощутил еще в первый год её использования. В университете я читал много научпопа про мозг, что создало ложное чувство знания о том, как он работает. Когда я выбрал его темой моего 2016 года и перестал читать простые тексты, погрузившись чуть глубже, оказалось, что человечество знает примерно ничего. Авторы научпопа срезали столько углов в угоду нарратива, что все мои практические выводы о мышлении нужно было перестроить с нуля. Было больно, но лучше, чем если бы я до сих пор думал, что что-то знаю на эту тему.Ⅱ. Активная работа с информациейВы уже наверняка видели десятки советов в стиле «активнее работайте с информацией». Это может быть метод Фейнмана (у моей кошки, возможно, уже степень по криптографии), это может быть написание постов, ролевые игры, споры, дебаты, да что угодно! Главное, чтобы знания не проходили мимо вас, а вы работали с ними. Иногда это значит послушать один подкаст пять раз и сделать конспект, иногда найти/организовать клуб по чтению интересующих вас книг, иногда просто практиковать мышление письмом.Кстати, если вы попробуете так активно работать с разными темами (см. п. I), то вас не хватит. Качество тут важнее количества.Ⅲ. ЭкзокортексЭто прелестное слово из киберпанка предполагает расширение неокортекса нашего мозга извне. И хотя кибермозгов нам еще не придумали, для текущих информационных систем это слово уже применимо. Если коротко, речь о заметках.Я иногда ужасаюсь, сколько всего я успел забыть за свою осознанную жизнь, сколько усилий по перевариванию сложной информации канули в лету. Даже когда лень, это придает мне сил открыть org-roam для написания ещё одной заметки.Любые внешние носители, которые позволят вам спустя время быстро восстановить понимание какой-то темы — это ваш экзокортекст. Базы знаний, заметки, блоги и т.п. — всё сгодится. Но помните: никакой генерёнки, писать надо самому для себя. конспект от нейронки — это здорово, но он не поможет вам тронуть ваши нейроны, куда вы положили знания.Дальше
1 190

Оставить комментарий/отзыв

Рекомендации

IVA

IVA

@IVAAAA009
453 подписчиков

печатная мастерская

печатная мастерская

@art_magic_wood
498 подписчиков

место, чтобы писать пару слов о работе и делиться вещами, которые вдохновляют на работу🌿 немного о жизни и тв...

ДегRadio

ДегRadio

@degradio31
478 подписчиков

Короче, читатель, я для тебя пишу и в благородство играть не буду: подписка, реакции – и мы в расчете. Хрен ег...

сухоfruit 🍍

сухоfruit 🍍

@dalyavgorode
478 подписчиков

Life контент и плейлист Дали)

Бэйкон

Бэйкон

@yobacons
477 подписчиков

ЮТ: http://www.youtube.com/c/baconpancakes ✍🏻Рабочая Почта: Dichenskov@yandex.ru Инст: yobaconpancakes ТТ: yob...

Ирландские повести

Ирландские повести

@kras_ireland
476 подписчиков

Вольное повествование о том, как мы три года в Ирландию переезжали и как учимся здесь жить

SILENCĖ

SILENCĖ

@saysilence
450 подписчиков

ImmagiNail о Химии материалов для ногтей🧪

ImmagiNail о Химии материалов для ногтей🧪

@ImmagiNail
510 подписчиков

Здесь в основном рассказываем о химии материалов. О моделировании ногтей и маникюре рассказываем здесь https:/...

Вдумчиво обо всём 🗯️

Вдумчиво обо всём 🗯️

@tikis_bo
461 подписчиков

Кружочки не моя тема. Я здесь, умничаю, страдаю, делюсь, советую, отговариваю, сплетничаю, чморю, восхищаюсь -...

alinayspv

alinayspv

@alinayspv
613 подписчиков

💌сотрудничество: @starsssszz