11 основных терминов шифрования, которые должен знать каждый
Скорее всего, вы знакомы со словом шифрование. Вы, наверное, слышали о том, насколько это важно, а также о том, насколько это важно для обеспечения безопасности столь значительной части нашей гиперсетевой жизни.
Использовать WhatsApp? Вы используете шифрование. Войти в онлайн-банкинг? Снова то же самое. Требуется спросить у бариста код Wi-Fi? Это потому, что вы подключаетесь к сети с использованием шифрования – пароль является ключом.
Но даже несмотря на то, что мы используем шифрование в повседневной жизни, большая часть терминологии шифрования остается загадочной. Вот список из 11 основных терминов шифрования, которые вам необходимо понять.
1. Открытый текст
Давайте начнем с самого основного термина шифрования, который прост, но так же важен, как и другие: открытый текст – это незашифрованное, читаемое, простое сообщение, которое может прочитать любой.
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)
2. Шифрованный текст
Зашифрованный текст – это результат процесса шифрования. Зашифрованный открытый текст выглядит как очевидно случайные строки символов, что делает их бесполезными. Шифр – это еще один способ обозначения алгоритма шифрования, который преобразует открытый текст, отсюда и термин зашифрованный текст.
3. Шифрование
Шифрование – это процесс применения математической функции к файлу, которая делает его содержимое нечитаемым и недоступным – если у вас нет ключа дешифрования.
Например, допустим, у вас есть документ Microsoft Word. Вы применяете пароль, используя встроенную функцию шифрования Microsoft Office. Файл теперь не читается и недоступен никому без пароля. Вы даже можете зашифровать весь жесткий диск в целях безопасности.
4. Расшифровка
Если шифрование блокирует файл, то расшифровка меняет процесс на обратный, превращая зашифрованный текст обратно в открытый текст. Для расшифровки требуются два элемента: правильный пароль и соответствующий алгоритм расшифровки.
5. Ключи
Для процесса шифрования требуется криптографический ключ, который сообщает алгоритму, как преобразовать открытый текст в зашифрованный текст. Принцип Керкхоффса утверждает, что «только секретность ключа обеспечивает безопасность», в то время как изречение Шеннона продолжает «противник знает систему».
Эти два утверждения влияют на роль шифрования и ключей в нем.
Хранить в секрете детали всего алгоритма шифрования чрезвычайно сложно; хранить в секрете гораздо меньший ключ проще. Ключ блокирует и разблокирует алгоритм, позволяя процессу шифрования или дешифрования функционировать.
Ключ – это пароль?
Нет. По крайней мере, не совсем. Создание ключа является результатом использования алгоритма, тогда как пароль обычно выбирается пользователем. Путаница возникает из-за того, что мы редко специально взаимодействуем с криптографическим ключом, тогда как пароли являются частью повседневной жизни.
Иногда пароли являются частью процесса создания ключа. Пользователь вводит свой сверхнадежный пароль, используя всевозможные символы и символы, и алгоритм генерирует ключ, используя их ввод.
6. Хеш
Когда веб-сайт шифрует ваш пароль, он использует алгоритм шифрования для преобразования вашего открытого текста в хэш. Хэш отличается от шифрования тем, что после хеширования данных их нельзя расшифровать. Вернее, крайне сложно.
Хеширование действительно полезно, когда вам нужно проверить что-то на подлинность, но не перечитывать. В этом случае хеширование паролей предлагает некоторую защиту от атак грубой силы (когда злоумышленник пробует все возможные комбинации паролей).
Возможно, вы даже слышали о некоторых распространенных алгоритмах хеширования, таких как MD5, SHA, SHA-1 и SHA-2. Некоторые из них сильнее других, а некоторые, например MD5, совершенно уязвимы. Например, если вы перейдете на сайт MD5 онлайн, вы заметите, что у них есть 123 255 542 234 слова в их базе хэшей MD5. Продолжай, попытайся.
- Выберите MD5 Encrypt в верхнем меню.
- Введите свой пароль, нажмите «Зашифровать» и просмотрите хэш MD5.
- Выберите хэш, нажмите Ctrl + C, чтобы скопировать хеш, и выберите «Расшифровка MD5» в верхнем меню.
- Выделите поле и нажмите Ctrl + V, чтобы вставить хеш.
- Заполните CAPTCHA и нажмите Decrypt.
Как видите, хешированный пароль автоматически не означает, что он безопасен (конечно, в зависимости от выбранного вами пароля). Но есть дополнительные функции шифрования, повышающие безопасность.
7. Соль
Когда пароли являются частью создания ключа, процесс шифрования требует дополнительных мер безопасности. Один из таких шагов – соление паролей. На базовом уровне соль добавляет случайные данные в одностороннюю хеш-функцию. Давайте разберемся, что это значит, на примере.
Есть два пользователя с одинаковым паролем: hunter2.
Запускаем hunter2 через генератор хэшей SHA256 и получаем f52fbd32b2b3b86ff88ef6c490628285f482af15ddcb29541f94bcf526a3f6c7.
Кто-то взламывает базу паролей и проверяет этот хеш; каждая учетная запись с соответствующим хешем сразу становится уязвимой.
На этот раз мы используем индивидуальную соль, добавляя случайное значение данных к каждому паролю пользователя:
- Пример соли # 1: hunter2 + sausage: 3436d420e833d662c480ff64fce63c7d27ddabfb1b6a423f2ea45caa169fb157
- Пример соли # 2: hunter2 + бекон: 728963c70b8a570e2501fa618c975509215bd0ff5cddaf405abf06234b20602c
Быстро сравните хеши для одних и тех же паролей с (очень простой) солью и без нее:
- Без соли: f52fbd32b2b3b86ff88ef6c490628285f482af15ddcb29541f94bcf526a3f6c7
- Пример соли № 1: 3436d420e833d662c480ff64fce63c7d27ddabfb1b6a423f2ea45caa169fb157
- Пример соли № 2: 728963c70b8a570e2501fa618c975509215bd0ff5cddaf405abf06234b20602c
Вы видите, что добавление соли в достаточной степени рандомизирует значение хеш-функции, так что ваш пароль остается (почти) полностью безопасным во время взлома. И что еще лучше, пароль по-прежнему связан с вашим именем пользователя, поэтому при входе на сайт или в службу не возникает путаницы с базой данных.
8. Симметричные и асимметричные алгоритмы.
В современных вычислениях существует два основных типа алгоритмов шифрования: симметричный и асимметричный. Оба они шифруют данные, но функционируют несколько иначе.
- Симметричный алгоритм: для шифрования и дешифрования используется один и тот же ключ. Обе стороны должны согласовать ключ алгоритма перед началом связи.
- Асимметричный алгоритм: использует два разных ключа: открытый ключ и закрытый ключ. Это обеспечивает безопасное шифрование при обмене данными без предварительного создания общего алгоритма. Это также известно как криптология открытого ключа (см. Следующий раздел).
Подавляющее большинство онлайн-сервисов, которые мы используем в повседневной жизни, реализуют ту или иную форму криптологии с открытым ключом.
9. Открытый и закрытый ключи
Теперь мы больше понимаем функцию ключей в процессе шифрования, мы можем взглянуть на открытые и закрытые ключи.
Асимметричный алгоритм использует два ключа: открытый ключ и закрытый ключ. Открытый ключ может быть отправлен другим людям, а закрытый ключ известен только владельцу. Какая у этого цель?
Что ж, любой, у кого есть открытый ключ предполагаемого получателя, может зашифровать личное сообщение для него, в то время как получатель может читать только содержимое этого сообщения, если у него есть доступ к парному закрытому ключу. Посмотрите на изображение ниже для большей ясности.
Открытые и закрытые ключи также играют важную роль в цифровых подписях, посредством чего отправитель может подписывать свое сообщение своим закрытым ключом шифрования. Те, у кого есть открытый ключ, могут затем проверить сообщение, зная, что исходное сообщение пришло с закрытого ключа отправителя.
Пара ключей – это математически связанный открытый и закрытый ключ, сгенерированный алгоритмом шифрования.
10. HTTPS.
HTTPS (HTTP Secure) – это широко внедренное в настоящее время обновление безопасности для протокола приложений HTTP, который является основой Интернета, как мы его знаем. При использовании HTTPS-соединения ваши данные шифруются с помощью TLS, защищая ваши данные во время передачи.
HTTPS генерирует долгосрочные закрытые и открытые ключи, которые, в свою очередь, используются для создания краткосрочного сеансового ключа. Ключ сеанса – это симметричный ключ одноразового использования, который соединение уничтожает, когда вы покидаете сайт HTTPS (закрывая соединение и завершая его шифрование). Однако при повторном посещении сайта вы получите еще один одноразовый ключ сеанса для защиты вашего общения.
Сайт должен полностью придерживаться HTTPS, чтобы обеспечить пользователям полную безопасность. С 2018 года большинство сайтов в Интернете начали предлагать HTTPS-соединения поверх стандартного HTTP.
11. Сквозное шифрование
Одно из самых распространенных словечек о шифровании – сквозное шифрование. Сервис платформы социальных сообщений WhatsApp начал предлагать своим пользователям сквозное шифрование (E2EE) в 2016 году, обеспечивая постоянную конфиденциальность их сообщений.
В контексте службы обмена сообщениями EE2E означает, что после нажатия кнопки отправки шифрование остается в силе до тех пор, пока получатель не получит сообщения. Что здесь происходит? Что ж, это означает, что закрытый ключ, используемый для кодирования и декодирования ваших сообщений, никогда не покидает ваше устройство, что, в свою очередь, гарантирует, что никто, кроме вас, не сможет отправлять сообщения, используя ваше прозвище.
WhatsApp не первая и даже не единственная служба обмена сообщениями, предлагающая сквозное шифрование. Тем не менее, это продвинуло идею шифрования мобильных сообщений в мейнстрим, что вызвало гнев бесчисленных правительственных агентств по всему миру.
Шифрование до конца
К сожалению, многие правительства и другие организации действительно не любят шифрование. Они ненавидят его по тем же причинам, по которым мы считаем его фантастическим: он сохраняет конфиденциальность вашего общения и, в немалой степени, помогает функционированию Интернета.
Без него Интернет стал бы чрезвычайно опасным местом. Вы, конечно же, не будете завершать онлайн-банкинг, покупать новые тапочки на Amazon или рассказывать врачу, что с вами не так.
На первый взгляд терминология шифрования и шифрования кажется сложной. Я не буду лгать; математическая основа шифрования иногда бывает сложной. Но вы все равно можете оценить шифрование без цифр, и само по себе это действительно полезно.
Если вы хотите начать шифрование своего цифрового мира, попробуйте самые простые способы шифрования своей повседневной жизни с минимальными усилиями.