Общие сведения
Шифрование — это обратимое преобразование информации в целях сокрытия от неавторизованных лиц, с предоставлением в то же время, авторизованным пользователям доступ к ней.
Шифрование применяется для хранения важной информации в ненадёжных источниках и её передачи по незащищённым каналам связи.
Шифрование обеспечивает:
- Конфиденцальность. Сокрытие информации от неавторизованных пользователей;
- Целостность – предотвращение изменения информации;
- Идентифицируемость – аутентификация источника информации.
Важной особенностью шифрования любого алгоритма является использование ключа. Он необходим чтобы прочитать шифротекст.
Ключ — это секретная информация, используемая криптографическим алгоритмом при зашифровании или расшифровании сообщений.
Авторизация — предоставление определённому лицу прав на выполнение определённых действий (т.е. авторизованные пользователи обладают определённым аутентичным ключом).
Аутентификация — процедура проверки подлинности (например, пароль в базе данных, электронного письма, контрольной суммы).
Шифрование представляет собой два шага: зашифрование и расшифрование.
Методы шифрования
- Симметричное (используется один и тот же ключ для шифрования и расшифрования);
- Ассиметричное (используются два ключа).
Симметричное шифрование
Для шифрования и расшифрования используется один и тот же ключ. Алгоритм и ключ выбираются заранее и известны обоим сторонам.
- Пользователь_1 выбирает ключ шифрования, и алгоритм, затем посылает это Пользователю_2;
- Пользователь_2 шифрует полученным ключом информацию и передаёт Пользователю_1 зашифрованный документ (шифротекст);
- Пользователь_1 с помощью этого ключа расшифровывает его.
Проблемой этого метода является передача этого ключа на первом шаге.
Ассиметричное шифрование
В системах с открытым ключом используются два ключа — открытый и закрытый, которые связаны между собой математическим образом.
Открытый ключ передаётся по открытому доступному каналу. Открытый ключ может шифровать, но не расшифровывать информацию.
- Пользователь_1 выбирает открытый и закрытый ключи и посылает Пользователю_2 открытый ключ по открытому каналу;
- Пользователь_2 шифрует информацию при помощи открытого ключа Пользователя_1 и передаёт зашифрованный документ (шифротекст) Пользователю_1;
- Пользователь_1 с помощью закрытого ключа расшифровывает текст.
Хеш-сумма
Хеш-сумма — это результат обработки неких данных хеш-функцией (преобразование информации).
Используется для проверки целостности данных.
Основные виды: TTH, SHA-1, ED2K, AICH, MD5, CRC-32.