Skip to content

Шифрование

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

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

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

С помощью шифрования обеспечиваются три состояния безопасности информации:

  • Конфиденциальность. Шифрование используется для скрытия информации от неавторизованных пользователей при передаче или при хранении.

  • Целостность. Шифрование используется для предотвращения изменения информации при передаче или хранении.

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

Цели шифрования

Шифрование применяется для хранения важной информации в ненадёжных источниках и передачи её по незащищённым каналам связи. Такая передача данных включает два взаимно обратных процесса:

  • Перед отправлением данных по линии связи или перед помещением на хранение они подвергаются зашифровыванию.
  • Для восстановления исходных данных из зашифрованных к ним применяется процедура расшифровки.

Методы шифрования

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

Хеш, Соль

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

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

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

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

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

Пример хеширования с солью

Пароль пользователя: «password123» Сгенерированная соль: «ABCD1234» Хеш: «2e35be0642f92898b8d6fa9d7527da3b»

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

Примеры шифров

Шифр Цезаря

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

буква «А» заменяется на букву «Г»,
буква «Б» заменяется на букву «Д»,
и так далее,
буква «Ь» заменяется на букву «Я»,
буква «Э» заменяется на букву «А»,
буква «Ю» заменяется на букву «Б»,
буква «Я» заменяется на букву «В».

Что здесь ключ?

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

Шифр Цезаря назван в честь римского полководца Гая Юлия Цезаря, использовавшего его для шифрования текстов при переписке со своими военачальниками.

Практическое задание

Зашифровать слово "привет", а после расшифровать "щуцйц" с ключем сдвига - 8.

Азбука Морзе

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

morze

Так, например, известный сигнал СОС (SOS) на Морзянке имеет следующее значение: ... --- ...

Практическое задание

Зашифровать слово "сова", а после расшифровать "- --- .-. -"