Статьи Руководство для начинающих по классической криптографии

Обсуждение в разделе «Статьи», начал(-а) K800, 4.11.2017.

  1. K800

    K800 Nobody's Fool

    Регистрация:
    25.12.2010
    Сообщения:
    1 901
    Одобрения:
    2 013
    Репутация:
    346
    (Оригинальная статья: "Beginner Guide to Classic Cryptography", автор RAJ CHANDEL, http://www.hackingarticles.in/beginner-guide-classic-cryptography/, перевод К800)


    Криптография
    (Cryptography): Это метод скремблирования [разновидность кодирования информации] сообщения с использованием математической логики для обеспечения безопасности информации. Он сохраняет скремблированное сообщение от взлома при транспортировке по незащищенной сети. Поскольку он преобразует читаемое сообщение в нечитаемый текст.

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

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

    Зашифрованный текст (Cipher text): Вывод шифрования создает шифрованный текст, который не читается людьми.

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

    [​IMG]

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

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

    • Целостность: Целостность - это аспект безопасности, который подтверждает, что исходное содержимое информации не было изменено или повреждено. При транспортировке по сети не должно быть никаких изменений в информации.

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

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

    Шифр Цезаря

    Шифр Цезаря - это тип шифрования замещения, в котором каждая буква алфавита заменяется буквой на некотором расстоянии от этой буквы.

    Алгоритм

    Шаг 0: Математический, сопоставление букв с числами (т.е., A = 1, B = 2, and т.д.).

    [​IMG]

    Шаг 1: Выберем целочисленный ключ K между 1 и 25 (т. е. в английском языке всего 26 букв), допустим, сдвинуть вправо на 3 буквы алфавита, где A +3 = D, B + 3 = E и т. д.

    [​IMG]

    Шаг 2: Формула шифрования: «Добавить k mod 26»; то есть исходная буква L становится (L + k)% 26.

    Например, шифрование «IGNITE» будет выглядеть так:

    C = E (L+K) %26

    Где L= I и K = 3

    C = E (I+3) % 26

    C = E (9+3) % 26

    C = E (12) % 26

    C = E (L)

    Следовательно, шифрование IGNITE: LJQLWH

    [​IMG]

    Шаг 3: Расшифровка - «Вычесть k mod 26»; то есть зашифрованная буква L становится (L - k)% 26. Например, расшифровка «LJQLWH» будет выглядеть как:

    C = D (L-K) %26

    C = D (L-3) % 26

    C = D (12-3) % 26

    C = D (9) % 26

    C = D (I)

    Следовательно, расшифровка LJQLWH: IGNITE

    Ограниченность: Шифр Цезаря уязвим для атаки грубой силы (brute-force attack), потому что он зависит от одного ключа с 25 возможными значениями, если открытый текст написан на английском языке. Следовательно, пробовав каждый вариант и проверяя, какой из них приводит к содержательному слову, можно узнать ключ. Как только ключ найден, полный текст шифрования может быть дешифрован точно.

    Моноалфавитный шифр

    Это также тип шифрования замещения, в котором каждая буква алфавита является подменой, используя некоторую перестановку букв в алфавите. Следовательно, перестановки из 26 букв будут 26! (Факториал 26) и равен 4 × 1026. Этот метод использует случайный ключ для каждой отдельной буквы для шифрования и который делает моноалфавитный шифр защищенным от атаки грубой силы.

    Отправитель и получатель принимают решение о случайно выбранной перестановке букв алфавита. Например, в слове «HACKING» замените G на «J» и N на «W», поэтому ключ перестановки равен 2! то есть факториал 2, а HACKING станет «HACKIWJ» [в оригинальной статье - HACKING станет “HACKJIW”].

    Алгоритм

    Шаг 0: Создадим пару тексту с открытым текстом, путем сопоставления каждой простой текстовой буквы с другой текстовой буквой IJKLQR --- GFE.

    [​IMG]

    Шаг 1: Чтобы зашифровать, для каждой буквы в исходном тексте, заменим обычное текстовое письмо на текстовое письмо. Следовательно, шифрование «IGNITE» будет таким, как показано ниже

    [​IMG]

    Шаг 2: для расшифровки нужно изменить процедуру на шаге 1.

    Следовательно, расшифровка «USBUOQ» будет «IGNITE»

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

    Шифр Плейфера

    Он шифрует орграфы или пары букв, а не отдельные буквы, такие как простой шифр замещения. В этом шифре создается таблица алфавита с сеткой размером 5 × 5, которая содержит 25 букв вместо 26. Один символ «J» (или любой другой) опущен. Сначала нужно заполнить пробелы в таблице буквами ключевого слова (не записывая повторяющиеся буквы), а затем заполнить оставшиеся пробелы остальными буквами алфавита по порядку. Если открытый текст () содержит "J", то он заменяется на "I".

    Алгоритм

    Шаг 0: Разделим открытый текст на пару, если количество букв нечетно, добавьте «X» с последней буквой открытого текста. Например, "TABLE" ("ТАБЛИЦА") - это наш открытый текст, который разбивает его на пару как: TA BL EX

    Шаг 1: Установим матрицу 5 × 5, заполнив первые позиции ключевым словом. Заполним остальную часть матрицы другими буквами. Пусть предположим, что «ARTI» - наш ключ для шифрования.

    [​IMG]

    Шаг 2: для шифрования он включает в себя три правила: если обе буквы попадают в одну строку, нужно заменить каждую букву справа на круговой узор. TA -> IR

    [​IMG]

    Если обе буквы попадают в разные строки и столбцы, формируется прямоугольник с двумя буквами и возьмём буквы в горизонтальном противоположном углу прямоугольника. BL -> TN

    [​IMG]

    Если обе буквы попадают в один и тот же столбец, каждая букву заменяется буквой под ней круговой диаграммой. EX -> LT

    [​IMG]

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


    Шифрование слова «TABLE» - это «IR TN LT».

    Ограниченность: Шифр Плейфера значительно сложнее сломать; он по-прежнему уязвим для частотного анализа, поскольку в случае с этим шифром частотный анализ будет применяться на 25 * 25 = 625 возможных орграфах, а не в 25 возможных монографиях (моноалфавитных)


    Полиалфавитный шифр

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

    Алгоритм

    Шаг 0: Решим ключ шифрования для изменения открытого текста в шифре, например, возьмём «HACKING» в качестве ключа шифрования, числовое представление которого «7, 0, 2, 10, 8, 13, 6»

    [​IMG]

    Шаг 1: Чтобы зашифровать, число первой буквы ключа шифрует первую букву открытого текста, второе число второй буквы ключа шифрует вторую букву открытого текста и т. д.

    Например, открытый текст “VISIT TO HACKING ARTICLES”, а ключ “HACKING: 7 0 2 10 8 13 6”

    [​IMG]

    Шаг 2: Формула шифрования: «Добавить k mod 26»; то есть исходная буква L становится (L + k)% 26

    C = E (L+K) %26

    Где L=V и K =7

    C = E (V+7) %26

    C = E (21+7) %26

    C = E (28) %26

    C = E (2)

    C = E (C)

    Следовательно, “VISIT TO HACKING ARTICLES” будет зашифровано в “CIUSBGUOAEUQAMHRVSKYKZ”

    [​IMG]

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

    Шифрование вращением

    В ротации шифр генерирует шифрованный текст от имени размера блока и угла поворота обычного текста в направлении следующих углов: 90° 180° 270°

    Алгоритм

    Шаг 0: Определим размер блока для открытого текста «CRYPTOGRAPHY», допустим, 6 для него как размер блока.


    CRYPTO

    GRAPHY

    Шаг 1: Для шифрования открытый текст размещается в любом направлении между этими углами 90° 180° 270°, как показано ниже: В 90° поместим точку поворота вниз по вертикали от G до C и так далее.

    CRYPTO

    GRAPHY

    В 180° буква вращается справа налево горизонтально от O до C и так далее.

    CRYPTO --- OTPYRC

    GRAPHY --- YHPARG

    В 270° вращение помещает последнюю букву сверху вниз вертикально от O до Y и так далее.

    CRYPT
    O

    GRAPH
    Y

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

    [​IMG]

    Шаг 2: Упорядочив буквы в соответствии с их углами, получим:

    Шифр повернутый на 90° «GCRRAYPPHTYO»

    Шифр повернутый на 180° «YHPARGOTPYRC»

    Шифр повернутый на 270° «OYTHPPYARRCG»

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

    Шифр перестановки

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

    Алгоритм

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

    Шаг 1: Сохраним текст «classical cryptography» в таблице слева направо.

    [​IMG]

    Шаг 2: Для шифрования упорядочим все буквы в соответствии с столбцами в возрастающем порядке ключевого слова «CIPHER» будет CEHIPR как:

    [​IMG]

    Столбец 1: CCCPP

    Column2: ESRR

    Столбец 3: HSCG

    Столбец 4: PALOY

    Столбец 5: RIYA

    Следовательно, мы получим зашифрованный текст «CCCPPESRRHSCGPALOYRIYA»

    Шаг 3: Для дешифровки используется ключ для переупорядочения 26 букв шифрования в соответствии с его столбцом в матрице 6 * 5.

    Ограниченность: Было очень легко определить зашифрованное послание, если определить правильный ключ.


    ОКОНЧАНИЕ ПЕРЕВОДА СЛЕДУЕТ
     
    #1 K800, 4.11.2017
    В последний раз редактировалось: 12.11.2017
  2. Veil

    Veil Well-Known Member

    Регистрация:
    21.05.2015
    Сообщения:
    1 691
    Одобрения:
    2 421
    Репутация:
    48
    Вот она классика бля. Учитесь дети.
     
  3. hitrec322

    hitrec322 New Member

    Регистрация:
    12.09.2017
    Сообщения:
    13
    Одобрения:
    1
    Репутация:
    0
    спасибо за полезную инфуу
     
Загрузка...
Similar Threads - Руководство начинающих классической
  1. Mischa-94
    Ответы:
    1
    Просмотры:
    2 514
  2. desTiny

    Авторские статьи Базовое руководство по Irc

    desTiny, 22.03.2008, в раздел: Статьи
    Ответы:
    2
    Просмотры:
    2 914
  3. n0ne
    Ответы:
    13
    Просмотры:
    25 337
  4. system_32
    Ответы:
    2
    Просмотры:
    8 569