Схема обязательств
Эта статья нуждается в дополнительных цитатах для проверки . ( октябрь 2014 г. ) |
Схема фиксации — это криптографический примитив , который позволяет зафиксировать выбранное значение (или выбранное утверждение), сохраняя его скрытым от других, с возможностью раскрыть зафиксированное значение позже. [1] Схемы обязательств разработаны таким образом, что сторона не может изменить ценность или заявление после того, как они взяли на себя обязательства: то есть схемы обязательств являются обязательными . Схемы обязательств имеют важные приложения в ряде криптографических протоколов, включая безопасное подбрасывание монеты, доказательства с нулевым разглашением и безопасные вычисления .
Чтобы визуализировать схему обязательств, можно представить себе, что отправитель помещает сообщение в запертый ящик и передает этот ящик получателю. Послание в ящике скрыто от получателя, который не может самостоятельно открыть замок. Поскольку ящик есть у получателя, сообщение внутри не может быть изменено — оно просто раскрывается, если отправитель решит передать ему ключ позже.
Взаимодействия в схеме обязательств происходят в две фазы:
- фаза фиксации, во время которой значение выбирается и фиксируется
- фаза раскрытия, во время которой отправитель раскрывает значение, затем получатель проверяет его подлинность
В приведенной выше метафоре фаза фиксации — это когда отправитель помещает сообщение в ящик и блокирует его. Фаза раскрытия — отправитель передает ключ получателю, который использует его, чтобы открыть коробку и проверить ее содержимое. Запертый ящик — это обязательство, а ключ — доказательство.
В простых протоколах фаза фиксации состоит из одного сообщения от отправителя получателю. Это сообщение называется обязательством . Важно, чтобы выбранное конкретное значение не могло быть извлечено из сообщения получателем в этот момент (это называется свойством сокрытия ). Простая фаза раскрытия будет состоять из одного сообщения, открытия , от отправителя получателю, за которым следует проверка, выполняемая получателем. Значение, выбранное на этапе фиксации, должно быть единственным, которое отправитель может вычислить и которое проверяется на этапе раскрытия (это называется свойством привязки ).
Концепция схем обязательств была, пожалуй, впервые формализована Жилем Брассаром , Дэвидом Чаумом и Клодом Крепо в 1988 году. [2] как часть различных протоколов с нулевым разглашением для NP , основанных на различных типах схем обязательств. [3] [4] Но до этого понятие использовалось без формального рассмотрения. [5] [6] Понятие обязательств впервые появилось в работах Мануэля Блюма . [7] Шимон Эвен , [8] и Ади Шамир и др. [9] Терминологию, по-видимому, придумал Блюм. [6] хотя схемы фиксации можно взаимозаменяемо называть схемами фиксации битов — иногда они зарезервированы для особого случая, когда зафиксированное значение равно биту . Ранее фиксация с помощью односторонних хэш-функций рассматривалась, например, как часть, скажем, подписи Лэмпорта , исходной схемы одноразовой однобитовой подписи.
Приложения
[ редактировать ]Подбрасывание монеты
[ редактировать ]Предположим, Алиса и Боб хотят разрешить какой-то спор путем подбрасывания монеты . Если они физически находятся в одном месте, типичная процедура может быть такой:
- Алиса «объявляет» подброс монеты,
- Боб подбрасывает монету,
- Если ответ Алисы правильный, она выигрывает, в противном случае выигрывает Боб.
Если Алиса и Боб находятся в разных местах, возникает проблема. Как только Алиса «объявила» о подбрасывании монеты, Боб может оговорить, что «результат» подбрасывания будет для него наиболее желательным. Аналогично, если Алиса не объявляет Бобу о своем «вызове», то после того, как Боб подбросит монету и объявит результат, Алиса может сообщить, что она назвала тот результат, который для нее наиболее желателен. Алиса и Боб могут использовать обязательства в процедуре, которая позволит обоим доверять результату:
- Алиса «коллирует» подбрасывание монеты, но только сообщает Бобу о своем обязательстве выполнить ее колл.
- Боб подбрасывает монету и сообщает результат:
- Алиса раскрывает свои обязательства,
- Боб проверяет, соответствует ли звонок Алисы ее обязательствам.
- Если откровение Алисы совпадает с результатом монеты, о котором сообщил Боб, Алиса выигрывает.
Чтобы Боб смог исказить результаты в свою пользу, он должен понять призыв, скрытый в обязательствах Алисы. Если схема обязательств хорошая, Боб не сможет исказить результаты. Аналогично, Алиса не может повлиять на результат, если она не может изменить значение, которое она фиксирует.
Существует реальное применение этой проблемы, когда люди (часто в средствах массовой информации) принимают решение или дают ответ в «запечатанном конверте», который затем открывается позже. Моделью этой системы может служить фраза «Давайте выясним, так ли ответил кандидат», например, на телевикторине.
Доказательства с нулевым разглашением
[ редактировать ]Одним из конкретных мотивирующих примеров является использование схем обязательств в доказательствах с нулевым разглашением . Обязательства используются в доказательствах с нулевым разглашением для двух основных целей: во-первых, чтобы позволить доказывающему участвовать в доказательствах по принципу «вырезать и выбирать», где проверяющему будет предоставлен выбор того, что изучать, а доказывающий покажет только то, что соответствует по выбору проверяющего. Схемы обязательств позволяют доказывающему заранее указать всю информацию и раскрыть только то, что должно быть раскрыто позже в ходе доказательства. [10] Во-вторых, обязательства также используются в доказательствах с нулевым разглашением проверяющим, который часто заранее указывает свой выбор в обязательстве. Это позволяет параллельно составлять доказательства с нулевым разглашением, не раскрывая доказывающему дополнительную информацию. [11]
Схемы подписи
[ редактировать ]— Схема подписи Лампорта это система цифровой подписи , которая опирается на поддержание двух наборов секретных пакетов данных , публикацию проверяемых хэшей пакетов данных, а затем выборочное раскрытие частичных секретных пакетов данных способом, который конкретно соответствует подписываемым данным. Таким образом, предварительная публичная приверженность тайным ценностям становится важной частью функционирования системы.
Поскольку систему подписи Лампорта нельзя использовать более одного раза, была разработана система, позволяющая объединить множество наборов ключей Лампорта под одним общедоступным значением, которое можно привязать к человеку и проверить другими. Эта система использует деревья хэшей для сжатия многих опубликованных наборов обязательств по ключам Лэмпорта в одно значение хеш-функции, которое можно связать с предполагаемым автором проверенных позже данных.
Подтверждаемый обмен секретами
[ редактировать ]Еще одним важным применением обязательств является проверяемое совместное использование секретов , важнейший строительный блок безопасных многосторонних вычислений . В схеме секретного обмена каждая из нескольких сторон получает «акции» ценности, которая должна быть скрыта от всех. Если соберется достаточное количество сторон, их акции можно будет использовать для восстановления тайны, но даже малая злонамеренная клика ничему не сможет научиться. Совместное использование секретов лежит в основе многих протоколов безопасных вычислений : чтобы безопасно вычислить функцию некоторых общих входных данных, вместо этого манипулируют общими секретными ресурсами. Однако если злоумышленники создают общие ресурсы, может оказаться важным, чтобы эти общие ресурсы можно было проверить на корректность. В поддающейся проверке схеме совместного использования секрета распространение секрета сопровождается обязательствами по отдельным акциям. Обязательства не раскрывают ничего, что могло бы помочь нечестной клике, но акции позволяют каждой отдельной стороне проверить, верны ли их акции. [12]
Определение безопасности
[ редактировать ]Формальные определения схем обязательств сильно различаются по обозначениям и вкусу. Первый такой аспект заключается в том, обеспечивает ли схема фиксации идеальную или вычислительную безопасность в отношении свойств сокрытия или привязки. Другой такой вариант заключается в том, является ли фиксация интерактивной, т. е. можно ли рассматривать как фазу фиксации, так и фазу раскрытия как выполняемую криптографическим протоколом , или они неинтерактивны и состоят из двух алгоритмов Commit и CheckReveal . В последнем случае CheckReveal часто можно рассматривать как дерандомизированную версию Commit , в которой случайность, используемая Commit, представляет собой вступительную информацию.
Если обязательство C по значению x вычисляется как C:=Commit(x,open) , где open — это случайность, используемая для вычисления обязательства, то CheckReveal (C,x,open) сводится к простой проверке уравнения C=Commit ( х, открыть) .
Используя эти обозначения и некоторые знания о математических функциях и теории вероятностей, мы формализуем различные версии свойств связывания и сокрытия обязательств. Двумя наиболее важными комбинациями этих свойств являются идеально связывающие и скрывающие с помощью вычислений схемы обязательств и схемы вычислительно связывающие и полностью скрывающие обязательства. Обратите внимание, что ни одна схема фиксации не может быть одновременно идеально связывающей и идеально скрытой — вычислительно неограниченный противник может просто генерировать Commit(x,open) для каждого значения x и открывать до тех пор, пока не найдет пару, которая выводит C , и в идеально связывающей схеме. схема это однозначно идентифицирует x .
Вычислительная привязка
[ редактировать ]Пусть open выбирается из набора размеров , т.е. его можно представить как строку k бит, и пусть быть соответствующей схемой обязательств. Поскольку размер k определяет безопасность схемы обязательств, он называется параметром безопасности .
Тогда для всех неравномерных вероятностных алгоритмов с полиномиальным временем , которые выводят и увеличения длины k вероятность того, что и является пренебрежимо малой функцией от k .
Это форма асимптотического анализа . Также возможно сформулировать то же требование, используя конкретную безопасность : Схема Commit обязательств безопасно, если для всех алгоритмов, которые выполняются за время t и выдают вероятность того, что и самое большее .
Идеальное, статистическое и вычислительное сокрытие
[ редактировать ]Позволять быть равномерным распределением по значения открытия для параметра безопасности k . Схема обязательств является соответственно совершенным, статистическим или вычислительным сокрытием, если для всех вероятностные ансамбли и равны, статистически близки или вычислительно неразличимы .
Невозможность универсально компонуемых схем обязательств
[ редактировать ]Невозможно реализовать схемы обязательств в универсальной компонуемости. (UC) структура. Причина в том, что обязательства UC должны быть извлекаемыми , как показали Канетти и Фишлин. [13] и объяснено ниже.
Идеальная функциональность обязательства, обозначенная здесь F , работает примерно следующим образом. Коммиттер C отправляет значение m в F , что получателю R. сохраняет его и отправляет «квитанцию » Позже C отправляет команду «open» F который отправляет m в R. ,
Теперь предположим, что у нас есть протокол π , реализующий эту функциональность. Предположим, что коммиттер C поврежден. В рамках UC это по сути означает, что C теперь контролируется средой, которая пытается отличить выполнение протокола от идеального процесса. Рассмотрим среду, которая выбирает сообщение m , а затем говорит C действовать, как предписано π , как если бы оно взяло на себя обязательство m . Обратите внимание, что для реализации F получатель должен после получения обязательства вывести сообщение «квитанция». После того как среда увидит это сообщение, она прикажет C открыть обязательство.
если этот сценарий неотличим от идеального случая, когда функциональность взаимодействует с симулятором S. Протокол безопасен только в том случае , Здесь S контролирует C. В частности, всякий раз, когда R выводит «квитанцию», F должен сделать то же самое. Единственный способ сделать это — S сказать C, он отправил значение F. чтобы Однако обратите вниманиечто к этому моменту m еще не известно S . Следовательно, когда коммит открывается во время выполнения протокола, маловероятно, что F откроется для m , если только S не сможет извлечь m из сообщений, полученных из среды, до того, как R выведет квитанцию.
Однако протокол, который в этом смысле является извлекаемым, не может быть статистически скрытым. Предположим, что такой симулятор S существует. Теперь рассмотримсреда, которая вместо того, чтобы портить C , портит R. вместо этого он запускает копию S. Кроме того , полученные от C, передаются в S , а ответы от S пересылаются в C. Сообщения ,
Первоначально среда сообщает C о необходимости принять сообщение m . В какой-то момент взаимодействия S примет значение m' . Это сообщение передается R , который выводит m' . Обратите внимание, что по предположению мы имеем m' = m с высокой вероятностью. Теперь в идеальном процессе симулятор должен придумать m . Но это невозможно, поскольку на данный момент коммит еще не открыт, поэтому единственное сообщение, которое R может получить в идеальном процессе, — это сообщение «получения». Таким образом, мы имеем противоречие.
Строительство
[ редактировать ]Схема обязательств может быть либо полностью обязательной (Алиса не может изменить свое обязательство после того, как она его приняла, даже если у нее неограниченные вычислительные ресурсы); или идеальное сокрытие (Боб не может узнать обязательство без того, чтобы Алиса его не раскрыла, даже если у него неограниченные вычислительные ресурсы); или сформулировано в виде схемы обязательств, зависящей от экземпляра, которая либо скрывается, либо является обязательной в зависимости от решения другой проблемы. [14] [15] Схема обязательств не может быть одновременно идеально скрытой и совершенно обязательной.
Обязательство по битам в модели случайного оракула
[ редактировать ]построить тривиально Схемы фиксации битов в модели случайного оракула . Учитывая хеш-функцию H с выходом 3 k бит, для фиксации k -битного сообщения m Алиса генерирует случайную из k строку R бит и отправляет Бобу H( R || m ). Вероятность любых R′ , m′ существования , где m′ ≠ m, таких, что H( R′ || m′ ) = H( R || m ), равна ≈ 2 - к , но чтобы проверить любую догадку о сообщении m, Бобу нужно будет сделать 2 к (за неправильное предположение) или 2 к -1 (в среднем для правильного предположения) запросы к случайному оракулу. [16] Отметим, что более ранние схемы, основанные на хэш-функциях, по сути можно рассматривать как схемы, основанные на идеализации этих хеш-функций как случайного оракула.
Битовое обязательство из любой односторонней перестановки
[ редактировать ]Можно создать схему фиксации битов из любой односторонней функции , которая является инъективной . Схема основана на том факте, что каждая односторонняя функция может быть модифицирована (посредством теоремы Гольдрайха-Левина ), чтобы она имела вычислительно жесткий предикат (при сохранении инъективного свойства).
Пусть f — инъективная односторонняя функция, а h — жесткий предикат. Затем, чтобы зафиксировать бит b, Алиса выбирает случайный входной сигнал x и отправляет тройку
Бобу, где обозначает XOR, т.е. побитовое сложение по модулю 2. Для отмены фиксации Алиса просто отправляет x Бобу. Боб проверяет, вычисляя f ( x ) и сравнивая его с зафиксированным значением. Эта схема является скрытой, поскольку для того, чтобы Боб смог восстановить b, он должен восстановить h ( x ). Поскольку h является вычислительно сложным предикатом, восстановить h ( x ) из f ( x ) с вероятностью, большей половины, так же сложно, как инвертировать f . Совершенное связывание следует из того факта, что f инъективен и, следовательно, f ( x ) имеет ровно один прообраз.
Обязательство бита от псевдослучайного генератора
[ редактировать ]Обратите внимание: поскольку мы не знаем, как построить одностороннюю перестановку из любой односторонней функции, этот раздел снижает силу криптографического предположения, необходимого для построения протокола фиксации битов.
В 1991 году Мони Наор показал, как создать схему фиксации битов на основе криптографически безопасного генератора псевдослучайных чисел . [17] Конструкция следующая. Если G — псевдослучайный генератор, такой, что G преобразует n бит в 3 n бит, то если Алиса хочет зафиксировать бит b :
- Боб выбирает случайный 3n - битный вектор R и отправляет R Алисе.
- Алиса выбирает случайный n- битный вектор Y и вычисляет 3 n- битный вектор G ( Y ).
- Если b =1, Алиса отправляет G ( Y ) Бобу, в противном случае она отправляет побитовое исключающее ИЛИ G ( Y ) и R Бобу.
Чтобы отменить фиксацию, Алиса отправляет Y Бобу, который затем может проверить, получил ли он изначально G ( Y ) или G ( Y ). Р.
Эта схема статистически обязательна, что означает, что даже если Алиса вычислительно неограничена, она не может обмануть с вероятностью больше 2. − п . Чтобы Алиса обманула, ей нужно найти Y' , такой, что G ( Y' ) = G ( Y ) Р. Если бы она могла найти такое значение, она могла бы отменить обязательство, отправив истину и Y , или послав противоположный ответ и Y' . Однако G ( Y ) и G ( Y' ) способны произвести только 2 н возможные значения каждого (это 2 2 н ), в то время как R выбирается из 2 33н ценности. Она не выбирает R , поэтому есть 2 2 н /2 33н = 2 − п вероятность того, что Y', удовлетворяющий уравнению, необходимому для мошенничества, будет существовать.
передала ли Алиса ноль или единицу, он также может отличить выходные данные псевдослучайного генератора G от истинно случайных, что противоречит криптографической безопасности G. Свойство сокрытия следует из стандартного сокращения: если Боб может сказать ,
Идеально связывающая схема, основанная на проблеме дискретного журнала и не только.
[ редактировать ]Алиса выбирает кольцо простого порядка p с мультипликативным генератором g .
Алиса случайным образом выбирает секретное значение x от 0 до p - 1, которое нужно принять, и вычисляет c = g. х и публикует c . Проблема дискретного логарифма требует, чтобы из c вычислительно невозможно вычислить x , поэтому при этом предположении Боб не может вычислить x . С другой стороны, Алиса не может вычислить x ′ <> x такое, что g х ' = c , поэтому схема обязательна.
Эта схема не является полностью скрывающей, поскольку кто-то может найти обязательство, если ему удастся решить задачу дискретного логарифма . Фактически, эта схема вообще не скрывается по сравнению со стандартной игрой в сокрытие, в которой злоумышленник не должен угадать, какое из двух выбранных им сообщений было передано - аналогично игре IND-CPA . Одним из последствий этого является то, что если пространство возможных значений x мало, то злоумышленник может просто попробовать их все, и обязательство не будет скрыто.
Лучшим примером идеальной схемы фиксации является схема, в которой фиксация представляет собой шифрование x по семантически безопасной схеме шифрования с открытым ключом и идеальной полнотой, а отмена фиксации — это строка случайных битов, используемая для шифрования x . Примером схемы обязательств, теоретически скрывающих информацию, является схема обязательств Педерсена, [18] что является вычислительно обязательным в предположении дискретного логарифма. [19] В дополнение к приведенной выше схеме он использует еще один генератор h простой группы и случайное число r . Обязательство установлено . [20]
Эти конструкции тесно связаны с алгебраическими свойствами основных групп и основаны на них, и изначально казалось, что это понятие очень тесно связано с алгеброй. Однако было показано, что возможно базирование статистически обязательных схем обязательств на общем неструктурированном предположении с помощью понятия интерактивного хеширования. для обязательств из общих предположений сложности (конкретно и изначально, основанных на любой односторонней перестановке), как в. [21]
Идеально скрытая схема обязательств на основе RSA
[ редактировать ]Алиса выбирает такой, что , где и — большие секретные простые числа. Кроме того, она выбирает простое такой, что и . Затем Алиса вычисляет общедоступный номер как элемент максимального порядка в группа. [22] Наконец, Алиса раскрывает свою тайну сначала сгенерировав случайное число от а затем путем вычисления .
Безопасность вышеуказанного обязательства зависит от сложности проблемы RSA и имеет идеальное сокрытие и вычислительную привязку. [23]
Аддитивные и мультипликативные гомоморфные свойства обязательств.
[ редактировать ]Схема обязательств Педерсена вводит интересное гомоморфное свойство, которое позволяет выполнять сложение между двумя обязательствами. Точнее, учитывая два сообщения и и случайность и , соответственно, можно сгенерировать новое обязательство такое, что: . Формально:
Чтобы открыть вышеупомянутое обязательство Педерсена новому сообщению , случайность и необходимо добавить.
Аналогичным образом, упомянутое выше обязательство на основе RSA обладает гомоморфным свойством по отношению к операции умножения. Учитывая два сообщения и со случайностью и соответственно, можно вычислить: . Формально: .
Чтобы открыть вышеуказанное обязательство для нового сообщения , случайность и необходимо добавить. Это вновь созданное обязательство распространяется аналогично новому обязательству .
Частичное раскрытие
[ редактировать ]Некоторые схемы обязательств позволяют предоставить доказательство только части подтвержденной стоимости. В этих схемах секретное значение представляет собой вектор множества индивидуально разделимых значений.
Обязательство рассчитывается из на этапе фиксации. Обычно на этапе раскрытия проверяющий раскрывает всю информацию. и некоторые дополнительные подтверждающие данные (например, в простом битовом обязательстве ). Вместо этого доказывающий может выявить любое отдельное значение из вектор и создать эффективное доказательство того, что это подлинный -й элемент исходного вектора, создавшего обязательство . Доказательство не требует каких-либо значений кроме быть раскрыты, и невозможно создать действительные доказательства, которые раскрывают разные значения для любого из чем настоящий. [24]
Векторное хеширование
[ редактировать ]Векторное хеширование — это наивная схема частичного раскрытия векторных обязательств, основанная на битовых обязательствах. Ценности выбираются случайным образом. Индивидуальные обязательства создаются путем хеширования . Общее обязательство рассчитывается как
Чтобы доказать один элемент вектора , доказывающий выявляет значения
Верификатор способен вычислить от и , а затем может проверить, что хэш всех ценности – это приверженность . К сожалению, доказательство по размеру и времени проверки. Альтернативно, если это совокупность всех ценности, то обязательство по размеру, и доказательство по размеру и времени проверки. В любом случае, обязательства или доказательства масштабируются вместе с что не оптимально.
Дерево Меркла
[ редактировать ]Типичным примером практической схемы частичного раскрытия является дерево Меркла , в котором двоичное хеш-дерево создается из элементов . Эта схема создает обязательства, которые по размеру и доказательствам, которые по размеру и времени проверки. Корневой хеш дерева — это обязательство . Чтобы доказать, что раскрыто является частью исходного дерева, только В качестве доказательства необходимо указать хеш-значения из дерева, по одному с каждого уровня. Верификатор может пройти путь от заявленного листового узла до самого корня, хешируя родственные узлы на каждом уровне и в конечном итоге получая значение корневого узла, которое должно быть равно . [25]
Обязательства КЗГ
[ редактировать ]В обязательстве Кейт-Заверухи-Гольдберг используется криптография на основе пар для построения схемы частичного раскрытия информации с помощью размеры обязательств, размеры доказательств и время проверки доказательств. Другими словами, как , количество значений в , увеличивается, обязательства и доказательства не становятся больше, и доказательства не требуют больше усилий для проверки.
Обязательство KZG требует заранее определенного набора параметров для создания пары и надежного элемента-лазейки. Например, пару Тейта можно использовать . Предположим, что являются аддитивными группами, а – мультипликативная группа спаривания. Другими словами, спаривание – это карта . Позволять быть элементом люка (если это основной порядок и ), и пусть и быть генераторами и соответственно. В рамках настройки параметров мы предполагаем, что и являются известными и общими значениями для произвольного числа положительных целых значений , а значение лазейки само по себе отброшено и никому не известно.
Совершить
[ редактировать ]Обязательства KZG переформулируют вектор ценностей, которые должны быть приняты на себя, в виде полинома. Сначала мы вычисляем полином такой, что для всех значений в нашем векторе. Интерполяция Лагранжа позволяет нам вычислить этот полином
В соответствии с этой формулировкой полином теперь кодирует вектор, где . Позволять быть коэффициентами , такой, что . Обязательство рассчитывается как
Это вычисляется просто как скалярное произведение заранее определенных значений. и полиномиальные коэффициенты . С является аддитивной группой с ассоциативностью и коммутативностью, равно просто , поскольку все сложения и умножения с могут быть распределены вне оценки. Поскольку значение люка неизвестно, обязательство по сути, это полином, оцениваемый по неизвестному никому числу, с результатом, замаскированным в непрозрачный элемент .
Раскрывать
[ редактировать ]Доказательства KZG должны продемонстрировать, что раскрытые данные представляют собой подлинную ценность когда было вычислено. Позволять , выявленное значение мы должны доказать. Поскольку вектор был переформулирован в многочлен, нам действительно нужно доказать, что многочлен , при оценке в , принимает значение . Проще говоря, нам просто нужно доказать, что . Мы сделаем это, продемонстрировав, что вычитание от дает корень в . Определите полином как
Этот полином сам по себе является доказательством того, что , потому что если существует, то делится на , что означает, что он имеет корень в , так (или, другими словами, ). Доказательство KZG покажет, что существует и обладает этим свойством.
Доказывающая вычисляет через вышеуказанное полиномиальное деление, затем вычисляет проверочную стоимость KZG
Это равно , как указано выше. Другими словами, доказательной ценностью является полином снова оценивается по значению лазейки , спрятанный в генераторе из .
Это вычисление возможно только в том случае, если приведенные выше многочлены делились без остатка, поскольку в этом случае частное является полиномом, а не рациональной функцией . Из-за конструкции лазейки невозможно оценить рациональную функцию по значению лазейки, а только оценить полином, используя линейные комбинации заранее вычисленных известных констант . Вот почему невозможно создать доказательство неправильного значения .
Проверять
[ редактировать ]Для проверки доказательства билинейное отображение спаривания , чтобы показать, что значение доказательства используется суммирует действительный полином которое демонстрирует желаемое свойство, а именно то, что был разделен поровну на . Проверочное вычисление проверяет равенство
где — это функция билинейного отображения, как указано выше. заранее вычисленная константа, рассчитывается на основе .
Переписав вычисления в группе спаривания , подставив в и и позволяя быть вспомогательной функцией для подъема в группу спаривания, проверка доказательства будет более наглядной.
Предполагая, что билинейное отображение построено корректно, это демонстрирует, что , без того, чтобы валидатор знал, что или являются. Валидатор может быть в этом уверен, потому что если , то результаты полиномов будут одинаковыми при значении тайника . Это демонстрирует, что полиномы идентичны, потому что, если параметры были правильно построены, значение лазейки никому не известно, а это означает, что разработка полинома, имеющего определенное значение в лазе, невозможна (согласно лемме Шварца-Циппеля ). Если теперь подтверждено, что это правда, тогда существование подтверждено, поэтому должно делиться полиномиально на , так по факторной теореме . Это доказывает, что -е значение зафиксированного вектора должно быть равно , поскольку это результат оценки зафиксированного полинома в точке .
Кроме того, обязательства KZG могут быть расширены для подтверждения ценностей любого произвольного ценности (а не одно значение), при этом остается контрольный размер , но время проверки доказательства масштабируется с . Доказательство то же, но вместо вычитания константы , мы вычитаем многочлен, который вызывает множественные корни во всех местах, которые мы хотим доказать, и вместо деления на мы делим на для тех же мест. [26]
Обязательство квантового бита
[ редактировать ]представляет интересный вопрос, В квантовой криптографии существуют ли на квантовом уровне безусловно безопасные протоколы фиксации битов, то есть протоколы, которые (по крайней мере асимптотически) связывают и скрывают, даже если нет ограничений на вычислительные ресурсы. Можно надеяться, что найдется способ использовать внутренние свойства квантовой механики , например, в протоколах безусловно безопасного распределения ключей .
Однако это невозможно, как показал в 1996 году Доминик Майерс (см. [27] оригинальное доказательство). Любой такой протокол можно свести к протоколу, в котором система находится в одном из двух чистых состояний после фазы фиксации, в зависимости от бита, который Алиса хочет зафиксировать. Если протокол является безусловно скрывающим, то Алиса может унитарно преобразовать эти состояния друг в друга, используя свойства разложения Шмидта , эффективно побеждая свойство связывания.
Одно тонкое предположение доказательства состоит в том, что фаза фиксации должна быть завершена в какой-то момент времени. Это оставляет место для протоколов, которым требуется непрерывный поток информации до тех пор, пока бит не будет раскрыт или протокол не будет отменен, и в этом случае он больше не является обязательным. [28] В более общем плане доказательство Майерса применимо только к протоколам, использующим квантовую физику , но не специальную теорию относительности . Кент показал, что существуют безусловно безопасные протоколы фиксации битов, которые используют принцип специальной теории относительности, утверждающий, что информация не может распространяться быстрее света. [29]
Обязательства, основанные на физических неклонируемых функциях
[ редактировать ]Физические неклонируемые функции (PUF) основаны на использовании физического ключа с внутренней случайностью, который трудно клонировать или эмулировать. Электронные, оптические и другие виды ППУ. [30] широко обсуждались в литературе в связи с их потенциальными криптографическими применениями, включая схемы обязательств. [31] [32]
См. также
[ редактировать ]- Не обращающий внимания трансфер
- Аккумулятор (криптография)
- Сторона, подписывающая ключ
- Сеть доверия
- Зерокойн
- Анаграммы - использовались натурфилософами 17-го века, чтобы установить приоритет открытия, не раскрывая его другим.
Ссылки
[ редактировать ]- ^ Одед Голдрейх (2001). Основы криптографии : Том 1, Основные инструменты. Издательство Кембриджского университета. ISBN 0-521-79172-3 . : 224
- ^ Жиль Брассар, Дэвид Чаум и Клод Крепо, Минимальные доказательства знаний, раскрытие информации , Журнал компьютерных и системных наук, том. 37, стр. 156–189, 1988.
- ^ Гольдрейх, Одед; Микали, Сильвио; Вигдерсон, Ави (1991). «Доказательства, которые не дают ничего, кроме своей достоверности» . Журнал АКМ . 38 (3): 690–728. CiteSeerX 10.1.1.420.1478 . дои : 10.1145/116825.116852 . S2CID 2389804 .
- ^ Рассел Импальяццо, Моти Юнг: Прямые вычисления с минимальными знаниями. КРИПТО 1987: 40-51.
- ^ Наор, Мони (1991). «Обязательство по битам с использованием псевдослучайности» . Журнал криптологии . 4 (2): 151–158. дои : 10.1007/BF00196774 . S2CID 15002247 .
- ^ Перейти обратно: а б Клод Крепо, Лаборатория приверженности , криптографии и квантовой информации, Школа компьютерных наук Университета Макгилла , по состоянию на 11 апреля 2008 г.
- ^ Мануэль Блюм, Подбрасывание монеты по телефону , Proceedings of CRYPTO 1981, стр. 11–15, 1981, перепечатано в SIGACT News vol. 15, стр. 23–27, 1983, Школа компьютерных наук Карнеги-Меллона .
- ^ Шимон Эвен. Протокол подписания договоров. В издании Аллена Гершо , « Достижения в криптографии » (материалы CRYPTO '82), стр. 148–153, Санта-Барбара, Калифорния, США, 1982.
- ^ А. Шамир, Р. Л. Ривест и Л. Адлеман, « Ментальный покер » . В изд. Дэвида А. Кларнера , «Математический Гарднер» ( ISBN 978-1-4684-6686-7 ), стр. 37–43. Уодсворт, Бельмонт, Калифорния, 1981 год.
- ^ Одед Гольдрейх , Сильвио Микали и Ави Вигдерсон , Доказательства, которые не дают ничего, кроме их достоверности, или все языки в NP имеют системы доказательств с нулевым разглашением , Журнал ACM , 38: 3, стр. 690–728, 1991
- ^ Одед Гольдрейх и Хьюго Кравчик , О составе систем доказательства с нулевым разглашением , SIAM Journal on Computing , 25: 1, стр. 169–192, 1996
- ^ Дженнаро; Росарио; Рабин, Майкл О.; Рабин, Таль. «Упрощенная VSS и ускоренные многосторонние вычисления с приложениями для пороговой криптографии». Материалы семнадцатого ежегодного симпозиума ACM по принципам распределенных вычислений . 1998, июнь.
- ^ Р. Канетти и М. Фишлин. Универсально компонуемые обязательства.
- ^ Шиен Хин Онг и Салил Вадхан (1990). Совершенное нулевое знание в постоянном раунде, В учеб. СТОК, с. 482–493, цитируется по Шиен Хин Онг и Салил Вадхан (2008). Эквивалентность между нулевым разглашением и обязательствами, Теория криптографии.
- ^ Тошия Ито, Иджи Ота, Хироки Шизуя (1997). Криптографический примитив, зависящий от языка, в J. Cryptol., 10(1):37-49, цитируется в Shien Hin Ong and Salil Vadhan (2008). Эквивалентность между нулевым разглашением и обязательствами, Теория криптографии.
- ^ Вагнер, Дэвид (2006), Среднесрочное решение , с. 2 , получено 26 октября 2015 г.
- ^ «Цитаты: фиксация битов с использованием генераторов псевдослучайных чисел — Наор (ResearchIndex)» . Citeseer.ist.psu.edu . Проверено 7 июня 2014 г.
- ^ Педерсен, Торбен Придс (1992). «Неинтерактивный и теоретико-информационный безопасный и проверяемый обмен секретами». Достижения в криптологии – КРИПТО '91 . Конспекты лекций по информатике. Том. 576. Берлин, Гейдельберг: Springer Berlin Heidelberg. стр. 129–140. дои : 10.1007/3-540-46766-1_9 . ISBN 978-3-540-55188-1 .
- ^ Метере, Роберто; Донг, Чангюй (2017). «Автоматизированный криптографический анализ схемы обязательств Педерсена». Международная конференция по математическим методам, моделям и архитектурам безопасности компьютерных сетей . Спрингер. стр. 275–287.
- ^ Тан, Чуньмин; Пей, Динъи; Лю, Чжоцзюнь; Хе, Йонг (16 августа 2004 г.). «Педерсен: неинтерактивный и теоретико-информационный безопасный, поддающийся проверке обмен секретами» (PDF) . Архив электронной печати по криптологии . Достижения в криптологии CRYPTO 1991 Springer. Архивировано из оригинала (PDF) 11 августа 2017 года . Проверено 2 февраля 2019 г.
- ^ Мони Наор, Рафаил Островский, Рамаратнам Венкатесан, Моти Юнг:Идеальные аргументы с нулевым разглашением для NP, использующие любую одностороннюю перестановку. J. Криптология 11 (2): 87–108 (1998) [1]
- ^ Менезес, Альфред Дж; Ван Оршот, Пол С; Ванстон, Скотт А. (2018). Справочник по прикладной криптографии . ЦРК Пресс.
- ^ Моурис, Димитрис; Цуцос, Нектариос Георгиос (26 января 2022 г.). «Маскарад: проверяемая многосторонняя агрегация с безопасными мультипликативными обязательствами» (PDF) . Архив электронной печати по криптологии .
- ^ Каталано, Дарио; Фиоре, Дарио (2013). «Векторные обязательства и их применение» . Криптография с открытым ключом – PKC 2013 . Конспекты лекций по информатике. Том. 7778. Шпрингер Берлин Гейдельберг. стр. 55–72. дои : 10.1007/978-3-642-36362-7_5 . ISBN 978-3-642-36362-7 . Каталано, Дарио; Фиоре, Дарио (2013). «Векторные обязательства и их применение» (PDF) . Международная ассоциация криптологических исследований .
- ^ Беккер, Георг (18 июля 2008 г.). «Схемы подписей Меркла, деревья Меркла и их криптоанализ» (PDF) . Рурский университет в Бохуме. п. 16. Архивировано из оригинала (PDF) 22 декабря 2014 г. Проверено 20 ноября 2013 г.
- ^ Кейт, Аникет; Заверуча, Григорий; Голдберг, Ян (2010). «Обязательства постоянного размера для полиномов и их приложения» (PDF) . Международная конференция по теории и применению криптологии и информационной безопасности .
- ^ Брассар, Крепо, Майерс, Сальвей: Краткий обзор невозможности фиксации квантовых битов
- ^ А. Кент: Безопасная классическая передача битов с использованием каналов связи с фиксированной пропускной способностью.
- ^ Кент, А. (1999). «Безусловно безопасное битовое обязательство». Физ. Преподобный Летт . 83 (7): 1447–1450. arXiv : Quant-ph/9810068 . Бибкод : 1999PhRvL..83.1447K . дои : 10.1103/PhysRevLett.83.1447 . S2CID 8823466 .
- ^ МакГрат, Томас; Багчи, Ибрагим Э.; Ван, Чжимин М.; Рёдиг, Утц; Янг, Роберт Дж. (12 февраля 2019 г.). «Таксономия PUF» . Обзоры прикладной физики . 6 (1): 011303. Бибкод : 2019ApPRv...6a1303M . дои : 10.1063/1.5079407 .
- ^ Рюрмайр, Ульрих; ван Дейк, Мартен (1 апреля 2013 г.). «О практическом использовании физических неклонируемых функций в протоколах забывчивой передачи и фиксации битов». Журнал криптографической инженерии . 3 (1): 17–28. дои : 10.1007/s13389-013-0052-8 . hdl : 1721.1/103985 . ISSN 2190-8516 . S2CID 15713318 .
- ^ Николопулос, Георгиос М. (30 сентября 2019 г.). «Оптическая схема криптографических обязательств с физическими неклонируемыми ключами». Оптика Экспресс . 27 (20): 29367–29379. arXiv : 1909.13094 . Бибкод : 2019OExpr..2729367N . дои : 10.1364/OE.27.029367 . ISSN 1094-4087 . ПМИД 31684673 . S2CID 203593129 .