В сегодняшнем выпуске HTG Explains мы дадим вам краткую историю шифрования, как это работает и некоторые примеры разных типов шифрования - убедитесь, что вы также просмотрите предыдущую версию, где мы объяснили, почему так много вундеркиндов ненавидят Интернет Проводник.
Изображение XKCD, очевидно.
Первые дни шифрования
Разумеется, этот метод шифрования можно довольно легко сломать, но это один из первых примеров шифрования, который фактически используется в реальном мире.
Юлий Цезарь использовал несколько схожий метод в свое время, переместив каждую букву алфавита вправо или влево на несколько позиций - метод шифрования, известный как шифр Цезаря. Например, используя приведенный ниже пример шифрования, вы должны написать «GEEK» как «JHHN».
Plain: ABCDEFGHIJKLMNOPQRSTUVWXYZ Cipher: DEFGHIJKLMNOPQRSTUVWXYZABC
Поскольку только предполагаемый получатель сообщения знал шифр, для следующего человека было бы сложно декодировать сообщение, которое могло бы выглядеть как тарабарщина, но человек, у которого был шифр, мог легко декодировать и читать его.
Другие простые шифровальные шифры, такие как квадрат Полибия, использовали полиалфавитный шифр, который перечислял каждую букву с соответствующими числовыми позициями сверху и сбоку, чтобы указать, где находится позиция письма.
Машина Enigma
История современного шифрования
Давайте посмотрим правде в глаза: современные методы шифрования могут быть очень скучным предметом, поэтому вместо того, чтобы просто объяснять их словами, мы собрали комикс, рассказывающий об истории шифрования, вдохновленный руководством по фигурному каталогу Джеффа Мозера для AES. Примечание: ясно, что мы не можем передать все о истории шифрования в комикс.
В те дни люди не имеют хорошего метода шифрования для обеспечения их электронного общения.
Эффективность алгоритма шифрования
Существует множество алгоритмов шифрования, и все они подходят для разных целей - две основные характеристики, которые идентифицируют и дифференцируют один алгоритм шифрования от другого, - это его способность защищать защищенные данные от атак и их скорость и эффективность при этом.
В качестве хорошего примера разницы в скорости между различными типами шифрования вы можете использовать утилиту бенчмаркинга, встроенную в мастер создания томов TrueCrypt, - как вы можете видеть, AES - это самый быстрый тип надежного шифрования.
Чтобы узнать больше о бенчмаркинге различных типов шифрования, ознакомьтесь с докладом из Вашингтонского университета в Сент-Луисе, где они провели тонну тестирования по различным программам и объяснили все это в очень уродливой рецензии.
Типы современного шифрования
Все модные алгоритмы шифрования, о которых мы говорили ранее, в основном используются для двух разных типов шифрования:
- Алгоритмы симметричного ключа использовать связанные или идентичные ключи шифрования для шифрования и дешифрования.
- Асимметричные ключевые алгоритмы используйте разные ключи для шифрования и дешифрования - это обычно называют криптографией с открытым ключом.
Симметричное шифрование ключей
Чтобы объяснить эту концепцию, мы будем использовать метафору почтовой службы, описанную в Википедии, чтобы понять, как работают симметричные ключевые алгоритмы.
Алиса помещает свое секретное сообщение в коробку и блокирует ящик с помощью висячего замка, к которому у нее есть ключ. Затем она отправляет ящик Бобу через обычную почту. Когда Боб получает коробку, он использует идентичную копию ключа Алисы (которую он каким-то образом получил ранее, может быть, лицом к лицу), чтобы открыть окно и прочитать сообщение. Затем Боб может использовать тот же замок, чтобы отправить свой секретный ответ.
Асимметричное шифрование
В асимметричной ключевой системе у Боба и Алисы есть отдельные навесные замки, вместо одиночного замка с несколькими ключами из симметричного примера. Примечание: это, конечно, очень упрощенный пример того, как это работает, что намного сложнее, но вы получите общую идею.
Во-первых, Алиса просит Боба отправить ему свой открытый замок с помощью обычной почты, держа его ключ в себе. Когда Алиса получает его, она использует его для блокировки коробки, содержащей ее сообщение, и отправляет заблокированную ячейку Бобу. Боб может открыть коробку своим ключом и прочитать сообщение от Алисы. Чтобы ответить, Боб должен также открыть открытый замок замка Алисы, чтобы закрыть коробку, прежде чем отправить ее обратно.
Критическое преимущество в асимметричной ключевой системе состоит в том, что Бобу и Алисе никогда не нужно посылать копии своих ключей друг другу. Это не позволяет третьей стороне (возможно, в примере, коррумпированному почтовому работнику) копировать ключ во время его транзита, позволяя третьей стороне следить за всеми будущими сообщениями, отправленными Алисой и Бобом. Кроме того, если Боб был небрежен и разрешил кому-то еще скопировать его ключ, сообщения Алисы Бобу будут скомпрометированы, но сообщения Алисы другим людям останутся секретными, поскольку другие люди будут предоставлять разные навесные замки для использования Алисой.
Асимметричное шифрование использует разные ключи для шифрования и дешифрования. Получатель сообщения создает закрытый ключ и открытый ключ. Открытый ключ распространяется среди отправителей сообщений, и они используют открытый ключ для шифрования сообщения. Получатель использует свой закрытый ключ для любых зашифрованных сообщений, которые были зашифрованы с использованием открытого ключа получателя.
Есть одно важное преимущество для шифрования таким образом, чтобы сравнить с симметричным шифрованием. Нам не нужно посылать ничего секретного (например, нашего ключа шифрования или пароля) по небезопасному каналу. Ваш открытый ключ выходит в мир - это не секрет, и это не обязательно. Ваш частный ключ может оставаться уютным и уютным на вашем персональном компьютере, где вы его создали - его никогда не нужно отправлять по электронной почте нигде или читать злоумышленники.
Как шифрование обеспечивает связь в Интернете
На протяжении многих лет протокол SSL (Secure Sockets Layer) защищает веб-транзакции, используя шифрование между вашим веб-браузером и веб-сервером, защищая вас от всех, кто может отслеживать в сети посередине.
Сам SSL концептуально прост. Он начинается, когда браузер запрашивает защищенную страницу (обычно https://)
Браузер проверяет, что сертификат был выпущен доверенной стороной (обычно это доверенный корневой ЦС), что сертификат все еще действителен и что сертификат связан с сайтом, с которым связался.
Затем браузер использует открытый ключ для шифрования случайного симметричного ключа шифрования и отправляет его на сервер с требуемым зашифрованным URL, а также зашифрованными HTTP-данными.
Веб-сервер расшифровывает симметричный ключ шифрования с использованием своего закрытого ключа и использует симметричный ключ браузера для дешифрования своих URL-адресов и http-данных.
Веб-сервер отправляет обратно запрошенный html-документ и http-данные, зашифрованные с помощью симметричного ключа браузера. Браузер расшифровывает http-данные и html-документ с помощью симметричного ключа и отображает информацию.
Вы что-нибудь узнали?
Если вы сделали это так далеко, мы заканчиваем наш долгий путь к пониманию шифрования и немного того, как это работает - начиная с первых дней шифрования с греками и римлянами, с ростом Люцифера и, наконец, с SSL использует асимметричное и симметричное шифрование, чтобы помочь вам купить этот пушистый розовый кролик на eBay.
Мы большие поклонники шифрования здесь, в How-To Geek, и мы рассмотрели множество разных способов сделать такие вещи, как:
- Начало работы с TrueCrypt (для защиты ваших данных)
- Добавить автоматическое шифрование веб-сайта в Firefox
- BitLocker To Go Encrypts Portable Flash Drives в Windows 7
- Как защитить свой Linux-ПК, зашифровав жесткий диск
- Добавить параметры шифрования / дешифрования в меню правой кнопки мыши Windows 7 / Vista
- Начало работы с TrueCrypt Drive Encryption на Mac OS X
Конечно, шифрование слишком сложное, чтобы действительно объяснить все. Мы пропустили что-то важное? Не стесняйтесь вкладывать некоторые знания в своих читателей в комментарии.