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

Ethernaut – это СTF решение OpenZeppelin, каждый уровень является смарт-контрактом, который необходимо «взломать». Исходный код игры полностью открытый, а все уровни созданы другими игроками.

1. Создадим контракт под названием Calculator 2. Создадим переменную result для хранения изначального результата. 3. Создадим функции сложения, вычитания, умножения, деления, возведение в степень, извлечения квадратного корня и округление чисел. 4. Создадим функцию получить результат вычислений.

Скажем некое сообщество X планирует сделать раздачу eth для своих подписчиков. Чтобы каждый из них в течении месяца после определенных дат смог забрать свой дроп равный сумме, которую владелец паблика внесет на депозит (смарт-контракта) xBank, поделенное на количество участников события.