Безопасные вызовы ZKP в Блокчейн: анализ 8 ключевых моментов

robot
Генерация тезисов в процессе

zk-SNARKs в Блокчейн: вызовы безопасности и решения

zk-SNARKs(ZKP) как передовая криптографическая технология, все более широко применяется в области Блокчейн. С принятием технологий ZKP в таких проектах, как протоколы Layer 2 и специальные публичные блокчейны, сложность систем также возрастает, что приводит к новым вызовам безопасности. В данной статье будет рассмотрено, какие уязвимости могут возникнуть в процессе сочетания ZKP и Блокчейн с точки зрения безопасности, чтобы предоставить рекомендации по обеспечению безопасности соответствующих проектов.

Основные характеристики zk-SNARKs

Полная система zk-SNARKs должна одновременно соответствовать трем ключевым характеристикам:

  1. Полнота: для истинного утверждения доказатель может успешно доказать его правильность проверяющему.

  2. Надежность: злонамеренный доказатель не может обмануть верификатора в случае ложных утверждений.

  3. Нулевое знание: в процессе верификации проверяющий не получит никакой информации от доказателя о самих данных.

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

Безопасные аспекты проектов zk-SNARKs

1. zk-SNARKs электрическая цепь

Циркуль ZKP является ядром всей системы, на которое необходимо обратить особое внимание в следующих аспектах:

  • Проектирование цепей: могут возникнуть логические ошибки, приводящие к тому, что процесс доказательства не соответствует свойствам безопасности. Например, ошибка проектирования цепей, обнаруженная в Zcash во время обновления Sapling в 2018 году, могла привести к неограниченной подделке токенов.

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

  • Обеспечение случайности: процесс доказательства зависит от генератора случайных чисел, недостаточная случайность может привести к ущербу безопасности. Как было обнаружено Dfinity в 2018 году, уязвимость генерации случайных чисел может подорвать нулевые знания свойств схемы.

2. Безопасность смарт-контрактов

Для проектов с криптовалютами на основе Layer 2 или реализованных через смарт-контракты безопасность контрактов имеет решающее значение. Кроме распространенных уязвимостей, уязвимости в проверке межсетевых сообщений и проверке proof могут напрямую привести к потере надежности. Например, уязвимость контракта Verify от Circom может привести к атаке двойного расходования с псевдонимом.

3. Доступность данных

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

4. Экономические стимулы

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

5. Защита конфиденциальности

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

6. Оптимизация производительности

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

7. Механизмы отказоустойчивости и восстановления

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

8. Качество кода

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

Итоги

При обсуждении безопасности проектов ZKP необходимо сначала определить, для чего проект использует ZKP, так как безопасность проектов разных типов (, таких как Layer 2, монеты с конфиденциальностью и публичные блокчейны ), имеет различные акценты. Тем не менее, необходимо обеспечить три основных характеристики ZKP: полноту, надежность и нулевую знание. Только учитывая все эти факторы безопасности, можно создать по-настоящему безопасный и надежный проект ZKP на Блокчейне.

Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 7
  • Поделиться
комментарий
0/400
LiquidationKingvip
· 07-08 05:58
Я посмотрел несколько раз и все равно немного запутался, zkp слишком сложен.
Посмотреть ОригиналОтветить0
gas_fee_therapistvip
· 07-06 19:06
Те, кто не умеет делать схемы L2, все мошенники, верно?
Посмотреть ОригиналОтветить0
OnChainDetectivevip
· 07-06 17:42
в прошлом месяце было обнаружено 6 уязвимостей zk-процессов... сложность = уязвимость
Посмотреть ОригиналОтветить0
AirdropBuffetvip
· 07-06 17:33
Слишком сложно, лучше просто держать (hodl)
Посмотреть ОригиналОтветить0
GasFeeCriervip
· 07-06 17:30
Неужели zkp даже основы не уверены?
Посмотреть ОригиналОтветить0
WenMoonvip
· 07-06 17:29
Снова занимаются формализмом. Что с безопасностью?
Посмотреть ОригиналОтветить0
CounterIndicatorvip
· 07-06 17:26
ZKP — это будущее, ни за что не изменю.
Посмотреть ОригиналОтветить0
  • Закрепить