zk-SNARKs в Блокчейн: вызовы безопасности и решения
zk-SNARKs(ZKP) как передовая криптографическая технология, все более широко применяется в области Блокчейн. С принятием технологий ZKP в таких проектах, как протоколы Layer 2 и специальные публичные блокчейны, сложность систем также возрастает, что приводит к новым вызовам безопасности. В данной статье будет рассмотрено, какие уязвимости могут возникнуть в процессе сочетания ZKP и Блокчейн с точки зрения безопасности, чтобы предоставить рекомендации по обеспечению безопасности соответствующих проектов.
Основные характеристики zk-SNARKs
Полная система zk-SNARKs должна одновременно соответствовать трем ключевым характеристикам:
Полнота: для истинного утверждения доказатель может успешно доказать его правильность проверяющему.
Надежность: злонамеренный доказатель не может обмануть верификатора в случае ложных утверждений.
Нулевое знание: в процессе верификации проверяющий не получит никакой информации от доказателя о самих данных.
Эти три характеристики являются основой безопасности и эффективности системы 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 или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
6 Лайков
Награда
6
7
Поделиться
комментарий
0/400
LiquidationKing
· 07-08 05:58
Я посмотрел несколько раз и все равно немного запутался, zkp слишком сложен.
Посмотреть ОригиналОтветить0
gas_fee_therapist
· 07-06 19:06
Те, кто не умеет делать схемы L2, все мошенники, верно?
Посмотреть ОригиналОтветить0
OnChainDetective
· 07-06 17:42
в прошлом месяце было обнаружено 6 уязвимостей zk-процессов... сложность = уязвимость
Посмотреть ОригиналОтветить0
AirdropBuffet
· 07-06 17:33
Слишком сложно, лучше просто держать (hodl)
Посмотреть ОригиналОтветить0
GasFeeCrier
· 07-06 17:30
Неужели zkp даже основы не уверены?
Посмотреть ОригиналОтветить0
WenMoon
· 07-06 17:29
Снова занимаются формализмом. Что с безопасностью?
Безопасные вызовы ZKP в Блокчейн: анализ 8 ключевых моментов
zk-SNARKs в Блокчейн: вызовы безопасности и решения
zk-SNARKs(ZKP) как передовая криптографическая технология, все более широко применяется в области Блокчейн. С принятием технологий ZKP в таких проектах, как протоколы Layer 2 и специальные публичные блокчейны, сложность систем также возрастает, что приводит к новым вызовам безопасности. В данной статье будет рассмотрено, какие уязвимости могут возникнуть в процессе сочетания ZKP и Блокчейн с точки зрения безопасности, чтобы предоставить рекомендации по обеспечению безопасности соответствующих проектов.
Основные характеристики zk-SNARKs
Полная система zk-SNARKs должна одновременно соответствовать трем ключевым характеристикам:
Полнота: для истинного утверждения доказатель может успешно доказать его правильность проверяющему.
Надежность: злонамеренный доказатель не может обмануть верификатора в случае ложных утверждений.
Нулевое знание: в процессе верификации проверяющий не получит никакой информации от доказателя о самих данных.
Эти три характеристики являются основой безопасности и эффективности системы 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 на Блокчейне.