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

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

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

  { Аналогия из блога Chainlink } 

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

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

ТЛ;ДР 

  • Облачные вычисления отлично подходят для сложных задач, но как узнать, что результаты точны?

  • Поддающиеся проверке вычисления позволяют передавать вычисления на аутсорсинг и проверять ответы без повторного запуска всего процесса.

  • Он использует доказательства (например, квитанцию), чтобы подтвердить, что работа была выполнена правильно.

  • Преимущества включают безопасность, эффективность, прозрачность и проверку научных расчетов.

  • Существует два основных типа доказательства: интерактивное (диалог клиент-работник) и неинтерактивное (доказательство, проверенное ключом).

  • Другие методы, такие как безопасные анклавы и гомоморфное шифрование, могут повысить безопасность и конфиденциальность.

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

🅃🄴🄲🄷🄰🄽🄳🅃🄸🄿🅂123

В нашем мире, где доминируют огромные вычислительные потребности, передача сложных задач на облачные серверы стала рутиной. Но в этом и заключается проблема: как только мы получим результаты, как мы можем быть уверены в их точности? Подумайте об этом: вы назначаете задачу обучения ИИ такой платформе, как AWS. Неделю спустя вы получаете миллионы параметров нейронной сети в результате выполнения этой задачи обучения ИИ. Но как вы можете гарантировать, что эти параметры действительно отражают неделю тренировок, а не просто день?

Самое простое решение — отправить ту же задачу на другую облачную платформу, Google Cloud, и сопоставить результаты. Однако этот метод не только избыточен, но и удваивает затраты. Итак, какова альтернатива? Это тема проверяемых вычислений – область, ориентированная на проверку результатов вычислений, переданных на аутсорсинг, без повторного выполнения всего процесса.

{ Аналогия из Forbes }

🏵️ Как работают проверяемые вычисления

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

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

📀 Как проверяемые вычисления решают дилемму 

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

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

🔸 Проверка доказательства: у вас есть инструмент проверки, который использует секретный ключ для проверки правильности полученного доказательства. Если проверка успешна, она гарантирует, что вычисление было выполнено так, как предполагалось, на ненадежном сервере, что дает заслуживающий доверия результат. Думайте о проверяемых вычислениях как о системе проверяемых вычислений.

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

💡 Преимущества проверяемых вычислений 

Поддающиеся проверке вычисления предлагают множество преимуществ для различных приложений:

  1.  Безопасность в облачных вычислениях: обеспечивает безопасное использование облачных ресурсов для конфиденциальных вычислений, гарантируя конфиденциальность данных и целостность результатов.

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

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

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

🔆 Типы доказательств 

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

  Интерактивные доказательства:

 В этом методе клиент и работник участвуют в интерактивном диалоге, чтобы проверить правильность доказательства. Клиент отправляет вызов работнику, а ответы работника математически проверяются, чтобы гарантировать достоверность вычислений.

Неинтерактивные доказательства: 

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

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

⚡ Безопасные анклавы и гомоморфное шифрование

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

 Безопасные анклавы: 

Это изолированные среды выполнения внутри процессора, которые защищают конфиденциальность и целостность вычислений во время их выполнения на ненадежном сервере.

 Гомоморфное шифрование: 

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

🚆 Как это помогает в масштабируемости блокчейна 

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

  • Улучшенная пропускная способность транзакций: разгружая вычисления, блокчейны могут обрабатывать больше транзакций в секунду, что приводит к более быстрому и эффективному времени подтверждения транзакций. Это крайне важно для реальных приложений, требующих большого объема транзакций.

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

🏵️ Поддающиеся проверке вычислительные приложения в криптовалюте 

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

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

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

💡 Специальное приложение 

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

  • Блокчейн уровня 2 (L2): Блокчейны L2 используют доказательства ZK (в частности, SNARK), чтобы гарантировать целостность переходов между состояниями. Эти доказательства обеспечивают эффективную проверку без необходимости полных вычислений в цепочке.

  • Межцепочные мосты. Межцепочные мосты используют SNARK для подтверждения ввода или вывода средств из одной цепочки в другую. Это обеспечивает надежную совместимость между различными блокчейнами.

  • Сопроцессоры ZK: «Сопроцессор ZK» использует SNARK для проверки вычислений вне цепочки над данными внутри цепочки. Например, он может проверять сложные вычисления, выполнение которых в смарт-контракте было бы слишком затратным.

🔬 Известные проекты

> Zcash

> Мой

> Старкнет 

> Петля 

> СтаркЭкс

> Сеть зигзагов 

> Неизменяемый X 

🔼 Кредит данных

>  Википедия 

> Исследовательские ворота

>  АрXiv

>  Форбс

>  Блог Chainlink 

>  Майкрософт 

🔹🔸🔹🔸🔹🔸🔹🔸🔹🔸🔹🔸🔹🔸🔹🔸

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

🔸🔹🔸🔹🔸🔹🔸🔹🔸🔹🔸🔹🔸🔹🔸🔹