Симметричный алгоритм это: Симметричный алгоритм — это… Что такое Симметричный алгоритм?

Содержание

Симметричный алгоритм — это… Что такое Симметричный алгоритм?

Симметричный алгоритм

«…146) симметричный алгоритм — криптографический алгоритм, использующий один и тот же ключ как для шифрования, так и для дешифрования (часть 2 категории 5)…»

Источник:

Приказ ФТС России от 27.03.2012 N 575 (ред. от 30.10.2012) «О контроле за экспортом товаров и технологий двойного назначения, которые могут быть использованы при создании вооружений и военной техники и в отношении которых осуществляется экспортный контроль»

Официальная терминология. Академик.ру. 2012.

  • Символика
  • Синантропные членистоногие

Смотреть что такое «Симметричный алгоритм» в других словарях:

  • Симметричный алгоритм — …   Википедия

  • Симметричный алгоритм шифрования — …   Википедия

  • симметричный (основанный на секретном ключе) криптографический алгоритм — Алгоритм для выполнения шифрования или соответствующий алгоритм для выполнения дешифрования, в котором один и тот же ключ используется как для шифрования, так и для дешифрования (МСЭ Т Н.235.0, МСЭ Т Н.235). [http://www.iks… …   Справочник технического переводчика

  • симметричный криптографический алгоритм — Алгоритм выполнения шифрования или соответствующий алгоритм выполнения дешифрования, в котором для шифрования и дешифрования требуется один и тот же ключ. Рекомендация МСЭ Т X.810. [http://www.rfcmd.ru/glossword/1.8/index.php?a=index&d=4652]… …   Справочник технического переводчика

  • международный алгоритм шифрования данных — 64 битовый блочный симметричный алгоритм шифрования со 128 битным ключом, основанных на смешанных операциях в различных алгебраических группах. Считается одним из наиболее стойких алгоритмов. [http://www.morepc.ru/dict/] Тематики информационные… …   Справочник технического переводчика

  • SEAL (криптографический алгоритм) — Схема алгоритма SEAL У этого термина существуют и другие значения, см. SEAL (значения). SEAL …   Википедия

  • Rainbow (алгоритм) — Rainbow Создатель: Chang Hyi Lee and Jeong Soo Kim Создан: 1998 г. Опубликован: 1998 г. Размер ключа: 128/256 бит Размер блока: 128 бит Число раундов: 7 Тип …   Википедия

  • SKIPJACK — симметричный алгоритм шифрования, предлагаемый в качестве стандарта в США …   Словарь электронного бизнеса

  • Шнайер, Брюс — Брюс Шнайер Bruce Schneier …   Википедия

  • Twofish — Создатель: группа специалистов во главе с Брюсом Шнайером Размер ключа: 256 …   Википедия

Что такое симметричное шифрование | Энциклопедия «Касперского»

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

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

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

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

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

Поэтому современные симметричные алгоритмы считаются надежными, если отвечают следующим требованиям:

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

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

Виды алгоритмов симметричного шифрования

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

  • блочные;
  • потоковые.

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

К актуальным блочным алгоритмам относятся:

  • AES
  • ГОСТ 28147-89
  • RC5
  • Blowfish
  • Twofish

Потоковое шифрование данных предполагает обработку каждого бита информации с использованием гаммирования, то есть изменения этого бита с помощью соответствующего ему бита псевдослучайной секретной последовательности чисел, которая формируется на основе ключа и имеет ту же длину, что и шифруемое сообщение. Как правило, биты исходных данных сравниваются с битами секретной последовательности с помощью логической операции XOR (исключающее ИЛИ, на выходе дающее 0, если значения битов совпадают, и 1, если они различаются).

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

Достоинства и недостатки симметричного шифрования

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

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

Область применения симметричного шифрования

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

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

Симметричные алгоритмы | Типы симметричных алгоритмов

Введение в симметричные алгоритмы

Симметричные алгоритмы, также известные как алгоритмы секретного ключа, широко используются при шифровании объемных данных или потока данных. Это тип криптографического алгоритма, который шифрует и дешифрует данные, используя один и тот же ключ (что делает этот алгоритм симметричным). Он называется секретным ключом, поскольку используемый ключ хранится в секрете системами, которые участвуют в процессе шифрования и дешифрования. Шифрование, выполняемое этим алгоритмом, нелегко сломать, если у человека, который пытается расшифровать, нет секретного ключа, ему придется использовать передовые методы для его взлома. Эти алгоритмы, как правило, очень быстрые по своей природе, что является еще одной причиной, по которой они используются, когда требуется шифрование больших объемов данных. Рис. 1a изображает базовый симметричный ключ шифрования:

Figure1.a Шифрование с симметричным ключом

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

Широко симметричные алгоритмы подразделяются на два

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

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

Алгоритмы потока

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

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

  • DES & Triple DES
  • RC2
  • Blowfish

DES & Triple DES

DES обозначает стандарт шифрования данных, который принимает 64-битный простой текст, шифрует его в 64-битный зашифрованный текст и расшифровывает обратно с помощью 56-битного ключа. В DES процесс шифрования начинается с начальной стадии перестановки, где он будет принимать входные данные как 64-битные данные и переставлять их предопределенным образом. За исходной перестановкой следует, что 16 раундов шифрования Фейстеля (шифр Фейстеля принимает входные данные и делит его на две части и выполняет шифрование только на одну часть), где в каждом раунде используется различный 48-битный ключ шифра. Для целей шифрования и дешифрования он использует шифр и инвертирует алгоритм шифрования. Наконец, данные проходят финальную стадию перестановки, чтобы получить зашифрованный текст. Подобно DES Triple DES — это всего лишь шифр DES, повторенный 3 раза. Fig2.a показывает общую архитектуру алгоритма DES.

Общая архитектура алгоритма DES

RC2

Это алгоритм блочного шифрования, в котором сначала данные делятся на блоки размером 8 байт, и эти блоки обрабатываются отдельно. Этот алгоритм широко использовался в 90-х годах. Шифр Rc2 использует секретный пользовательский ключ, размер которого может варьироваться от одного байта до 128 байтов. Он берет этот секретный ключ пользователя, использует алгоритм расширения ключа и шифрует данные. Этот алгоритм разработан таким образом, чтобы его можно было легко реализовать в 16-разрядных микропроцессорах. Здесь нет раундов Фейстеля, вместо этого данные подвергаются 18 раундам смешивания и затирания. На Рис. 2b показана общая архитектура алгоритма RC2.

Общая архитектура алгоритма RC2

Blowfish

Это асимметричный алгоритм, который заменяет DES. Здесь используемый размер блока составляет 64 бита, а размеры ключей варьируются от 32 до 448 бит. Шифрование с использованием Blowfish в основном состоит из двух этапов

  • Круглая функция
  • Операция вывода

Функция округления выполняет следующие шаги

  1. Отбеливание клавиш, при котором берется левая часть входных данных и выполняется исключительная операция ИЛИ.
  2. На втором шаге используются S-блоки, эти S-блоки отображают 8-битные данные в 32-битные, и вывод берется для объединения с комбинацией операций сложения и XOR.
  3. Вышеупомянутые два шага, объединенные вместе, называют F-функцией. С выводом функции F и правой стороны входных данных выполняется операция XOR.
  4. Последний шаг включает в себя обмен выходными данными.

Функция вывода распознает окончательный своп и выполняет отбеливание вывода. Результатом этой функции является зашифрованный текст Blowfish. Расшифровка с использованием blowfish включает в себя использование той же структуры, что и шифрование, так как она использует шифр Фейстеля, но круглые ключи должны использоваться в обратном порядке. Основным преимуществом этого алгоритма является то, что он доступен в открытом доступе, так что он легко доступен. Недостатки заключаются в том, что генерация ключей отнимает много времени, и если размер блока невелик, он уязвим для атак.

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

Некоторые из мест, где используется алгоритм симметричного шифрования:

  • Карточные транзакции используются для предотвращения кражи личных данных и мошеннических транзакций.
  • Для подтверждения личности мессенджера.
  • Хеширование и генерация случайных чисел
  • Шифрование базы данных

Заключение — симметричные алгоритмы

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

Рекомендуемые статьи

Это руководство по симметричным алгоритмам. Здесь мы обсуждаем введение и типы симметричных алгоритмов вместе с DES и Triple DES. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше —

  1. Что такое WebSocket?
  2. Безопасность веб-приложений
  3. Карьера в веб-разработке
  4. Карьера в веб-дизайне
  5. Режим работы блочного шифра
  6. Примеры алгоритма C ++

Симметричный алгоритм блочного шифрования Advanced Encryption Standart / Хабр

О чем эта статья

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


Вступление

В 80-х годах основным симметричным криптоалгоритмом для внутреннего применения в США являлся DES (Data Encryption Standard). Однако уже в 90-х годах стали проявляться его основные недостатки. Главным из которых являлась длина ключа, составляющая 56 бит. Такой размер становился недостаточно большим ввиду постоянного роста производительности ЭВМ, так как ключ мог быть вскрыт методом обычного перебора всех возможных вариантов шифрования.

По этим причинами в 1997 году NIST (National Institute of Standards and Technology,) объявил конкурс на новый стандарт симметричного криптоалгоритма. Были установлены следующие обязательные требования к кандидатам:

  • 128-битный размер блока шифруемых данных;

  • Не менее 3 размеров ключей (128, 192, 256 бит), которые должны поддерживаться алгоритмом;

  • Использование операций, легко реализуемых и аппаратно, и программно;

  • Простота структуры шифра, чтобы заинтересованные стороны могли самостоятельно проводить криптоанализ;

Победителем этого конкурса, названного AES – Advanced Encryption Standard, стал алгоритм Rijndael (далее алгоритм AES). Он продемонстрировал устойчивость к атакам, относительно низкий уровень энергопотребления и относительно небольшое время работы. Кроме того, алгоритму присущ внутренний параллелизм, за счет этого эффективно используются процессорные ресурсы, и дополнительно уменьшается время работы алгоритма.

Основные понятия

Давайте рассмотрим основные понятия, необходимые для лучшего понимания работы алгоритма.

Прежде всего отметим, что алгоритм AES оперирует байтами, которые интерпретируются как элементы конечного поля F(28). В этом поле определены операции сложения и умножения двух элементов, результатом которых, в свою очередь, также является элемент этого поля. Рассмотрим каждую из операций:

  • Сложение выполняется с помощью операции xor. Операция выполняется над двоичными числами поразрядно, то есть для двух байт P = { p7, p6, p5, p4, p3, p2, p1, p0 } и Q = { q7, q6, q5, q4, q3, q2, q1, q0 } результатом будет R = { r7, r6, r5 , r4, r3, r2, r1, r0 }, где ri = pi xor ri .

  • Умножение. Для этой операции используется представление байта в виде полинома: p(x) = p7x7 + p6x6 + p5x5 + p4x4 + p3x3 + p2x2 + p1x + p0 , умножение в поле F(28) в таком представлении производится по модулю неприводимого в этом поле многочлена m(x) = x8 + x4 + x3 + x + 1. Таким образом, для того, чтобы получить результат умножения двух чисел в поле F(28), мы должны представить их в виде полиномов p(x) и q(x), затем взять остаток от деления на многочлен m(x) произведения p(x) и q(x), то есть r(x) = p(x)q(x) mod (m(x)), и получить коэффициенты полинома r(x), которые являются 8-битовым числом числом в поле F(28).

Описания алгоритма шифрования

Давайте теперь перейдем от математики к описанию самого алгоритма шифрования AES c размером ключа 128 бит.

Предварительно входные данные разбиваются на блоки по 16 байт, если полный размер не кратен 16 байтам, то данные дополняется до размера, кратного 16 байтам. Блоки представляются в виде матрицы 4×4 — state. Далее происходит процедура расширения ключа и к каждому блоку state применяются операции 2-4. Итак, алгоритм состоит из следующих шагов:

  1. Расширение ключа — KeyExpansion;

  2. Начальный раунд — сложение state с основным ключом;

  3. 9 раундов шифрования, каждый из которых состоит из преобразований:

    · SubBytes

    · ShiftRows

    · MixColumns

    · AddRoundKey

  4. Финальный раунд, состоящий из преобразований:

    · SubBytes

    · ShiftRows

    · AddRoundKey

Рассмотрим подробнее каждое из представленных выше преобразований:

  • SubBytes — замена байтов state по таблице S-box. Каждый байт представляется в виде двух шестнадцатеричных чисел b = (x, y), где x определяется 4 старшими разрядами b, а y — 4 младшими. В таблице S-box размера 16×16 находятся значения для замены исходного байта: значение b’ на пересечении строки x и столбца y S-box используется в качестве замены исходному байту b.

  • ShiftRows — циклический сдвиг строк state. Нулевая строка остается на месте, первая смещается влево на 1 байт, вторая на 2 байта и третья на 3 соответственно.

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

  • KeyExpansion — процедура расширения основного ключа для создания раундовых ключей, которые затем используются в раундах шифрования. Расширенный ключ состоит из 44 четырехбайтовых слов (wi): 4 слова на основной ключ и по 4 слова на 10 раундовых ключей. Таким образом, полная длина расширенного ключа составляет 1408 бит.

    Операция расширения ключа использует массив Rcon и состоит из следующих действий:

    • Четыре слова основного ключа переносятся в первые четыре слова расширенного ключа.

    • Если число i без остатка делится на 4, то wi =SubBytes(RotByte(wi-1 )) xor Rconi/4 .

    • Иначе: wi = wi-4 xor wi-1 .

Операция RotByte производит циклическую перестановку байта исходного слова: { x0, x1, x2, x3 } → { x3 , x0 , x1 , x2 }.

Ниже показан пример, демонстрирующий генерацию 2 первых слов первого раундового ключа.

https://www.youtube.com/watch?v=CxU4ROAYGzs

Описание алгоритма дешифрования

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

  1. Расширение ключа — KeyExpansion;

  2. 9 раундов дешифрования, каждый из которых состоит из преобразований:

    · AddRoundKey — суммирование state с раундовым ключом;

    · InverseMixColumns — обратная перестановка столбцов state;

    · InverseShiftRows — обратный циклический сдвиг столбцов state;

    · SubBytes — замена байтов state по обратной таблице замен InverseS- box;

  3. Финальный раунд:

    · AddRoundKey

    · InverseShiftRows

    · InverseSubBytes

Другие версии AES

Стандарт допускает только одно значение длины блока state— 128 бит для 3 версий алгоритма AES. В то время как размер ключа в разных версиях отличается: AES-192 использует 192 — битный размер основного ключа и производит 12 раундов шифрования, а AES-256 — 256 битный размер основного ключа и 14 раундов шифрования.

Большее количество раундов делает шифрование сложнее. Таким образом, AES-256 обладает наиболее безопасной реализацией. Однако следует заметить, что чем длиннее ключ и больше раундов, тем выше требование к производительности.

В таблице, показанной ниже, количество Nk — количество слов в ключе, Nb — количество слов в блоке и Nr — количество раундов соответственно.

Примеры атак на AES

Существует несколько моделей атак на данный алгоритм. Я бы хотел остановиться на классе атак по сторонним каналам и кратко рассмотреть 2 соответствующих примера из данного класса.

  1. Атака по времени.

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

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

    Возможные методы противодействия такому виду атаки:

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

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

  2. Атака по энергопотреблению.

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

    Возможными методами противодействия такому виду атаки являются:

    · Балансировка энергопотребления — при проведении операции задействовать все аппаратные части устройства.

    · Обеспечение независимости флуктуаций энергопотребления и происходящих в системе процессов.

Можно ли восстановить расширенный ключ, зная какой-либо из раундовых?

Достаточно интересный вопрос, возникший у меня при написании этой статьи.

Для ответа на него давайте рассмотрим расширенный ключ как ряд 32-х битных слов: w0, w1, w2, w3, …, w40, w41, w42, w43, где w0, w1, w2, w3 — 128-битный ключ AES, а w40, w41, w42, w43 — последний раундовый ключ. Процесс расширения ключа определяется как wi = wi-4 xor Fi(wi-1), где Fi — это рассмотренная выше функция, определяемая процедурой KeyExpansion. Начиная с w0, w1, w2, w3 этот процесс позволяет вычислить остальную часть расширенного ключа.

Теперь давайте предположим, что злоумышленнику известен последний раундовый ключ шифрования AES-128. Он может переписать процесс расширения ключа следующим образом: wj = wj+4 xor Fj+4(wj+3). Это получается простой заменой j = i — 4 и переупорядочиванием. Таким образом, злоумышленник, имея в распоряжении w40, w41, w42, w43 ,cможет восстановить все слова вплоть до w0 .

Эта проблема становится не столь критичной в случае с AES-192 и AES-256. Действительно, если атакующему удается получить один раундовый ключ из 256-битного ключа AES, это уменьшает количество возможных вариантов AES ключей с 2256 до 2128, в таком случае восстановить полный ключ все еще невозможно с вычислительной точки зрения.

Преимущества AES

К основным преимуществам данного алгоритма относят:

  • Рассеивание — изменение любого знака ключа или открытого текста влияет на большое количество знаков шифротекста.

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

  • Не подвержен многим видам криптоаналитических атак, таких как: дифференциальный криптоанализ, линейный криптоанализ, square — атака.

  • Байт-ориентированная структура, что дает хорошие перспективы для реализации алгоритма в будущих процессорах.

  • Высокое быстродействие на различных платформах.

Заключение

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

Симметричное шифрование — Журнал «Код»: программирование без снобизма

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

Принцип работы

Симметричное шифрование работает так:

  1. Есть данные, которые нужно зашифровать. 
  2. Есть ключ шифрования. С его помощью данные шифруются по какому-то алгоритму.
  3. Тот, кто обладает ключом и знает алгоритм, может расшифровать сообщение
  4. Если не знать ключа, то расшифровать данные почти невозможно. Почему почти — расскажем в статье про криптостойкость.

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

Алгоритмы шифрования

Симметричное шифрование в общих чертах работает так:

  1. Берём ключ и данные, которые нужно зашифровать.
  2. С помощью математических функций и преобразований мы соединяем ключ и данные. Например, берём каждый байт сообщения, умножаем на число из ключа и получаем новое число. Так делаем с каждым байтом исходного сообщения и на выходе получаем зашифрованные данные — массив из цифр.
  3. Эти данные можно передавать по любому каналу связи. Даже если их перехватят, то без ключа всё равно не прочитают.
  4. Получатель берёт этот массив из чисел, делит каждое на число из того же ключа и получает исходное сообщение, которое можно прочитать. 

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

👉 Перемножение — простой алгоритм, который давно не используется в криптографии в чистом виде. Сейчас берут что-то намного более сложное: логарифмы в конечном пространстве, факторизацию и другие математические функции.

Простой пример

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

  1. Составляем сообщение на русском языке.
  2. Берём ключ (число) и сдвигаем все символы в сообщении на это число. Например, если ключ равен трём, то А (1-я позиция) сдвигается на три позиции дальше по алфавиту и превращается в Г (4-я позиция), Л превращается в О и так далее. Если при сдвиге мы выходим за границу алфавита, то возвращаемся в начало алфавита и продолжаем отсчёт оттуда.
  3. Таким способом шифруем всё сообщение, буква за буквой.
  4. Отдаём шифровку другу.
  5. Он берёт каждый символ и сдвигает его на три позиции назад по алфавиту. В итоге у него все буквы вернутся на свои места и получится тот текст, который мы отправляли.

Если взять ключ 10 и зашифровать им фразу «Привет, это журнал Код!», то получится так:

Щътлоь, жьш рэъчйх Фшн!

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

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

Плюсы и минусы симметричного шифрования

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

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

Симметричное шифрование в жизни

Почти всё общение в современных мессенджерах построено на симметричном шифровании.

Все наши банковские платежи, переводы и онлайн-оплата тоже шифруется симметричным методом. 

Когда мы ставим замок на дверь и даём ключ всем жильцам — это тоже симметричное шифрование. Замок — это шифр, а ключ — это ключ расшифровки. Если вставить не тот ключ, то ничего не произойдёт. Открыть дверь можно только тем ключом, который был от этого замка, и сделать это может только тот, у кого есть этот ключ.

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

Что дальше

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

Текст

Миша Полянин


Редактор

Максим Ильяхов


Корректор

Ира Михеева


Иллюстратор

Даня Берковский


Вёрстка

Маша Дронова


Доставка

Олег Вешкурцев

Симметричное и ассиметричное шифрование: просто о сложном

Криптографическая защита данных — важнейшая задача, которая сегодня актуальна, как никогда. Однако до сих пор некоторые спорят, что лучше — симметричное или ассиметричное шифрование? Что круче — AES или RSA? Однако все эти споры — бесполезное занятие и результат непонимания сути криптографии. Без упоминания конкретики (условий и задач использования) нельзя сказать, что однозначно лучше. В этой статье мы попробуем разобрать особенности ассиметричного и симметричного шифрования, увидим их разницу, приведём аргументы в пользу того либо иного подхода.

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

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

Для работы применяется всего один пароль. Происходит всё следующим образом: 1. Существует некий математический алгоритм шифрования. 2. На его вход подаётся текст и пароль. 3. На выходе получаем зашифрованный текст. 4. Если хотим получить исходный текст, применяется тот же самый пароль, но с алгоритмом дешифрования.

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

Несмотря на свои ограничения и угрозу безопасности, подход до сих пор широко распространён в криптографии. Дело в том, что он очень прост в работе и понимании. И техническая нагрузка на железо невелика (как правило, всё работает очень быстро).

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

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

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

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

Считается, что ассиметричное шифрование «тяжелее» симметричного. Всё потому, что оно требует больше компьютерных ресурсов. Есть ограничения и на процесс генерации ключей.

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

Что важно знать

Давайте перечислим основные моменты и сравним оба вида шифрования: 1. Симметричный алгоритм прекрасно подходит при передаче больших объёмов зашифрованных данных. Ассиметричный в этом случае будет работать медленнее. Кроме того, при организации обмена информацией по ассиметричному алгоритму оба ключа должны быть известны обеим сторонам либо пар должно быть две (по одной на каждую сторону). 2. Ассиметричное шифрование позволяет дать старт безопасному соединению без каких-либо усилий со стороны пользователя. Если говорить о симметричном шифровании, то пользователю нужно знать пароль. Однако не стоит думать, что ассиметричный подход безопасен на 100 %. К примеру, он подвержен атакам «человек посередине». Это когда между сервером и вами размещается компьютер, который вам отсылает свой открытый ключ, а при передаче информации с вашей стороны, использует открытый ключ сервера. В итоге происходит перехват конфиденциальных данных. 3. Продолжая тему взлома и компрометации пароля, давайте ещё раз отметим, что в случае с симметричным шифрованием возникает проблема конфиденциально передать следующий пароль. В этом плане ассиметричный алгоритм «легче». Серверу достаточно сменить пару и разослать вновь созданный публичный ключ. Однако и тут есть своя Ахиллесова пята. Дело в том, что генерация ключей постоянно происходит по одному и тому же алгоритму, стало быть, если его узнают, безопасность окажется под угрозой. 4. Симметричный шифр обычно строится на основании ряда блоков с математическими функциями преобразования, ассиметричный — на математических задачах. Тот же RSA создан на задаче возведения в степень с последующим вычислением модуля. В результате алгоритмы симметричного шифрования модифицировать просто, а ассиметричного — практически невозможно. 5. Лучший эффект достигается при комбинации обоих видов шифрования. Происходит это так: — посредством ассиметричного алгоритма серверу отсылается сессионный ключ для симметричного шифрования; — происходит обмен информацией по симметричному алгоритму. Тут возможны варианты, но общий смысл обычно не меняется. 6. В симметричном шифровании пароли генерируются по специальным правилам с учётом цифр, букв, регистра и т. д., создаются комбинации повышенной сложности. В ассиметричном пароли не так безопасны, однако их секретность обеспечивается тем, что их знает только сервер. 7. Вне зависимости от выбранного вида шифрования ни один из них не является гарантом стопроцентной безопасности. Помните, что любой подход нужно комбинировать с другими средствами информационной защиты.

Послесловие

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

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

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

Симметричные шифры

Cимметричные шифры

Оглавления
Требования
Общая схема
Виды симметричных шифров
Параметры алгоритмов

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

Требования

Полная утрата всех статистических закономерностей исходного сообщения является важным требованием к симметричному шифру.
Для достижения такого шифр должен иметь «эффект лавины» — сильное изменение шифроблока при 1битном изменении входных
данных (в идеале должны меняться значения 1/2 бит шифроблока).

Также важным требованием является отсутствие линейности (то есть условия f(a) xor f(b) == f(a xor b)), в противном случае
облегчается применение дифференциального криптоанализа к шифру.

Общая схема

В настоящее время симметричные шифры — это:

  • блочные шифры. Обрабатывают информацию блоками определённой длины (обычно 64, 128 бит), применяя к блоку ключ в
    установленном порядке, как правило, несколькими циклами перемешивания и подстановки, называемыми раундами.
    Результатом повторения раундов является лавинный эффект — нарастающая потеря соответствия битов между блоками открытых и зашифрованных данных.
  • поточные шифры, в которых шифрование проводится над каждым битом либо байтом исходного (открытого) текста с использованием гаммирования.Поточный шифр может быть легко создан на основе блочного (например, ГОСТ 28147-86 в режиме гаммирования), запущенного в специальном режиме.

    Большинство симметричных шифров используют сложную комбинацию большого количества подстановок и перестановок. Многие такие шифры исполняются в несколько (иногда до 80) проходов, используя на каждом проходе «ключ прохода». Множество «ключей прохода» для всех проходов называется «расписанием ключей» (key schedule). Как правило, оно создается из ключа выполнением над ним неких операций, в том числе перестановок и подстановок.

    Типичным способом построения алгоритмов симметричного шифрования является сеть Фейстеля. Алгоритм строит схему шифрования на основе функции F(D, K), где D — порция данных, размеров вдвое меньше блока шифрования, а K — «ключ прохода» для данного прохода. От функции не требуется обратимость — обратная ей функция может быть неизвестна. Достоинства сети Фейстеля — почти полное совпадение дешифровки с шифрованием (единственное отличие — обратный порядок «ключей прохода» в расписании), что сильно облегчает аппаратную реализацию.

    Операция перестановки перемешивает биты сообщения по некоему закону. В аппаратных реализациях она тривиально реализуется как перепутывание проводников. Именно операции перестановки дают возможность достижения «эффекта лавины». Операция перестановки линейна — f(a) xor f(b) == f(a xor b)

    Операции подстановки выполняются как замена значения некоей части сообщения (часто в 4, 6 или 8 бит) на стандартное, жестко встроенное в алгоритм иное число путем обращения к константному массиву. Операция подстановки привносит в алгоритм нелинейность.

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

    Параметры алгоритмов
    Параметры:
  • стойкость
  • длина ключа
  • число раундов
  • длина обрабатываемого блока
  • сложность аппаратной/программной реализации Виды
  • Цезарь
  • Виженер
  • Атбаш
  • Плайфаер
  • ADFGVX
  • XOR
  • Вернам
  • IDEA
  • RC2
  • RC4
  • DES
  • Triple DES
  • Rijndael(AES)
  • Алгоритм симметричного ключа — обзор

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

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

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

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

    Доступны сотни различных алгоритмов симметричного ключа. У каждого есть свои сильные и слабые стороны. Некоторые из наиболее распространенных примеров — DES, 3DES, AES, IDEA, RC4 и RC5.

    DES : Стандарт шифрования данных. Первоначально DES был разработан в 1976 году. Это был один из наиболее широко используемых алгоритмов шифрования. Частично это связано с тем, что он был принят в качестве государственного стандарта шифрования. Сам алгоритм DES очень силен. Слабость заключается в том, что исходный стандарт DES использует 56-битный ключ шифрования. По сути, вы можете использовать компьютер для просмотра всех битовых комбинаций ключа (1 и 0), пока не нажмете нужную клавишу.Когда DES был первоначально разработан, на это потребовались бы сотни лет. В наши дни компьютеры намного быстрее. Фактически, в настоящее время на прохождение всех комбинаций может уйти всего день или около того. Это основная причина, по которой DES больше не используется широко.

    3DES : наиболее широко известен как Triple DES. 3DES получил свое название, потому что он применяет алгоритм DES трижды к каждому блоку данных. 3DES обогнал своего предшественника DES и в настоящее время считается наиболее широко используемым стандартом безопасного шифрования.Сам алгоритм так же силен, как и DES, но у вас также есть то преимущество, что вы можете использовать ключи большей длины. Ключ должен быть указан для каждой итерации шифрования 3DES. У вас есть возможность использовать один и тот же ключ для каждого, один и тот же ключ для двух итераций или другой ключ для каждой итерации. Наиболее безопасная реализация — использовать разные ключи для каждой итерации. Если вы используете один и тот же ключ для всех трех итераций, считается, что сила ключа составляет 56 бит. Это в основном то же самое, что и DES.Если вы используете один и тот же ключ для двух итераций и другой ключ для третьей, то сила ключа считается равной 112 битам. Если вы используете другой ключ для всех трех итераций, считается, что стойкость шифрования составляет 168 бит. В течение долгого времени алгоритм 3DES был основным алгоритмом, используемым в реализациях Windows с жалобой на FIPS 140. Когда вы настраивали групповую политику Windows или реестр, который заставлял использовать алгоритмы, совместимые с FIPS 140, вы в основном вынуждали использовать 3DES для шифрования.Теперь системы Windows предлагают использование AES, который также является алгоритмом, совместимым с FIPS 140.

    AES : это расширенный стандарт шифрования. Его также иногда называют алгоритмом Rijndael. Это связано с тем, что AES на самом деле происходит от алгоритма Rijndael. Правительство провело процесс оценки, чтобы определить, какой алгоритм будет использоваться в качестве стандарта AES, и алгоритм Rijndael был выбран в качестве победителя. Стандарт AES фактически включает три разных шифра: AES-128, AES-192 и AES-256.Цифры представляют длину ключа шифрования. AES очень быстрый и безопасный. Из-за этого его глобальное распространение было очень быстрым.

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

    RC4 : это четвертая версия Rivest Cipher. RC4 использует ключ шифрования переменной длины. Этот ключ может иметь размер от 40 до 256 бит. Чаще всего используется со 128-битным ключом. Алгоритм RC4 очень прост и легко реализуем. Проблема в том, что при неправильной реализации это может привести к слабым криптографическим системам. Это одна из основных причин, по которой RC4 постепенно сокращается. RC4 был одним из наиболее широко используемых алгоритмов шифрования. Он используется в WEP и WPA в беспроводных сетях.Он также использовался в Secure Sockets Layer (SSL) и Transport Layer Security (TLS) с протоколом передачи гипертекста по протоколу SSL (HTTPS). RC4 также использовался с защищенной оболочкой, Kerberos и протоколом удаленного рабочего стола.

    RC5 : это пятая версия Rivest Cipher. RC5 использует ключи шифрования переменной длины. Они могут иметь длину до 2040 бит. Предлагаемый размер ключа — 128 бит. В какой-то момент RSA, владеющая патентом на RC5, была настолько уверена в своей безопасности, что у нее была система вознаграждений, чтобы вознаграждать любого, кто сможет взломать элементы, зашифрованные с помощью этого алгоритма.В таблице 2.1 перечислены длина ключа и размер блока для этих алгоритмов.

    Таблица 2.1. Алгоритмы симметричного шифрования

    Длина ключа Размер блока
    DES 56 бит 64 бит
    3DES 56, 112 или 168 бит 64 бит
    AES 128, 192 или 256 бит 128 бит
    IDEA 128 бит 64 бит
    RC4 от 40 до 256 бит Потоковый шифр
    RC5 от 0 до 2040 бит (рекомендуется 128) 32, 64 или 128 бит (рекомендуется 64)

    Симметричное шифрование 101: определение, как оно работает и когда оно используется

    Шифрование с симметричным ключом является частью практически всего, что вы делаете в Интернете.Мы разберем все, что вам нужно знать о том, что это такое, как и где вы его используете…

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

    Но что такое шифрование с симметричным ключом? Если заглянуть «под капот», как работает симметричное шифрование? И какую роль это играет в вашей повседневной жизни в Интернете?

    Давайте разберемся.

    Примечание редактора: Эта статья является первой в серии статей о симметричном шифровании. Обязательно ознакомьтесь со статьями по теме ниже:

    Что такое симметричное шифрование и для чего оно нужно? Определение и объяснение

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

    На всякий случай давайте кратко рассмотрим, как работает шифрование в целом:

    1. Отправитель использует ключ шифрования (обычно строку букв и цифр) для шифрования своего сообщения.
    2. Зашифрованное сообщение, называемое зашифрованным текстом, выглядит как зашифрованные буквы и никому не может быть прочитано в пути.
    3. Получатель использует ключ дешифрования для преобразования зашифрованного текста обратно в читаемый текст.
    Это пример использования шифрования AES 128.

    В приведенном выше примере мы использовали один и тот же ключ для шифрования и дешифрования, что означает, что это симметричное шифрование.

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

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

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

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

    Шифрование с симметричным ключом — не новая концепция

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

    Ранний пример симметричного шифрования — и, вероятно, самый известный симметричный шифр — приписывается римскому полководцу Юлию Цезарю. Этот конкретный шифр известен как шифр Цезаря (подробнее об этом через пару минут). Однако были и другие типы симметричных шифров, которые существовали на протяжении всей истории, включая все, от шифра Виженера, восходящего к 1500-м годам, до современного алгоритма AES (подробнее об этом позже).

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

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

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

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

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

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

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

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

    Как работает базовый шифр смещения (подстановочный шифр)

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

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

    Иллюстрация того, как работает шифр сдвига

    Представьте, что вы записываете весь алфавит в одну длинную строку. А когда вы используете шифр сдвига, вы сдвигаете любую заданную букву X на количество пробелов. Итак, если бы вы переместили букву «G» на девять пробелов, она превратилась бы в «P». Буква «О» превратилась бы в «Х». Это означает, что, например, сообщение «Доброе утро, солнышко» затем становится «Pxxm vxawrwp bdwbqrwn», когда вы сдвигаете каждую букву на девять пробелов вправо.

    Итак, ключ в шифре Цезаря — это секретное значение, известное только вам и вашему получателю, которое сообщает вам, на сколько букв нужно сдвинуть.

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

    Роль симметричного шифрования ключей в безопасности веб-сайтов

    Шифрование с симметричным ключом является частью экосистемы инфраструктуры открытого ключа (PKI), которая позволяет безопасно обмениваться данными через небезопасный Интернет путем преобразования данных простого текста (читаемых) в нераспознаваемый зашифрованный текст. Фактически, вы используете технологии и процессы на основе PKI прямо сейчас как часть вашего подключения к TheSSLStore.com, чтобы прочитать эту статью.

    Снимок экрана со значком замка в адресной строке браузера (при использовании Google Chrome).

    Видите этот замок в адресной строке браузера? Это означает, что на нашем веб-сайте установлен сертификат безопасности веб-сайта (сертификат SSL / TLS), и вы используете безопасное зашифрованное соединение для отправки данных. Это то, что помогает подключиться к нашему веб-сайту, используя безопасный протокол HTTPS вместо небезопасного протокола HTTP.

    Это также означает, что ваш браузер (клиент) уже прошел процесс:

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

    Принцип работы HTTPS заключается в том, что мы используем асимметричное шифрование для первой аутентификации сервера веб-сайта и обмена симметричными сеансовыми ключами. Это часть процесса, известного как рукопожатие TLS, которое существует в трех версиях (TLS 1.0, TLS 1.2 и TLS 1.3). После этого мы используем симметричное шифрование для фактического объема шифрования данных, которое происходит во время вашего сеанса.

    В общем, рукопожатие TLS:

    • Позволяет нашему веб-серверу аутентифицироваться в вашем браузере (веб-клиент),
    • Устанавливает параметры для использования для безопасной связи (например, решает, какой алгоритм шифрования использовать),
    • Определяет, какой протокол обмена ключами использовать, и
    • Генерирует ключ сеанса, который знают только две взаимодействующие стороны, используя этот алгоритм и другие общедоступные и частные переменные.

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

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

    Управляйте цифровыми сертификатами как начальник

    14 Передовые методы управления сертификатами для обеспечения работоспособности, безопасности и полной совместимости вашей организации.

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

    Симметричные алгоритмы делятся на два основных типа: потоковые и блочные шифры. Блочные шифры шифруют данные порциями (блоками), тогда как потоковые шифры шифруют данные по одному биту за раз. Итак, каковы наиболее часто используемые или известные симметричные алгоритмы?

    • Стандарт шифрования данных (DES) — DES — это тип блочного шифра, который шифрует данные 64-битными блоками и использует один ключ одного из трех размеров (64-битный, 128-битный и 192-битный ключи. ).Однако один из каждых 8 битов является битом четности, а это означает, что 64-битный ключ одинарной длины действительно похож на 56-битный ключ. Хотя DES является одним из первых алгоритмов симметричного шифрования, он считается небезопасным и не рекомендуется.
    • Стандарт тройного шифрования данных (TDEA / 3DES) — В отличие от DES, тройной DES может использовать два или три ключа, что позволяет этому алгоритму использовать несколько раундов шифрования (или, точнее, раунд шифрования, раунд дешифрования). , и еще один раунд шифрования).Хотя 3DES более безопасен, чем его предшественник DES, он не так безопасен, как его преемник, AES.
    • Advanced Encryption Standard (AES) — Этот алгоритм шифрования чаще всего используется в Интернете. Усовершенствованный стандарт шифрования более безопасен и эффективен, чем DES и 3DES, с параметрами ключа: 128, 192 и 256 бит. Однако, хотя это также тип блочного шифра, он работает иначе, чем DES и 3DES, поскольку основан на сети замещения-перестановки вместо шифра Фейстеля.

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

    Чтобы симметричное шифрование работало, ключ должен оставаться в секрете…

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

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

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

    Удаленное распространение ключей: как безопасно поделиться ключом для упрощения симметричного шифрования

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

    Для этого вам нужно отправить секретный ключ через Интернет, который, как вы знаете, совсем не безопасен. В конце концов, ваше интернет-соединение проходит через потенциально десятков различных точек соприкосновения. Это означает, что любой Том, Дик или Гарри — любой киберпреступник, правительство или кто-либо еще, кому вы не хотите читать свои сообщения — может перехватить ключ в пути и с легкостью расшифровать ваши сообщения, и вы не станете мудрее.Это известно как атака «человек посередине» (MitM).

    Итак, отправка данных (особенно ключей) через Интернет — не лучшая идея, а это значит, что нам нужно искать альтернативный метод. Здесь в игру вступают асимметричные тактики, такие как асимметричный обмен ключами (т. Е. Генерация ключей), такие как RSA и Diffie-Hellman.

    Роль протоколов обмена ключами

    Ранее мы коснулись того факта, что алгоритмы симметричного шифрования — не единственные алгоритмы, от которых зависит PKI.Также существуют асимметричные алгоритмы и асимметричные протоколы обмена ключами. Итак, если вы пытаетесь безопасно общаться со своей подругой Эрикой, используя криптографию с симметричным ключом, вы будете использовать тактику асимметричного шифрования, чтобы сгенерировать и поделиться безопасным ключом, который будете знать только вы и Эрика.

    Исторически симметричное шифрование сочетается с асимметричными алгоритмами RSA или Диффи-Хеллмана (т. Е. Протоколами обмена ключами) для процесса обмена / генерации ключей. Однако у этих двух алгоритмов разные роли.

    RSA против ключевых бирж Диффи-Хеллмана

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

    При обмене ключами Диффи-Хеллмана сервер и клиент вместо этого взаимно согласовывают значение, которое используется для сеансового ключа.(Подробнее об этом чуть позже.)

    Однако использование RSA для обмена ключами не одобряется (хотя некоторые системы все еще используют его) из-за уязвимостей, обнаруженных криптологом Даниэлем Блейхенбахером. Фактически, наборы шифров для обмена ключами RSA (и неэфемерные группы Диффи-Хеллмана) были объявлены устаревшими с развертыванием TLS 1.3, чтобы обеспечить полную прямую секретность (которая использует эфемерный ключ). Таким образом, обмен ключами RSA был заменен эксклюзивным использованием обменов эфемерными ключами Диффи-Хеллмана.

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

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

    Посмотрите это отличное видео, чтобы увидеть, как работает процесс обмена ключами Диффи-Хеллмана с использованием цветов:

    Насколько надежны симметричные ключи?

    Надежность любого криптографического ключа зависит от нескольких конкретных соображений.

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

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

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

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

    Итак, теперь, когда мы знаем, что такое симметричное шифрование и как оно работает, как оно используется в реальном мире?

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

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

    Банковское дело

    Вы когда-нибудь слышали о PCI DSS? Стандарты безопасности данных индустрии платежных карт — это набор из 12 требований, которым должны соответствовать предприятия или организации, которые принимают платежи по кредитным картам. Симметричное шифрование является ключевым компонентом соответствия PCI, поскольку оно напрямую коррелирует с требованием № 3, которое направлено на защиту данных держателей карт при хранении.

    Это отличается от требования No.4, в котором основное внимание уделяется защите данных в пути. Это все об использовании асимметричного шифрования (в основном, SSL / TLS и HTTPS, о которых мы говорили ранее).

    Данные в состоянии покоя

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

    Хотите знать, какие продукты или услуги вы используете, которые включают симметричное шифрование в свои платформы или инструменты? Вот лишь несколько таких сервисов:

    • CodeGuard — CodeGuard — это инструмент резервного копирования веб-сайтов, который использует шифрование AES-256 для защиты ваших резервных копий.
    • Google Suite — Многие сервисы Google G Suite используют шифрование данных в состоянии покоя (в дополнение к шифрованию при передаче через HTTPS) для защиты ваших данных.
    • Microsoft Azure — шифрование Azure использует симметричное шифрование для быстрого шифрования и дешифрования большого количества данных.
    • SalesForce — Платформа SaleForce использует шифрование AES-256 для защиты данных в состоянии покоя.

    HTTPS и безопасность веб-сайтов

    Мы уже касались этого ранее.Помните, как мы говорили о том, что симметричное шифрование является частью процесса HTTPS? Здесь асимметричное шифрование используется для облегчения обмена ключами между двумя сторонами, а затем идентичные симметричные ключи сеанса используются для фактической обработки шифрования для сеанса.

    Итак, это означает, что симметричное шифрование является неотъемлемым компонентом безопасности веб-сайта.

    Последние мысли о шифровании с симметричным ключом

    Хорошо, мы подошли к финишу.Излишне говорить, что разбивка того, что такое криптография с симметричным ключом и как работает симметричное шифрование, требует много внимания. Я надеюсь, что эта статья предоставила вам идеи, которые помогут вам лучше понять процесс и его роль в кибербезопасности.

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

    Хотя симметричная криптография — старый метод шифрования, она по-прежнему занимает неоценимое место в нашем цифровом мире.

    типов шифрования: симметричное или асимметричное? RSA или AES?

    Что такое шифрование данных?

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

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

    Ключ представляет математические шаги, предпринятые алгоритмом для преобразования текста из «Hello World» в «XJtg920kl # aJFJ»% * ¨ * FK ». Без него вы не сможете расшифровать данные, и, следовательно, они будут защищены от несанкционированного доступа, но существует множество различных типов алгоритмов и методов шифрования, из которых можно выбирать, так как же узнать, какой из них является наиболее безопасным для вашей кибербезопасности? потребности? Начнем с самого основного различия: симметричное шифрование и асимметричное шифрование .

    Типы шифрования данных

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

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

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

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

    По этой причине симметричное шифрование отлично подходит для работы с конфиденциальными данными в большом количестве или для задач шифрования, которые предназначены для постоянного сокрытия информации без необходимости дешифрования. Например, при активации BitLocker на компьютере с Windows для шифрования всех жестких дисков. Разблокировав ПК своим паролем, пользователь расшифрует данные, не рискуя раскрыть свой секретный ключ шифрования. Другой пример — это сети VPN, которые шифруют ваш сетевой трафик с помощью локального ключа и вам не нужно делиться им за пределами вашего собственного использования.

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

    С другой стороны, асимметричное шифрование

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

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

    Открытый ключ доступен всем, кому нужно зашифровать часть информации.Этот ключ не подходит для процесса дешифрования. У пользователя должен быть вторичный ключ, закрытый ключ, чтобы расшифровать эту информацию. Таким образом, закрытый ключ находится только у субъекта, который расшифровывает информацию, без ущерба для безопасности при масштабировании безопасности.

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

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

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

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

    Общие алгоритмы симметричного шифрования

    Шифрование AES или усовершенствованная система шифрования

    AES — один из наиболее распространенных алгоритмов симметричного шифрования, используемых сегодня, разработанный в качестве замены устаревшего DES (стандарт шифрования данных), взломанного исследователями безопасности еще в 2005 году.Этот новый алгоритм стремился устранить главную слабость своего предшественника — короткую длину ключа шифрования, уязвимую для грубой силы.

    AES шифрует информацию одним блоком (блочный шифр) и делает это по одному блоку за раз, так называемые «раунды». Данные сначала преобразуются в блоки, а затем они шифруются с помощью ключа в различных раундах в зависимости от размера ключа: 14 раундов для 256-битных, 12 раундов для 192-битных и 10 раундов для 128-битных. Этот процесс включает в себя серию шагов по манипулированию данными и смешиванию, которые выполняются каждый раунд: подстановка, транспонирование, смешивание, смешение столбцов, суббайты.

    Blowfish и TwoFish

    Blowfish был еще одним симметричным преемником DES, разработанным как блочный шифр наподобие AES, но с длиной ключа от 32 до 448 бит. Он был разработан как общедоступный инструмент, а не лицензионный и бесплатный. Эта первоначальная версия была обновлена ​​до TwoFish, — расширенной версии последней, в которой используется размер блока 128 бит с возможностью расширения до 256 бит.

    Основное отличие от других алгоритмов шифрования состоит в том, что он использует 16 раундов шифрования, независимо от ключа или размера данных.

    Основная причина, по которой TwoFish не считается лучшим симметричным алгоритмом, заключается в том, что AES получил признание и был быстро принят производителями в качестве стандарта, что означает, что он имеет высшее техническое преимущество.

    3DES или стандарт тройного шифрования данных

    Наконец, прямым преемником DES является 3DES или Triple Des . Этот симметричный алгоритм является усовершенствованной формой устаревшего алгоритма DES, который использует 56-битный ключ для шифрования блоков данных.Его концепция проста: он применяет DES три раза к каждому блоку информации, утраивая 56-битный ключ до 168-битного.

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

    Общие алгоритмы асимметричного шифрования

    RSA или Ривест – Шамир – Адлеман

    Считается основным элементом асимметричного шифрования. Разработанный инженерами, которые дали ему название в 1977 году, RSA использует факторизацию произведения двух простых чисел для обеспечения шифрования с длиной ключа 1024 бит и длиной до 2048 бит.Согласно исследованию, проведенному в 2010 году, вам потребуется 1500 лет вычислительной мощности, чтобы взломать его меньшую 768-битную версию!

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

    Криптография с ECC или эллиптическими кривыми

    Этот метод был первоначально предложен в 1985 году Нилом Коблицем и Виктором С.Миллера, который будет реализован только спустя годы, в 2004 году. В ECC используется довольно сложная математическая операция, основанная на эллиптических кривых на конечном поле, в так называемой эллиптической кривой Диффи – Хеллмана.

    С ECC у вас есть кривая, определяемая математической функцией, начальная точка (A) и конечная точка (Z) на кривой. Ключ в том, что для того, чтобы добраться до Z, вы выполнили серию «прыжков» или умножений, которые привели к Z. Это количество прыжков является закрытым ключом.

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

    Даже если у вас есть начальная и конечная точки (открытый ключ) и кривая, взломать закрытый ключ практически невозможно. Это связано с тем, что ECC — это то, что называют «лазейкой», или математической операцией, которую легко и быстро выполнить, но крайне трудно обратить вспять.

    ECC, или ECDH, математическая формула настолько сильна, что может сопоставить систему с 1024-битным ключом с безопасностью с 164-битным ключом. В максимальном значении, 512 бит, ECC может обеспечить уровень безопасности, сопоставимый с 15360-битным ключом RSA!

    Чтобы нарисовать картину, 2048-битные ключи RSA являются банковским стандартом, а 521-битный ECC обеспечивает эквивалент 15360-битного ключа RSA.

    Принимая во внимание вышеупомянутые факты, ECC считается будущим шифрования. Он асимметричен, но способен обеспечить уровень безопасности 256 бит при максимальной длине ключа 521 бит, что обеспечивает высокую скорость шифрования и высокую сложность дешифрования, чтобы конфиденциальные данные оставались в безопасности.

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

    Какой алгоритм шифрования данных лучше всего?

    Ну, это определенно зависит от обстоятельств.Вот краткий обзор всех алгоритмов и их лучших качеств:

    AES (симметричный):

    AES — один из наиболее часто используемых алгоритмов. Это быстро, с опцией переменной длины ключа, которая обеспечивает дополнительную безопасность. Он идеален при работе с большими объемами зашифрованных данных.

    TwoFish (Symmetric — ранее BlowFish):

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

    3DES (симметричный):

    Несмотря на более низкую скорость и, как правило, устаревший статус по сравнению с AES, он по-прежнему широко используется в финансовых службах для шифрования PIN-кодов банкоматов и паролей UNIX.

    RSA (асимметричный):

    Поскольку его скорость неудобна для обработки больших объемов данных, шифрование RSA в основном используется в цифровых подписях, шифровании электронной почты, сертификатах SSL / TLS и браузерах.

    ECC (асимметричный):

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

    На вынос

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

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

    К счастью, есть много простых инструментов шифрования, которые уже есть в вашем распоряжении, и их можно быстро активировать, когда вы выясните степень защиты ваших протоколов. FileVault в macOS интегрирован и готов к шифрованию компьютеров Mac с помощью AES. Prey может помочь с компьютерами Microsoft, используя BitLocker и AES для шифрования дисков на ваших устройствах. Идеально, если у вас есть удаленная рабочая сила.Данные зашифрованы удаленно, поэтому вам не нужно беспокоиться о хлопотах, но вы можете обеспечить безопасность своей компании.

    Prey предлагает пробную версию БЕСПЛАТНО! Зарегистрируйтесь здесь и убедитесь в этом сами.

    Алгоритм с симметричным ключом в криптографии | by Quantum Backdoor

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

    Шифрование с симметричным ключом может использовать либо поточные шифры, либо блочное шифры

    • Потоковые шифры шифруют цифры (обычно байты) или буквы (в замещающих шифрах) сообщения по одной за раз.Примером может служить шифр Виженера.
    • Блочные шифры принимают несколько битов и шифруют их как единое целое, заполняя открытый текст так, чтобы он был кратен размеру блока. Алгоритм Advanced Encryption Standard (AES), одобренный NIST в декабре 2001 года, использует 128-битные блоки.

    Примеры популярных алгоритмов с симметричным ключом включают Twofish, Serpent, AES (Rijndael), Camellia, Salsa20, ChaCha20, Blowfish, CAST5, Kuznyechik, RC4, DES, 3DES, Skipjack, Safer и IDEA

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

    Шифрование сообщения не гарантирует, что это сообщение не будет изменено при шифровании. Следовательно, часто к зашифрованному тексту добавляется код аутентификации сообщения, чтобы гарантировать, что изменения в зашифрованном тексте будут отмечены получателем. Коды аутентификации сообщений могут быть построены из симметричных шифров (например, CBC-MAC). [ цитата необходима ]

    Однако симметричные шифры не могут использоваться для целей предотвращения отказа, кроме как с привлечением дополнительных сторон.См. Стандарт ISO / IEC 13888–2.

    Другое приложение — построение хэш-функций из блочных шифров. См. Описание некоторых таких методов в функции одностороннего сжатия.

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

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

    Управление ключами относится к управлению криптографическими ключами в криптосистеме. Это включает в себя создание, обмен, хранение, использование, крипто-шрединг (уничтожение) и замену ключей. Он включает в себя дизайн криптографического протокола, серверы ключей, пользовательские процедуры и другие соответствующие протоколы. [1]

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

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

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

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

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

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

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

    Примеры взаимных шифров включают:

    Практически все современные шифры можно классифицировать как потоковые шифры, большинство из которых использует обратный сумматор шифров XOR, или как блочные шифры, большинство из которых используют шифр Фейстеля или схему Лая – Месси. с обратным преобразованием в каждом раунде

    Что такое симметричное шифрование? — Определение Techslang

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

    Многие организации используют симметричное шифрование, поскольку оно относительно недорогое. Но у него есть некоторые недостатки. Ключ симметричного шифрования можно использовать вечно. И это иногда приводит к тому, что организации забывают их изменить. В результате даже пользователи, которые больше не могут быть частью компании, могут перехватывать и читать зашифрованные данные.

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

    Другие интересные термины…

    Подробнее о « Симметричное шифрование »

    Каковы общие алгоритмы Симметричное шифрование ?

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

    1. Стандарт шифрования данных

    Стандарт шифрования данных (DES) раньше был стандартизированным методом шифрования различных режимов электронной связи, но вскоре от него отказались. Он был признан слабым и недостаточным для удовлетворения более высоких требований к вычислительной мощности большинства современных компьютеров. Трехклавишный DES (3DES), в частности, не соответствует требованиям Национального института стандартов и технологий (NIST) и стандарта безопасности данных индустрии платежных карт (PCI-DSS).Однако обратите внимание, что большинство чиповых карт Europay, Mastercard и Visa (EMV) по-прежнему используют 3DES.

    2. Расширенный стандарт шифрования

    Один из самых популярных алгоритмов симметричного шифрования, который до сих пор используется, — это расширенный стандарт шифрования (AES). NIST установил этот алгоритм в качестве стандарта для шифрования электронных данных. Шифр AES содержит размер блока 128 бит, но может включать ключи разной длины (AES-128, AES-192 и AES-256).

    3.Международный алгоритм шифрования данных

    Международный алгоритм шифрования данных (IDEA) широко используется для защиты больших данных, разделенных на блоки.

    Другие алгоритмы симметричного шифрования включают Blowfish, Rivest Cipher 4 (RC4), Rivest Cipher 5 (RC5) и Rivest Cipher 6 (RC6).

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

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

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

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

    Для чего используется симметричное шифрование?

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

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

    Некоторые приложения для обмена сообщениями используют симметричное шифрование, особенно алгоритм AES. Некоторые примеры: Telegram, Line и KakaoTalk. Помимо защиты приложений для просмотра веб-страниц и обмена сообщениями, существуют другие варианты использования симметричного шифрования:

    • Управление безопасностью облачного хранилища
    • Предотвращение мошенничества в платежных приложениях и транзакциях с картами
    • Проверка личности отправителя сообщения
    • Создание случайных чисел или хеширование

    Каковы недостатки симметричного шифрования ?

    Хотя этот криптографический метод имеет преимущества, у него есть некоторые недостатки, в том числе:

    1.Склонность к утечке ключа

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

    2. Отсутствие данных атрибуции

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

    3. Отсутствие системы управления

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


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

    Больше от Techslang …

    Подробное руководство на 2021 год

    Введение

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

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

    1. Что такое криптография с симметричным и асимметричным ключом?
    2. Симметричное шифрование ключей
    3. Какова цель симметричного шифрования?
    4. Криптография с асимметричным ключом
    5. Какова цель асимметричного шифрования?
    6. В чем разница между криптографией с симметричным ключом и криптографией с асимметричным ключом?
    7. Каковы преимущества и недостатки криптографии с симметричным и асимметричным ключом?
    8. Криптография с асимметричным ключом

    1.

    Что такое криптография с симметричным и асимметричным ключом?

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

    Шифрование

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

    2.

    Криптография с симметричным ключом

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

    Мощность генератора случайных чисел, используемого для генерации секретного ключа, определяет эффективность этого метода. Криптография с симметричным ключом, широко используемая сегодня в Интернете, состоит из двух типов алгоритмов: блочного и потокового. Расширенный стандарт шифрования (AES) и стандарт шифрования данных (DES) — это два распространенных алгоритма шифрования. Этот тип шифрования обычно намного быстрее, чем асимметричное шифрование, но он позволяет хранить секретный ключ как отправителю, так и получателю данных.

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

    Шифрование с секретным ключом, с одним ключом, с общим ключом, с одним ключом и с секретным ключом — это другие слова для криптографии с симметричным ключом. Использование последнего и первого слов приведет к недопониманию по сравнению с родственным языком, используемым в криптографии с открытым ключом.

    Шифрование с симметричным ключом использует один из следующих методов шифрования:

    Потоковые шифры: Шифровать цифры или буквы сообщения по одной за раз.

    Блочные шифры: Зашифруйте группу битов как единый объект, вставив открытый текст, чтобы сделать его кратным размеру блока. Широко используются 64-битные блоки. Утвержденный NIST алгоритм Advanced Encryption Standard (AES) и режим работы блочного шифрования GCM используют 128-битные блоки.

    3.

    Какова цель симметричного шифрования?

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

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

    Вот несколько примеров использования симметричной криптографии:

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

    4.

    Криптография с асимметричным ключом

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

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

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

    Многие протоколы, в том числе протоколы безопасности транспортного уровня (TLS) и уровня безопасных сокетов (SSL), допускающие HTTPS, зависят от асимметричной криптографии. Шифрование часто используется в браузерах, которым необходимо создать стабильную связь в нестабильной сети, такой как Интернет, или для проверки цифровой подписи.

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

    5.

    Какова цель асимметричного шифрования?

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

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

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

    • Зашифрованная электронная почта предполагает использование открытого ключа для шифрования файла и закрытого ключа для его декодирования.
    • Асимметричное шифрование часто используется в криптографических протоколах SSL / TSL, которые обеспечивают зашифрованные соединения между веб-сайтами и браузерами.
    • Асимметричное шифрование используется для биткойнов и других криптовалют, когда потребители предоставляют открытые ключи, которые все будут использовать, а закрытые ключи скрыты. Биткойн использует криптографический алгоритм, чтобы гарантировать, что могут быть потрачены только средства, принадлежащие законным владельцам.
    • Каждый неизрасходованный выход транзакции (UTXO) в реестре биткойнов обычно связан с открытым ключом.Итак, предположим, что пользователю A нужно дать пользователю B немного денег, и у него есть UTXO, связанный с его открытым ключом. В этом случае он использует свой закрытый ключ для подписания контракта, который расходует UTXO и создает новый UTXO, связанный с открытым ключом пользователя B.

    6.

    В чем разница между криптографией с симметричным ключом и криптографией с асимметричным ключом?

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

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

    Криптография с симметричным ключом Криптография с асимметричным ключом
    Используется только один ключ (симметричный ключ), и это тот же ключ, который используется для шифрования и дешифрования сообщения. Для шифрования и дешифрования используются два разных криптографических ключа (асимметричные ключи), известные как открытый и закрытый ключи.
    Поскольку это простая процедура, метод шифрования может быть легко выполнен. Это гораздо более сложный и трудоемкий механизм, чем шифрование с симметричным ключом.
    Длина ключа обычно составляет 128 или 256 бит, в зависимости от критериев безопасности. Длина ключа еще больше; для примера асимметричного шифрования рекомендуемый размер ключа RSA составляет 2048 бит или больше.
    Это также называется криптографией с секретным ключом или криптографией с секретным ключом. Асимметричный ключ также называется традиционной криптографической системой или криптографией с открытым ключом.
    Математически представлено как: P = D (K, E (P)) Математически представлено как: P = D (Kd, E (Ke, P))
    Он использует меньше ресурсов, чем асимметричный ключ шифр использует. Он потребляет больше ресурсов, чем криптография с симметричным ключом.
    Используется там, где могут передаваться большие объемы данных. Он в основном используется в небольших транзакциях для аутентификации и создания стабильного канала связи перед передачей данных.
    Секретный ключ является общим. В результате вероятность компрометации увеличивается. Поскольку закрытый ключ не является общим, общий процесс более надежен, чем симметричное шифрование.
    Симметричное шифрование — старая техника. Асимметричное шифрование — относительно новое явление.
    RC4, AES, DES, 3DES и другие алгоритмы являются примерами. RSA, Diffie-Hellman, ECC и другие алгоритмы асимметричного шифрования являются примерами.

    7.

    Каковы преимущества и недостатки криптографии с симметричным и асимметричным ключом?
    Криптография с симметричным ключом

    Универсальность метода симметричного шифрования — его самое значительное преимущество. Однако универсальность алгоритмов симметричного шифрования не лишена недостатков — она ​​страдает от проблемы, известной как «распределение ключей».”

    Преимущества

    • Симметричная криптосистема более эффективна.
    • Зашифрованные данные могут передаваться по сети в симметричных криптосистемах, даже если есть уверенность в том, что данные будут перехвачены. Поскольку с файлами не отправляется ключ, шансы на расшифровку данных равны нулю.
    • Для подтверждения существования получателя симметричная криптосистема использует аутентификацию по паролю.
    • Сообщение может быть расшифровано только устройством, имеющим скрытый ключ.
    • Предотвращает широко распространенные нарушения защиты сообщений. Для связи с каждой стороной используется отдельный секретный ключ. Повреждение ключа влияет только на обмен данными от определенной пары отправитель и получатель. Общение с другими всегда безопасно.
    • Этот тип шифрования просто реализовать. Все, что нужно сделать пользователям, — это указать секретный ключ и обменяться им, пока они не смогут начать шифрование и дешифрование сообщений.
    • Зашифруйте и расшифруйте свои файлы.Нет необходимости создавать отдельные ключи, если вы используете шифрование для сообщений или данных, к которым вы хотите получить доступ только один раз. Для этого идеально подходит шифрование с одним ключом.
    • Шифрование с симметричным ключом намного быстрее, чем шифрование с асимметричным ключом.
    • Использует меньше ресурсов компьютера. В отличие от шифрования с открытым ключом, шифрование с одним ключом требует меньше вычислительных ресурсов.

    Недостатки

    • Транспортировка ключей является проблемой в симметричных криптосистемах.Секретный ключ должен быть отправлен на принимающее устройство перед отправкой окончательного сообщения. Электронная связь ненадежна, и никто не может гарантировать, что сети связи не будут прослушиваться. В результате, единственный безопасный метод обмена ключами — это сделать это лично.
    • Невозможно иметь цифровые подписи, которые нельзя отозвать.
    • Источник и действительность сообщения не могут быть гарантированы. Невозможно доказать, что сообщения исходят от конкретного человека, поскольку и отправитель, и получатель используют один и тот же ключ.Если есть разногласия, это может стать проблемой.
    • Для связи между каждой стороной должен быть создан новый общий ключ. Это создает проблемы при обращении с обоими этими ключами и их защите.

    8.

    Криптография с асимметричным ключом

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

    Преимущества

    • Нет необходимости обмениваться ключами в асимметричной криптографии или криптографии с открытым ключом, что устраняет проблему распределения ключей.
    • Основным преимуществом криптографии с открытым ключом является повышенная безопасность: закрытые ключи никогда не обмениваются и не открываются другим лицам.
    • Может предоставлять цифровые подписи, которые можно отозвать.
    • Проверка сообщения обеспечивается криптографией с открытым ключом, которая требует использования цифровых подписей, что позволяет получателю сообщения проверить, действительно ли сообщение отправлено определенным отправителем.
    • Использование цифровых подписей в криптографии с открытым ключом помогает получателю определить, было ли сообщение изменено во время передачи. Сообщение с цифровой подписью нельзя изменить, если подпись не станет пустой.
    • Цифровая подпись сообщения аналогична физической подписи документа. Поскольку это подтверждение сообщения, отправитель не может его отклонить.

    Недостатки

    • Одним из недостатков использования криптографии с открытым ключом для шифрования является недостаточная скорость. Популярные системы шифрования с секретным ключом значительно быстрее, чем любой общедоступный метод шифрования с открытым ключом.
    • Рекомендуется / требуется аутентификация открытых ключей.Никто не может быть уверен, что открытый ключ соответствует личности, которую он идентифицирует, поэтому каждый должен убедиться, что его открытые ключи принадлежат им.
    • Он потребляет больше ресурсов компьютера. Это требует гораздо больше вычислительных ресурсов, чем шифрование с одним ключом.
    • Широко распространенное нарушение безопасности вероятно, если злоумышленник получит закрытый ключ человека и прочитает его или ее сообщение целиком.
    • Утеря закрытого ключа может быть необратимой.Когда закрытый ключ утерян, все входящие сообщения не могут быть расшифрованы.

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

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

    Заключение

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

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

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

    Итак, вы решили сделать карьеру в сфере кибербезопасности? Посетите наш мастер-сертификат в области кибербезопасности (Red Team) для получения дополнительной помощи. Это первая программа по наступательным технологиям в Индии, которая позволяет учащимся практиковаться в смоделированной экосистеме в реальном времени, что даст им преимущество в этом конкурентном мире.

    Также читают

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

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

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

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

    Существует два типа алгоритмов с симметричным ключом, называемых потоковыми шифрами и блочными шифрами. Потоковые шифры шифруют сообщение как поток битов по одному. Блочные шифры принимают блоки битов, шифруют их как единое целое и иногда используют ответ позже. Обычно используются блоки по 64 бита; хотя современные шифры, такие как Advanced Encryption Standard, используют 128-битные блоки.

    Примеры популярных симметричных шифров включают Twofish, Serpent, AES (также известный как Rijndael), Blowfish, CAST5, RC4, TDES и IDEA.

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

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

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

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

    Скорость

    Алгоритмы с симметричным ключом, как правило, гораздо менее требовательны к вычислениям , чем алгоритмы с асимметричным ключом.На практике алгоритмы с асимметричным ключом обычно в сотни или тысячи раз медленнее, чем алгоритмы с симметричным ключом.

    Управление ключами

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

    Гибридная криптосистема

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

    Системы, использующие такой гибридный подход, включают SSL, PGP, GPG и т. Д.

    Связанные страницы

    .

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

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