Описание тега circom

1 ответ

Выходной сигнал на основе двух других наших сигналов

Я пытаюсь написать схему, чтобы доказать, что число находится в указанном диапазоне. Я использую библиотеку circomlib: файл https://github.com/iden3/circomlib/tree/master/circuits comparators.circuit. Мой код до сих пор таков: template RangeProof(n)…
05 май '22 в 14:36
1 ответ

Как отправить строки в качестве сигналов для обхода?

Я хочу создать схему для измерения длины строки в Circom. Есть только числовые типы данных, как мне это сделать?
19 апр '22 в 03:48
2 ответа

Количество проводов в цепи ZKP Circom больше ожидаемого

Я компилирую эту простую схему: pragma circom 2.0.0; template Multiplier2() { signal input a; signal input b; signal output c; c <== a*b; } component main = Multiplier2(); и компилятор говорит 4 провода: circom 1.circom --r1cs --wasm --sym --c te…
03 янв '23 в 16:12
1 ответ

Конфликтующие версии вычисления битов sha256

я вычисляюsha256из двух разных источников, оба работали на битовых массивах. В Python я запускаю from bitarray import bitarray from hashlib import sha256 inbits = bitarray([1,0,1,0,1,0,1,0,1,0]) sha = sha256(inbits) outbits = bitarray() outbits.from…
21 июл '22 в 15:04
1 ответ

Ошибка утверждения Circomlib на простом хеше MimcSponge

Я играю с circom и circomlib. Я использую простую схему хеширования mimcsponge и смотрю, смогу ли я создать правильный ввод через интерфейс javascript. Схема, которую я запускаю template sponge_test() { signal input l; signal input r; signal input o…
05 сен '22 в 02:20
1 ответ

запутался в реализации Circom LessThan

Я пытаюсь реализовать шаблон LessThan, который выводит 1, если y меньше, чем x, и 0, если x больше, чем y. Ниже приведен пример кода из библиотеки circom, и я пытаюсь понять, что происходит в этом коде ниже. template LessThan(n) { assert(n <= 252…
11 авг '22 в 15:46
1 ответ

Ошибка: файл zkey не является groth16 в circom

■ Информация о выпуске Когорта3-Неделя1-Часть2-4-1 1. Вы столкнетесь с ошибкой, если просто измените snarkjs groth16 setup к snarkjs plonk setup. Устраните эту ошибку и ответьте на следующий вопрос: чем процесс компиляции с помощью PLONK отличается …
20 июн '22 в 08:33
3 ответа

Что именно доказывает ограничение схемы Circom a * b?

Я использую эту схему согласно официальной документации: pragma circom 2.0.0; /*This circuit template checks that c is the multiplication of a and b.*/ template Multiplier2 () { // Declaration of signals. signal input a; signal input b; signal outpu…
06 янв '23 в 19:06
0 ответов

Входная строка переменной длины в circom?

Я хотел бы показать, что пользователь знает прообраз хэша sha256 в circom. Прообраз может быть любой длины, но реально от 100 до 700 байт. Я пробовал код: template ArbitraryLengthSha256 () { signal input nBits; signal input preimage[nBits]; signal o…
11 июн '22 в 00:41
0 ответов

Snarkjs- Доказательство по-прежнему подтверждает неверность свидетеля

Очень новичок в ZKsnarks. Я пытаюсь создать простое приложение, чтобы проверить, соответствует ли введенный номер определенному заранее определенному числу или нет. Я выполнил все шаги, указанные в документе SnarkJs . Вот схема для моего варианта ис…
10 сен '22 в 18:09
0 ответов

Как написать ограничения для схемы zk-SNARK

Нужна помощь в определении ограничений для схемы zk-SNARK Всем привет! Я разрабатываю SDK zk rollup, и мне нужна помощь в определении ограничений для схемы. В настоящее время у меня нет доступа к эксперту по криптографии, и я ищу ресурсы или членов …
13 фев '23 в 14:59
0 ответов

Несоответствие Pedersen circom/circomlibjs?

В качестве модульного теста для более крупного варианта использования я проверяю, действительно ли хэш Педерсена, который я делаю во внешнем интерфейсе, совпадает с ожидаемым хэшем, полученным через цепь обхода. Я использую простое утверждение в схе…
09 сен '22 в 11:20
1 ответ

Как решить вопрос о сравнении двух входных данных с помощью функции IsEqual?

Я работаю над прохождением теста для хакерского дома, где мне нужно сравнить два входных данных, используяIsEqualфункция. Пожалуйста, предоставьте код и его объяснение. Спасибо!
11 июл '23 в 13:31
1 ответ

Команда Node.js circom не найдена

Использование Windows 11 и VS Code. Я установил circom и snarkjs: npm install -g circom и npm install -g snarkjs который, казалось, установился нормально. Я также установил расширение: circom-подсветка-vscode v0.0.2 Теперь, когда я запускаю команду:…
04 май '23 в 01:06
0 ответов

Написание сингапурского валидатора NRIC в Circcom

Я собираюсь написать схему Circcom для проверки сингапурского NRIC, подробную информацию об алгоритме контрольной суммы проверки можно найти здесь. Короче говоря, это строка, содержащая префикс, который представляет собой перечисление вариантов: S, …
11 май '23 в 17:56
0 ответов

Почему snarkjs, работающий на Node.js, выдает экземпляр std::bal_alloc?

Я запускаю snarkjs поверх Node.js на машине Linux x64 с 256 ГБ ОЗУ, и у меня есть схема zk-SNARK, состоящая из ограничений ~28M. Я хочу выполнить командуsnarkjs zkey newдля создания файла zkey из схемы, скомпилированной с помощью circom, но когда за…
05 авг '23 в 09:12
2 ответа

В чем разница между переменной и сигналом, а также между функцией и шаблоном в Circcom?

Это может быть вопрос новичка: В документе говорится, что сигналы являются частью схемы, а переменные аналогичны переменным в других языках программирования. Но что касается проверяемых вычислений, я бы предположил, что вычисления, выполняемые над п…
03 июн '23 в 23:11
1 ответ

Хеш-функция Sha256 в Circom

Во время хакатона ETH Global Paris пыталась интегрировать циркум-схему с хешированием даты рождения, чтобы доказать, что пользователь знает дату, следуя известному руководству по среднему языку. Вот его код pragma circom 2.0.0; include "./circomlib/…
25 июл '23 в 00:41
1 ответ

Почему Circuit (circom) не может сравнить метку времени?

У меня есть схема, в которой я хочу сравнить две временные метки. Если я попробую с меньшими числами, это сработает, если я попробую с метками времени, это не сработает. Вот схема (.circom) pragma circom 2.0.0; include "../node_modules/circomlib/cir…
14 сен '23 в 13:18
0 ответов

Может ли непринужденный общедоступный сигнал быть изменен злоумышленником в цепи Circcom?

У меня есть схема, которая проверяет, что доказывающий имеет прообраз хеша, и я хочу дополнительно зафиксировать некоторые дополнительные данные. Что-то вроде схемы подписи, где закрытый ключ — это прообраз, открытый ключ — это хеш, и я хочу подписа…
08 ноя '23 в 05:31