<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://neerc.ifmo.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=217.107.105.99&amp;*</id>
		<title>Викиконспекты - Вклад участника [ru]</title>
		<link rel="self" type="application/atom+xml" href="http://neerc.ifmo.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=217.107.105.99&amp;*"/>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/217.107.105.99"/>
		<updated>2026-04-13T15:36:41Z</updated>
		<subtitle>Вклад участника</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://neerc.ifmo.ru/wiki/index.php?title=%D0%94%D0%BE%D0%BA%D0%B0%D0%B7%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%B0_%D1%81_%D0%BD%D1%83%D0%BB%D0%B5%D0%B2%D1%8B%D0%BC_%D1%80%D0%B0%D0%B7%D0%B3%D0%BB%D0%B0%D1%88%D0%B5%D0%BD%D0%B8%D0%B5%D0%BC&amp;diff=75132</id>
		<title>Доказательства с нулевым разглашением</title>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=%D0%94%D0%BE%D0%BA%D0%B0%D0%B7%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%B0_%D1%81_%D0%BD%D1%83%D0%BB%D0%B5%D0%B2%D1%8B%D0%BC_%D1%80%D0%B0%D0%B7%D0%B3%D0%BB%D0%B0%D1%88%D0%B5%D0%BD%D0%B8%D0%B5%D0%BC&amp;diff=75132"/>
				<updated>2020-11-13T11:31:38Z</updated>
		
		<summary type="html">&lt;p&gt;217.107.105.99: /* Пример: изоморфизм графов. */  убрал точку из конца подзаголовка&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;В криптографии '''Доказательство с нулевым разглашением (информации)''' (Zero-Knowledge Proof) — это интерактивный протокол, позволяющий одной из сторон (проверяющему, Verifier) убедиться в достоверности какого-либо утверждения (обычно математического), не получив при этом никакой другой информации от второй стороны (доказывающего, Prover).&lt;br /&gt;
&lt;br /&gt;
Доказательство с нулевым разглашением должно обладать тремя свойствами:&lt;br /&gt;
# '''Полнота''': если утверждение действительно верно, то доказывающий убедит в этом проверяющего.&lt;br /&gt;
# '''Корректность''': если утверждение неверно, то даже нечестный доказывающий не сможет убедить проверяющего за исключением пренебрежимо малой вероятности.&lt;br /&gt;
# '''Нулевое разглашение''': если утверждение верно, то даже нечестный проверяющий не узнает ничего кроме самого факта, что утверждение верно.&lt;br /&gt;
&lt;br /&gt;
== Формальное определение ==&lt;br /&gt;
Пусть &amp;lt;tex&amp;gt;L&amp;lt;/tex&amp;gt; ∈ '''[[NP]]''', и &amp;lt;tex&amp;gt;M&amp;lt;/tex&amp;gt; — машина Тьюринга для проверки сертификата, то есть &amp;lt;tex&amp;gt;x \in L \Leftrightarrow \exists y \in \{0,1\}^{p(|x|)} : M(x, y) = 1&amp;lt;/tex&amp;gt;. Пара &amp;lt;tex&amp;gt;\langle P, V \rangle&amp;lt;/tex&amp;gt; интерактивных вероятностных алгоритмов называется доказательством с нулевым разглашением для &amp;lt;tex&amp;gt;L&amp;lt;/tex&amp;gt;, если выполнены следующие три условия:&lt;br /&gt;
# '''Полнота''': Для любого &amp;lt;tex&amp;gt;x \in L&amp;lt;/tex&amp;gt; и сертификата &amp;lt;tex&amp;gt;y&amp;lt;/tex&amp;gt; выполнено &amp;lt;tex&amp;gt;P \left( \text{out}_V \left\langle P(x,y), V(x) \right\rangle = 1 \right) \ge 2/3&amp;lt;/tex&amp;gt;&lt;br /&gt;
# '''Корректность''': Если &amp;lt;tex&amp;gt;x \not \in L&amp;lt;/tex&amp;gt;, то для любых &amp;lt;tex&amp;gt;P^*, y&amp;lt;/tex&amp;gt; выполнено &amp;lt;tex&amp;gt; P \left( \text{out}_V \left\langle P^*(x,y), V(x) \right\rangle = 1 \right) \le 1/3&amp;lt;/tex&amp;gt;&lt;br /&gt;
# '''Нулевое разглашение''': Для любой вероятностной полиномиальной интерактивной стратегии &amp;lt;tex&amp;gt;V^*&amp;lt;/tex&amp;gt; существует вероятностный полиномиальный алгоритм &amp;lt;tex&amp;gt;S^*&amp;lt;/tex&amp;gt;, такой что для любого &amp;lt;tex&amp;gt;x \not \in L&amp;lt;/tex&amp;gt; и соответствующего сертификата ''y'' выполнено &amp;lt;tex&amp;gt;\text{out}_{V^*} \left \langle P(x,y), V^*(x) \right \rangle\equiv S^*(x)&amp;lt;/tex&amp;gt;. Такой алгоритм &amp;lt;tex&amp;gt;S^*&amp;lt;/tex&amp;gt; называется симулятором для &amp;lt;tex&amp;gt;V^*&amp;lt;/tex&amp;gt;, он симулирует результат взаимодействия &amp;lt;tex&amp;gt;V^*&amp;lt;/tex&amp;gt; c proover'ом без доступа к последнему.&lt;br /&gt;
&lt;br /&gt;
== Пример: изоморфизм графов ==&lt;br /&gt;
&lt;br /&gt;
Назовем проверяющую сторону Виктор (Victor), а доказывающую сторону Пегги (Peggy). Им обоим известна пара графов &amp;lt;tex&amp;gt;\langle G_0, G_1 \rangle&amp;lt;/tex&amp;gt;. Допустим, эти графы изоморфны и Пегги известна биекция между вершинами этих графов, то есть некоторая перестановка &amp;lt;tex&amp;gt;\pi&amp;lt;/tex&amp;gt;, такая что &amp;lt;tex&amp;gt;G_0 = \pi G_1&amp;lt;/tex&amp;gt;. Пегги хочет доказать Виктору, что графы изоморфны, не выдавая при этом ни самой перестановки, ни какой-либо информации о ней. &lt;br /&gt;
&lt;br /&gt;
Для этого Виктор и Пегги совместно выполняют несколько раундов протокола:&lt;br /&gt;
* Вначале Пегги создает случайную перестановку &amp;lt;tex&amp;gt;\phi&amp;lt;/tex&amp;gt;. Применив ее к &amp;lt;tex&amp;gt;G_0&amp;lt;/tex&amp;gt;, она получает некий граф &amp;lt;tex&amp;gt;H = \phi G_0&amp;lt;/tex&amp;gt;.&lt;br /&gt;
* Пегги передает граф &amp;lt;tex&amp;gt;H&amp;lt;/tex&amp;gt; Виктору.&lt;br /&gt;
* Виктор выбирает случайный бит &amp;lt;tex&amp;gt;i \leftarrow \{0,1\}&amp;lt;/tex&amp;gt;&lt;br /&gt;
* Виктор просит Пегги доказать изоморфизм &amp;lt;tex&amp;gt;G_i&amp;lt;/tex&amp;gt; и &amp;lt;tex&amp;gt;H&amp;lt;/tex&amp;gt;, то есть предоставить соответствие вершин этих двух графов.&lt;br /&gt;
* Если &amp;lt;tex&amp;gt;i = 0&amp;lt;/tex&amp;gt;, то Пегги отсылает Виктору &amp;lt;tex&amp;gt;\phi&amp;lt;/tex&amp;gt;, иначе &amp;lt;tex&amp;gt;\phi \cdot \pi&amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В каждом раунде Виктор выбирает новый случайный бит, который неизвестен Пегги. Поэтому чтобы ответить на оба вопроса, Пегги нужно чтобы &amp;lt;tex&amp;gt;H&amp;lt;/tex&amp;gt; был в самом деле изоморфен &amp;lt;tex&amp;gt;G_i&amp;lt;/tex&amp;gt;. Это означает, что после достаточного числа раундов, Виктор может быть уверен в том, что графы &amp;lt;tex&amp;gt;G_0&amp;lt;/tex&amp;gt; и &amp;lt;tex&amp;gt;G_1&amp;lt;/tex&amp;gt; изоморфны. С другой стороны, Пегги не раскрывает никакой информации о перестановке &amp;lt;tex&amp;gt;\pi&amp;lt;/tex&amp;gt;. Более того, Виктору сложно будет доказать кому-либо ещё изоморфизм этих графов.&lt;br /&gt;
&lt;br /&gt;
Предположим, что у Пегги нет перестановки &amp;lt;tex&amp;gt;\pi&amp;lt;/tex&amp;gt; и она хочет обмануть Виктора. Тогда граф &amp;lt;tex&amp;gt;H&amp;lt;/tex&amp;gt;, который она отсылает Виктору, будет не изоморфен хотя бы одному из пары графов &amp;lt;tex&amp;gt;\langle G_0, G_1 \rangle&amp;lt;/tex&amp;gt;. Поэтому вероятность того, что она сможет обмануть Виктора в одном раунде не более &amp;lt;tex&amp;gt;\frac{1}{2}&amp;lt;/tex&amp;gt;. Вероятность того, что Пегги сможет обманывать Виктора на протяжении &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt; раундов не превосходит &amp;lt;tex&amp;gt;2^{-n}&amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Предположим, что Виктор не узнал перестановку &amp;lt;tex&amp;gt;\pi&amp;lt;/tex&amp;gt;, но хочет доказать Френку, что Пегги ее знает. Если Виктор, например, заснял на видео все раунды протокола, Френк едва ли ему поверит. Френк может предположить, что Пегги и Виктор в сговоре и в каждом раунде Виктор заранее сообщал Пегги свой выбор случайного бита, чтобы Пегги могла передавать ему &amp;lt;tex&amp;gt;H&amp;lt;/tex&amp;gt; для проверок изоморфизма. Таким образом без участия Пегги доказать изоморфизм графов, можно лишь доказав, что во всех раундах протокола выбирались действительно случайные биты.&lt;/div&gt;</summary>
		<author><name>217.107.105.99</name></author>	</entry>

	</feed>