Что такое двойное шифрование

Двойное шифрование

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

Что такое двойное шифрование. Смотреть фото Что такое двойное шифрование. Смотреть картинку Что такое двойное шифрование. Картинка про Что такое двойное шифрование. Фото Что такое двойное шифрование

Что такое двойное шифрование. Смотреть фото Что такое двойное шифрование. Смотреть картинку Что такое двойное шифрование. Картинка про Что такое двойное шифрование. Фото Что такое двойное шифрование

Если блочный алгоритм образует группу (см. раздел 11.3), то всегда существует K3, для которого

Что такое двойное шифрование. Смотреть фото Что такое двойное шифрование. Смотреть картинку Что такое двойное шифрование. Картинка про Что такое двойное шифрование. Фото Что такое двойное шифрование

В этом вскрытии криптоаналитику известны P1, C1, P2 и C2, такие что

Что такое двойное шифрование. Смотреть фото Что такое двойное шифрование. Смотреть картинку Что такое двойное шифрование. Картинка про Что такое двойное шифрование. Фото Что такое двойное шифрование

Что такое двойное шифрование. Смотреть фото Что такое двойное шифрование. Смотреть картинку Что такое двойное шифрование. Картинка про Что такое двойное шифрование. Фото Что такое двойное шифрование

Для такого вскрытия нужен большой объем памяти: 2 n блоков. Для 56-битового ключа нужно хранить 2 56 64-битовых блоков, или 10 17 байтов. Такой объем памяти пока еще трудно себе представить, но этого хватает, чтобы убедить самых параноидальных криптографов в том, что двойным шифрованием пользоваться не стоит.

При 128-битовом ключе для хранения промежуточных результатов потребуется 10 39 байтов. Если предположить, что есть способ хранить бит информации, используя единственный атом алюминия, устройство памяти, нужное для выполнения такого вскрытия, будет представлять собой алюминиевый куб с ребром, длиной 1 км. Кроме того, вам понадобится куда-то его поставить! Вскрытие «встреча посередине» кажется невозможным для ключей такого размера.

Другим способом двойного шифрования, который иногда называют Davies-Price, является вариантом CBC [435].

Что такое двойное шифрование. Смотреть фото Что такое двойное шифрование. Смотреть картинку Что такое двойное шифрование. Картинка про Что такое двойное шифрование. Фото Что такое двойное шифрование

Утверждается, что «у этого режима нет никаких особых достоинств», к тому же он, по видимому, так же чувствителен ко вскрытию «встреча посередине» как и другие режимы двойного шифрования.

Источник

Асимметричное шифрование

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

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

Принцип действия асимметричного шифрования

Схема передачи данных между двумя субъектами (А и Б) с использованием открытого ключа выглядит следующим образом:

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

Применение асимметричных алгоритмов

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

Например, стандарты SSL и TLS используют асимметричный алгоритм на стадии установки соединения (рукопожатия): с его помощью кодируют и передают ключ от симметричного шифра, которым и пользуются в ходе дальнейшей передачи данных.

Также асимметричные алгоритмы применяются для создания электронных подписей для подтверждения авторства и (или) целостности данных. При этом подпись генерируется с помощью закрытого ключа, а проверяется с помощью открытого.

Асимметричные алгоритмы

Наиболее распространенные алгоритмы асимметричного шифрования:

Надежность асимметричного шифрования

Теоретически приватный ключ от асимметричного шифра можно вычислить, зная публичный ключ и механизм, лежащий в основе алгоритма шифрования (последнее — открытая информация). Надежными считаются шифры, для которых это нецелесообразно с практической точки зрения. Так, на взлом шифра, выполненного с помощью алгоритма RSA с ключом длиной 768 бит на компьютере с одноядерным процессором AMD Opteron с частотой 2,2 ГГц, бывшем в ходу в середине 2000-х, ушло бы 2000 лет.

При этом фактическая надежность шифрования зависит в основном от длины ключа и сложности решения задачи, лежащей в основе алгоритма шифрования, для существующих технологий. Поскольку производительность вычислительных машин постоянно растет, длину ключей необходимо время от времени увеличивать. Так, в 1977-м (год публикации алгоритма RSA) невозможной с практической точки зрения считалась расшифровка сообщения, закодированного с помощью ключа длиной 426 бит, а сейчас для шифрования этим методом используются ключи от 1024 до 4096 бит, причем первые уже переходят в категорию ненадежных.

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

Публикации на схожие темы

Сквозное шифрование: что это и зачем оно нужно вам

Квантовые компьютеры и криптография для чайников

Квантовые компьютеры — для «чайников»

Эволюция шифровальщика JSWorm

Программы-вымогатели: пара хороших новостей

Дорога к «интернету вещей»: преимущества и риски смарт-езды

Источник

Закон Шнайера

Что такое двойное шифрование. Смотреть фото Что такое двойное шифрование. Смотреть картинку Что такое двойное шифрование. Картинка про Что такое двойное шифрование. Фото Что такое двойное шифрование

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

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

Двойное шифрование

DES был принят в качестве стандарта в 1977 году. Длина ключа нового стандарта составляла 56 бит, довольно большое число по тем временам. Однако закон Мура неумолим, и некоторые криптографы уже тогда начали бить тревогу.
Одними из первых, кто подверг критике длину ключа нового стандарта были небезызвестные отцы-основатели криптографии с открытым ключом: Уитфилд Диффи и Мартин Хеллман. В одной из своих статей они утверждали, что 56-битный ключ слишком мал и оставляет возможность для атаки полного перебора.

В свете вышеуказанного замечания вполне логичным выглядят попытки увеличить стойкость алгоритма DES, используя технику многократного шифрования. Этот способ позволяет искусственно увеличить длину ключа, применяя несколько раз операцию шифрования с разными ключами.
На первый взгляд может показаться, что для решения проблемы DES достаточно увеличить длину ключа вдвое, т.е. использовать следующую схему в качестве шифрования и расшифровки:
C=EK2 (EK1 (P)),
P=DK1 (DK2 (С)),

где C — шифртекст; P — открытый текст; а EK (P) и DK (С) — процедуры шифрования и расшифровки соответственно.
Приведенная схема увеличивает пространство ключа до 2 112 и делает атаку грубой силой бессмысленной затеей.

Тройное шифрование

В 1978 году Вальтер Тачман предложил использовать тройное шифрование для увеличения стойкости алгоритма DES. В схеме Тачмана также используется два ключа K1 и K2, но процесс шифрования и расшифровки выглядит следующим образом:
C=EK1 (DK2 (EK1(P)))
P=DK1 (EK2 (DK1(С))).
Этот способ защищен против атаки «встреча по середине». Даже если атакующий сформирует таблицу K1(С), K1>, для проведения атаки ему необходимо будет получить все возможные значения K2((EK1(P)), K1||K2>, что составляет 2 112 записей и разумеется не представляется реальным.
Но и метод Тачмана не долго считался надежным.

Закон Шнайера

Когда я учился в колледже в 70-х я придумал, как мне тогда казалось, идеальную схему шифрования. Простой генератор псевдослучайных чисел генерировал гамму, которая суммировалась с открытым текстом. Схема была стойкой против частотного анализа шифртекста и была совершенно не взламываема для спецслужб, обладающим огромными вычислительными мощностями.
Годы спустя я нашел похожую схему в некоторых учебниках по криптографии. Классно. Другие криптографы думают в похожем направлении. К сожалению, схема была описана в качестве простого домашнего задания: взломайте схему, используя базовые методы криптоанализа.

Если вы считаете, что создали идеально стойкую систему, не спешите использовать ее в своем проекте. Вспомните о законе Шнайера и лучше воспользуйтесь широко известным методом.

Источник

ProtonMail: Сквозное шифрование: описание и принцип работы метода

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

Что не является сквозным шифрованием?

Для того, чтобы иметь ясную картину, что из себя представляет метод E2EE, во-первых, мы должны выяснить, что не является сквозным шифрованием. Вы вероятно знаете о шифровании, которое используется веб-сайтами с целью защиты онлайн активности. Например, когда Вы посещаете сервис https://www.gmail.com, протокол HTTPS в начале адресной строки свидетельствует о том, что для шифрования передачи данных между компьютером и серверами Google используются криптографические протоколы SSL или TLS. Данный протокол является более безопасным, чем HTTP и широко применяется веб-ресурсами для защиты от перехвата данных. Главным недостатком технологии HTTPS является тот факт, что при общении двух пользователей передающие данные проходят через централизованные сервера (например, GMail), которые имеют ключи для расшифровки информации. Чтобы исключить сервера из цепочки, повысив таким образом приватность данных, можно использовать сквозное шифрование.

Как работает сквозное шифрование?

В сквозном шифровании конечными пунктами передачи являются непосредственно устройства отправителя и получателя. Сообщение шифруется локально на устройстве отправителя и может быть расшифровано исключительно на устройстве получателя. Сквозное шифрование часто называют “шифрование на стороне клиента” или “нулевой доступ” из-за факта, что шифрование происходит на устройствах конечных пользователей, а не на облачных серверах. Благодаря данной особенности, сквозное шифрование предотвращает потенциальное чтение пользовательских данных серверами. При реализации сквозного шифрования существует два вида криптографических алгоритмов: симметричный и ассиметричный.

Что такое двойное шифрование. Смотреть фото Что такое двойное шифрование. Смотреть картинку Что такое двойное шифрование. Картинка про Что такое двойное шифрование. Фото Что такое двойное шифрование
Рис. 1 Сквозное шифрование гарантирует, что централизованные сервера не имеют доступ к данным

Симметричная криптография

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

Для того, чтобы проиллюстрировать, как в действительности работает симметричная криптография, рассмотрим передачу сообщения с почтового адреса сервиса ProtonMail на адрес другого провайдера услуг электронной почты. В этом случае Вам нужно задать пароль на сообщение и передать его вашим получателям. Получатели получают сообщение, содержащее ссылку на страницу ProtonMail, где находится зашифрованный текст. Затем получатели вводят заданный отправителем пароль к сообщению, и сообщение расшифровывается на локальном компьютере. Таким образом, пароль никогда не покидает компьютер отправителя и не отправляется на сервера ProtonMail, поэтому никто посторонний не может расшифровать сообщение.

Ассиметричная криптография

Главной проблемой использования симметричной криптографии является необходимость поиска канала для безопасного обмена ключа с получателем (если перехватчик получил криптограмму и ключ, сообщение будет рассекречено). Если бы только существовал способ публичного обмена ключа с получателями без риска несанкционированного доступа к зашифрованным сообщениям…

Что такое двойное шифрование. Смотреть фото Что такое двойное шифрование. Смотреть картинку Что такое двойное шифрование. Картинка про Что такое двойное шифрование. Фото Что такое двойное шифрование
Рис. 2 Без закрытого ключа, сообщения, зашифрованные сквозным шифрованием, выглядят следующим образом

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

Преимущества использования сквозного шифрования

Сквозное шифрование обеспечивает максимальный уровень защиты для пользователей, которые серьезно заботятся о конфиденциальности данных. Для управления приватными данными Вам больше не придется полагаться на сторонние сервисы, которые могут:

Почему вы не использовали метод раньше?

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

Источник

Двойное шифрование

4.1. Двойное шифрование

Если блочный алгоритм образует группу, всегда существует такой К3, для которого:

Если алгоритм не образует группу, взломать итоговый дважды зашифрованный блок шифртекста с помощью полного перебора намного сложнее. Вместо 2 n (где п – длина ключа в битах), потребуется 2 2n попыток. Если алгоритм использует 64-битовый ключ, для обнаружения ключей, которыми дважды зашифрован шифртекст, понадобится 2 128 попыток.

В этой атаке криптоаналитику известны значения P1, С1, Р2 и С2, такие что:

Для такого вскрытия нужен большой объем памяти: 2 n блоков. Для 56-битового ключа нужно хранить 2 56 64-битовых блоков, или 10 17 байт. Такой объем памяти пока еще трудно себе представить, но этого хватает, чтобы убедить самых осторожных криптографов в ненадежности двойного шифрования.

При 128-битовом ключе для хранения промежуточных результатов потребуется огромная память в 10 39 байт. Если предположить, что каждый бит информации хранится на единственном атоме алюминия, запоминающее устройство, нужное для такого вскрытия, будет представлять собой алюминиевый куб с ребром 1 км. Кроме того, понадобится куда-то его поставить. Так что атака «встреча посередине» при ключах такого размера представляется невозможной.

Другой способ двойного шифрования, который иногда называют методом Дэвиса-Прайса (Davies-Price), представляет собой вариант режима шифрования СВС.

Утверждается, что «у этого режима нет никаких особых достоинств», к тому же он, по-видимому, столь же уязвим к атаке «встреча посередине», как и другие режимы двойного шифрования.

4.2. Тройное шифрование

4.2.1. Тройное шифрование с двумя ключами

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

Для предотвращения описанной выше атаки «встреча посередине», использование ключей ki и K2 чередуется. Если С=ЕK2К1К1(Р))), то криптоаналитик может заранее вычислить ЕК1К1(Р))) для любого возможного K1, а затем выполнить вскрытие. Для этого потребуется только 2 n+2 шифрований.

Для каждого возможного К2 расшифровывают 0 и сохраняют результат в памяти. Затем расшифровывают 0 для каждого возможного К1, чтобы получить Р. Выполняют тройное зашифрование Р, чтобы получить С, и затем расшифровывают С ключом К1. Если полученное значение совпадает со значением (хранящимся в памяти), полученным при расшифровании 0 ключом К2, то, возможно, пара K1K2 и будет искомым результатом. Проверяют, так ли это. Если нет, продолжают поиск.

Для выполнения этого вскрытия с подобранным открытым текстом нужна память огромного объема. Понадобится 2 n времени и памяти, а также 2 m подобранных открытых текстов. Атака не слишком практична, но все же указывает на некоторую слабость этого метода.

Пауль ван Оорсчот (Paul van Oorschot) и Майкл Винер (Michael Wiener) преобразовали эту атаку к атаке на основе открытых текстов, для которой их нужно р штук. В примере предполагается использование режима EDE.

1) Предположить первое промежуточное значение а.

2) Используя известный открытый текст, свести в таблицу для каждого возможного К1 второе промежуточное значение b при первом промежуточном значении, равном а:

3) Для каждого возможного K2 найти в таблице элементы с совпадающим вторым промежуточным значением b:

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *