Издавна люди были озабочены защитой информации, гарантируя, что другие люди не увидят содержание передаваемого сообщения. Со временем были созданы различные методы для достижения этой цели и обеспечения конфиденциальности информации в целом.
Шифрование – это изучение и практика принципов и методов безопасной передачи информации в присутствии других людей.
То есть, на практике, любая техника, которая гарантирует, что третья сторона не имеет доступа к вашей информации, не может прочитать или понять истинный смысл сообщения.
Принципы
До недавнего времени криптография была синонимом шифрования, которое представляет собой процесс преобразования открытого текста в неприемлемый текст (или шифр). Сегодня у нее больше целей и принципов:
Конфиденциальность: только уполномоченный получатель сообщения способен извлечь его содержание и понять смысл сообщения. В простой аналогии это похоже на сейф. Только те, у кого есть ключ, имеют доступ к содержимому сейфа;
Целостность: Получатель может проверить, не было ли сообщение изменено во время его передачи. Это гарантирует, что кто-то злонамеренный не отправит правильное, но старое сообщение, которое уже недействительно. Получатель сможет открыть сообщение и проверить его содержание, чтобы убедиться, что оно больше недействительно;
Аутентичность: получатель может проверить, что сообщение действительно было отправлено тем человеком, который утверждает, что оно было отправлено. Это похоже на подписание контракта или чека;
Необратимость: отправитель сообщения не может отрицать авторство отправленного сообщения. То есть, как только сообщение опубликовано или отправлено, отправитель не может отказаться или сказать, что он его не отправлял, поскольку только он может обладать знаниями или ключом для создания сообщения. Следует подчеркнуть, что не все системы или алгоритмы охватывают все эти принципы одновременно, и что в большинстве приложений необходимо применять еще один алгоритм вместе, чтобы удовлетворить все требования.
Техники шифрования
Существует несколько техник шифрования (и, следовательно, алгоритмов), которые используются сегодня, но основными из них являются: криптография с секретным ключом, криптография с открытым ключом и хэширование. Ниже мы поговорим о каждом из них.
1. Шифрование с секретным ключом
Также известно как симметричное шифрование. Этот тип шифрования использует только один ключ для шифрования и расшифровки сообщения, отсюда и название – симметричное. Таким образом, для обмена сообщениями обе стороны должны иметь копию ключа.
Этот режим используется для принципа конфиденциальности. Этот тип может иметь 2 режима алгоритма:
Блочный: Сообщение шифруется блоками определенного размера. Примеры: DES, AES и т.д.
Потоковый: сообщение шифруется путем побайтового перебора информации. Примеры: RC4, Salsa20 и т.д.
Поскольку на обоих концах процесса используется один и тот же ключ, он должен быть надежно разделен между сторонами. Это может вызвать проблемы, если не сделать это тщательно.
2. Шифрование с открытым ключом
В криптографии с открытым ключом, также известной как асимметричная криптография, в процессе используются два разных ключа: один для шифрования, другой для расшифровки. Ключ, используемый для шифрования, также известен как открытый ключ и обычно может быть известен любому человеку. Ключ, используемый для расшифровки, известен как закрытый ключ и хранится в секрете только одной стороной.
Этот режим используется для принципов конфиденциальности и аутентичности. В случае аутентификации (или подписания) сообщения порядок обратный. Закрытый ключ используется для подписания сообщения, а открытый ключ – для его проверки.
Этот режим также используется для безопасного симметричного обмена ключами. Хорошим примером этого является SSL (используется в HTTPS), который использует симметричную и асимметричную криптографию для шифрования и аутентификации веб-сайта.
3. Хеширование
Эта техника не предполагает использования ключей. Он устанавливает фиксированный размер, а значение меняется в зависимости от сообщения. Любое небольшое изменение в сообщении (хоть бит) приводит к резкому изменению конечного значения.
Этот способ используется для проверки целостности отправляемого сообщения, поскольку он работает как отпечаток пальца отправляемого сообщения. Хеш является односторонней функцией, то есть невозможно восстановить исходное сообщение только по конечному значению.
Примеры алгоритмов: MD5, SHA, Whirpool и т.д.
Почему 3 метода?
Зачем использовать 3 метода? Почему бы не использовать один, который охватывает все основы? Ответ заключается в том, что каждый метод оптимизирован для конкретного применения. В реальных
приложениях для обеспечения всех принципов используется комбинация из трех методов. Например, вы можете использовать симметричный режим для шифрования сообщения (конфиденциальность) и передавать вместе хэш (целостность) и подпись (подлинность) с помощью асимметричного режима.
Приложения
С ростом использования Интернета и облачных систем шифрование все чаще используется для обеспечения безопасности по вышеуказанным принципам.
Цифровая подпись: способ отправки документов и заверения получателя в том, что этот документ является подлинным. Обычно вы получаете закрытый ключ от какого-либо органа и с его помощью подписываете документы. На другом конце получатель имеет открытый ключ того же органа и может проверить действительность подписи и, следовательно, подлинность документа. Это часто позволяет отказаться от использования физических подписей и избежать ненужной печати на бумаге.
Шифрование электронной почты: отправка электронных писем с конфиденциальными данными может быть опасной и легко
перехватить третьими лицами, что может нанести ущерб бизнесу. Существуют способы шифрования отправляемых данных, например, с помощью OpenPGP.
Шифрование конфиденциальных данных: Сохранение конфиденциальных данных (таких как пароли или финансовые отчеты) должно осуществляться осторожно. Существуют некоторые практики безопасного сохранения таких данных (например, здесь), в которых используются различные техники, показанные в этой статье.
HTTPS/SSL: Прямо сейчас вы используете шифрование, чтобы прочитать эту статью. Комбинация
хэширования, шифрования и подписи используется в протоколе HTTPS, который сегодня присутствует на большинстве сайтов (если нет, будьте подозрительны). Это гарантирует, что сайт, на который вы заходите, действительно тот, который вы ожидаете, и что передаваемая информация безопасна (такая как
пароль, личные данные и т.д.).
Блокчейн: Эта технология в последнее время очень популярна и активно использует принципы криптографии для хранения данных, а также для проверки их подлинности.
Заключение
Шифрование изучалось и использовалось людьми в течение длительного времени, и с каждым днем, с увеличением связи между людьми и данными, требуется большая безопасность и надежность ваших данных, которые как хранятся, так и транспортируются системой.
Эта статья была кратким введением в используемые термины и основные области применения в мире. В следующей статье мы поговорим о хэш-функциях и их применении.
–
В компании Vaultree мы строим зашифрованное будущее. Мы любим делиться ценной информацией и тенденциями, чтобы помочь вам сохранить ваши данные в безопасности. Подпишитесь, чтобы оставаться в курсе событий и обсуждать самые горячие тенденции в кибербезопасности с командой экспертов.