<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Алгоритм Шора on kenji.blog</title><link>http://kenji.blog/ru/tags/%D0%B0%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC-%D1%88%D0%BE%D1%80%D0%B0/</link><description>Recent content in Алгоритм Шора on kenji.blog</description><generator>Hugo -- gohugo.io</generator><language>ru</language><copyright>kenjinote</copyright><lastBuildDate>Sun, 06 Sep 2026 12:00:00 +0900</lastBuildDate><atom:link href="http://kenji.blog/ru/tags/%D0%B0%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC-%D1%88%D0%BE%D1%80%D0%B0/index.xml" rel="self" type="application/rss+xml"/><item><title>【Полное понимание через формулы】 Почему сильнейший классический «GNFS» проигрывает квантовым алгоритмам? Смена парадигмы в факторизации</title><link>http://kenji.blog/ru/p/gnfs-to-shors-algorithm-math-deepdive/</link><pubDate>Sun, 06 Sep 2026 12:00:00 +0900</pubDate><guid>http://kenji.blog/ru/p/gnfs-to-shors-algorithm-math-deepdive/</guid><description>&lt;img src="http://kenji.blog/p/gnfs-to-shors-algorithm-math-deepdive/quantum_vs_gnfs_eyecatch_1788616101508.jpg" alt="Featured image of post 【Полное понимание через формулы】 Почему сильнейший классический «GNFS» проигрывает квантовым алгоритмам? Смена парадигмы в факторизации" />&lt;p>Информационная безопасность в современном интернет-обществе защищена криптографией с открытым ключом, такой как RSA. Основа безопасности RSA опирается на тот факт, что &lt;strong>&amp;ldquo;факторизация огромных составных чисел вычислительно крайне сложна&amp;rdquo;&lt;/strong> .&lt;/p>
&lt;p>В этой статье мы раскроем математический механизм &lt;strong>&amp;ldquo;Общего метода решета числового поля&amp;rdquo;&lt;/strong> (GNFS) — самого мощного алгоритма факторизации для классических компьютеров, и подробно разберем, почему он полностью побежден &lt;strong>&amp;ldquo;Алгоритмом Шора&amp;rdquo;&lt;/strong> , открытым Питером Шором. Мы глубоко исследуем эту смену парадигмы с помощью математических формул и концептуальных схем.&lt;/p>
&lt;hr>
&lt;h2 id="1-подход-к-факторизации-в-классических-вычислениях-развитие-метода-факторизации-ферма">1. Подход к факторизации в классических вычислениях: развитие метода факторизации Ферма
&lt;/h2>&lt;p>Задача факторизации — это задача поиска простых чисел $p, q$, таких что $N = p \times q$ для заданного составного числа $N$.&lt;/p>
&lt;p>Основная идея сводится к поиску нетривиальных $x, y$, удовлетворяющих следующему сравнению:&lt;/p>
$$ x^2 \equiv y^2 \pmod N $$
&lt;p>Если мы преобразуем это, то получим:&lt;/p>
$$ x^2 - y^2 \equiv 0 \pmod N $$
$$ (x - y)(x + y) \equiv 0 \pmod N $$
&lt;p>Здесь, если $x \not\equiv \pm y \pmod N$, мы можем получить нетривиальный делитель $N$, вычислив $\gcd(x-y, N)$ или $\gcd(x+y, N)$. Этот факт лежит в основе современных алгоритмов факторизации, таких как GNFS.&lt;/p>
&lt;hr>
&lt;h2 id="2-сильнейший-классический-алгоритм-глубины-общего-метода-решета-числового-поля-gnfs">2. Сильнейший классический алгоритм: Глубины &amp;ldquo;Общего метода решета числового поля&amp;rdquo; (GNFS)
&lt;/h2>&lt;p>&lt;strong>&amp;ldquo;GNFS&amp;rdquo;&lt;/strong> — это самый быстрый алгоритм факторизации для классических компьютеров из известных на сегодняшний день. Его временная сложность требует субэкспоненциального (Sub-exponential) времени.&lt;/p>
&lt;h3 id="сложность-gnfs">Сложность GNFS
&lt;/h3>&lt;p>Если предположить, что количество цифр $N$ равно $b = \log_2 N$, сложность GNFS может быть выражена следующим образом:&lt;/p>
$$ O\left( \exp \left( \left(\frac{64}{9} b\right)^{1/3} (\log b)^{2/3} \right) \right) $$
&lt;p>Как видно из этой формулы, сложность представляет собой не полиномиальное время, а &lt;strong>&amp;ldquo;субэкспоненциальное время&amp;rdquo;&lt;/strong> , что лишь немного медленнее экспоненциального. Тем не менее, с увеличением количества цифр время вычислений возрастает астрономически.&lt;/p>
&lt;h3 id="математический-механизм-gnfs">Математический механизм GNFS
&lt;/h3>&lt;p>GNFS можно условно разделить на 4 этапа:&lt;/p>
&lt;ol>
&lt;li>&lt;strong>Выбор многочленов (Polynomial Selection)&lt;/strong>&lt;/li>
&lt;li>&lt;strong>Просеивание (Sieving)&lt;/strong>&lt;/li>
&lt;li>&lt;strong>Редукция матрицы (Matrix Reduction)&lt;/strong>&lt;/li>
&lt;li>&lt;strong>Вычисление квадратного корня (Square Root)&lt;/strong>&lt;/li>
&lt;/ol>
&lt;h4 id="21-выбор-многочленов-и-алгебраическое-числовое-поле">2.1. Выбор многочленов и алгебраическое числовое поле
&lt;/h4>&lt;p>Сначала выбираются неприводимые многочлены $f(x)$ и $g(x)$ с целыми коэффициентами. Они задаются так, чтобы иметь общий корень $m$ по модулю $N$. То есть:&lt;/p>
$$ f(m) \equiv 0 \pmod N $$
$$ g(m) \equiv 0 \pmod N $$
&lt;p>Обычно $g(x)$ выбирается как многочлен первой степени $g(x) = x - m$. Если корень $f(x)$ обозначить как $\alpha$, образуется &lt;strong>&amp;ldquo;алгебраическое числовое поле&amp;rdquo;&lt;/strong> (Number Field) $\mathbb{Q}(\alpha)$. Мы сравниваем операции в кольце $\mathbb{Q}(\alpha)$ и операции в обычном кольце целых чисел $\mathbb{Z}$ посредством гомоморфизма $\phi: \alpha \mapsto m$.&lt;/p>
&lt;h4 id="22-просеивание-sieving">2.2. Просеивание (Sieving)
&lt;/h4>&lt;p>Далее мы ищем большое количество пар взаимно простых целых чисел $(a, b)$. Цель — найти такие пары, чтобы оба следующих значения были &lt;strong>&amp;ldquo;B-гладкими&amp;rdquo;&lt;/strong> (B-smooth, то есть состоящими только из относительно малых простых множителей):&lt;/p>
&lt;ol>
&lt;li>$a - bm$ (значение в кольце целых чисел)&lt;/li>
&lt;li>$b^d f(a/b)$ (соответствует норме $N(a - b\alpha)$ в алгебраическом поле)&lt;/li>
&lt;/ol>
&lt;p>Здесь используется метод быстрого поиска, называемый &lt;strong>&amp;ldquo;Решето&amp;rdquo;&lt;/strong> (Sieve). Это позволяет эффективно извлекать пары $(a, b)$, удовлетворяющие условиям, из огромного числа кандидатов.&lt;/p>
&lt;h4 id="23-редукция-матрицы-linear-algebra-over-gf2">2.3. Редукция матрицы (Linear Algebra over GF(2))
&lt;/h4>&lt;p>Из собранных пар $(a, b)$ мы формируем векторы показателей степени и находим левое нуль-пространство огромной разреженной матрицы над $\mathbb{F}_2$ (поле, содержащее только 0 и 1).&lt;/p>
&lt;p>Мы находим вектор решения $v$ так, чтобы соотношения $ \prod (a_i - b_i m) $ и $ \prod (a_i - b_i \alpha) $ становились полными квадратами. Это не что иное, как решение системы линейных уравнений:&lt;/p>
$$ M \mathbf{x} \equiv \mathbf{0} \pmod 2 $$
&lt;p>Здесь используются продвинутые алгоритмы численных вычислений, такие как алгоритм блочного Ланцоша (Block Lanczos) или блочного Видемана (Block Wiedemann).&lt;/p>
&lt;h4 id="24-вычисление-квадратного-корня">2.4. Вычисление квадратного корня
&lt;/h4>&lt;p>Наконец, мы извлекаем квадратный корень как в алгебраическом числовом поле, так и в кольце целых чисел, что приводит к соотношению $x^2 \equiv y^2 \pmod N$. Затем мы вычисляем $\gcd(x-y, N)$ и получаем делитель.&lt;/p>
&lt;hr>
&lt;h2 id="3-прорыв-квантовых-вычислений-алгоритм-шора">3. Прорыв квантовых вычислений: &amp;ldquo;Алгоритм Шора&amp;rdquo;
&lt;/h2>&lt;p>В то время как GNFS требует субэкспоненциального времени, &lt;strong>&amp;ldquo;Алгоритм Шора&amp;rdquo;&lt;/strong> , опубликованный Питером Шором в 1994 году, может решить эту задачу за &lt;strong>&amp;ldquo;полиномиальное время&amp;rdquo;&lt;/strong> с использованием квантового компьютера.&lt;/p>
&lt;h3 id="сложность-алгоритма-шора">Сложность Алгоритма Шора
&lt;/h3>&lt;p>Если предположить, что количество кубитов равно $O(\log N)$, то временная сложность составит:&lt;/p>
$$ O((\log N)^3) $$
&lt;p>Это означает, что экспоненциального взрыва относительно количества битов не происходит. Это поразительный результат, когда факторизация огромных составных чисел, время вычисления которых в &lt;strong>&amp;ldquo;классических вычислениях&amp;rdquo;&lt;/strong> превышает возраст Вселенной, может быть решена от нескольких часов до нескольких дней с помощью &lt;strong>&amp;ldquo;квантовых вычислений&amp;rdquo;&lt;/strong> .&lt;/p>
&lt;h3 id="обзор-алгоритма-шора-сведение-к-задаче-поиска-периода">Обзор Алгоритма Шора: Сведение к задаче поиска периода
&lt;/h3>&lt;p>Алгоритм Шора искусно сводит задачу факторизации к &lt;strong>&amp;ldquo;задаче поиска периода&amp;rdquo;&lt;/strong> .&lt;/p>
&lt;ol>
&lt;li>Выберите случайное целое число $a$, взаимно простое с $N$ ($1 &lt; a &lt; N$).&lt;/li>
&lt;li>Определите функцию $f(x) = a^x \bmod N$.&lt;/li>
&lt;li>Найдите период $r$ функции $f(x)$, то есть наименьшее положительное целое число $r$ такое, что $a^r \equiv 1 \pmod N$.&lt;/li>
&lt;li>Если $r$ четное, проверьте, не выполняется ли $a^{r/2} \not\equiv -1 \pmod N$, и вычислите $\gcd(a^{r/2} \pm 1, N)$ для получения простого делителя.&lt;/li>
&lt;/ol>
&lt;p>Этот шаг 3, то есть &lt;strong>&amp;ldquo;нахождение периода $r$&amp;rdquo;&lt;/strong> , является узким местом, требующим экспоненциального времени на классическом компьютере. Однако квантовый компьютер решает это мгновенно, используя &lt;strong>&amp;ldquo;квантовую суперпозицию&amp;rdquo;&lt;/strong> и &lt;strong>&amp;ldquo;Квантовое преобразование Фурье&amp;rdquo;&lt;/strong> (QFT).&lt;/p>
&lt;hr>
&lt;h2 id="4-квантовое-преобразование-фурье-qft-и-извлечение-периода">4. Квантовое преобразование Фурье (QFT) и извлечение периода
&lt;/h2>&lt;p>Давайте подробнее рассмотрим математические операции над квантовыми состояниями, которые лежат в основе Алгоритма Шора.&lt;/p>
&lt;h3 id="41-генерация-квантовой-суперпозиции">4.1. Генерация квантовой суперпозиции
&lt;/h3>&lt;p>Сначала подготовьте 2 квантовых регистра. Регистр 1 хранит состояние суперпозиции входных данных $x$, а регистр 2 хранит результат вычисления функции $f(x)$. Примените преобразование Адамара (Hadamard Transform) к начальному состоянию $|0\rangle |0\rangle$, чтобы создать суперпозицию всех возможных значений $x$.&lt;/p>
$$ |\psi_1\rangle = \frac{1}{\sqrt{Q}} \sum_{x=0}^{Q-1} |x\rangle |0\rangle $$
&lt;p>
(где $Q$ — это степень двойки, удовлетворяющая $N^2 \le Q &lt; 2N^2$)&lt;/p>
&lt;p>Далее используйте квантовый оракул $U_f$ для вычисления $f(x) = a^x \bmod N$ и сохраните результат в регистре 2.&lt;/p>
$$ |\psi_2\rangle = U_f |\psi_1\rangle = \frac{1}{\sqrt{Q}} \sum_{x=0}^{Q-1} |x\rangle |a^x \bmod N\rangle $$
&lt;p>Предположим теперь, что регистр 2 измеряется (теоретически, даже если он не измеряется, математическая структура та же). Если наблюдается некоторое значение $y = a^{x_0} \bmod N$, состояние регистра 1 коллапсирует в суперпозицию всех $x$, удовлетворяющих $f(x) = y$. Если предположить, что период равен $r$, такие $x$ будут иметь вид $x_0, x_0 + r, x_0 + 2r, \dots$&lt;/p>
$$ |\psi_3\rangle = \frac{1}{\sqrt{M}} \sum_{k=0}^{M-1} |x_0 + kr\rangle $$
&lt;p>
(где $M \approx Q/r$ — количество членов)&lt;/p>
&lt;p>Это состояние содержит информацию о периоде $r$, но прямое измерение даст лишь случайное $x_0 + kr$, и период $r$ останется неизвестным. Здесь вступает в дело QFT.&lt;/p>
&lt;h3 id="42-применение-квантового-преобразования-фурье-qft">4.2. Применение Квантового преобразования Фурье (QFT)
&lt;/h3>&lt;p>QFT — это операция, применяющая дискретное преобразование Фурье к амплитудам квантового состояния. Действие QFT на состояние $|x\rangle$ определяется следующим образом:&lt;/p>
$$ \text{QFT} |x\rangle = \frac{1}{\sqrt{Q}} \sum_{y=0}^{Q-1} e^{2\pi i \frac{xy}{Q}} |y\rangle $$
&lt;p>Когда это применяется к $|\psi_3\rangle$, возникает фазовая интерференция (квантовая интерференция).&lt;/p>
$$ |\psi_4\rangle = \text{QFT} |\psi_3\rangle = \frac{1}{\sqrt{MQ}} \sum_{y=0}^{Q-1} \sum_{k=0}^{M-1} e^{2\pi i \frac{(x_0 + kr)y}{Q}} |y\rangle $$
&lt;p>Если мы раскроем сумму в этой формуле, появится следующая часть:&lt;/p>
$$ \sum_{k=0}^{M-1} e^{2\pi i \frac{kry}{Q}} $$
&lt;p>Сумма этой геометрической прогрессии взаимно усиливается (Конструктивная интерференция, Constructive Interference) только когда $ry/Q$ близко к целому числу, и взаимно уничтожается (Деструктивная интерференция, Destructive Interference) в других случаях.&lt;/p>
&lt;p>Следовательно, состояние $|y\rangle$, измеряемое с высокой вероятностью, будет целым числом $y$, удовлетворяющим условию:&lt;/p>
$$ \frac{y}{Q} \approx \frac{c}{r} $$
&lt;p>(где $c$ — некоторое целое число).&lt;/p>
&lt;h3 id="43-определение-периода-через-разложение-в-цепную-дробь">4.3. Определение периода через разложение в цепную дробь
&lt;/h3>&lt;p>После получения $y$ в результате измерения используйте классический компьютер для выполнения &lt;strong>&amp;ldquo;разложения в цепную дробь&amp;rdquo;&lt;/strong> (Continued Fraction Expansion) $y/Q$. Это позволяет вычислить подходящую дробь $c/r$ для $y/Q$ и с высокой эффективностью извлечь кандидата на период $r$ из знаменателя.&lt;/p>
&lt;hr>
&lt;h2 id="5-сравнение-концептуальных-моделей-и-смена-парадигмы">5. Сравнение концептуальных моделей и смена парадигмы
&lt;/h2>&lt;p>Чтобы интуитивно понять разницу между GNFS и Алгоритмом Шора, приводится концептуальная схема с использованием нотации Mermaid.&lt;/p>
&lt;h3 id="концептуальная-схема-алгоритма-шора-с-использованием-квантовой-схемы">Концептуальная схема Алгоритма Шора с использованием квантовой схемы
&lt;/h3>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">graph TD
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> A[Начальное состояние: 0...0] --&amp;gt; B[Суперпозиция всех состояний через преобразование Адамара]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> B --&amp;gt; C[Операция модульного возведения в степень a^x mod N]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> C --&amp;gt;|Квантовая запутанность| D[Коллапс в состояние с периодичностью]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> D --&amp;gt; E[Квантовое преобразование Фурье QFT]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> E --&amp;gt;|Усиление вероятности через интерференцию| F[Измерение: Получение y]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> F --&amp;gt; G[Классическая обработка: Цепная дробь]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> G --&amp;gt; H[Обнаружение периода r]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> H --&amp;gt; I[Вычисление простых множителей N]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> style A fill:#f9f,stroke:#333,stroke-width:2px
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> style E fill:#bbf,stroke:#333,stroke-width:2px
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> style I fill:#bfb,stroke:#333,stroke-width:2px
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h3 id="суть-смены-парадигмы">Суть смены парадигмы
&lt;/h3>&lt;p>GNFS использует подход &lt;strong>&amp;ldquo;поиска соотношений внутри математического пространства (алгебраического поля)&amp;rdquo;&lt;/strong> . Однако, поскольку пространство поиска расширяется экспоненциально относительно количества цифр, расшифровка становится практически невозможной при длине ключа свыше 2048 бит с использованием классических вычислительных мощностей (даже с учетом распараллеливания).&lt;/p>
&lt;p>С другой стороны, алгоритм Шора использует &lt;strong>&amp;ldquo;волновую природу квантовой интерференции&amp;rdquo;&lt;/strong> . Он оценивает все пути вычислений в состоянии суперпозиции одновременно, подавляет (ослабляет) ненужные ответы с помощью QFT и усиливает только амплитуду вероятности для правильного периода. При этом подход заключается не в поиске в пространстве, а в переходе в совершенно другое измерение: &lt;strong>&amp;ldquo;позволить правильному ответу проявиться самому&amp;rdquo;&lt;/strong> .&lt;/p>
&lt;h2 id="6-заключение">6. Заключение
&lt;/h2>&lt;p>В этой статье мы глубоко сравнили математическую основу и структуру алгоритмов между &lt;strong>&amp;ldquo;GNFS&amp;rdquo;&lt;/strong> , который является пределом классических вычислений, и &lt;strong>&amp;ldquo;Алгоритмом Шора&amp;rdquo;&lt;/strong> , который демонстрирует мощь квантовых вычислений.&lt;/p>
&lt;p>В то время как GNFS использует математические ухищрения, такие как выбор многочленов и вычисления с огромными матрицами, чтобы снизить сложность до субэкспоненциального времени, Алгоритм Шора достигает прямого прорыва до полиномиального времени, объединяя базовые принципы квантовой механики (суперпозицию и интерференцию) с математическим инструментом (QFT).&lt;/p>
&lt;p>В настоящее время не существует отказоустойчивого квантового компьютера (FTQC) практического масштаба (тысячи кубитов), способного запустить Алгоритм Шора. Однако именно наличие этой теоретической и математической смены парадигмы является главной причиной ускорения глобального перехода к постквантовой криптографии (PQC: Post-Quantum Cryptography) во всем мире уже сегодня.&lt;/p></description></item><item><title>Действительно ли квантовые компьютеры уничтожат шифрование RSA? ~ Алгоритм Шора и текущий этап ~</title><link>http://kenji.blog/ru/p/shors-algorithm-and-rsa-breaking/</link><pubDate>Sat, 05 Sep 2026 22:09:21 +0900</pubDate><guid>http://kenji.blog/ru/p/shors-algorithm-and-rsa-breaking/</guid><description>&lt;img src="http://kenji.blog/p/shors-algorithm-and-rsa-breaking/quantum_breaking_rsa_1788613722990.jpg" alt="Featured image of post Действительно ли квантовые компьютеры уничтожат шифрование RSA? ~ Алгоритм Шора и текущий этап ~" />&lt;h2 id="введение-пересечение-криптографии-и-квантовых-компьютеров">Введение: Пересечение криптографии и квантовых компьютеров
&lt;/h2>&lt;p>В современном интернет-обществе основой защиты секретности связи является «криптография с открытым ключом». Наиболее представительным является шифрование RSA, разработанное в 1977 году Роном Ривестом, Ади Шамиром и Леонардом Адлеманом. От покупок в Интернете и просмотра веб-сайтов (HTTPS) до отправки и получения электронной почты, шифрование RSA служит сердцем интернет-инфраструктуры.&lt;/p>
&lt;p>Однако появление «квантовых компьютеров» указывает на возможность того, что эта безопасность может быть разрушена на корню. В СМИ иногда появляются сенсационные заголовки, такие как «Как только квантовый компьютер будет готов, все пароли в мире будут расшифрованы за секунды». Так ли это на самом деле?&lt;/p>
&lt;p>В этой статье подробно рассматривается механизм GNFS (Общий метод решета числового поля) как классический метод дешифрования, а также окончательный алгоритм дешифрования с использованием квантовых компьютеров — «Алгоритм Шора» (Shor&amp;rsquo;s Algorithm). Мы доступно объясним такие концепции, как квантовое преобразование Фурье и поиск периода, и подробно рассмотрим текущее состояние аппаратного обеспечения в эпоху NISQ (Noisy Intermediate-Scale Quantum) и реальные препятствия для взлома RSA-2048.&lt;/p>
&lt;hr>
&lt;h2 id="основа-rsa-сложность-факторизации">Основа RSA: Сложность факторизации
&lt;/h2>&lt;p>Безопасность RSA зависит от математической асимметрии: «Легко перемножить два гигантских простых числа, но крайне сложно найти (факторизовать) исходные простые числа из результата (составного числа)».&lt;/p>
&lt;p>Например, пусть есть $ p = 61 $ и $ q = 53 $. Вычисление $ N = p \times q = 3233 $ мгновенно. Однако, если дано только «3233» и нужно найти исходные простые числа, факторизация требует экспоненциально больше вычислений с ростом числа.&lt;/p>
&lt;p>В текущем стандарте RSA-2048 используется составное число $ N $ длиной 2048 бит (около 617 десятичных цифр). Если мы сможем факторизовать $ N $, шифр будет взломан.&lt;/p>
&lt;h3 id="классический-подход-gnfs-общий-метод-решета-числового-поля">Классический подход: GNFS (Общий метод решета числового поля)
&lt;/h3>&lt;p>Для факторизации математики разрабатывали различные алгоритмы. Самым быстрым для классических компьютеров в настоящее время является ** GNFS (General Number Field Sieve) **.&lt;/p>
&lt;p>GNFS расширяет вычисления в кольце целых чисел до более абстрактного алгебраического числового поля. Основные этапы:&lt;/p>
&lt;ol>
&lt;li>** Выбор полинома **: Найти полином $ f(x) $, корнем которого является $ N $.&lt;/li>
&lt;li>** Сбор данных (просеивание) **: Найти много пар чисел, разложимых на малые простые (гладкие числа). Это самый долгий этап.&lt;/li>
&lt;li>** Генерация и редукция матрицы **: Создать гигантскую разреженную матрицу и решить её методами линейной алгебры.&lt;/li>
&lt;li>** Вычисление квадратного корня **: Найти факторы (простые множители) $ N $.&lt;/li>
&lt;/ol>
&lt;p>Сложность вычисляется как $ O(\exp((\sqrt[3]{\frac{64}{9}} + o(1)) (\log N)^{\frac{1}{3}} (\log \log N)^{\frac{2}{3}})) $ — это «субэкспоненциальное» время.&lt;/p>
&lt;p>В 2020 году исследователи успешно факторизовали RSA-250 (829 бит) с помощью GNFS, потратив около 2700 процессоро-лет. Но для 2048 бит требуемые вычисления превышают возраст Вселенной в триллионы раз, что делает классические методы непрактичными.&lt;/p>
&lt;hr>
&lt;h2 id="козырь-квантовых-компьютеров-алгоритм-шора">Козырь квантовых компьютеров: Алгоритм Шора
&lt;/h2>&lt;p>В 1994 году Питер Шор представил «алгоритм Шора», который решает проблему факторизации на квантовом компьютере за ** полиномиальное время ** ($ O((\log N)^3) $). Это теоретически означает полный взлом RSA.&lt;/p>
&lt;h3 id="общая-схема-алгоритма-шора">Общая схема алгоритма Шора
&lt;/h3>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">graph TD
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> A[Ввод числа N] --&amp;gt; B[Выбор случайного целого a]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> B --&amp;gt; C{НОД&amp;lt;br&amp;gt;a и N}
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> C --&amp;gt;|Больше 1| D[Удача! Найден множитель!]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> C --&amp;gt;|1 Взаимно просты| E[Квантовый компьютер]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> E --&amp;gt; F[Поиск периода r для f_x = a^x mod N&amp;lt;br&amp;gt;через QFT]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> F --&amp;gt; G{Период r четный и&amp;lt;br&amp;gt;a^r/2 ≢ -1 mod N}
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> G --&amp;gt;|Да| H[Вычисление НОД gcd_a^r/2 ± 1, N]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> H --&amp;gt; I((Успешная факторизация!))
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> G --&amp;gt;|Нет| B
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h3 id="шаг-1-сведение-к-поиску-периода-классическая-часть">Шаг 1: Сведение к поиску периода (Классическая часть)
&lt;/h3>&lt;p>Выбираем $ a $, взаимно простое с $ N $. Рассмотрим последовательность:
$ f(x) = a^x \pmod N $
Эта функция периодична, и задача — найти её период $ r $. Если период $ r $ найден и он четный, то с помощью:
$ (a^{r/2} - 1)(a^{r/2} + 1) \equiv 0 \pmod N $
и алгоритма Евклида мы можем легко найти факторы $ N $.&lt;/p>
&lt;h3 id="шаг-2-суперпозиция">Шаг 2: Суперпозиция
&lt;/h3>&lt;p>Квантовый компьютер готовит два регистра. С помощью вентилей Адамара первый регистр переводится в ** состояние равномерной суперпозиции ** всех возможных значений $ x $.&lt;/p>
&lt;h3 id="шаг-3-квантовое-модульное-возведение-в-степень">Шаг 3: Квантовое модульное возведение в степень
&lt;/h3>&lt;p>Параллельно для всех состояний суперпозиции вычисляется $ a^x \pmod N $.&lt;/p>
&lt;h3 id="шаг-4-квантовое-преобразование-фурье-qft">Шаг 4: Квантовое преобразование Фурье (QFT)
&lt;/h3>&lt;p>Чтобы извлечь информацию о периоде, применяется ** QFT ** к первому регистру. Благодаря конструктивной и деструктивной интерференции, вероятности неправильных периодов гасятся, а вероятность правильного периода $ r $ усиливается.&lt;/p>
&lt;h3 id="шаг-5-измерение-и-непрерывные-дроби">Шаг 5: Измерение и непрерывные дроби
&lt;/h3>&lt;p>После применения QFT измерение первого регистра дает значение, из которого классическим методом непрерывных дробей находится точный период $ r $. Имея $ r $, мы получаем множители $ N $.&lt;/p>
&lt;hr>
&lt;h2 id="возможности-и-проблемы-эпохи-nisq">Возможности и проблемы эпохи NISQ
&lt;/h2>&lt;p>Будет ли RSA взломан завтра? Ответ — однозначное «Нет», из-за аппаратных ограничений.&lt;/p>
&lt;h3 id="эпоха-nisq">Эпоха NISQ
&lt;/h3>&lt;p>Мы находимся в эре устройств NISQ с десятками/сотнями физических кубитов, подверженных сильному шуму. Декогеренция и ошибки вентилей разрушают результаты сложных алгоритмов вроде алгоритма Шора.&lt;/p>
&lt;h3 id="физические-и-логические-кубиты">Физические и логические кубиты
&lt;/h3>&lt;p>Для исправления ошибок требуется &amp;ldquo;квантовая коррекция ошибок&amp;rdquo; (например, Surface Code). Для создания одного идеального логического кубита требуется от 1000 до 10000 физических кубитов (оверхед).&lt;/p>
&lt;h3 id="ресурсы-для-взлома-rsa-2048">Ресурсы для взлома RSA-2048
&lt;/h3>&lt;p>По оценкам 2021 года от Craig Gidney и Martin Ekerå, для взлома RSA-2048 потребуется:&lt;/p>
&lt;ul>
&lt;li>** Логические кубиты **: ~ 4,096&lt;/li>
&lt;li>** Физические кубиты **: ** ~ 20 миллионов ** (при уровне ошибок $10^{-3}$)&lt;/li>
&lt;li>** Время вычислений **: ~ 8 часов&lt;/li>
&lt;/ul>
&lt;p>В конце 2023 года IBM представила процессор &amp;ldquo;Condor&amp;rdquo; с 1,121 кубитом. Масштабирование до ** 20 миллионов ** практических кубитов связано с колоссальными инженерными барьерами. Большинство экспертов считают, что для создания отказоустойчивого квантового компьютера (FTQC) потребуется от 10 до 30 лет или больше.&lt;/p>
&lt;hr>
&lt;h2 id="угроза-store-now-decrypt-later-и-эра-pqc">Угроза &amp;ldquo;Store Now, Decrypt Later&amp;rdquo; и эра PQC
&lt;/h2>&lt;p>Считать, что можно расслабиться на 10 лет, преждевременно. Существует угроза ** &amp;ldquo;Store Now, Decrypt Later&amp;rdquo; (Сохрани сейчас, расшифруй позже) **. Злоумышленники собирают и хранят зашифрованные данные, чтобы расшифровать их, как только квантовые компьютеры станут доступны.&lt;/p>
&lt;p>В ответ на эту угрозу NIST ускоряет стандартизацию ** Постквантовой криптографии (PQC: Post-Quantum Cryptography) **.
Основные направления PQC:&lt;/p>
&lt;ul>
&lt;li>** Криптография на решетках (Lattice-based cryptography) **: На основе задачи LWE (Kyber, Dilithium).&lt;/li>
&lt;li>** Криптография на кодах (Code-based cryptography) **: Сложность декодирования кодов.&lt;/li>
&lt;li>** Многомерная криптография (Multivariate cryptography) **: Системы квадратных уравнений.&lt;/li>
&lt;li>** Хэш-сигнатуры (Hash-based signatures) **: Только на основе хэш-функций.&lt;/li>
&lt;/ul>
&lt;p>Основные платформы, такие как Google Chrome и Apple iMessage, уже начали тестировать и внедрять гибридные PQC решения.&lt;/p>
&lt;h2 id="заключение">Заключение
&lt;/h2>&lt;p>Квантовые компьютеры переходят из области фантастики в реальную инженерную задачу. Алгоритм Шора — это великое интеллектуальное достижение, объединившее математику и квантовую механику, обладающее разрушительной силой для основ нашего цифрового общества.&lt;/p>
&lt;p>RSA не устареет завтра, но в свете угроз вроде &amp;ldquo;Store Now, Decrypt Later&amp;rdquo;, масштабный переход криптографии к PQC уже начался. Мы являемся свидетелями смены парадигмы в информационной безопасности.&lt;/p></description></item></channel></rss>