RSA

Поделись знанием:
Перейти к: навигация, поиск

RSA (аббревиатура от фамилий Rivest, Shamir и Adleman) — криптографический алгоритм с открытым ключом, основывающийся на вычислительной сложности задачи факторизации больших целых чисел.

Криптосистема RSA стала первой системой, пригодной и для шифрования, и для цифровой подписи. Алгоритм используется в большом числе криптографических приложений, включая PGP, S/MIME, TLS/SSL, IPSEC/IKE и других.[1]





История

Опубликованная в ноябре 1976 года статья Уитфилда Диффи и Мартина Хеллмана «Новые направления в криптографии» (англ. New Directions in Cryptography)Ошибка Lua : attempt to index local 'entity' (a nil value). перевернула представление о криптографических системах, заложив основы криптографии с открытым ключом. Разработанный впоследствии алгоритм Диффи — Хеллмана позволял двум сторонам получить общий секретный ключ, используя незащищенный канал связи. Однако этот алгоритм не решал проблему аутентификации. Без дополнительных средств пользователи не могли быть уверены, с кем именно они сгенерировали общий секретный ключ.

Изучив эту статью, трое учёных Рональд Ривест, Ади Шамир и Леонард Адлеман из Массачусетского технологического института (MIT) приступили к поискам математической функции, которая бы позволяла реализовать сформулированную Уитфилдом Диффи и Мартином Хеллманом модель криптографической системы с открытым ключом. После работы над более чем 40 возможными вариантами им удалось найти алгоритм, основанный на различии в том, насколько легко находить большие простые числа и насколько сложно раскладывать на множители произведение двух больших простых чисел, получивший впоследствии название RSA. Система была названа по первым буквам фамилий её создателей.

В августе 1977 года в колонке «Математические игры» Мартина Гарднера в журнале Scientific American, с разрешения Рональда Ривеста[2] появилось первое описание криптосистемы RSA.[3] Читателям также было предложено дешифровать английскую фразу, зашифрованную описанным алгоритмом:

9686
1477
8829
7431
0816
3569
8962
1829
9613
1409
0575
9874
2982
3147
8013
9451
7546
2225
9991
6951
2514
6622
3919
5781
2206
4355
1245
2093
5708
8839
9055
5154

В качестве открытых параметров системы были использованы числа n=1143816...6879541 (129 десятичных знаков, 425 бит, также известно как RSA-129) и e=9007. За расшифровку была обещана награда в 100 долларов США. По заявлению Ривеста, для факторизации числа потребовалось бы более 40 квадриллионов лет.[4][1] Однако чуть более чем через 15 лет, 3 сентября 1993 года было объявлено о старте проекта распределённых вычислений с координацией через электронную почту по нахождению сомножителей числа RSA-129 и решению головоломки. На протяжении полугода более 600 добровольцев из 20 стран жертвовали процессорное время 1600 машин (две из которых были факс-машинамиК:Википедия:Статьи без источников (тип: не указан)[источник не указан 3056 дней]). В результате были найдены простые множители и расшифровано исходное сообщение, которое представляет собой фразу «THE MAGIC WORDS ARE SQUEAMISH OSSIFRAGE (англ.)» («Волшебные слова — это брезгливый ягнятник»).[5][6] Полученную награду победители пожертвовали в фонд свободного программного обеспечения.

После публикации Мартина Гарднера полное описание новой криптосистемы любой желающий мог получить, выслав по почте запрос Рональду Ривесту с приложенным конвертом с обратным адресом и марками на 35 центов.[3] Полное описание новой криптосистемы было опубликовано в журнале «Communications of the ACM» в феврале 1978 года.[7]

Заявка на патент была подана 14 декабря 1977 года, в качестве владельца был указан MIT. Патент 4405829 был выдан 20 сентября 1983 года, а 21 сентября 2000 года срок его действия истёк.[8] Однако за пределами США у изобретателей патента на алгоритм не было, так как в большинстве стран его необходимо было получить до первой публикации.[9]

В 1982 году Ривест, Шамир и Адлеман организовали компанию RSA Data Security (англ.) (в настоящий момент — подразделение EMC). В 1989 году RSA, вместе с симметричным шифром DES, упоминается в RFC 1115, тем самым начиная использование алгоритма в зарождающейся сети Internet[10], а в 1990 году использовать алгоритм начинает министерство обороны США.[11]

В ноябре 1993 года открыто публикуется версия 1.5 стандарта PKCS1 (англ.), описывающего применение RSA для шифрования и создания электронной подписи. Последние версии стандарта также доступны в виде RFC (RFC 2313 — 1.5, 1993 год; RFC 2437 — 2.0, 1998 год; RFC 3447 — 2.1, 2002 год).

В декабре 1997 года была обнародована информация, согласно которой британский математик Клиффорд Кокс (Clifford Cocks), работавший в центре правительственной связи (GCHQ) Великобритании, описал криптосистему, аналогичную RSA в 1973 году.[12]

Описание алгоритма

Введение

Криптографические системы с открытым ключом используют так называемые односторонние функции, которые обладают следующим свойством:

  • Если известно <math>x</math>, то <math>f(x)</math> вычислить относительно просто
  • Если известно <math>y=f(x)</math>, то для вычисления <math>x</math> нет простого (эффективного) пути.

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

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

В криптографической системе с открытым ключом каждый участник располагает как открытым ключом (англ. public key), так и закрытым ключом (англ. private key). В криптографической системе RSA каждый ключ состоит из пары целых чисел. Каждый участник создаёт свой открытый и закрытый ключ самостоятельно. Закрытый ключ каждый из них держит в секрете, а открытые ключи можно сообщать кому угодно или даже публиковать их. Открытый и закрытый ключи каждого участника обмена сообщениями в криптосистеме RSA образуют «согласованную пару» в том смысле, что они являются взаимно обратными, то есть:

<math>\forall</math> допустимых пар открытого и закрытого ключей <math>(p,s)</math>
<math>\exist</math> соответствующие функции шифрования <math>E_p(x)</math> и расшифрования <math>D_s(x)</math> такие, что
<math>\forall</math> сообщений <math>m \in M</math>, где <math>M</math> — множество допустимых сообщений,
<math>m=D_s(E_p(m))=E_p(D_s(m)).</math>

Алгоритм создания открытого и секретного ключей

RSA-ключи генерируются следующим образом:[13]

  1. Выбираются два различных случайных простых числа <math>p</math> и <math>q</math> заданного размера (например, 1024 бита каждое).
  2. Вычисляется их произведение <math>n=p\cdot q</math>, которое называется модулем.
  3. Вычисляется значение функции Эйлера от числа <math>n</math>:
    <math>\varphi(n) = (p-1)\cdot (q-1).</math>
  4. Выбирается целое число <math>e</math> (<math>1 < e < \varphi(n)</math>), взаимно простое со значением функции <math>\varphi(n)</math>. Обычно в качестве <math>e</math> берут простые числа, содержащие небольшое количество единичных бит в двоичной записи, например, простые числа Ферма 17, 257 или 65537.
    • Число <math>e</math> называется открытой экспонентой (англ. public exponent)
    • Время, необходимое для шифрования с использованием быстрого возведения в степень, пропорционально числу единичных бит в <math>e</math>.
    • Слишком малые значения <math>e</math>, например 3, потенциально могут ослабить безопасность схемы RSA.Ошибка Lua : attempt to index local 'entity' (a nil value).
  5. Вычисляется число <math>d</math>, мультипликативно обратное к числу <math>e</math> по модулю <math>\varphi(n)</math>, то есть число, удовлетворяющее сравнению:
    <math>d\cdot e \equiv 1 \pmod{\varphi(n)}.</math>
  6. Пара <math>\left\{ e, n \right\}</math> публикуется в качестве открытого ключа RSA (англ. RSA public key).
  7. Пара <math>\left\{ d, n \right\}</math> играет роль закрытого ключа RSA (англ. RSA private key) и держится в секрете.

Шифрование и расшифрование

Предположим, Боб хочет послать Алисе сообщение <math>m</math>.

Сообщениями являются целые числа в интервале от <math>0</math> до <math>n - 1</math>, т.е <math>m \in \mathbb{Z}_{n}</math>.

Алгоритм:[13]

  • Взять открытый ключ <math>(e,n)</math> Алисы
  • Взять открытый текст <math>m</math>
  • Зашифровать сообщение с использованием открытого ключа Алисы:
    <math>c = E(m) = m^e \mod n ~~~~ (1)</math>

Алгоритм:

  • Принять зашифрованное сообщение <math>c</math>
  • Взять свой закрытый ключ <math>(d,n)</math>
  • Применить закрытый ключ для расшифрования сообщения:
    <math>m = D(c) = c^d \mod n ~~~~(2)</math>

Данная схема на практике не используется по причине того, что она не является практически надёжной (semantically secured). Действительно, односторонняя функция E(m) является детерминированной — при одних и тех же значениях входных параметров (ключа и сообщения) выдаёт одинаковый результат —, а это значит, что не выполняется необходимое условие практической (семантической) надёжности шифра.

Алгоритм шифрования сеансового ключа

Наиболее используемым в настоящее время является смешанный алгоритм шифрования, в котором сначала шифруется сеансовый ключ, а потом уже с его помощью участники шифруют свои сообщения симметричными системами. После завершения сеанса сеансовый ключ, как правило, уничтожается.

Алгоритм шифрования сеансового ключа выглядит следующим образом[14]:

Алгоритм:

  • Взять открытый ключ <math>(e,n)</math> Алисы
  • Создать случайный сеансовый ключ <math>m</math>
  • Зашифровать сеансовый ключ с использованием открытого ключа Алисы:
    <math>c = E(m) = m^e \mod n</math>
  • Расшифровать сообщение <math>C</math> с помощью сеансового ключа симметричным алгоритмом:
    <math>M_A = D_m(C)</math>

Алгоритм:

  • Принять зашифрованный сеансовый ключ Боба <math>c</math>
  • Взять свой закрытый ключ <math>(d,n)</math>
  • Применить закрытый ключ для расшифровывания сеансового ключа:
    <math>m = D(c) = c^d \mod n</math>
  • Зашифровать сообщение <math>M_A</math> с помощью сеансового ключа симметричным алгоритмом:
    <math>C = E_m(M_A)</math>

В случае, когда сеансовый ключ больше, чем модуль <math>n</math>, сеансовый ключ разбивают на блоки нужной длины (в случае необходимости дополняют нулями) и шифруют каждый блок.

Корректность схемы RSA

Уравнения <math>(1)</math> и <math>(2)</math>, на которых основана схема RSA, определяют взаимно обратные преобразования множества <math>\mathbb{Z}_n</math>


Пример

Этап Описание операции Результат операции
Генерация ключей Выбрать два простых различных числа
<math>p=3557</math>,
<math>q=2579</math>
Вычислить модуль (произведение)
<math> n = p \cdot q = 3557 \cdot 2579 = 9173503</math>
Вычислить функцию Эйлера
<math>\varphi(n) = (p-1) (q-1) = 9167368</math>
Выбрать открытую экспоненту
<math> e = 3</math>
Вычислить секретную экспоненту
<math> d = e^{-1} \mod \varphi(n)</math>
<math> d = 6111579</math>
Опубликовать открытый ключ
<math>\{e, n\} = \{3,9173503 \}</math>
Сохранить закрытый ключ
<math>\{d, n\} = \{6111579, 9173503 \}</math>
Шифрование Выбрать текст для зашифровки
<math>m = 111111</math>
Вычислить шифротекст
<math>\begin{align}

c &= E(m) \\

&= m^e \mod n \\
&= 111111^3   \mod 9173503 \\
&= 4051753

\end{align}</math>

Расшифрование Вычислить исходное сообщение
<math>\begin{align}

m &= D(c) = \\

 &= c^d \mod n \\
 &= 4051753^{6111579} \mod 9173503 \\
 &= 111111

\end{align}</math>

Цифровая подпись

Система RSA может использоваться не только для шифрования, но и для цифровой подписи.

Предположим, что Алисе (стороне <math>A</math>) нужно отправить Бобу (стороне <math>B</math>) сообщение <math>m</math>, подтверждённое электронной цифровой подписью.

Алгоритм:

  • Взять открытый текст <math>m</math>
  • Создать цифровую подпись <math>s</math> с помощью своего секретного ключа <math>\left\{ d, n \right\}</math>:
<math>s = S_A \left( m \right) = m^d \mod n</math>
  • Передать пару <math>\left\{ m, s \right\}</math>, состоящую из сообщения и подписи.

Алгоритм:

  • Принять пару <math>\left\{ m, s \right\}</math>
  • Взять открытый ключ <math>\left\{ e, n \right\}</math> Алисы
  • Вычислить прообраз сообщения из подписи:
<math>m' = P_A \left( s \right) = s^e \mod n</math>
  • Проверить подлинность подписи (и неизменность сообщения), сравнив <math>m</math> и <math>m'</math>

Поскольку цифровая подпись обеспечивает как аутентификацию автора сообщения, так и подтверждение целостности содержимого подписанного сообщения, она служит аналогом подписи, сделанной от руки в конце рукописного документа.

Важное свойство цифровой подписи заключается в том, что её может проверить каждый, кто имеет доступ к открытому ключу её автора. Один из участников обмена сообщениями после проверки подлинности цифровой подписи может передать подписанное сообщение ещё кому-то, кто тоже в состоянии проверить эту подпись. Например, сторона <math>A</math> может переслать стороне <math>B</math> электронный чек. После того как сторона <math>B</math> проверит подпись стороны <math>A</math> на чеке, она может передать его в свой банк, служащие которого также имеют возможность проверить подпись и осуществить соответствующую денежную операцию.

Заметим, что подписанное сообщение <math>m</math> не зашифровано. Оно пересылается в исходном виде и его содержимое не защищено от нарушения конфиденциальности. Путём совместного применения представленных выше схем шифрования и цифровой подписи в системе RSA можно создавать сообщения, которые будут и зашифрованы, и содержать цифровую подпись. Для этого автор сначала должен добавить к сообщению свою цифровую подпись, а затем — зашифровать получившуюся в результате пару (состоящую из самого сообщения и подписи к нему) с помощью открытого ключа, принадлежащего получателю. Получатель расшифровывает полученное сообщение с помощью своего секретного ключа[14]. Если проводить аналогию с пересылкой обычных бумажных документов, то этот процесс похож на то, как если бы автор документа поставил под ним свою печать, а затем положил его в бумажный конверт и запечатал, с тем чтобы конверт был распечатан только тем человеком, кому адресовано сообщение.

Скорость работы алгоритма RSA

Поскольку генерация ключей происходит значительно реже операций, реализующих шифрование, расшифрование, а также создание и проверку цифровой подписи, задача вычисления <math>a=b^c \mod n</math> представляет основную вычислительную сложность. Эта задача может быть разрешена с помощью алгоритма быстрого возведения в степень. С использованием этого алгоритма для вычисления <math>m^e \mod n</math> требуется <math>O\left( \ln e \right)</math> операций умножения по модулю[16].

\right) \mod n</math>
  • найденное <math>M_k</math> и будет искомым значением <math> M^e \bmod n</math>

Т. к. каждое вычисление на шаге 2 требует не более трёх умножений по модулю <math>n</math> и этот шаг выполняется <math>k \le \log_2 e</math> раз, то сложность алгоритма может быть оценена величиной <math>O( \ln e)</math>. }} Чтобы проанализировать время выполнения операций с открытым и закрытым ключами, предположим, что открытый ключ <math>\left\{ e, n \right\}</math> и закрытый ключ <math>\left\{ d, n \right\}</math> удовлетворяют соотношениям <math> \log_2 e =O(1)</math>, <math>\log_2 d \le \beta</math>. Тогда в процессах их применения выполняется соответственно <math>O \left( 1 \right)</math> и <math>O \left( \beta \right)</math> умножений по модулю.

Таким образом время выполнения операций растёт с увеличением количества ненулевых битов в двоичном представлении открытой экспоненты e. Чтобы увеличить скорость шифрования, значение e часто выбирают равным 17, 257 или 65537 — простым числам, двоичное представление которых содержит лишь две единицы: 1710=100012, 25710=1000000012, 6553710=100000000000000012 (простые числа Ферма).

По эвристическим оценкам длина секретной экспоненты <math>d</math>, нетривиальным образом зависящей от открытой экспоненты <math>e</math> и модуля <math>n</math>, с большой вероятностью близка к длине <math>n</math>. Поэтому расшифрование данных идёт медленнее чем шифрование, а проверка подписи быстрее чем её создание.

Алгоритм RSA намного медленнее, чем AES и другие алгоритмы, использующие симметричные блочные шифры.

Использование китайской теоремы об остатках для ускорения расшифрования

При расшифровании или подписывании сообщения в алгоритме RSA показатель вычисляемой степени будет довольно большим числом (порядка 1000 бит). Поэтому требуется алгоритм, сокращающий количество операций. Так как числа <math> p </math> и <math> q </math> в разложении <math> N = pq </math> известны владельцу закрытого ключа, то можно вычислить:

<math> m_p = C^d \mod p = C^{d\mod {p-1}} \mod p,</math>
<math> m_q = C^d \mod q = C^{d\mod {q-1}} \mod q.</math>

Поскольку <math> p </math> и <math> q </math> — числа порядка <math> 2^{512}, </math> на эти действия потребуется два потенцирования с показателем 512 знаков по модулю 512-битового числа. Это существенно (для 1024 бит тестирование показало в 3 раза) быстрее, чем одно потенцирование с 1024-битовым показателем по модулю числа с 1024 двоичными знаками. Далее осталось восстановить <math> m </math> по <math> m_p </math> и <math> m_q, </math> что можно сделать с помощью китайской теоремы об остатках.[17]

Криптоанализ RSA

Стойкость алгоритма основывается на сложности вычисления обратной функции к функции шифрования[18]

<math>c = E(m) = m ^ e \mod n</math>.

Для вычисления <math>m</math> по известным <math>c, e, n</math> нужно найти такой <math>d</math>, чтобы

<math>e \cdot d \equiv 1 \pmod{\varphi(n)},</math>

то есть

<math>d \equiv e^{-1} \pmod{\varphi(n)}.</math>

Вычисление обратного элемента по модулю не является сложной задачей, однако злоумышленнику неизвестно значение <math>\varphi(n)</math>. Для вычисления функции Эйлера от известного числа <math>n</math> необходимо знать разложение этого числа на простые множители. Нахождение таких множителей и является сложной задачей, а знание этих множителей — «потайной дверцей» (англ. backdoor), которая используется для вычисления <math>d</math> владельцем ключа. Существует множество алгоритмов для нахождения простых сомножителей, так называемой факторизации, самый быстрый из которых на сегодняшний день — общий метод решета числового поля, скорость которого для k-битного целого числа составляет

<math> \exp (( c + o(1))k^{\frac{1}{3}} \log^{\frac{2}{3}}k)</math> для некоторого <math>c < 2</math>.

В 2010 году группе учёных из Швейцарии, Японии, Франции, Нидерландов, Германии и США удалось успешно вычислить данные, зашифрованные при помощи криптографического ключа стандарта RSA длиной 768 бит. Нахождение простых сомножителей осуществлялось общим методом решета числового поля.[19] По словам исследователей, после их работы в качестве надежной системы шифрования можно рассматривать только RSA-ключи длиной 1024 бита и более. Причём от шифрования ключом длиной в 1024 бит стоит отказаться в ближайшие три-четыре года[20]. С 31 декабря 2013 года браузеры Mozilla перестали поддерживать сертификаты удостоверяющих центров с ключами RSA меньше 2048 бит[21].

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

Атаки на алгоритм RSA

Атака Винера на RSA

В некоторых приложениях требуется ускорить процесс расшифровывания в алгоритме RSA. Поэтому выбирается небольшая расшифровывающая экспонента. В случае когда расшифровывающая экспонента <math>d < N^{\frac{1}{4}}</math> можно определить <math>d</math> за полиномиальное время с помощью атаки Винера,[17] опирающейся на непрерывные дроби.

Отрывок, характеризующий RSA

Туман стал так силен, что, несмотря на то, что рассветало, не видно было в десяти шагах перед собою. Кусты казались громадными деревьями, ровные места – обрывами и скатами. Везде, со всех сторон, можно было столкнуться с невидимым в десяти шагах неприятелем. Но долго шли колонны всё в том же тумане, спускаясь и поднимаясь на горы, минуя сады и ограды, по новой, непонятной местности, нигде не сталкиваясь с неприятелем. Напротив того, то впереди, то сзади, со всех сторон, солдаты узнавали, что идут по тому же направлению наши русские колонны. Каждому солдату приятно становилось на душе оттого, что он знал, что туда же, куда он идет, то есть неизвестно куда, идет еще много, много наших.
– Ишь ты, и курские прошли, – говорили в рядах.
– Страсть, братец ты мой, что войски нашей собралось! Вечор посмотрел, как огни разложили, конца краю не видать. Москва, – одно слово!
Хотя никто из колонных начальников не подъезжал к рядам и не говорил с солдатами (колонные начальники, как мы видели на военном совете, были не в духе и недовольны предпринимаемым делом и потому только исполняли приказания и не заботились о том, чтобы повеселить солдат), несмотря на то, солдаты шли весело, как и всегда, идя в дело, в особенности в наступательное. Но, пройдя около часу всё в густом тумане, большая часть войска должна была остановиться, и по рядам пронеслось неприятное сознание совершающегося беспорядка и бестолковщины. Каким образом передается это сознание, – весьма трудно определить; но несомненно то, что оно передается необыкновенно верно и быстро разливается, незаметно и неудержимо, как вода по лощине. Ежели бы русское войско было одно, без союзников, то, может быть, еще прошло бы много времени, пока это сознание беспорядка сделалось бы общею уверенностью; но теперь, с особенным удовольствием и естественностью относя причину беспорядков к бестолковым немцам, все убедились в том, что происходит вредная путаница, которую наделали колбасники.
– Что стали то? Аль загородили? Или уж на француза наткнулись?
– Нет не слыхать. А то палить бы стал.
– То то торопили выступать, а выступили – стали без толку посереди поля, – всё немцы проклятые путают. Эки черти бестолковые!
– То то я бы их и пустил наперед. А то, небось, позади жмутся. Вот и стой теперь не емши.
– Да что, скоро ли там? Кавалерия, говорят, дорогу загородила, – говорил офицер.
– Эх, немцы проклятые, своей земли не знают, – говорил другой.
– Вы какой дивизии? – кричал, подъезжая, адъютант.
– Осьмнадцатой.
– Так зачем же вы здесь? вам давно бы впереди должно быть, теперь до вечера не пройдете.
– Вот распоряжения то дурацкие; сами не знают, что делают, – говорил офицер и отъезжал.
Потом проезжал генерал и сердито не по русски кричал что то.
– Тафа лафа, а что бормочет, ничего не разберешь, – говорил солдат, передразнивая отъехавшего генерала. – Расстрелял бы я их, подлецов!
– В девятом часу велено на месте быть, а мы и половины не прошли. Вот так распоряжения! – повторялось с разных сторон.
И чувство энергии, с которым выступали в дело войска, начало обращаться в досаду и злобу на бестолковые распоряжения и на немцев.
Причина путаницы заключалась в том, что во время движения австрийской кавалерии, шедшей на левом фланге, высшее начальство нашло, что наш центр слишком отдален от правого фланга, и всей кавалерии велено было перейти на правую сторону. Несколько тысяч кавалерии продвигалось перед пехотой, и пехота должна была ждать.
Впереди произошло столкновение между австрийским колонновожатым и русским генералом. Русский генерал кричал, требуя, чтобы остановлена была конница; австриец доказывал, что виноват был не он, а высшее начальство. Войска между тем стояли, скучая и падая духом. После часовой задержки войска двинулись, наконец, дальше и стали спускаться под гору. Туман, расходившийся на горе, только гуще расстилался в низах, куда спустились войска. Впереди, в тумане, раздался один, другой выстрел, сначала нескладно в разных промежутках: тратта… тат, и потом всё складнее и чаще, и завязалось дело над речкою Гольдбахом.
Не рассчитывая встретить внизу над речкою неприятеля и нечаянно в тумане наткнувшись на него, не слыша слова одушевления от высших начальников, с распространившимся по войскам сознанием, что было опоздано, и, главное, в густом тумане не видя ничего впереди и кругом себя, русские лениво и медленно перестреливались с неприятелем, подвигались вперед и опять останавливались, не получая во время приказаний от начальников и адъютантов, которые блудили по туману в незнакомой местности, не находя своих частей войск. Так началось дело для первой, второй и третьей колонны, которые спустились вниз. Четвертая колонна, при которой находился сам Кутузов, стояла на Праценских высотах.
В низах, где началось дело, был всё еще густой туман, наверху прояснело, но всё не видно было ничего из того, что происходило впереди. Были ли все силы неприятеля, как мы предполагали, за десять верст от нас или он был тут, в этой черте тумана, – никто не знал до девятого часа.
Было 9 часов утра. Туман сплошным морем расстилался по низу, но при деревне Шлапанице, на высоте, на которой стоял Наполеон, окруженный своими маршалами, было совершенно светло. Над ним было ясное, голубое небо, и огромный шар солнца, как огромный пустотелый багровый поплавок, колыхался на поверхности молочного моря тумана. Не только все французские войска, но сам Наполеон со штабом находился не по ту сторону ручьев и низов деревень Сокольниц и Шлапаниц, за которыми мы намеревались занять позицию и начать дело, но по сю сторону, так близко от наших войск, что Наполеон простым глазом мог в нашем войске отличать конного от пешего. Наполеон стоял несколько впереди своих маршалов на маленькой серой арабской лошади, в синей шинели, в той самой, в которой он делал итальянскую кампанию. Он молча вглядывался в холмы, которые как бы выступали из моря тумана, и по которым вдалеке двигались русские войска, и прислушивался к звукам стрельбы в лощине. В то время еще худое лицо его не шевелилось ни одним мускулом; блестящие глаза были неподвижно устремлены на одно место. Его предположения оказывались верными. Русские войска частью уже спустились в лощину к прудам и озерам, частью очищали те Праценские высоты, которые он намерен был атаковать и считал ключом позиции. Он видел среди тумана, как в углублении, составляемом двумя горами около деревни Прац, всё по одному направлению к лощинам двигались, блестя штыками, русские колонны и одна за другой скрывались в море тумана. По сведениям, полученным им с вечера, по звукам колес и шагов, слышанным ночью на аванпостах, по беспорядочности движения русских колонн, по всем предположениям он ясно видел, что союзники считали его далеко впереди себя, что колонны, двигавшиеся близ Працена, составляли центр русской армии, и что центр уже достаточно ослаблен для того, чтобы успешно атаковать его. Но он всё еще не начинал дела.
Нынче был для него торжественный день – годовщина его коронования. Перед утром он задремал на несколько часов и здоровый, веселый, свежий, в том счастливом расположении духа, в котором всё кажется возможным и всё удается, сел на лошадь и выехал в поле. Он стоял неподвижно, глядя на виднеющиеся из за тумана высоты, и на холодном лице его был тот особый оттенок самоуверенного, заслуженного счастья, который бывает на лице влюбленного и счастливого мальчика. Маршалы стояли позади его и не смели развлекать его внимание. Он смотрел то на Праценские высоты, то на выплывавшее из тумана солнце.
Когда солнце совершенно вышло из тумана и ослепляющим блеском брызнуло по полям и туману (как будто он только ждал этого для начала дела), он снял перчатку с красивой, белой руки, сделал ею знак маршалам и отдал приказание начинать дело. Маршалы, сопутствуемые адъютантами, поскакали в разные стороны, и через несколько минут быстро двинулись главные силы французской армии к тем Праценским высотам, которые всё более и более очищались русскими войсками, спускавшимися налево в лощину.


В 8 часов Кутузов выехал верхом к Працу, впереди 4 й Милорадовичевской колонны, той, которая должна была занять места колонн Пржебышевского и Ланжерона, спустившихся уже вниз. Он поздоровался с людьми переднего полка и отдал приказание к движению, показывая тем, что он сам намерен был вести эту колонну. Выехав к деревне Прац, он остановился. Князь Андрей, в числе огромного количества лиц, составлявших свиту главнокомандующего, стоял позади его. Князь Андрей чувствовал себя взволнованным, раздраженным и вместе с тем сдержанно спокойным, каким бывает человек при наступлении давно желанной минуты. Он твердо был уверен, что нынче был день его Тулона или его Аркольского моста. Как это случится, он не знал, но он твердо был уверен, что это будет. Местность и положение наших войск были ему известны, насколько они могли быть известны кому нибудь из нашей армии. Его собственный стратегический план, который, очевидно, теперь и думать нечего было привести в исполнение, был им забыт. Теперь, уже входя в план Вейротера, князь Андрей обдумывал могущие произойти случайности и делал новые соображения, такие, в которых могли бы потребоваться его быстрота соображения и решительность.
Налево внизу, в тумане, слышалась перестрелка между невидными войсками. Там, казалось князю Андрею, сосредоточится сражение, там встретится препятствие, и «туда то я буду послан, – думал он, – с бригадой или дивизией, и там то с знаменем в руке я пойду вперед и сломлю всё, что будет предо мной».
Князь Андрей не мог равнодушно смотреть на знамена проходивших батальонов. Глядя на знамя, ему всё думалось: может быть, это то самое знамя, с которым мне придется итти впереди войск.
Ночной туман к утру оставил на высотах только иней, переходивший в росу, в лощинах же туман расстилался еще молочно белым морем. Ничего не было видно в той лощине налево, куда спустились наши войска и откуда долетали звуки стрельбы. Над высотами было темное, ясное небо, и направо огромный шар солнца. Впереди, далеко, на том берегу туманного моря, виднелись выступающие лесистые холмы, на которых должна была быть неприятельская армия, и виднелось что то. Вправо вступала в область тумана гвардия, звучавшая топотом и колесами и изредка блестевшая штыками; налево, за деревней, такие же массы кавалерии подходили и скрывались в море тумана. Спереди и сзади двигалась пехота. Главнокомандующий стоял на выезде деревни, пропуская мимо себя войска. Кутузов в это утро казался изнуренным и раздражительным. Шедшая мимо его пехота остановилась без приказания, очевидно, потому, что впереди что нибудь задержало ее.
– Да скажите же, наконец, чтобы строились в батальонные колонны и шли в обход деревни, – сердито сказал Кутузов подъехавшему генералу. – Как же вы не поймете, ваше превосходительство, милостивый государь, что растянуться по этому дефилею улицы деревни нельзя, когда мы идем против неприятеля.
– Я предполагал построиться за деревней, ваше высокопревосходительство, – отвечал генерал.
Кутузов желчно засмеялся.
– Хороши вы будете, развертывая фронт в виду неприятеля, очень хороши.
– Неприятель еще далеко, ваше высокопревосходительство. По диспозиции…
– Диспозиция! – желчно вскрикнул Кутузов, – а это вам кто сказал?… Извольте делать, что вам приказывают.
– Слушаю с.
– Mon cher, – сказал шопотом князю Андрею Несвицкий, – le vieux est d'une humeur de chien. [Мой милый, наш старик сильно не в духе.]
К Кутузову подскакал австрийский офицер с зеленым плюмажем на шляпе, в белом мундире, и спросил от имени императора: выступила ли в дело четвертая колонна?
Кутузов, не отвечая ему, отвернулся, и взгляд его нечаянно попал на князя Андрея, стоявшего подле него. Увидав Болконского, Кутузов смягчил злое и едкое выражение взгляда, как бы сознавая, что его адъютант не был виноват в том, что делалось. И, не отвечая австрийскому адъютанту, он обратился к Болконскому:
– Allez voir, mon cher, si la troisieme division a depasse le village. Dites lui de s'arreter et d'attendre mes ordres. [Ступайте, мой милый, посмотрите, прошла ли через деревню третья дивизия. Велите ей остановиться и ждать моего приказа.]
Только что князь Андрей отъехал, он остановил его.
– Et demandez lui, si les tirailleurs sont postes, – прибавил он. – Ce qu'ils font, ce qu'ils font! [И спросите, размещены ли стрелки. – Что они делают, что они делают!] – проговорил он про себя, все не отвечая австрийцу.
Князь Андрей поскакал исполнять поручение.
Обогнав всё шедшие впереди батальоны, он остановил 3 ю дивизию и убедился, что, действительно, впереди наших колонн не было стрелковой цепи. Полковой командир бывшего впереди полка был очень удивлен переданным ему от главнокомандующего приказанием рассыпать стрелков. Полковой командир стоял тут в полной уверенности, что впереди его есть еще войска, и что неприятель не может быть ближе 10 ти верст. Действительно, впереди ничего не было видно, кроме пустынной местности, склоняющейся вперед и застланной густым туманом. Приказав от имени главнокомандующего исполнить упущенное, князь Андрей поскакал назад. Кутузов стоял всё на том же месте и, старчески опустившись на седле своим тучным телом, тяжело зевал, закрывши глаза. Войска уже не двигались, а стояли ружья к ноге.
– Хорошо, хорошо, – сказал он князю Андрею и обратился к генералу, который с часами в руках говорил, что пора бы двигаться, так как все колонны с левого фланга уже спустились.
– Еще успеем, ваше превосходительство, – сквозь зевоту проговорил Кутузов. – Успеем! – повторил он.
В это время позади Кутузова послышались вдали звуки здоровающихся полков, и голоса эти стали быстро приближаться по всему протяжению растянувшейся линии наступавших русских колонн. Видно было, что тот, с кем здоровались, ехал скоро. Когда закричали солдаты того полка, перед которым стоял Кутузов, он отъехал несколько в сторону и сморщившись оглянулся. По дороге из Працена скакал как бы эскадрон разноцветных всадников. Два из них крупным галопом скакали рядом впереди остальных. Один был в черном мундире с белым султаном на рыжей энглизированной лошади, другой в белом мундире на вороной лошади. Это были два императора со свитой. Кутузов, с аффектацией служаки, находящегося во фронте, скомандовал «смирно» стоявшим войскам и, салютуя, подъехал к императору. Вся его фигура и манера вдруг изменились. Он принял вид подначальственного, нерассуждающего человека. Он с аффектацией почтительности, которая, очевидно, неприятно поразила императора Александра, подъехал и салютовал ему.
Неприятное впечатление, только как остатки тумана на ясном небе, пробежало по молодому и счастливому лицу императора и исчезло. Он был, после нездоровья, несколько худее в этот день, чем на ольмюцком поле, где его в первый раз за границей видел Болконский; но то же обворожительное соединение величавости и кротости было в его прекрасных, серых глазах, и на тонких губах та же возможность разнообразных выражений и преобладающее выражение благодушной, невинной молодости.
На ольмюцком смотру он был величавее, здесь он был веселее и энергичнее. Он несколько разрумянился, прогалопировав эти три версты, и, остановив лошадь, отдохновенно вздохнул и оглянулся на такие же молодые, такие же оживленные, как и его, лица своей свиты. Чарторижский и Новосильцев, и князь Болконский, и Строганов, и другие, все богато одетые, веселые, молодые люди, на прекрасных, выхоленных, свежих, только что слегка вспотевших лошадях, переговариваясь и улыбаясь, остановились позади государя. Император Франц, румяный длиннолицый молодой человек, чрезвычайно прямо сидел на красивом вороном жеребце и озабоченно и неторопливо оглядывался вокруг себя. Он подозвал одного из своих белых адъютантов и спросил что то. «Верно, в котором часу они выехали», подумал князь Андрей, наблюдая своего старого знакомого, с улыбкой, которую он не мог удержать, вспоминая свою аудиенцию. В свите императоров были отобранные молодцы ординарцы, русские и австрийские, гвардейских и армейских полков. Между ними велись берейторами в расшитых попонах красивые запасные царские лошади.
Как будто через растворенное окно вдруг пахнуло свежим полевым воздухом в душную комнату, так пахнуло на невеселый Кутузовский штаб молодостью, энергией и уверенностью в успехе от этой прискакавшей блестящей молодежи.
– Что ж вы не начинаете, Михаил Ларионович? – поспешно обратился император Александр к Кутузову, в то же время учтиво взглянув на императора Франца.
– Я поджидаю, ваше величество, – отвечал Кутузов, почтительно наклоняясь вперед.
Император пригнул ухо, слегка нахмурясь и показывая, что он не расслышал.
– Поджидаю, ваше величество, – повторил Кутузов (князь Андрей заметил, что у Кутузова неестественно дрогнула верхняя губа, в то время как он говорил это поджидаю ). – Не все колонны еще собрались, ваше величество.
Государь расслышал, но ответ этот, видимо, не понравился ему; он пожал сутуловатыми плечами, взглянул на Новосильцева, стоявшего подле, как будто взглядом этим жалуясь на Кутузова.
– Ведь мы не на Царицыном лугу, Михаил Ларионович, где не начинают парада, пока не придут все полки, – сказал государь, снова взглянув в глаза императору Францу, как бы приглашая его, если не принять участие, то прислушаться к тому, что он говорит; но император Франц, продолжая оглядываться, не слушал.
– Потому и не начинаю, государь, – сказал звучным голосом Кутузов, как бы предупреждая возможность не быть расслышанным, и в лице его еще раз что то дрогнуло. – Потому и не начинаю, государь, что мы не на параде и не на Царицыном лугу, – выговорил он ясно и отчетливо.
В свите государя на всех лицах, мгновенно переглянувшихся друг с другом, выразился ропот и упрек. «Как он ни стар, он не должен бы, никак не должен бы говорить этак», выразили эти лица.
Государь пристально и внимательно посмотрел в глаза Кутузову, ожидая, не скажет ли он еще чего. Но Кутузов, с своей стороны, почтительно нагнув голову, тоже, казалось, ожидал. Молчание продолжалось около минуты.
– Впрочем, если прикажете, ваше величество, – сказал Кутузов, поднимая голову и снова изменяя тон на прежний тон тупого, нерассуждающего, но повинующегося генерала.
Он тронул лошадь и, подозвав к себе начальника колонны Милорадовича, передал ему приказание к наступлению.
Войско опять зашевелилось, и два батальона Новгородского полка и батальон Апшеронского полка тронулись вперед мимо государя.
В то время как проходил этот Апшеронский батальон, румяный Милорадович, без шинели, в мундире и орденах и со шляпой с огромным султаном, надетой набекрень и с поля, марш марш выскакал вперед и, молодецки салютуя, осадил лошадь перед государем.
– С Богом, генерал, – сказал ему государь.
– Ma foi, sire, nous ferons ce que qui sera dans notre possibilite, sire, [Право, ваше величество, мы сделаем, что будет нам возможно сделать, ваше величество,] – отвечал он весело, тем не менее вызывая насмешливую улыбку у господ свиты государя своим дурным французским выговором.
Милорадович круто повернул свою лошадь и стал несколько позади государя. Апшеронцы, возбуждаемые присутствием государя, молодецким, бойким шагом отбивая ногу, проходили мимо императоров и их свиты.
– Ребята! – крикнул громким, самоуверенным и веселым голосом Милорадович, видимо, до такой степени возбужденный звуками стрельбы, ожиданием сражения и видом молодцов апшеронцев, еще своих суворовских товарищей, бойко проходивших мимо императоров, что забыл о присутствии государя. – Ребята, вам не первую деревню брать! – крикнул он.
– Рады стараться! – прокричали солдаты.
Лошадь государя шарахнулась от неожиданного крика. Лошадь эта, носившая государя еще на смотрах в России, здесь, на Аустерлицком поле, несла своего седока, выдерживая его рассеянные удары левой ногой, настораживала уши от звуков выстрелов, точно так же, как она делала это на Марсовом поле, не понимая значения ни этих слышавшихся выстрелов, ни соседства вороного жеребца императора Франца, ни всего того, что говорил, думал, чувствовал в этот день тот, кто ехал на ней.
Государь с улыбкой обратился к одному из своих приближенных, указывая на молодцов апшеронцев, и что то сказал ему.


Кутузов, сопутствуемый своими адъютантами, поехал шагом за карабинерами.
Проехав с полверсты в хвосте колонны, он остановился у одинокого заброшенного дома (вероятно, бывшего трактира) подле разветвления двух дорог. Обе дороги спускались под гору, и по обеим шли войска.
Туман начинал расходиться, и неопределенно, верстах в двух расстояния, виднелись уже неприятельские войска на противоположных возвышенностях. Налево внизу стрельба становилась слышнее. Кутузов остановился, разговаривая с австрийским генералом. Князь Андрей, стоя несколько позади, вглядывался в них и, желая попросить зрительную трубу у адъютанта, обратился к нему.
– Посмотрите, посмотрите, – говорил этот адъютант, глядя не на дальнее войско, а вниз по горе перед собой. – Это французы!
Два генерала и адъютанты стали хвататься за трубу, вырывая ее один у другого. Все лица вдруг изменились, и на всех выразился ужас. Французов предполагали за две версты от нас, а они явились вдруг, неожиданно перед нами.
– Это неприятель?… Нет!… Да, смотрите, он… наверное… Что ж это? – послышались голоса.
Князь Андрей простым глазом увидал внизу направо поднимавшуюся навстречу апшеронцам густую колонну французов, не дальше пятисот шагов от того места, где стоял Кутузов.
«Вот она, наступила решительная минута! Дошло до меня дело», подумал князь Андрей, и ударив лошадь, подъехал к Кутузову. «Надо остановить апшеронцев, – закричал он, – ваше высокопревосходительство!» Но в тот же миг всё застлалось дымом, раздалась близкая стрельба, и наивно испуганный голос в двух шагах от князя Андрея закричал: «ну, братцы, шабаш!» И как будто голос этот был команда. По этому голосу всё бросилось бежать.
Смешанные, всё увеличивающиеся толпы бежали назад к тому месту, где пять минут тому назад войска проходили мимо императоров. Не только трудно было остановить эту толпу, но невозможно было самим не податься назад вместе с толпой.
Болконский только старался не отставать от нее и оглядывался, недоумевая и не в силах понять того, что делалось перед ним. Несвицкий с озлобленным видом, красный и на себя не похожий, кричал Кутузову, что ежели он не уедет сейчас, он будет взят в плен наверное. Кутузов стоял на том же месте и, не отвечая, доставал платок. Из щеки его текла кровь. Князь Андрей протеснился до него.
– Вы ранены? – спросил он, едва удерживая дрожание нижней челюсти.
– Раны не здесь, а вот где! – сказал Кутузов, прижимая платок к раненой щеке и указывая на бегущих. – Остановите их! – крикнул он и в то же время, вероятно убедясь, что невозможно было их остановить, ударил лошадь и поехал вправо.
Вновь нахлынувшая толпа бегущих захватила его с собой и повлекла назад.
Войска бежали такой густой толпой, что, раз попавши в середину толпы, трудно было из нее выбраться. Кто кричал: «Пошел! что замешкался?» Кто тут же, оборачиваясь, стрелял в воздух; кто бил лошадь, на которой ехал сам Кутузов. С величайшим усилием выбравшись из потока толпы влево, Кутузов со свитой, уменьшенной более чем вдвое, поехал на звуки близких орудийных выстрелов. Выбравшись из толпы бегущих, князь Андрей, стараясь не отставать от Кутузова, увидал на спуске горы, в дыму, еще стрелявшую русскую батарею и подбегающих к ней французов. Повыше стояла русская пехота, не двигаясь ни вперед на помощь батарее, ни назад по одному направлению с бегущими. Генерал верхом отделился от этой пехоты и подъехал к Кутузову. Из свиты Кутузова осталось только четыре человека. Все были бледны и молча переглядывались.
– Остановите этих мерзавцев! – задыхаясь, проговорил Кутузов полковому командиру, указывая на бегущих; но в то же мгновение, как будто в наказание за эти слова, как рой птичек, со свистом пролетели пули по полку и свите Кутузова.
Французы атаковали батарею и, увидав Кутузова, выстрелили по нем. С этим залпом полковой командир схватился за ногу; упало несколько солдат, и подпрапорщик, стоявший с знаменем, выпустил его из рук; знамя зашаталось и упало, задержавшись на ружьях соседних солдат.
Солдаты без команды стали стрелять.
– Ооох! – с выражением отчаяния промычал Кутузов и оглянулся. – Болконский, – прошептал он дрожащим от сознания своего старческого бессилия голосом. – Болконский, – прошептал он, указывая на расстроенный батальон и на неприятеля, – что ж это?
Но прежде чем он договорил эти слова, князь Андрей, чувствуя слезы стыда и злобы, подступавшие ему к горлу, уже соскакивал с лошади и бежал к знамени.
– Ребята, вперед! – крикнул он детски пронзительно.
«Вот оно!» думал князь Андрей, схватив древко знамени и с наслаждением слыша свист пуль, очевидно, направленных именно против него. Несколько солдат упало.
– Ура! – закричал князь Андрей, едва удерживая в руках тяжелое знамя, и побежал вперед с несомненной уверенностью, что весь батальон побежит за ним.
Действительно, он пробежал один только несколько шагов. Тронулся один, другой солдат, и весь батальон с криком «ура!» побежал вперед и обогнал его. Унтер офицер батальона, подбежав, взял колебавшееся от тяжести в руках князя Андрея знамя, но тотчас же был убит. Князь Андрей опять схватил знамя и, волоча его за древко, бежал с батальоном. Впереди себя он видел наших артиллеристов, из которых одни дрались, другие бросали пушки и бежали к нему навстречу; он видел и французских пехотных солдат, которые хватали артиллерийских лошадей и поворачивали пушки. Князь Андрей с батальоном уже был в 20 ти шагах от орудий. Он слышал над собою неперестававший свист пуль, и беспрестанно справа и слева от него охали и падали солдаты. Но он не смотрел на них; он вглядывался только в то, что происходило впереди его – на батарее. Он ясно видел уже одну фигуру рыжего артиллериста с сбитым на бок кивером, тянущего с одной стороны банник, тогда как французский солдат тянул банник к себе за другую сторону. Князь Андрей видел уже ясно растерянное и вместе озлобленное выражение лиц этих двух людей, видимо, не понимавших того, что они делали.