Вернуться   Биткоин Форум > Разработка и Техническое Обсуждение
15 марта 2014, 12:01:02 PM   # 1
 
 
Сообщения: 2366
Цитировать по имени
цитировать ответ
по умолчанию Re: Dual СНАРК: Как сделать ZKP с доверенным initilization ненадежным в некоторых случаях.

Взлом Биткоин адресов.
500 Биткоинов взломаны в "мозговом кошельке" с паролем "bitcoin is awesome"
Адрес кошелька: 14NWDXkQwcGN1Pd9fboL8npVynD5SfyJAE
Приватный ключ: 5J64pq77XjeacCezwmAr2V1s7snvvJkuAz8sENxw7xCkikceV6e
подробнее...


Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru
Некоторые из наиболее эффективных конструкций, доступных в настоящее время для доказательства произвольных программ в нулевом знании безопасны только в АСБЕ model- на английском языке: Они требуют доверенного шага инициализации, на котором кто-то должен произвести некоторые магические числа, и если они обманывают (например, сохраняя начальная хаотичность) они могут дать ложные доказательства.

Системы с этими свойствами находятся в некоторых работах в http://www.scipr-lab.org/ И в http://research.microsoft.com/apps/pubs/default.aspx?id=180286, оба из которых в настоящее время используют системы, основанные на GGPR'12 криптосистемы. Они действительно потрясающую производительность, хотя- достаточно быстро, чтобы быть на самом деле целесообразно использовать на доказывающей, и почти как проверка в течение нескольких миллисекунд с нескольких сотен байт для доказательства независимо от размера программы доказанным или сколько времени занимает бежать. Но требование доверенного инициализации является неприемлемым для некоторых приложений. В конечном счете мы хотим системы, которые не зависят от доверенной инициализации, но они менее далеко вперед в развитии и никогда не может быть столь же эффективным.

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

Например, сказать, что я хочу, чтобы платить вам обусловливающие вы опубликовав решение a- сказать- головоломки Судоку. Скрипт работает под эффективным доказательством системы знаний может проверить зашифрованное решение, и потому, что с нулевым знанием шахтеры не могли прийти и заменить выходы, как в простой хэш автоподстройки транзакции. Вы можете использовать CRS Снарк здесь, где плательщик вычисляет доверенную инициализацию, а затем получатель не может cheat-, но тот факт, что плательщик инициализированного это означает, что плательщик может дважды провести гонку выкупа и получить как решение и их монету обратно.

Есть несколько способов решения, но я хотел бы упомянуть еще один, который особенно общее:

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

Это может быть дополнительно оптимизировано вместо требующего Person_A_snark&&Person_B_ECDSA_sig || Person_B_snark&&Person_A_ECDSA_sig ... Крест подпись с использованием ECDSA является более эффективной, так как Снарк доказательства больше (и гораздо медленнее, для вычисления), чем ECDSA подпись, и это в равной степени достигает цели, не позволяя ни одна из сторон, чтобы воспользоваться лазейкой. (В частности, если вы используете сжатие хеширования, чтобы избежать никогда даже не потрудившись публиковать верификатор, открытые ключи для филиалов неиспользованных).

Такой же подход может быть распространен на более чем двух сторон, хотя эффективность становится менее впечатляющей (например, испытатель должен запустить доказательство N-1 разы обращаться с любыми из сторон, возможно, в сговоре с ними, или N / 2, если вы хотите только честную безопасность большинства ) и, к сожалению, это не реально работать вещают оплаты виды применения.
gmaxwell сейчас офлайн Пожаловаться на gmaxwell   Ответить с цитированием Мультицитирование сообщения от gmaxwell Быстрый ответ на сообщение gmaxwell


Как заработать Биткоины?
Без вложений. Не майнинг.


16 марта 2014, 8:56:08 AM   # 2
 
 
Сообщения: 360
Цитировать по имени
цитировать ответ
по умолчанию Re: Dual СНАРК: Как сделать ZKP с доверенным initilization ненадежным в некоторых случаях.

Получил 1806 Биткоинов
Реальная история.





Например, сказать, что я хочу, чтобы платить вам обусловливающие вы опубликовав решение a- сказать- головоломки Судоку. Скрипт работает под эффективным доказательством системы знаний может проверить зашифрованное решение, и потому, что с нулевым знанием шахтеры не могли прийти и заменить выходы, как в простой хэш автоподстройки транзакции. Вы можете использовать CRS Снарк здесь, где плательщик вычисляет доверенную инициализацию, а затем получатель не может cheat-, но тот факт, что плательщик инициализированного это означает, что плательщик может дважды провести гонку выкупа и получить как решение и их монету обратно.

Почему ты говоришь "потому что с нулевым знанием шахтеры не могли прийти и заменить выходы, как в простой хэш автоподстройки сделки" ? Если я понимаю, этот пункт (и ваш последний комментарий в этом посте) правильно, плательщик должен указать конкретный получатель платежа, который может выкупить монеты (вместо того чтобы позволить любому, кто знает решение головоломки Судоку, чтобы выкупить монеты)? Если да, то это может быть сделано вне Снарка, как мы обычно делаем в Bitcoin, требуя ScriptSig ввод-скрипт для получения подписи для указанного адреса / Публичного получателя средств, в целях предотвращения шахтеров от замены вывода. Есть ли полезно причина для обеспечения идентичности получателя платежа внутри Снарка, как вы, кажется, подразумевают здесь?
Кроме того, если я правильно понимаю, то протокол здесь не неинтерактивный, т.е. получатель посылает плательщик через частный канал зашифровано решение s0 зашифрованный под симметричным ключом k0, а затем плательщик передает сделку Снарка, которая должна выявить ( в прозрачном) k0, так что только плательщик будет знать решение?

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

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


Мне кажется, что для неинтерактивных доказательств (как в CoinWitness), необходимость избегать доверенных инициализации не могут быть преодолена. А с другой стороны, доверенная инициализация не является проблема в интерактивных ZK доказательства сценариев? Но, пожалуйста, более подробную информацию о каких-либо замечаний, которые я мог бы быть пропавших без вести здесь ...
Идо сейчас офлайн Пожаловаться на Идо   Ответить с цитированием Мультицитирование сообщения от Идо Быстрый ответ на сообщение Идо

16 марта 2014, 8:25:45 PM   # 3
 
 
Сообщения: 2366
Цитировать по имени
цитировать ответ
по умолчанию Re: Dual СНАРК: Как сделать ZKP с доверенным initilization ненадежным в некоторых случаях.

Почему ты говоришь "потому что с нулевым знанием шахтеры не могли прийти и заменить выходы, как в простой хэш автоподстройки сделки" ? Если я понимаю, этот пункт (и ваш последний комментарий в этом посте) правильно, плательщик должен указать конкретный получатель платежа, который может выкупить монеты (вместо того чтобы позволить любому, кто знает решение головоломки Судоку, чтобы выкупить монеты)? Если да, то это может быть сделано вне Снарка, как мы обычно делаем в Bitcoin, требуя ScriptSig ввод-скрипт для получения подписи для указанного адреса / Публичного получателя средств, в целях предотвращения шахтеров от замены вывода. Есть ли полезно причина для обеспечения идентичности получателя платежа внутри Снарка, как вы, кажется, подразумевают здесь?
Возможно нет. Я, вероятно, выбрал плохой ПРИМЕР- и, возможно, там не одно, чтобы описать мотивацию для этого. Действительно, когда получатель платежа назначен я думаю, что почти всегда можно полностью удалить процесс, доказывающие из криптовалюта.

котировка
Кроме того, если я правильно понимаю, то протокол здесь не неинтерактивный, т.е. получатель посылает плательщик через частный канал зашифровано решение s0 зашифрованный под симметричным ключом k0, а затем плательщик передает сделку Снарка, которая должна выявить ( в прозрачном) k0, так что только плательщик будет знать решение?
Это по своей сути интерактивный, но потенциально может быть асинхронным. 

Позвольте мне расширить эту идею дальше, так что приложение является более ясным. Скажем, мы делаем нашу схему Снарка универсальной схема (например, vntinyram), который принимает хеш программы в качестве вклада общественности (и программы самого как частный вход). Позволяет также предположить, что вы и я являемся членами торгового клуба, который часто торгует головоломки решения для монет среди ее членов.

Каждый член клуба торгового компилирует и схему tinyram и производит закрытый ключ ECDSA. Они публикуют ключ верификатора и открытые ключи для всех членов клуба и (через некоторый резистентный процесс Сивиллы) клуб производит хеш-дерево над этими ключами и верификации пакетов открытых ключами, которые каждый в клубе согласны правильно.

Теперь я могу сформировать сделку, которая предлагает монету, кто может производить либо двойные Снарк доказательства (или Снарк + сиговых), например один снарк мой, а другой представляет собой любой, не моя в списке (путем предоставления ключа проверки и доказательство членства в наборе, совершенном в сделке).

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

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

котировка
Если мое понимание выше, не было далеко, то это не достаточно здесь, чтобы потребовать от получателя платежа, чтобы обеспечить свою цифровую подпись (в дополнении к доказательству, которое проходит проверку Снарка), и потому, что плательщик не может произвести подпись для соответствующего Публичный от получателя платежа, он не может дважды потратить, предоставляя ложные доказательства (что он может производить, потому что он знает, инициализацию Снарка), по крайней мере до тех пор, некоторые nlocktime не истекли, где он проводил выходные с помощью транзакции, что получатель платежа уже подписанной для его.
Может быть, хотя это имеет слабость, когда вы хотите «nlocktime» правило, которое более сложным, чем nlocktime. Например. сделка платит вам, если вы представите квитанцию ​​от вашего банка, что платеж прошел, это возврат ко мне, если я могу представить доказательство от моего банка, что сделка была обращенно ... только после того, некоторые очень долго ожидания делает nlocktime в игру вступают ,

Мне кажется, что для неинтерактивных доказательств (как в CoinWitness), необходимость избегать доверенных инициализации не могут быть преодолена. А с другой стороны, доверенная инициализация не является проблема в интерактивных ZK доказательства сценариев? Но, пожалуйста, более подробную информацию о каких-либо замечаний, которые я мог бы быть пропавших без вести здесь ...
Согласен. Хотя я не уверен, что если неинтерактивный являются вполне правильными критериями он терпит неудачу, я думаю, он не публично проверяемый (да, схемы CRS являются «публично проверяемыми», но только с доверием, что это на самом деле не приемлем). Интерактивные схемы часто легко отчасти потому, что есть назначенный проверяющий.

Я не стремлюсь сказать, что доверенный INIT может заменить ненадежный, он действительно не может для многих вещей. Я просто исследуя пространство, которое может быть применен инструмент с доверенной инициализации.
gmaxwell сейчас офлайн Пожаловаться на gmaxwell   Ответить с цитированием Мультицитирование сообщения от gmaxwell Быстрый ответ на сообщение gmaxwell



Как заработать Биткоины?

Bitcoin Wallet * Portefeuille Bitcoin * Monedero Bitcoin * Carteira Bitcoin * Portafoglio Bitcoin * Bitcoin Cüzdan * 比特币钱包

bitcoin-zarabotat.ru
Почта для связи: bitcoin-zarabotat.ru@yandex.ru

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW