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

Трудности внедрения теории криптографии в практику

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

Современные криптографические системы позволяют защитить все виды онлайн-данных и сообщений при хранении, передаче и вычислениях, включая банковские операции, аукционы, электронную коммерцию, блокчейн и другие. Эти системы включают в себя доказательства с нулевым знанием (ZKP), многосторонние вычисления (MPC), полностью гомоморфное шифрование (FHE), и другие. Каждая из этих систем, основанная на математических вычислениях, нацелена на конкретные сценарии и потребности.

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

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

Роль программируемой криптографии

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

Исследователи, работающие в 0xPARC и Privacy and Scaling Explorations, проводят инновационную работу, которая позволяет превратить zkSNARKs, конструкцию доказательств нулевого знания, широко используемую в инфраструктуре блокчейна, такой как ZCash и zkEVM, в программируемую криптографию.

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

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

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

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

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

Vk: https://vk.com/arpa_russia

Канал анонсов ARPA в Telegram: https://t.me/ARPA_News_Ru

Добавить комментарий