Я исследовал это в течение нескольких месяцев и прочь, потому что кажется интересной конструкцией в своем собственном праве, другой аспект оплаты частной жизни (например, с точки зрения пользователя или для проверяемой, но коммерчески чувствительной информации, если мы ожидаем, что коммерческие организации в использовать смарт-контракты), но и то, что кроме его очевидного непосредственного использования может позволить реализацию некоторых функций, которые мы не думали еще, или, возможно, повысить эффективность zerocoin как идеи (я не вижу, как еще, но это, кажется, родственный ).
Отправная точка известна в литературе, что вы можете сделать аддитивно гомоморфное шифрования, а также есть нулевой knowldge доказательство меньше. (Доказывая Е (а) + Е (Ь) = Е (а + б) не достаточно, то вы также должны доказать, что злоумышленник не добавлял п к его балансу в процессе в качестве добавления по модулю п, порядок из группа, не является нормальным арифметик.) его более эффективным, чтобы сделать меньше, чем степень 2, но произвольные значения возможны по составу (все значения являются работоспособны от силы 2-диапазонов в конце концов).
Оба из них (гомоморфном дополнения и ZK меньше доказательств) основаны на установленных консервативных предположениях криптографических, однако общий ЗУП менее велико (количество доказательств размера цифровых подписей, пропорциональном войти (V), где V = log2 (п / Vmax ) +1 = log2 (п) -log2 (Vmax) + 1, так что в Bitcoin log2 (N) = 256, и Vmax зависит от кодирования, но есть 21million BTC < 2 ^ 51 satoshis. А также потенциально замедлится, поскольку она включает в себя проверку v подписей.
Первоначально я думал, что будет работать, чтобы быть embarrasingly медленными и большими (что-то вроде zerocoin), поэтому я провел обсуждение, если и пока я мог бы найти практический эффективный метод. Существует также эффективный приближенный менее ЗКП Берри Шоэнмакерс (что он никогда не беспокоил писать в бумаге, естественно). Однако то, что казалось мне более нестандартным предположение, основанное на выборе нестандартного р & д для группы Шнорры и также не работает над эллиптическими кривыми, и поэтому не ECDSA (только Шнорра, из которых ДС представляет собой вариант).
Однако в конце концов я думаю, что я увидел шаг недостающего что путь Bitcoin использования и проверяет значение монет, нужно только доказать два наиболее значимых биты из каждой монета 0, а также использовать кодировку, которая устанавливает Vmax<2 ^ 254 (т.е. увеличение Bitcoin точности от 51 до 254 бит, менее значительных дополнительных бит, не зависящих от < 2 ^ 51 satoshis является частным ключом. Это дает кодировку 203 бит безопасности, которая больше, чем безопасность ECDSA над P256, который предлагает безопасность 128 бит.
И вот тогда, наконец, не-затруднительный путь эффективности, чтобы сделать это с подписями EC-Шнорра ценою всего 2 Sigs ECS (та же стоимость и размер, как ECDSA) на входе и выходе, где #INPUT < 4 и #output <4. Для #INPUT>3 вы урожденная также показывают, например, ZKPoK {(A + B + C, D): а + B + C<2 ^ 254, д<2 ^ 254} и, если же #output>3. Так 2k + 2log3 (к) подписи для K входов или выходов. (3, так как 2 ^ 254 * 3<п, но 2 ^ 254 * 4>п.)
Btw есть хорошие причины для использования ECS над ECDSA IMO его еще консервативном и проще и в любом случае суточные на его основе. Потому что не его проще (нет * к ^ -1 шаг) его более гибким и легко поддерживает многопартийность (п п) и даже пороговые сигнатуры (к п), что позволяет multisig в пространстве одной ECS подписи (и даже не раскрывая существования К п, ни, насколько велик к или п четно), есть некоторые аргументы, которые ECS является более безопасным, чем ECDSA в своих предположениях о свойствах хэша. Для многопартийного с ECDSA является тема исследования, даже многопартийность DSA смехотворно сложная и зависит от безопасности гомоморфного экземпляра шифрования достаточно большого, чтобы провести временные результатов, связанные с полномочиями д например, Криптосистема Пэой с большими клавишами, и порог DSA на четном более сложная Damgard-Jurik расширенной схему Paillier. Гибкость ECS делает его более гибким для многих вещей, например, с нулевым знанием избирательного раскрытия и ослепляя особенности сертификации сертификатов Brands, основанных на проблеме представления (который является своего рода обобщением обязательств Педерсен, что само по себе является обобщением Шнорром). Есть огромное количество вещей, которые вы можете сделать с сертификатами Brands по отношению к смарт-контракты, которые сохраняют конфиденциальность атрибутов человека, опирающегося на смарт-контракта, используя ZK доказательства логических формул и т.д.
Также на стоимость дополнительной подписи на значение, которое вы можете даже иметь безусловную конфиденциальность значения. (Т.е. гипотетического всемогущий субъект способен выполнять дискретный журнал с минимальными усилиями до сих пор не может сказать, сколько денег вы заплатили). Это потому, что, как OTP все возможные значения в равной степени возможно, например, с Педерсен приверженность две базовые точки G, H, то XG + YH существуют п возможные решения для всех возможных значений х и у (где х представляет собой секретный ключ, и у является значение вы докажете, что о). Мощный противник может просто решить и найти все возможности, но ваши публичные записанные ZKPs не показывают, какое значение х вы знали, ни у которых было значением, которое вы перевели.
Будет ли размещать более подробную информацию крипто уровня и, возможно, на основе OpenSSL реализации в настоящее время.
Адам