zk-S N ARK , Zk-S T ARK и BulletProofs — это три основных доказательства с нулевым разглашением, обеспечивающие конфиденциальность технологии блокчейн.
Если мы сможем их сравнить,
(1) Bulletproofs и Zk-S T ARK не требуют надежной настройки.
В отличие от zk-S N ARK , который требует доверенной установки, что создает для него неудобную ситуацию.
(2) Zcash , использующий zk-S N ARK, может скрывать адрес суммы вместе с отправителем и получателем .
Мне пока не ясно, можно ли скрыть отправителя и получателя с помощью Bulletproofs и Zk-S T ARK .
(3) Судя по всему, Zk-S T ARKs быстрее , чем zk-S N ARKs быстрее , чем Bulletproofs .
(4) Bulletproofs короче, чем zk -S N ARK и Zk-S T ARK .
В общем, каковы основные различия (преимущества и недостатки) между этими тремя основными методами доказательства с нулевым разглашением?
Примечание . Ссылки используются для приведенных выше сравнений:
https://crypto.stanford.edu/bulletproofs/
https://blockonomi.com/bullet-proofs/
https://nulltx.com/mit-review-acclaims-zk-snarks-but-zk-starks-may-steal-the-show/
Примечание 1. В следующей статье сравниваются SNARK и STARK :
Примечание 2. Я сравнил zk-SNARK, Zk-STARK и BulletProofs на следующем рисунке. Любые комментарии к этому сравнению приветствуются:
Некоторые из ваших пунктов действительны (например, SNARK и STARKS быстрее, чем Bulletproofs), но есть и некоторые ошибки:
Каковы основные отличия (преимущества и недостатки)?
Согласно потрясающему репозиторию ZKP :
Согласно слайдам Елены Надилинской из Devcon4:
Согласно основному докладу Zooko Wilcox (Zcash) от Devcon4 :
Согласно основному докладу Эли-Бена Сассона (STARKware) на Летней школе Техниона (обратите внимание, что на этом последнем изображении измеряется решатель суммы подмножеств, вероятно, более сложный, чем вычисления, выполненные в сравнении выше):
Старки почти во всем лучше, чем Снарки: они требуют более слабых криптографических предположений, не требуют надежной настройки и устойчивы к постквантовым воздействиям. Но у них есть большой недостаток, так как доказательство огромно.
Для некоторых приложений, таких как то, с которым я должен работать, это просто невозможно. Нам пришлось выбирать между доказательством Снарка размером в сотни байтов и доказательством СТАРКа размером в сотни килобайт. Этот единственный фактор стал для нас убийцей.
Время проверки также значительно больше у Старков, чем у Снарков. В первом случае он растет за время O(poly log n), тогда как для Snarks он линейен в зависимости от входного размера , который является небольшой константой, особенно в сложных схемах. Помните, что здесь n — это количество ворот.
Например, возьмем схему, которая доказывает, что вы знаете прообраз определенного хеш-значения. Ввод будет иметь размер этого ввода, который составляет 32 байта, если вы используете SHA256. Однако для этой функции количество вентилей будет исчисляться десятками тысяч, и вы можете видеть, что время проверки для SNARK незначительно по сравнению с ним.
Цифры в приведенных выше таблицах вводят в заблуждение. Они не говорят вам, какая у вас схема и насколько велико n . В зависимости от того, насколько сложна ваша схема, они могут сильно различаться. Я предпочитаю использовать асимптотическую запись, и в этой статье для этого есть хорошая таблица (стр. 3).
AFAIK Bulletproofs короче, но для их проверки требуется больше времени, чем для Starks, что делает его не масштабируемым для сокрытия транзакций блокчейна.
Спрашивающий
Алекс Пинто
4
, а 27-й -1
.