Асимметричное шифрование на практике / Хабр
Приветствую вас, хабравчане!
Проблемы безопасности — это слабое место большинства из нас. Всем нам неприятно сталкиваться и тем более терять что—то ценное из—за случайного клика мышью. И именно поэтому я решила поделиться найденными материалами с вами.
В стремлении развеять наиболее часто задаваемый вопрос — почему будут атаковать меня? Кому я нужен? — мы начнем статью именно с него.
Нужно учитывать, что атаковать вас может не только человек. Это может делать, например, бот.
Каждый из нас подключен к интернет провайдеру. А на него, скорее всего, происходят атаки буквально каждый день. Замечали у себя на почте раздел «спам»? В каждом таком письме потенциально есть фишинговая атака. Это атака не персонально на вас. Это масштабная атака, ориентированная на широкий круг лиц. Мы потенциально жертвы.
Чаще всего их цель — деньги. Как они могут их получить?
Например, использовать ваш компьютер в качестве web сервера, красть ваш контент, производить email атаки, деятельность в ботнете, кража аккаунтов, атаки с целью вымогательства.
Время дорого, и мы хотим тратить как можно меньше времени на вопросы, связанные с безопасностью.
И поэтому первое, что нужно сделать — это ответить для себя на несколько вопросов:
- В каких файлах хранятся наиболее важные данные?
- Какие аккаунты в соц сетях вы не можете потерять?
- Что может причинить наибольший вред?
- А что может ударить по вашей репутации?
Ну, например, кража ноутбука. Да, это больно и печально. Но как это может угрожать вам?
Это может быть потеря данных для входа в соц сети. Это может быть конфиденциальная информация, полученная во время работы. А может это личные фотографии.
Окей, мы определились с тем, что нам необходимо защитить. Следующий шаг — выбор метода защиты.
Да, разумеется, в мире существует множество атак и защититься от всех просто невозможно.
Поэтому мы рассмотрим один из наиболее эффективных инструментов — шифрование.
Что такое шифрование?
Чтобы сделать правильный выбор в области безопасности, вам нужно понимать, что такое шифрование. Не обязательно знать хардкорную математику. Достаточно понять на базовом уровне. Это один из лучших и незаменимых инструментов в нашем арсенале.
Шифрование — это метод преобразования данных, пригодных для чтения человеком, в форму, которую человек не сможет прочитать. За счет этого данные остаются конфиденциальными и приватными.
Дешифрование — обратная операция. Преобразование нечитаемых данных в читаемые.
Окей, где это применяется? На самом деле во многих местах. Например, обращали внимание на протокол «https»? Именно за счет него ваши данные не может перехватить 3-й человек во время вашего лазания в интернете. Объясню подробнее. Вы заходите на сайт «www.google.com», делаете любой запрос. При этом все данные, которые необходимы для отображения выдачи результатов, передаются с помощью протокола «https».
Но вернемся к базовой теории. В процессе шифрования участвуют 2 основных компонента — алгоритм и ключ.
Алгоритм — это в каком-то смысле замок, который позволяет хранить ваши данные в тайне. За счет него происходит преобразование текста.
Ключ — это, уж простите за тавтологию, ключ от замка. Кусочек уникальных данных, с помощью которых происходит преобразование текста
Хм, хорошо. Едем дальше. Слегка повысим напряжение.
Виды шифрования
Как еще мы можем использовать шифрование в своих, корыстных целях? Для простоты понимания мы рассмотрим шифрование архива. При архивации во многих архиваторах присутствует возможность установить пароль. При этом архиватор использует какой-либо алгоритм для шифрования. И чаще всего это симметричный алгоритм.
Симметричное шифрование
Симметричный алгоритм шифрования — алгоритм, при котором для шифрования и дешифрования используется один и тот же ключ. Ярким и, в то же простым примером, будет шифр Цезаря.
Вся работа этого алгоритма заключается в том, чтобы изменить символ на другой с определенным шагом.
Например, при смещении в 5 символов, символ, который стоит на первой позиции заменить на символ 6 позиции и так далее.
Наиболее стойким на данный момент считается алгоритм AES (Advanced Encryption Standard).
Стоит упомянуть еще один момент — мощность пароля. Мощность пароля измеряется в битах. Одним из наиболее распространенных решений является 128 или 256 бит. Это то количество бит, которое будет выделено для пароля. Так же это число означает количество паролей, которое вы можете получить при данном алгоритме шифрования. Но чем больше длина ключа, тем медленнее протекает процесс шифрования или дешифрования.
Но чаще всего используется асимметричное шифрование
И так, мы зашифровали письмо, но как его отправить нашему другу? Отправлять в соц. сетях или текстовым сообщением — не самая лучшая затея. Как и говорить его по телефону.
И это приводит нас к новому типу шифрования.
В ассиметричном шифровании используется 2 ключа — открытый и закрытый(тайный).
Открытый ключ для шифрования, закрытый — для дешифрования.
Какие алгоритмы позволяют пользоваться этой технологией?
Вот списочек:
- Rivest—Shamir—Adleman (RSA) (наиболее распространенный)
- Elliptic curve cryptosystem (ECC)
- Diffie—Hellman (DH)
- El Gamal
Плюсы ассиметричных алгоритмов:
- можно свободно делиться открытым ключом и любой может отправить тебе тайное сообщение.
Минусы:
- скорость шифрования/дешифрования.
Для продвинутых
Так как во мне есть жилка программиста, а также любовь к математике, то я просто не могу не рассказать о том, как все работает «под капотом»
Рассмотрим на примере алгоритма RSA.
Первое, что нам необходимо сделать — сгенерировать открытый и закрытый ключи. d%n.
Ну и с точки зрения программиста, мы можем использовать эту информацию следующим образом:
- Создать массив соответствий символу и его коду (например, ASCII код)
- Применить алгоритм для каждого символа, создавая массив преобразованных значений
- Перевести полученный массив обратно в строковый вид
- Profit!
Как можно использовать асимметричное шифрование для своих целей?
Теперь, зная теорию, плюсы и минусы алгоритма, а также для чего вообще нужно им пользоваться, мы можем говорить о практическом применении.
Среди всех найденных программ, наиболее удобной мне показалась gpg4usb.
Данная программа использует PGP шифрование. Почему я рекомендую использовать именно его?
Все просто. Этот тип шифрования до сих пор еще не удалось взломать. Никому. Так что пользуйтесь.
Пользоваться программой достаточно просто. Нужно лишь знать куда нажимать.
И именно об этом сейчас пойдет речь.
Первое, что необходимо сделать — скачать программу. Вы можете это сделать по ссылке:
ссылка.
Скажу сразу — эта программа кросс—платформенная. То есть вы можете использовать ее как на Windows, так и на Linux.
Второе — это создание пары ключей шифрования.
Это можно сделать, выполнив следующую последовательность действий:
1) Переходим в раздел «Менеджер ключей»
2) Выбираем в верхней панели «Ключ», затем «Генерировать ключ»
Должно выглядеть примерно так:
3) Заполняем необходимые поля. Предупрежу сразу — пароль лучше куда-нибудь записать (или запомнить), потому что он понадобится в последующем для дешифрования сообщения.
Теперь ключ создан, и мы можем приступать непосредственно к шифрованию.
На главном экране присутствует текстовое поле — это наш плацдарм для создания сообщений. В правой боковой панели помечаем галочкой свой ключ.
Введя сообщение в поле, смело нажимаем в верхней панели «Зашифровать».
Поздравляю, вы умеете шифровать сообщения.
Дешифровка происходит аналогично, разве что вместо «Зашифровать» вы пользуетесь кнопкой «Расшифровать».
А теперь момент, который пол часа выносил мне мозг: как передать ключ другу?
Да, мы настроили систему шифрования, и она работает, да, мы можем передать другу открытый ключ и не бояться, что сообщение будет прочитано. Но где его взять?
Как оказалось, все достаточно просто. В окне, в котором мы создавали ключи для шифрования, мы помечаем галочкой нужный ключ и в верхней панели выбираем «Экспорт в файл». Мы получили открытый ключ и можем передавать кому угодно, чтобы получать от него зашифрованные сообщения, которые можем прочитать только мы.
Так, а теперь я хочу получить закрытый ключ (а вдруг буду работать с другого компьютера? Ведь ключи хранятся локально).
Чтобы решить эту задачу, мы вновь возвращаемся на главный экран, в правой боковой панели нажимаем правой кнопкой мыши на нужный ключ и выбираем «Показать свойства ключа». А в открывшемся окне выбираем «Экспортировать Секретный ключ».
Готово, теперь у вас «на руках» открытый и закрытый ключи шифрования, которыми вы можете распоряжаться по своему усмотрению.
Ну и в завершении статьи хочу поделиться полезной методикой: моделирование угроз и оценка рисков.
Первое, что нужно понять — нельзя обеспечить 100% безопасность, как и свести все риски к нулю. Нельзя получить 100% анонимность. Нельзя получить 100% безопасность (разве что не использовать телефон и ПК).
Используя интернет мы так или иначе принимаем риски. Он дает нам шанс расширить свои возможности, но при этом есть риск потери наших данных. Поэтому безопасность — это балансирование между удобством, расширением знаний, комфортом и сохранением уже определенных, важных для нас данных.
Мы должны использовать риск—ориентированный подход.
Риск = уязвимость * угрозы * последствия
Например, кража ноутбука. Что мы можем сделать? Зашифровать весь диск, добавить дополнительные этапы авторизации.
Для обеспечения качественной защиты нужно пройти несколько этапов:
- Выбираем
- Настраиваем
- Оцениваем. Проверяем, что диск зашифрован полностью
- Контролируем. Проверка обновлений систем безопасности
Асимметричное шифрование и симметричное шифрование
Криптография с открытым ключом, также известная как асимметричное шифрование, является алгоритмом криптографии.
История асимметричного шифрования
1. В 1976 году два ученых, Уитфилд Диффи и Мартлин Хеллман, предложили алгоритм криптографического обмена, то есть алгоритм DH.
2. В 1978 году трехмерные профессора Стэнфорда Ривест, Шмир и Адлеман опубликовали алгоритм RSA (сокращения трех изобретателей), который является самым известным алгоритмом шифрования с открытым ключом.
3. К общим алгоритмам шифрования с открытым ключом относятся: алгоритм шифрования с открытым ключом в протоколе обмена секретными ключами DH, алгоритм RSA, алгоритм шифрования случайной кривой (ECC), ElGamal. Наиболее широко используемым является алгоритм RSA, а ElGamal — еще один широко используемый алгоритм асимметричного шифрования.Асимметричное шифрование означает, что для шифрования и дешифрования необходимы два ключа: один
Открытый ключ
И горсткаЗакрытый ключ
, Поскольку для шифрования и дешифрования необходимы два разных ключа, это называется асимметричным шифрованием.Среди двух ключей: открытый ключ и закрытый ключ, если один используется для шифрования, другой используется для дешифрования. Зашифрованный текст, полученный с использованием одного из ключей для шифрования открытого текста, может быть получен только с соответствующим другим ключом для получения исходного открытого текста, даже ключ, первоначально использованный для шифрования, не может быть использован для дешифрования.
Хотя эти два ключа математически связаны, если один известен, другой не может быть рассчитан на основе этого. Следовательно, один из них может быть открыт, назван открытым ключом и выпущен произвольно, нераскрытый секретный ключ является закрытым ключом, который должен храниться в строгом секрете пользователем и никому не должен предоставляться никому.
Другие используют ваш открытый ключ для шифрования информации, а затем отправляют ее вам, вы используете свой закрытый ключ для ее расшифровки,
Выносить информацию
И наоборот, вы используете закрытый ключ для шифрования информации, а другие используют ваш открытый ключ для разблокировки, тем самым доказывая, что информация действительно отправлена вами и не была взломана. Это называется просто выполнением
цифровой подписи
WechatIMG3.png
Алгоритм симметричного шифрования (алгоритм шифрования данных, EDA), также называемыйАлгоритм шифрования закрытым ключом.
Это алгоритм шифрования, который использует один и тот же секретный ключ для шифрования и дешифрования. Он также называется алгоритмом единого ключа, традиционным алгоритмом ключа.
aaa.png
Принцип Биткойн, гарантирующий надежность платежей, — асимметричное шифрование.
- Кто-то шифрует сумму денег с помощью вашего открытого ключа и отправляет ее вам. Деньги можно получить после расшифровки с помощью закрытого ключа, соответствующего открытому ключу. Другие не могут получить деньги без закрытого ключа.
- Вы используете свой закрытый ключ для создания цифровой подписи, а другие могут использовать ваш открытый ключ, чтобы проверить, принадлежит ли подпись вам.
- Поскольку оплаченные деньги должны быть использованы через закрытый ключ, не имеет значения, кто вы, а кто владеет закрытым ключом. Только если у вас есть закрытый ключ, вы можете избавиться от выплаченных вам денег
Разница между симметричным и асимметричным шифрованием
Если вы знакомы с веб-шифрованием или сертификатами SSL, вы, вероятно, слышали термины симметричное шифрование и асимметричное шифрование. Если вы когда-нибудь задумывались о том, что означают эти термины, что их отличает и какая форма шифрования лучше, то вы попали в нужное место. В этой статье мы рассмотрим все аспекты обеих форм шифрования, которые являются наиболее безопасными.Но сначала краткий курс по шифрованию.
Как работает шифрование
Возможно, вы уже знаете, шифрование — это то, что происходит, когда кто-то посещает веб-сайт с установленным сертификатом SSL через веб-браузер. SSL помогает создать безопасное соединение между сервером веб-сайта и браузером посетителя. Любая информация, отправляемая по этому соединению, шифруется, что означает в простоте — обычный открытый текст преобразуется в зашифрованный текст, делая его «нечитаемым» для третьих лиц, так называемых мошенников.
Шифрование работает с использованием математических алгоритмов и ключей. Алгоритм — это набор математических операций, которые необходимы для выполнения определенного процесса шифрования информации. Центральное место в алгоритмах шифрования занимает использование ключей. Ключи — это сгенерированные строки текста и чисел, которые используются для шифрования (отображения нечитаемых) данных и дешифрования (повторного чтения) данных.
Давайте возьмем очень простой пример. Допустим, кто-то хочет отправить сообщение в службу поддержки с помощью функции чата на веб-сайте, защищенном SSL. Человек нажимает отправить сообщение, и ключ зашифрует или «заблокирует» сообщение, пока оно находится в пути, чтобы его не мог прочитать никто, у кого нет правильного ключа. Когда получатель получает сообщение, используется ключ для расшифровки или «разблокировки» сообщения.
Но как сервер и браузер на каждом конце соединения имеют правильный ключ для шифрования и дешифрования данных? Ответ на этот вопрос и есть главное различие между симметричным и асимметричным шифрованием. Во-первых, давайте посмотрим, как работает симметричное шифрование.
- Определение симметричного шифрования
При симметричном шифровании данные шифруются и дешифруются одним и тем же секретным ключом, который используется получателем и отправителем. Это означает, что ключ должен быть передан получателю безопасным способом, чтобы только он и никто другой не имели к нему доступа. Это высокоскоростной метод шифрования.
- Определение асимметричного шифрования
Более сложный процесс, асимметричное шифрование, работает с использованием двух разных, но математически связанных ключей, открытого и закрытого ключей, для шифрования и дешифрования данных. Открытый ключ, доступ к которому может получить любой, используется для шифрования данных. Для расшифровки сообщения можно использовать только закрытый ключ который находится на сервере.
Симметричное и асимметричное шифрование — ключевые различия
В то время как симметричное шифрование использует один общий ключ для шифрования и дешифрования данных, асимметричное использует два отдельных ключа. Симметричное шифрование использует более короткие ключи (обычно 128 или 256 бит). Для сравнения, асимметричные ключи намного длиннее (иногда 2048 бит или больше). Вот почему асимметричное шифрование занимает немного больше времени, чем симметричное.
Однако, хотя симметричное шифрование является более быстрым и простым процессом, оно более уязвимо для угроз безопасности из-за того, что общий ключ хранится в секрете. Между тем, асимметричное шифрование может быть более сложным и, как следствие, более медленным процессом, но в конечном итоге это гораздо более безопасный метод шифрования. В отличие от симметричного шифрования, он может аутентифицировать личность, что делает его идеальным для сообщений, отправляемых между двумя сторонами, ранее неизвестными друг другу (например, пользователь, впервые посещающий веб-сайт).
С другой стороны, симметричное шифрование, как правило, в основном используется во внутренней среде ИТ-безопасности, где секретный ключ может безопасно и надежно совместно использоваться между получателем и отправителем.
TLS 1.3 и работа в тандеме
К настоящему моменту вы, вероятно, лучше понимаете разницу между симметричным и асимметричным шифрованием и какие среды каждое из них лучше всего подходит. Но когда дело доходит до SSL-сертификатов, вам не нужно выбирать между ними. Это связано с тем, что TLS 1.3 — текущий криптографический протокол, лежащий в основе работы SSL, — использует комбинацию симметричного и асимметричного шифрования. Как именно это работает?
Для пользователя, впервые посещающего веб-сайт HTTPS, первоначальное соединение выполняется с использованием асимметричного шифрования. Во время установления связи SSL сервер веб-сайта отправляет клиенту (браузеру пользователя) свой открытый ключ. Клиент аутентифицирует открытый ключ, а затем использует его для создания так называемого предварительного главного секретного ключа. Он шифрует этот ключ открытым ключом и отправляет его обратно на сервер. Затем сервер расшифрует предварительный секретный ключ, используя соответствующий закрытый ключ. Этот предварительный секретный ключ будет использоваться для шифрования связи между клиентом и сервером с этого момента, переключаясь с асимметричного шифрования на симметричное шифрование.
Используя эту гибридную систему шифрования, TLS 1.3 обладает преимуществами безопасности асимметричного шифрования со всей скоростью симметричного шифрования.
Ассимметричные шифры
Ассимметричные шифрыАссимметричные шифры
Криптографическая система с открытым ключом (также асимметричное шифрование, асимметричные шифры) — система шифрования и/или электронной цифровой подписи (ЭЦП), при которой открытый ключ передаётся по открытому (то есть незащищённому, доступному для наблюдения) каналу, и используется для проверки ЭЦП и для шифрования сообщения. Для генерации ЭЦП и для расшифрования сообщения используется секретный ключ. Криптографические системы с открытым ключом в настоящее время широко применяются в различных сетевых протоколах, в частности, в протоколах TLS и его предшественнике SSL (лежащих в основе HTTPS), в SSH. Также используется в PGP, S/MIME.
Идея криптографии с открытым ключом очень тесно связана с идеей односторонних функций, то есть таких функций f(x), что по известному x довольно просто найти значение f(x), тогда как определение x из f(x) сложно в смысле теории.
Но сама односторонняя функция бесполезна в применении: ею можно зашифровать сообщение, но расшифровать нельзя. Поэтому криптография с открытым ключом использует односторонние функции с лазейкой. Лазейка — это некий секрет, который помогает расшифровать. То есть существует такой y, что зная f(x), можно вычислить x. К примеру, если разобрать часы на множество составных частей, то очень сложно собрать вновь работающие часы. Но если есть инструкция по сборке (лазейка), то можно легко решить эту проблему.
Понять идеи и методы криптографии с открытым ключом помогает следующий пример — хранение паролей в компьютере. Каждый пользователь в сети имеет свой пароль. При входе, он указывает имя и вводит секретный пароль. Но если хранить пароль на диске компьютера, то кто-нибудь его может считать (особенно легко это сделать администратору этого компьютера) и получить доступ к секретной информации. Для решения задачи используется односторонняя функция. При создании секретного пароля в компьютере сохраняется не сам пароль, а результат вычисления функции от этого пароля и имени пользователя. Например, пользователь Алиса придумала пароль «Гладиолус». При сохранении этих данных вычисляется результат функции f(ГЛАДИОЛУС), пусть результатом будет строка РОМАШКА, которая и будет сохранена в системе. В результате файл паролей примет следующий вид:
Вход в систему теперь выглядит так:
Когда Алиса вводит «секретный» пароль, компьютер проверяет, даёт или нет функция, применяемая к ГЛАДИОЛУС, правильный результат РОМАШКА, хранящийся на диске компьютера. Стоит изменить хотя бы одну букву в имени или в пароле, и результат функции будет совершенно другим. «Секретный» пароль не хранится в компьютере ни в каком виде. Файл паролей может быть теперь просмотрен другими пользователями без потери секретности, так как функция практически необратимая.
В предыдущем примере используется односторонняя функция без лазейки, поскольку не требуется по зашифрованному сообщению получить исходное. В следующем примере рассматривается схема с возможностью восстановить исходное сообщение с помощью «лазейки», то есть труднодоступной информации. Для шифрования текста можно взять большой абонентский справочник, состоящий из нескольких толстых томов (по нему очень легко найти номер любого жителя города, но почти невозможно по известному номеру найти абонента). Для каждой буквы из шифруемого сообщения выбирается имя, начинающееся на ту же букву. Таким образом букве ставится в соответствие номер телефона абонента. Отправляемое сообщение, например «КОРОБКА», будет зашифровано следующим образом:
Криптотекстом будет являться цепочка номеров, записанных в порядке их выбора в справочнике. Чтобы затруднить расшифровку, следует выбирать случайные имена, начинающиеся на нужную букву. Таким образом исходное сообщение может быть зашифровано множеством различных списков номеров (криптотекстов).
Примеры таких криптотекстов:
Чтобы расшифровать текст, надо иметь справочник, составленный согласно возрастанию номеров. Этот справочник является лазейкой (секрет, который помогает получить начальный текст), известной только легальным пользователям. Не имея на руках копии справочника, криптоаналитик затратит очень много времени на расшифровку.
Пусть K — пространство ключей, а e и d — ключи шифрования и расшифрования соответственно. Ee — функция шифрования для произвольного ключа eK, такая что:
Ee(m) = c
Здесь cC, где C — пространство шифротекстов, а mM, где M — пространство сообщений.
Dd — функция расшифрования, с помощью которой можно найти исходное сообщение m, зная шифротекст c:
Dd(c) = m
{Ee: eK} — набор шифрования, а {Dd: dK} — соответствующий набор для расшифрования. Каждая пара (E,D) имеет свойство: зная Ee, невозможно решить уравнение Ee(m) = c, то есть для данного произвольного шифротекста cC, невозможно найти сообщение mM. Это значит, что по данному e невозможно определить соответствующий ключ расшифрования d. Ee является односторонней функцией, а d — лазейкой.
Ниже показана схема передачи информации лицом А лицу В. Они могут быть как физическими лицами, так и организациями и так далее. Но для более лёгкого восприятия принято участников передачи отождествлять с людьми, чаще всего именуемыми Алиса и Боб. Участника, который стремится перехватить и расшифровать сообщения Алисы и Боба, чаще всего называют Евой.
- Боб выбирает пару (e,d) и шлёт ключ шифрования e (открытый ключ) Алисе по открытому каналу, а ключ расшифрования d (закрытый ключ) защищён и секретен (он не должен передаваться по открытому каналу, либо его подлинность должна быть гарантирована некоторым сертифицирующим органом).
- Чтобы послать сообщение m Бобу, Алиса применяет функцию шифрования, определённую открытым ключом e: Ee(m) = c, c — полученный шифротекст.
- Боб расшифровывает шифротекст c, применяя обратное преобразование Dd, однозначно определённое значением d.
Начало асимметричным шифрам было положено в работе «Новые направления в современной криптографии» Уитфилда Диффи и Мартина Хеллмана, опубликованной в 1976 году. Находясь под влиянием работы Ральфа Меркле (Ralph Merkle) о распространении открытого ключа, они предложили метод получения секретных ключей, используя открытый канал. Этот метод экспоненциального обмена ключей, который стал известен как обмен ключами Диффи-Хеллмана, был первым опубликованным практичным методом для установления разделения секретного ключа между заверенными пользователями канала. В 2002 году Хеллман предложил называть данный алгоритм «Диффи — Хеллмана — Меркле», признавая вклад Меркле в изобретение криптографии с открытым ключом. Эта же схема была разработана Малькольмом Вильямсоном в 1970-х, но держалась в секрете до 1997 года. Метод Меркле по распространению открытого ключа был изобретён в 1974 году и опубликован в 1978, его также называют загадкой Меркле.
В 1977 году учёными Рональдом Ривестом (Ronald Linn Rivest), Ади Шамиром (Adi Shamir) и Леонардом Адлеманом (Leonard Adleman) из Массачусетского Технологического Института (MIT) был разработан алгоритм шифрования, основанный на проблеме о разложении на множители. Система была названа по первым буквам их фамилий. Эта же система была изобретена Клиффордом Коксом (Clifford Cocks) в 1973 году, работавшим в центре правительственной связи (GCHQ). Но эта работа хранилась лишь во внутренних документах центра, поэтому о её существовании было не известно до 1977 года. RSA стал первым алгоритмом, пригодным и для шифрования, и для цифровой подписи.
Вообще, в основу известных асимметричных криптосистем кладётся одна из сложных математических проблем, которая позволяет строить односторонние функции и функции-лазейки. Например, криптосистемы Меркля — Хеллмана и Хора — Ривеста опираются на так называемую задачу об укладке рюкзака.
- Начинаем с трудной задачи P. Она должна решаться сложно в смысле теории: не должно быть алгоритма, с помощью которого можно было бы перебрать все варианты решения задачи P за полиномиальное время относительно размера задачи. Более правильно сказать: не должно быть известного полиномиального алгоритма, решающего данную задачу — так как ни для одной задачи ещё пока не доказано, что для неё подходящего алгоритма нет в принципе.
- Можно выделить легкую подзадачу P’ из P. Она должна решаться за полиномиальное время, лучше, если за линейное.
- «Перетасовываем и взбалтываем» P’, чтобы получить задачу P», совершенно не похожую на первоначальную. Задача P», по крайней мере, должна выглядеть как оригинальная труднорешаемая задача P.
- P» открывается с описанием, как она может быть использована в роли ключа зашифрования. Как из P» получить P’, держится в секрете как секретная лазейка.
- Криптосистема организована так, что алгоритмы расшифрования для легального пользователя и криптоаналитика существенно различны. В то время как второй решает P» задачу, первый использует секретную лазейку и решает P’ задачу.
- В следующем примере показана схема, в которой Алиса шифрует сообщение так, что только Боб может прочитать его, и наоборот, Боб шифрует сообщение так, что только Алиса может расшифровать его.
Пусть есть 3 ключа KA, KB, KC, распределенные так, как показано в таблице.
Тогда Алиса может зашифровать сообщение ключом KA, а Эллен расшифровать ключами KB, KC, Кэрол — зашифровать ключом KC, а Дэйв расшифровать ключами KA, KB. Если Дэйв зашифрует сообщение ключом KA, то сообщение сможет прочитать Эллен, если ключом KB, то его сможет прочитать Франк, если же обоими ключами KA и KB, то сообщение прочитает Кэрол. По аналогии действуют и другие участники. Таким образом, если используется одно подмножество ключей для шифрования, то для расшифрования требуются оставшиеся ключи множества. Такую схему можно использовать для n ключей.
- Теперь можно посылать сообщения группам агентов, не зная заранее состав группы.
Рассмотрим для начала множество, состоящее из трех агентов: Алисы, Боба и Кэрол. Алисе выдаются ключи KA и KB, Бобу — KB и KC, Кэрол — KA и KC. Теперь, если отправляемое сообщение зашифровано ключом KC, то его сможет прочитать только Алиса, последовательно применяя ключи KA и KB. Если нужно отправить сообщение Бобу, сообщение шифруется ключом KA, Кэрол — ключом KB. Если нужно отправить сообщение и Алисе и Кэрол, то для шифрования используются ключи KB и KC.
Преимущество этой схемы заключается в том, что для её реализации нужно только одно сообщение и n ключей (в схеме с n агентами). Если передаются индивидуальные сообщения, то есть используются отдельные ключи для каждого агента (всего n ключей) и каждого сообщения, то для передачи сообщений всем различным подмножествам требуется 2n — 2 ключей.
Недостатком такой схемы является то, что необходимо также широковещательно передавать подмножество агентов (список имён может быть внушительным), которым нужно передать сообщение. Иначе каждому из них придется перебирать все комбинации ключей в поисках подходящей. Также агентам придется хранить немалый объём информации о ключах.
Казалось бы, что криптосистема с открытым ключом — идеальная система, не требующая безопасного канала для передачи ключа шифрования. Это подразумевало бы, что два легальных пользователя могли бы общаться по открытому каналу, не встречаясь, чтобы обменяться ключами. К сожалению, это не так. Рисунок иллюстрирует, как Ева, выполняющая роль активного перехватчика, может захватить систему (расшифровать сообщение, предназначенное Бобу) без взламывания системы шифрования.
В этой модели Ева перехватывает открытый ключ e, посланный Бобом Алисе. Затем создает пару ключей e’ и d’, «маскируется» под Боба, посылая Алисе открытый ключ e’, который, как думает Алиса, открытый ключ, посланный ей Бобом. Ева перехватывает зашифрованные сообщения от Алисы к Бобу, расшифровывает их с помощью секретного ключа d’, заново зашифровывает открытым ключом e Боба и отправляет сообщение Бобу. Таким образом, никто из участников не догадывается, что есть третье лицо, которое может как просто перехватить сообщение m, так и подменить его на ложное сообщение m’. Это подчеркивает необходимость аутентификации открытых ключей. Для этого обычно используют сертификаты. Распределённое управление ключами в PGP решает возникшую проблему с помощью поручителей.
Еще одна форма атаки — вычисление закрытого ключа, зная открытый (рисунок ниже). Криптоаналитик знает алгоритм шифрования Ee, анализируя его, пытается найти Dd. Этот процесс упрощается, если криптоаналитик перехватил несколько криптотекстов с, посланных лицом A лицу B.
Большинство криптосистем с открытым ключом основаны на проблеме факторизации больших чисел. К примеру, RSA использует в качестве открытого ключа n произведение двух больших чисел. Сложность взлома такого алгоритма состоит в трудности разложения числа n на множители. Но эту задачу решить реально. И с каждым годом процесс разложения становится все быстрее. Ниже приведены данные разложения на множители с помощью алгоритма «Квадратичное решето».
Также задачу разложения потенциально можно решить с помощью Алгоритма Шора при использовании достаточно мощного квантового компьютера.
Для многих методов несимметричного шифрования криптостойкость, полученная в результате криптоанализа, существенно отличается от величин, заявляемых разработчиками алгоритмов на основании теоретических оценок. Поэтому во многих странах вопрос применения алгоритмов шифрования данных находится в поле законодательного регулирования. В частности, в России к использованию в государственных и коммерческих организациях разрешены только те программные средства шифрования данных, которые прошли государственную сертификацию в административных органах, в частности, в ФСБ, ФСТЭК.
Применение:
Алгоритмы криптосистемы с открытым ключом можно использовать
- Как самостоятельные средства для защиты передаваемой и хранимой информации.
- Как средства распределения ключей. Обычно с помощью алгоритмов криптосистем с открытым ключом распределяют ключи, малые по объёму. А саму передачу больших информационных потоков осуществляют с помощью других алгоритмов.
- Как средства аутентификации пользователей.
Преимущества:
- Преимущество асимметричных шифров перед симметричными шифрами состоит в отсутствии необходимости предварительной передачи секретного ключа по надёжному каналу.
- В симметричной криптографии ключ держится в секрете для обеих сторон, а в асимметричной криптосистеме только один секретный.
- При симметричном шифровании необходимо обновлять ключ после каждого факта передачи, тогда как в асимметричных криптосистемах пару (E,D) можно не менять значительное время.
- В больших сетях число ключей в асимметричной криптосистеме значительно меньше, чем в симметричной.
Недостатки:
- Преимущество алгоритма симметричного шифрования над несимметричным заключается в том, что в первый относительно легко внести изменения.
- Хотя сообщения надежно шифруются, но «засвечиваются» получатель и отправитель самим фактом пересылки шифрованного сообщения.
- Несимметричные алгоритмы используют более длинные ключи, чем симметричные. Ниже приведена таблица, сопоставляющая длину ключа симметричного алгоритма с длиной ключа несимметричного алгоритма с аналогичной криптостойкостью:
- Процесс шифрования-расшифрования с использованием пары ключей проходит на два-три порядка медленнее, чем шифрование-расшифрование того же текста симметричным алгоритмом.
- В чистом виде асимметричные криптосистемы требуют существенно больших вычислительных ресурсов, потому на практике используются в сочетании с другими алгоритмами.
- Для ЭЦП сообщение предварительно подвергается хешированию, а с помощью асимметричного ключа подписывается лишь относительно небольшой результат хеш-функции.
- Для шифрования они используются в форме гибридных криптосистем, где большие объёмы данных шифруются симметричным шифром на сеансовом ключе, а с помощью асимметричного шифра передаётся только сам сеансовый ключ.
- RSA (Rivest-Shamir-Adleman, Ривест — Шамир — Адлеман)
- DSA (Digital Signature Algorithm)
- Elgamal (Шифросистема Эль-Гамаля)
- Diffie-Hellman (Обмен ключами Диффи — Хелмана)
- ECC (Elliptic Curve Cryptography, криптография эллиптической кривой)
- ГОСТ Р 34.10-2001
- Rabin
- Luc
- McEliece
- Williams System (Криптосистема Уильямса)
Как работает сквозное шифрование – База знаний Timeweb Community
Многие современные мессенджеры информируют о сквозном шифровании после того, как пользователь создает новый чат. Такой механизм был разработан для постоянной защиты конфиденциальности и целостности передачи информации.
Что такое сквозное шифрование и где оно используется – расскажу в сегодняшней статье.
Что такое сквозное шифрованиеСквозное шифрование (от англ. End-to-End Encryption, E2EE) – это когда звонки, сообщения, фотографии и все прочие данные внутри чата доступны только двум собеседникам, без возможного попадания в третьи руки. Пока сообщение проходит весь путь от одного пользователя до другого, оно находится в зашифрованном виде, поэтому его никто не может увидеть, кроме собеседника.
Сквозное шифрование в мессенджере WhatsApp
Если сквозное шифрование не используется, то сообщение может быть отправлено в открытом доступе. Это значит, что оно не шифруется и может быть легко перехвачено хакерами (совсем небезопасный способ передачи данных, который уже давно не используется популярными мессенджерами).
Также существует транспортное шифрование – в такой технологии сообщения шифруются у отправителя, отправляются на сервер, расшифровываются там, затем снова шифруются и только потом отправляются адресанту. Это хорошо защищает данные, однако информация попадает на сервер, а это значит, что владелец сервера может легко посмотреть, что вы отправили.
Принцип работы сквозного шифрованияПринцип работы сквозного шифрования в мессенджере WhatsApp
Когда мы говорим про сквозное шифрование, то речь идет о комбинации таких методов, как симметричное и асимметричное шифрование данных.
Симметричное шифрование подразумевает, что для шифрования и дешифрования используется один и тот же криптографический ключ. Дополнительно к нему применяются алгоритмы, необходимые для защиты, так как самого ключа, как правило, недостаточно. Данные перемешиваются таким образом, чтобы обеспечить максимальную безопасность. Однако ключ все-таки можно подобрать, поэтому специалисты безопасности изменяют такие значения, как длина ключа, сложность и число раундов преобразования.
Ассиметричное шифрование – это когда для защиты данных используется открытый и закрытый ключ. Первый используется для шифрования данных, а второй – для их расшифровки.
Без закрытого ключа сообщения, защищенные сквозным шифрованием, выглядят следующим образом:
При комбинации таких методов в мессенджерах ключи защищены каналом связи и известны только собеседникам чата. Защищенный канал позволит исключить атаку методом «человека посередине» – это когда злоумышленник тайно перехватывает трафик клиентов в то время, когда они думают, что общаются наедине.
Могут ли правоохранительные органы получить доступ к сообщениям?Даже если ваш мессенджер использует сквозное шифрование, это совсем не значит, что сообщения навсегда останутся незаметными для третьих лиц. По большей части здесь все зависит от самого мессенджера и страны.
Так, например, в 2016 году ФБР попросило Apple открыть доступ к данным, которые хранились на устройстве одного из преступников. Тогда Тим Кук сказал, что не собирается ничего раскрывать ФБР, так как это развяжет руки правительству.
Если Apple не пошли на уступки правительству, то вот Facebook и WhatsApp не смогли устоять: в 2019 году их обязали передавать зашифрованные сообщения пользователей полиции Великобритании. Естественно, что просто так никто не будет передавать данные, для этого требуются весомые основания.
Однако не все так плохо: в 2019 году Минюст США сказал, что начинает масштабное расследование в отношении технологических гигантов и хочет открыть доступ к переписке всех пользователей, но у него ничего не вышло. Facebook отклонил эту просьбу и не стал отказываться от сквозного шифрования.
В Telegram также дела обстоят довольно хорошо: в 2018 году Павел Дуров, основатель Telegram, сказал, что доступ к данным пользователей может быть получен только в том случае, если на это будет судебное решение по делу о терроризме. В других случаях ни о каком распространении данных речи не идет.
Исходя из вышесказанного, мы можем сделать вывод, что сквозное шифрование не всегда защищает от правительственных сил, но имеет хорошую защиту от злоумышленников.
Все ли мессенджеры одинаково безопасны?Использование сквозного шифрования не гарантирует, что каждый мессенджер будет одинаково безопасен. Большинство приложений сегодня – это авторизация через номер сотового телефона. Такой подход уже говорит о не совсем безопасной среде, даже если в ней используется сквозное шифрование. Дело в том, что спецслужбы многих стран имеют практически открытый доступ к данным сотовых операторов. А это значит, что они могут получить доступ к вашим СМС, о чем вы даже не узнаете.
Читайте также: Какой мессенджер самый безопасный и почему
От чего не защищает сквозное шифрованиеНа первый взгляд кажется, что сквозное шифрование защищает практически от всего, но, как мы уже выяснили, это совсем не так. Более того, у сквозного шифрования есть еще и ограничения.
Первое, на что стоит обратить внимание – это то, что хоть и данный метод позволяет скрыть сообщение от посторонних глаз, он не скрывает сам факт отправки сообщения. Если мы отправляем сообщение одному из контактов, об этом будет известно серверу. Он не будет знать, что именно мы отправили, но будет знать, в какое время и кому было послано сообщение.
Второе – это то, что доступ к сообщениям могут получить любые лица, которые завладеют вашим устройством. В таких случаях совсем не важно, какое шифрование было использовано, а важно то, как вы в целом защищаете свое устройство. Здесь поможет только блокировка доступа к мессенджерам с помощью PIN-кода.
Преимущества использования сквозного шифрованияПодведем итоги всего вышесказанного. Итак, сквозное шифрование:
- обеспечивает максимальный уровень защиты для пользователей, которые заботятся о конфиденциальности данных;
- защищает данные от злоумышленников всеми возможными способами;
- встроено в большинство мессенджеров, что позволяет не использовать сторонние сервисы для защиты данных.
В то же время стоит понимать, что сквозное шифрование не гарантирует полной конфиденциальности. Если вы общаетесь на темы, которые запрещены в вашей стране, то привлечете к себе внимание правоохранительных органов. В таких случаях мессенджеру ничего не останется, кроме как открыть доступ к вашим данным.
Что такое асимметричное шифрование в криптовалюте?
Асимметричное шифрование – краткое определение
Благодаря асимметричному шифрованию институциональные инвесторы и шифровальщики могут безопасно защищать, обменивать и передавать постоянно развивающийся массив цифровых активов.
Асимметричное шифрование — это форма криптографии, которая позволяет каждому проверять целостность своих цифровых транзакций и защищать свои средства.
Хотя асимметричное шифрование существует уже несколько десятилетий, его недавнее, почти повсеместное применение в индустрии блокчейнов открыло новую эру финансовой автономии.
Асимметричное шифрование — или криптография с открытым ключом (PKC) — является ключевой особенностью криптовалютных экосистем и играет ключевую роль в большинстве кошельков цифровых активов.
Эта форма шифрования была впервые публично предложена в 1977 году и использовалась для обеспечения широкого спектра функций безопасности и удобства использования до того, как была принята разработчиками блокчейнов.
В настоящее время асимметричное шифрование является обычным явлением для кошельков с цифровыми активами с самостоятельным хранением, но не требуется для кошельков, хранящихся на централизованных биржах криптовалют.
Как работает асимметричное шифрование?
По своей сути асимметричное шифрование позволяет пользователям проверять целостность цифровых транзакций и защищать средства от хакеров и других злоумышленников.
Эта форма криптографии влечет за собой использование двух математически взаимосвязанных ключей — открытого и приватного ключа.
Открытый ключ шифрует читаемый открытый текст в неразборчивый зашифрованный текст, а приватный (закрытый) ключ используется для дешифрования (или наоборот).
Хотя открытый ключ может быть легко доступен, закрытый ключ должен храниться в секрете и известен только авторизованным держателям.
Шифрование с асимметричным ключом также важно для предоставления цифровых подписей, которые могут проверять подлинность и целостность пользователей, транзакций и данных, и поэтому играет центральную роль в основных механизмах безопасности большинства кошельков с криптовалютой.
Минусы асимметричного шифрования
Чтобы сети блокчейнов стали инфраструктурой глобальной финансовой экосистемы, они должны предоставлять пользователям простой способ надежной защиты и передачи цифровых активов.
В сети Биткойн, например, это достигается путем создания кошельков с открытым и закрытым ключом, которые владелец может затем использовать для доступа к своим средствам.
Внутри этого кошелька ведется журнал всех входящих и исходящих транзакций, и пользователь может отправлять и получать транзакции, используя адреса биткойн-кошельков, которые хешируются (или односторонне зашифрованы) с публичного адреса соответствующего кошелька.
Однако хранение закрытых ключей от вашего криптокошелька не только дает вам доступ к вашим средствам, но и делает вас вашим личным банком.
Без стороннего хранителя криптовалюты нет посредника, который мог бы диктовать, когда, где и как вы используете свои криптовалютные средства.
В результате, благодаря асимметричному шифрованию, институциональные инвесторы и шифровальщики могут безопасно защищать, обменивать и передавать постоянно развивающийся массив цифровых активов таким образом, который не зависит от стабильности и постановления правительства или централизованного регулирующего органа.
Эта радикальная финансовая автономия является прямым выражением принципа суверенитета блокчейна. Но с этой индивидуальной свободой приходит дополнительная ответственность.
Если вы потеряете свои закрытые ключи, вы потеряете весь доступ к своим средствам в соответствующем кошельке, и вероятность восстановления кошелька практически равна нулю.
Таким образом, протоколы безопасности с асимметричным шифрованием являются палкой о двух концах и чувствительны к человеческим ошибкам и другим формам неправильного управления учетными записями вне сети.
Несколько служб криптографии попытались решить эту проблему, предоставив способы восстановления закрытого ключа с использованием более интуитивно понятных уникальных списков слов, представляющих ключ, или других механизмов резервного копирования, которые позволяют пользователям получать доступ к хранимой информации закрытого ключа.
Однако ядро технологии по-прежнему требует закрытого ключа для использования криптокошелька.
Асимметричное шифрование и надвигающийся квантовый век
Хотя асимметричное шифрование является одной из наиболее надежных и широко применяемых форм шифрования, существуют опасения, что квантовые вычисления сделают асимметричное шифрование бесполезным в ближайшие годы.
Квантовые вычисления остаются только зарождающейся технологией, и, возможно пройдут еще несколько десятилетий до превращения их в широко полезный инструмент.
Однако, это сделает небезопасными некоторые из наиболее широко используемых протоколов безопасности в Интернете, а также самые современные протоколы блокчейнов и регистров.
Другими словами, квантовые вычисления влияют не только на асимметричное шифрование и цифровые валюты — они могут иметь разрушительные последствия для систем безопасности, которые в настоящее время лежат в основе всего Интернета и глобальной банковской системы.
В результате многие опасения по поводу будущего асимметричного шифрования упускаются из виду. Цифровые активы и каналы связи всегда будут защищены с использованием новейших доступных технологий, и по мере появления новых угроз и возможностей эти системы будут адаптироваться соответствующим образом или исчезнут.
Фактически, несколько блокчейн-проектов уже пытаются разработать квантово-устойчивые меры безопасности и другие «перспективные» решения.
Однако в настоящее время асимметричное шифрование остается эффективным решением для кибербезопасности, которое продолжит играть центральную роль в криптопространстве и за его пределами.
Открытый и закрытый ключ шифрования
Ключ шифрования – это тайная информация (набор цифр и букв), которая используется алгоритмом для шифрования и расшифровки информации.
Надёжность ключа зависит от его длины в битах. В технологии SSL используют шифры 4096 бит для корневого сертификата и 128–256 бит для клиентских. Такая длина достаточна для безопасной передачи данных.
Протокол SSL использует асимметричное шифрование или шифрование с открытым ключом для установки соединения. Несмотря на название, здесь используются 2 ключа: открытый и закрытый. Оба формируются при запросе SSL-сертификата.
Открытый (публичный ключ) доступен всем. Используется для шифрования данных при обращении браузера к серверу.
Закрытый (секретный ключ) известен только владельцу сайта. Используется для расшифровки данных, отправленных браузером.
Шифрование с двумя ключами разного типа гарантирует сохранность информации. Даже если мошенник перехватит трафик, не сможет расшифровать его без закрытого ключа.
Однако асимметричный алгоритм ресурсоемок, а скорость шифрования на 2-3 порядка ниже симметричного алгоритма. Поэтому в SSL-технологии шифрование с открытым ключом используется только для согласования секретного симметричного ключа. С его помощью устанавливается защищённое HTTPS-соединение – данные передаются быстро и безопасно.
Сразу использовать симметричное шифрование ненадежно. В этом алгоритме один и тот же ключ шифрует и расшифровывает информацию. Посетитель сайта и владелец сервера должны договориться о нем без свидетелей.
Передать по почте, телефону или смской не получится – перехватят или подслушают.
Значит, нужно отправить симметричный ключ в зашифрованном сообщении. Но сначала убедиться, что его получит правильный адресат.
- Чтобы аутентифицировать сервер, браузер посетителя проверяет, подписан ли SSL-сертификат сертификатом доверенного центра.
- Чтобы договориться о симметричном ключе шифрования сервер и браузер используют асимметричное шифрование с открытым ключом.
Рассмотрим этот процесс на примере реальных ключей:
Боб отправляет Алисе замок, ключ от которого есть только у него.
Замок здесь – публичный ключ.
Алиса закрывает замком Боба ящик с секретом и посылает обратно.
Так же браузер шифрует сообщение с помощью публичного ключа и передаёт на сервер.
Открыть ящик не сможет никто: ни сама Алиса, ни сотрудники почты.
Мошенник точно так же не может расшифровать сообщение браузера без закрытого ключа.
Боб получает ящик, открывает своим единственным ключом и узнаёт секрет.
Сервер расшифровывает сообщение закрытым ключом, который есть только у него.
Как Алиса и Боб ведут тайную переписку, так браузер и сервер устанавливают защищённое HTTPS-соединение и обмениваются данными.
Что такое асимметричная криптография? Определение из SearchSecurity
Что такое асимметричная криптография?Асимметричная криптография, также известная как криптография с открытым ключом, — это процесс, который использует пару связанных ключей — один открытый ключ и один закрытый ключ — для шифрования и дешифрования сообщения и защиты его от несанкционированного доступа или использования.
Открытый ключ — это криптографический ключ, который может использовать любой человек для шифрования сообщения, чтобы его мог расшифровать только предполагаемый получатель с его закрытым ключом.Закрытый ключ, также известный как секретный ключ, предоставляется только инициатору ключа.
Когда кто-то хочет отправить зашифрованное сообщение, он может извлечь открытый ключ предполагаемого получателя из общедоступного каталога и использовать его для шифрования сообщения перед его отправкой. Получатель сообщения может затем расшифровать сообщение, используя соответствующий закрытый ключ.
Если отправитель шифрует сообщение, используя свой закрытый ключ, сообщение можно расшифровать только с использованием открытого ключа этого отправителя, тем самым аутентифицируя отправителя.Эти процессы шифрования и дешифрования происходят автоматически; пользователям не нужно физически блокировать и разблокировать сообщение.
Многие протоколы полагаются на асимметричную криптографию, включая протоколы безопасности транспортного уровня (TLS) и уровня защищенных сокетов (SSL), которые делают возможным HTTPS.
Процесс шифрования также используется в программах, которым необходимо установить безопасное соединение в незащищенной сети, например в браузерах через Интернет, или в которых требуется проверка цифровой подписи.
Повышенная безопасность данных — основное преимущество асимметричной криптографии. Это наиболее безопасный процесс шифрования, поскольку от пользователей никогда не требуется раскрывать или сообщать свои закрытые ключи, что снижает вероятность того, что киберпреступники обнаружат закрытый ключ пользователя во время передачи.
Как работает асимметричная криптография?
Асимметричное шифрование использует математически связанную пару ключей для шифрования и дешифрования: открытый ключ и закрытый ключ.Если открытый ключ используется для шифрования, то соответствующий закрытый ключ используется для дешифрования. Если закрытый ключ используется для шифрования, то соответствующий открытый ключ используется для дешифрования.
Асимметричная криптография включает пару ключей для шифрования и дешифрования данных.Двумя участниками рабочего процесса асимметричного шифрования являются отправитель и получатель. У каждого есть своя пара открытого и закрытого ключей. Сначала отправитель получает открытый ключ получателя. Затем текстовое сообщение шифруется отправителем с использованием открытого ключа получателя.Это создает зашифрованный текст. Зашифрованный текст отправляется получателю, который расшифровывает его своим закрытым ключом, возвращая его в разборчивый открытый текст.
Из-за одностороннего характера функции шифрования один отправитель не может прочитать сообщения другого отправителя, даже если у каждого есть открытый ключ получателя.
Использование асимметричной криптографииАсимметричная криптография обычно используется для аутентификации данных с помощью цифровых подписей. Цифровая подпись — это математический метод, используемый для проверки подлинности и целостности сообщения, программного обеспечения или цифрового документа.Это цифровой эквивалент собственноручной подписи или печати.
Основанные на асимметричной криптографии, цифровые подписи могут гарантировать подтверждение происхождения, идентичности и статуса электронного документа, транзакции или сообщения, а также подтверждать информированное согласие подписывающей стороны.
Асимметричная криптография также может применяться в системах, в которых многим пользователям может потребоваться шифрование и дешифрование сообщений, в том числе:
- Зашифрованная электронная почта. Открытый ключ может использоваться для шифрования сообщения, а закрытый ключ может использоваться для его расшифровки.
- SSL / TLS. При установлении зашифрованных ссылок между веб-сайтами и браузерами также используется асимметричное шифрование.
- Криптовалюты . Биткойн и другие криптовалюты полагаются на асимметричную криптографию. У пользователей есть открытые ключи, которые могут видеть все, и закрытые ключи, которые хранятся в секрете. Биткойн использует криптографический алгоритм, чтобы гарантировать, что только законные владельцы могут тратить средства.
В случае реестра биткойнов каждый неизрасходованный выход транзакции (UTXO) обычно связан с открытым ключом. Например, если пользователь X, у которого есть UTXO, связанный с его открытым ключом, хочет отправить деньги пользователю Y, пользователь X использует свой закрытый ключ для подписания транзакции, которая тратит UTXO и создает новый UTXO, связанный с пользователем Y открытый ключ.
Каковы преимущества и недостатки асимметричной криптографии?Преимущества асимметричной криптографии:
- Проблема распределения ключей устранена, поскольку нет необходимости в обмене ключами.
- Безопасность повышена, поскольку закрытые ключи никогда не нужно никому передавать или раскрывать.
- Использование цифровых подписей разрешено, чтобы получатель мог проверить, что сообщение пришло от определенного отправителя.
- Это позволяет не отказываться от авторства, поэтому отправитель не может отказать в отправке сообщения.
Недостатки асимметричной криптографии включают:
- Это медленный процесс по сравнению с симметричной криптографией. Следовательно, он не подходит для расшифровки массовых сообщений.
- Если человек теряет свой закрытый ключ, он не может расшифровать полученные сообщения.
- Поскольку открытые ключи не аутентифицируются, никто не может гарантировать, что открытый ключ принадлежит указанному лицу. Следовательно, пользователи должны убедиться, что их открытые ключи принадлежат им.
- Если злоумышленник идентифицирует закрытый ключ человека, злоумышленник может прочитать сообщения этого человека.
Основное различие между асимметричной и симметричной криптографией заключается в том, что алгоритмы асимметричного шифрования используют два разных, но связанных ключа.Один ключ шифрует данные, а другой ключ дешифрует их. Симметричное шифрование использует один и тот же ключ для выполнения функций шифрования и дешифрования.
Симметричное шифрование использует общий закрытый ключ, в то время как асимметричное шифрование использует пару открытого / закрытого ключей.Еще одно различие между асимметричным и симметричным шифрованием — это длина ключей. В симметричной криптографии длина ключей, которая выбирается случайным образом, обычно устанавливается равной 128 или 256 битам, в зависимости от необходимого уровня безопасности.
При асимметричном шифровании должна существовать математическая связь между открытым и закрытым ключами. Поскольку злоумышленники потенциально могут использовать этот шаблон для взлома шифрования, асимметричные ключи должны быть длиннее, чтобы обеспечивать такой же уровень безопасности. Разница в длине ключей настолько заметна, что 2048-битный асимметричный ключ и 128-битный симметричный ключ обеспечивают примерно эквивалентный уровень безопасности.
Асимметричное шифрование заметно медленнее, чем симметричное шифрование, которое имеет более высокую скорость выполнения.
Каковы примеры асимметричной криптографии?Алгоритм RSA — наиболее широко используемый асимметричный алгоритм — встроен в SSL / TLS, который используется для обеспечения безопасной связи по компьютерной сети. RSA получает свою безопасность из-за вычислительной сложности факторизации больших целых чисел, которые являются произведением двух больших простых чисел.
Умножение двух больших простых чисел легко, но сложность определения исходных чисел из произведения — с разложением — составляет основу криптографической безопасности с открытым ключом.Время, необходимое для разложения произведения двух достаточно больших простых чисел, выходит за рамки возможностей большинства злоумышленников.
RSA-ключи обычно имеют длину 1024 или 2048 бит, но эксперты полагают, что 1024-битные ключи скоро будут взломаны, поэтому правительство и промышленность переходят на минимальную длину ключа в 2048 бит.
Elliptic Curve Cryptography (ECC) завоевывает признание многих экспертов по безопасности в качестве альтернативы RSA. ECC — это метод шифрования с открытым ключом, основанный на теории эллиптических кривых.Он может создавать более быстрые, меньшие и более эффективные криптографические ключи за счет свойств уравнения эллиптической кривой.
Чтобы взломать ECC, злоумышленник должен вычислить дискретный логарифм эллиптической кривой, что является значительно более сложной задачей, чем разложение на множители. В результате размеры ключей ECC могут быть значительно меньше, чем требуемые RSA, при этом обеспечивая эквивалентную безопасность с более низкой вычислительной мощностью и использованием ресурсов батареи.
Какова история асимметричной криптографии?Уитфилд Диффи и Мартин Хеллман, исследователи из Стэнфордского университета, впервые публично предложили асимметричное шифрование в своей статье 1977 года «Новые направления в криптографии.«
Эта концепция была независимо и тайно предложена Джеймсом Эллисом несколькими годами ранее, когда он работал в Управлении правительственной связи (GCHQ), британской организации разведки и безопасности. Асимметричный алгоритм, описанный в статье Диффи-Хеллмана, использует числа, возведенные в определенную степень, для создания ключей дешифрования. Диффи и Хеллман впервые объединились в 1974 году, чтобы решить проблему распределения ключей.
Алгоритм RSA, основанный на работе Диффи, был назван в честь трех его изобретателей — Рональда Ривеста, Ади Шамира и Леонарда Адлемана.Они изобрели алгоритм RSA в 1977 году и опубликовали его в книге сообщений ACM в 1978 году.
Что такое асимметричное шифрование? Прочтите информацию о разнообразии симметричного и асимметричного шифрования
Узнайте, что такое асимметричное шифрование, как оно работает и что оно делает
Когда доходит до слова « Encryption », мы думаем о нем как о методе защиты данных с помощью криптографического ключа, и в этом нет ничего плохого. Однако большинство людей не осознают, что существуют разные типы методов шифрования.Асимметричное шифрование, также известное как шифрование с открытым ключом, является примером одного типа.
В отличие от «нормального» (симметричного) шифрования , асимметричное шифрование шифрует и дешифрует данные с помощью двух отдельных, но математически связанных криптографических ключей. Эти ключи известны как «открытый ключ » и «закрытый ключ ». Вместе они называются «парой открытого и закрытого ключей».
Давайте посмотрим, как эти два ключа работают вместе, создавая грозную силу — асимметричное шифрование.
Как работает асимметричное шифрование?
Асимметричное шифрование использует два разных, но связанных ключа. Один ключ, открытый ключ, используется для шифрования, а другой, закрытый ключ, — для дешифрования. Как подразумевается в названии, закрытый ключ должен быть закрытым, так что только аутентифицированный получатель может расшифровать сообщение.
Давайте разберемся в этом на простом примере асимметричного шифрования .
Представьте, что вы — шпионское агентство, и вам нужно разработать механизм, чтобы ваши агенты могли безопасно сообщать о нем.Вам не нужна двусторонняя связь, у них есть свои заказы, вам просто нужны регулярные подробные отчеты от них. Асимметричное шифрование позволит вам создать открытые ключи для агентов, чтобы зашифровать их информацию, и закрытый ключ в штаб-квартире, который является единственным способом расшифровать все это. Это обеспечивает непроницаемую форму одностороннего общения.
Как генерируются два ключа?
В основе Asymmetric Encryption лежит криптографический алгоритм.Этот алгоритм использует протокол генерации ключей (своего рода математическую функцию) для генерации пары ключей. Оба ключа математически связаны друг с другом. Эта взаимосвязь между ключами отличается от одного алгоритма к другому.
Алгоритм в основном представляет собой комбинацию двух функций — функции шифрования и функции дешифрования . Чтобы заявить очевидное, функция шифрования шифрует данные, а функция дешифрования расшифровывает их.
Вот как асимметричное шифрование используется в сертификатах SSL / TLS
В SSL / TLS и других цифровых сертификатах используются оба метода — симметричный и асимметричный.Теперь вы можете спросить: «Почему и то, и другое? Разве нельзя использовать асимметричную криптографию, поскольку она более безопасна? »Конечно, она более безопасна, но имеет подводный камень. Когда дело доходит до криптографии с открытым ключом , основным недостатком является время вычислений. Поскольку проверка и функции применяются с обеих сторон, это значительно замедляет процесс. Вот где приходит симметричное шифрование, которое спасает положение.
Во-первых, когда две стороны (браузер и сервер в случае SSL) сталкиваются друг с другом, они проверяют закрытый и открытый ключи друг друга с помощью асимметричного шифрования.Как только проверка будет успешной и оба узнают, с кем разговаривают, начинается шифрование данных — с помощью симметричного шифрования. Тем самым значительно экономя время и обеспечивая конфиденциальность и защиту данных. Весь этот процесс называется рукопожатием SSL / TLS. Если вы хотите узнать больше об этом рукопожатии, вот отличный пост для вас.
Разница между симметричным и асимметричным шифрованием
Симметричное шифрование | Асимметричное шифрование | |||||||||||||||||||||||||||||||||
Симметричное шифрование состоит из одного из ключей для шифрования и дешифрования. | Асимметричное шифрование состоит из двух криптографических ключей, известных как открытый ключ и закрытый ключ. | |||||||||||||||||||||||||||||||||
Симметричное шифрование намного быстрее по сравнению с асимметричным методом. | Поскольку асимметричное шифрование включает два отдельных ключа, процесс значительно замедляется. | |||||||||||||||||||||||||||||||||
RC4 | RSA | |||||||||||||||||||||||||||||||||
AES | Диффи-Хеллман | |||||||||||||||||||||||||||||||||
DES | ECC | |||||||||||||||||||||||||||||||||
3DES | 9019 9019 9019 9019 9019 9019 9019 9019 9019 9019 9019 9019 9019 9019 9019 9019 повторно используют асимметричное шифрование, даже не осознавая этого Когда вы посещаете любой веб-сайт / веб-страницу HTTPS, ваш браузер устанавливает асимметрично зашифрованное соединение с этим веб-сайтом.Ваш браузер автоматически получает открытый ключ сертификата SSL / TLS, установленного на веб-сайте (поэтому он называется «Открытый ключ»). Хотите посмотреть, как это выглядит? Щелкните зеленый замок, который вы видите перед нашим URL-адресом, и перейдите к сведениям о сертификате. Вот как это будет выглядеть:
Удивительно, не правда ли? Таким образом, этот ключ шифрует любую информацию, которую вы отправляете на наш веб-сайт во время первоначального рукопожатия, а наш закрытый ключ расшифровывает ее.Хотите увидеть, как выглядит наш закрытый ключ? Вот он: Ой, подождите, это ключ от нашего офиса. Мы говорили вам, что закрытый ключ должен быть «частным»? Да, вам НИКОГДА не следует отдавать его кому-либо и держать близко к груди (не буквально). Мы рекомендуем хранить его в месте, доступ к которому имеют только уполномоченные лица. Если возможно, вам следует попытаться сохранить его на аппаратном устройстве, которое не всегда подключено к вашей системе. Пример асимметричного шифрованияНаиболее известным примером асимметричного шифрования является алгоритм цифровой подписи (DSA).DSA, разработанный Национальным институтом стандартов и технологий (NIST) в 1991 году, используется для цифровой подписи и ее проверки. DSA — это пример асимметричного шифрования, основанного на модульном возведении в степень и дискретном логарифме. Заключение об асимметричной криптографииВсе еще здесь? Хороший. Мы считаем, что теперь вы (надеюсь) знаете, что такое асимметричное шифрование и как оно защищает вас от гнева киберпреступников. Если у вас есть веб-сайт и вы хотите защитить его с помощью той же технологии. Связанные ресурсыЧто такое асимметричное шифрование и как оно работает?Ваше полное руководство по пониманию асимметричного шифрования — что оно делает, как работает, а также его сильные и слабые стороныЧто такое асимметричное шифрование? Как работает асимметричное шифрование? Эти два вопроса становятся обычным явлением по мере того, как мир становится все более цифровым и безбумажным. Но когда все хранится на компьютерах, конфиденциальность данных становится большой проблемой. Хакеры могут украсть сохраненные данные с ваших устройств, электронной почты, облачных платформ и USB-накопителя или когда вы переносите их из одного места в другое через Интернет. Один из лучших способов защитить данные — зашифровать их. И здесь вступает в игру асимметричное шифрование с ключом — или то, что также известно как шифрование с открытым ключом. В этой статье мы расскажем, что такое шифрование с асимметричным ключом, и ответим на ваш вопрос «как работает асимметричное шифрование?» в условиях непрофессионала. Позже мы также рассмотрим сильные и слабые стороны этого типа шифрования. Что такое шифрование?Прежде чем мы сможем ответить на вопрос «что такое асимметричное шифрование?» Сначала нам нужно быстро рассказать, что такое шифрование в целом. В самом простом смысле шифрование означает использование «причудливой математики» и набора инструкций (алгоритмов) для маскировки и защиты данных. Эти алгоритмы зашифровывают данные открытого текста в непонятный текст, известный как зашифрованный текст, который выглядит как тарабарщина без использования специального ключа, который его расшифровывает. Это означает, что после того, как данные зашифрованы с помощью криптографического алгоритма, вы не сможете интерпретировать их или угадать исходное содержание данных по зашифрованному тексту. Таким образом, ваши данные остаются в безопасности от непреднамеренных посторонних глаз. Давайте рассмотрим следующий пример, чтобы увидеть, как работает шифрование в общем смысле: В этом примере вы можете увидеть, как данные изменяются с открытого текста на зашифрованный и обратно на открытый текст за счет использования алгоритмов шифрования и ключей дешифрования. Ключи могут быть идентичными (симметричными) или уникальными (асимметричными). Когда мы говорим о шифровании, это похоже на замок на двери. Для управления замком понадобится ключ. Это означает, что только люди, у которых есть ключ, могут открыть дверь и получить доступ ко всему, что она защищает.В цифровом мире ключ может иметь разные формы — пароль, код, PIN-код или сложная строка символов, сгенерированных компьютером. Обзор двух типов шифрованияСуществует два основных типа шифрования: 1) Симметричное шифрование : этот тип шифрования является взаимным, что означает, что для шифрования и дешифрования данных используется один и тот же ключ . Это отлично подходит для больших пакетов данных, но имеет проблемы с распределением ключей и управлением. 2) Асимметричное шифрование : этот тип шифрования использует два отдельных ключа для шифрования и дешифрования — открытый ключ и закрытый ключ. Мы рассмотрим шифрование с асимметричным ключом более подробно сейчас. В этой статье мы сосредоточимся исключительно на асимметричном шифровании. Не забудьте заглянуть в ближайшие недели, чтобы увидеть еще одну статью, которая будет посвящена симметричному шифрованию. Однако у нас уже есть статья, которая поможет вам отличить асимметричное шифрование от симметричного шифрования. А теперь давайте поговорим о том, для чего вы на самом деле здесь… Что такое асимметричное шифрование? Определение и объяснениеАсимметричное шифрование — это тип шифрования, который использует два отдельных, но математически связанных ключа для шифрования и дешифрования данных. Открытый ключ шифрует данные, а соответствующий закрытый ключ расшифровывает их. Вот почему он также известен как шифрование с открытым ключом , шифрование с открытым ключом и шифрование с асимметричным ключом . Открытый ключ открыт для всех. Кто угодно может получить к нему доступ и зашифровать данные с его помощью. Однако после шифрования эти данные можно разблокировать только с помощью соответствующего закрытого ключа. Как вы понимаете, закрытый ключ должен храниться в секрете, чтобы не допустить его взлома. Таким образом, только уполномоченное лицо, сервер, машина или инструмент имеют доступ к закрытому ключу. Что делает асимметричное шифрование?Асимметричное шифрование — это способ проверки третьих лиц, с которыми вы никогда не встречались, по незащищенным общедоступным каналам.В отличие от традиционных (симметричных) методов шифрования, которые полагаются на один ключ для шифрования и дешифрования данных, асимметричное шифрование использует два отдельных ключа для выполнения этих функций. Вот почему шифрование с открытым ключом считается критически важным элементом в основе интернет-безопасности. Инфраструктура открытых ключей (PKI), структура политик, процессов и технологий, которые делают возможной безопасную связь между третьими сторонами через Интернет. Для этого он использует как асимметричное, так и симметричное шифрование. Асимметричные методы шифрования — это то, что вы используете для:
Симметричное шифрование — это то, что вы используете для обработки большей части шифрования данных. Вы можете не осознавать, что прямо сейчас используете шифрование с открытым ключом! Вы видите значок замка безопасности в браузере или HTTPS в URL-адресе веб-сайта? Обе эти вещи указывают на то, что вы подключились к веб-сайту, который использует сертификаты SSL / TLS и безопасный протокол TLS.При этом используется шифрование с асимметричным ключом для проверки подлинности сервера и создания симметричных ключей сеанса. (После этого ваш браузер и веб-сервер переключаются на использование симметричного шифрования до конца сеанса.) Итак, как видите, асимметричное шифрование дополняет симметричное шифрование и позволяет использовать его в Интернете. Четыре основных характеристики асимметричного шифрования1. Асимметричное шифрование предназначено для защиты данных и обмена ключами в публичных каналахВкратце, цель шифрования с асимметричным ключом — служить способом надежного шифрования данных в общедоступных каналах, а также обеспечивать аутентификацию и целостность данных.Поскольку для этого не требуется обмена ключами, не возникает проблем с распределением ключей, которые в противном случае возникали бы при симметричном шифровании. 2. Ключи асимметричного шифрования великиАсимметричные открытый и закрытый ключи — это уникальные и большие строки случайных чисел. Например, существуют миллионы веб-сайтов, использующих сертификаты SSL / TLS, и, тем не менее, каждый веб-сайт имеет свой набор открытых и закрытых ключей. Однако, чтобы ключи были надежными и безопасными, они должны генерироваться с высокой энтропией (случайностью).Каждый ключ должен быть случайным и достаточно непредсказуемым, чтобы современные суперкомпьютеры могли угадать его за тысячи лет. Рассмотрим следующие примеры асимметричных открытых и закрытых ключей: 3.Сильные алгоритмы шифрования с открытым ключомПопулярными алгоритмами асимметричного шифрования и обмена ключами являются алгоритмы Диффи-Хеллмана, RSA, ECDSA, ElGamal и DSA. Хотя это не является строгим правилом, в большинстве случаев асимметричное шифрование использует длинные ключи длиной 1024, 2048 или более бит. Как правило, чем больше размер ключа, тем надежнее шифрование. Например, если ключи генерируются с 2048-битным шифрованием, существует 2 2048 возможных комбинаций.Современным суперкомпьютерам потребовались бы тысячи лет, чтобы пройти такое количество комбинаций, чтобы найти соответствующий закрытый ключ открытого ключа. Короче говоря, вы не можете угадать закрытый ключ по общему ключу, особенно если ключи длинные. 4. Асимметричное шифрование — это процесс перегрузки ресурсовЭти массивные ключи являются ресурсоемкими, а это означает, что шифрование занимает больше времени. Другими словами, поскольку размеры ключей больше и задействованы два отдельных ключа, процесс шифрования и дешифрования становится медленнее. Таким образом, асимметричное шифрование наиболее подходит для шифрования небольших фрагментов данных из-за его задержки и требований к обработке . Если вы используете его для больших блоков данных, это повысит нагрузку на ваши серверы. Иногда он используется для первоначального установления безопасных каналов связи, которые могут использоваться для упрощения симметричного шифрования при обмене данными. Как работает асимметричное шифрование? Давайте исследуем эту концепцию на примереПрежде чем двигаться дальше, давайте лучше разберемся с асимметричным шифрованием на гипотетическом примере. Представьте, что вы хотите защитить драгоценную шкатулку для драгоценностей, которую отправляете по почте своей второй половинке. Чтобы обеспечить безопасность при транспортировке, вы используете специальный замок, который требует двух цифровых комбинаций. Один номер может заблокировать ящик (номер, который у вас есть), а другая комбинация цифр может разблокировать его (который есть у вашего получателя). Сначала вы кладете в коробку предметы, которые хотите защитить. Затем вы запираете ящик с помощью определенной цифровой комбинации, прежде чем отправить его по почте.По прибытии ваша вторая половинка использует комбинацию цифр, чтобы открыть коробку и получить доступ к ее содержимому. Поскольку она никогда никому не сообщает этот номер и хранит его при себе, это означает, что никто другой не может его использовать. Теперь давайте применим эту концепцию к пониманию того, как работает асимметричное шифрование в сфере инфраструктуры открытых ключей. Все данные, которые вы отправляете через Интернет, представлены в виде открытого текста. Это означает, что любой, кто получит к нему доступ, может прочитать и интерпретировать его.Теперь, конечно, вы можете зашифровать данные с помощью закрытого ключа. После преобразования данных в зашифрованный текст их нельзя расшифровать с помощью того же ключа. Зашифрованный текст можно расшифровать только с помощью соответствующего закрытого ключа. Как правило, отправитель должен иметь доступ к открытому ключу, а получатель должен иметь соответствующий закрытый ключ. Как шифрование с открытым ключом помогает защитить бизнес и данныеДавайте рассмотрим пример того, как шифрование с асимметричным ключом работает в реальной жизни. Цифровые подписи обеспечивают целостность данныхЦифровая подпись — это математический алгоритм, который полезен для проверки подлинности или целостности документов, электронных писем или других типов данных. Что он делает, он информирует получателя подписанного цифровой подписью документа или электронного письма о любых подделках или несанкционированных изменениях, которые могли быть сделаны. Цифровые подписи основаны на асимметричном шифровании и криптографической функции, известной как хеширование. Подробнее о цифровых подписях и хешировании мы поговорим чуть позже.Но пока просто знайте, что асимметричное шифрование используется для включения цифровых подписей в: Сертификаты SSL / TLS Защитите ваш веб-сайтКогда пользователь пытается открыть ваш веб-сайт в браузере (вашем веб-клиенте), браузер инициирует процесс подтверждения SSL / TLS. Это рукопожатие помогает аутентифицировать сервер для вашего клиента с помощью асимметричного шифрования, отправляя его сертификат SSL / TLS и открытый ключ. Затем браузер генерирует предварительный секрет, шифрует его с помощью открытого ключа сертификата сервера и отправляет обратно на сервер.Затем сервер расшифровывает его соответствующим закрытым ключом. Затем обе стороны вместе генерируют главный секрет (общий секрет) и идентичные сеансовые ключи. Ключи сеанса симметричны и используются клиентом и сервером для всех обменов данными для этого конкретного сеанса. Ни один злоумышленник не может расшифровать или угадать сеансовый ключ, пока он передается между браузером и сервером. Это помогает защитить ваши данные от перехвата и чтения в результате атак типа «злоумышленник в середине» (также известных как атаки MitM).Итак, процесс начинается с асимметричного шифрования и сменяется симметричным шифрованием для основной части обмена данными. Это снимок экрана, который демонстрирует, что мы используем сертификат SSL / TLS с расширенной проверкой (EV) для защиты SectigoStore.com.Персональные сертификаты аутентификации предлагают аутентификацию клиента и безопасность электронной почтыПерсональный сертификат проверки подлинности, также известный как сертификат клиента, проверяет подлинность пользователей в рамках организации.Использование этих типов сертификатов позволяет ограничить доступ к конфиденциальным данным или системам только избранным лицам. Компании устанавливают эти сертификаты на устройства конечных пользователей в качестве средства контроля доступа и аутентификации без пароля. Сотрудники могут получить доступ к этим ресурсам только при входе в систему с офисного устройства, на котором есть сертификат. Некоторые ресурсы, почтовые клиенты и веб-сайты (например, сайты интрасети, сайты разработки и тестирования или даже страницы администрирования общедоступных сайтов) предназначены только для использования сотрудниками.И всегда полезно ограничивать доступ посторонних к этим веб-страницам. Вот здесь и пригодятся персональный сертификат аутентификации и асимметричное шифрование. Преимущества и недостатки асимметричного шифрованияВ этом разделе мы выделим некоторые плюсы и минусы шифрования с асимметричным ключом по сравнению с симметричным шифрованием. Но если вам нужно подробное сравнение, обратитесь к этой статье: Разница между симметричным и асимметричным шифрованием. Четыре преимущества асимметричного шифрования1. Это более безопасно, чем симметричное шифрованиеПоскольку асимметричная криптография использует два связанных, но разных ключа, она более безопасна, чем ее симметричная копия. Отчасти это связано с тем, что асимметричное шифрование использует более длинные ключи (1028 бит, 2048 бит, 4096 бит и т. Д.), Тогда как симметричное шифрование использует более короткие ключи (128 бит, 256 бит и т. Д.) 2. Это полезно, когда задействовано больше конечных точекПри симметричном шифровании только один ключ используется всеми конечными точками.Это означает, что ответственность за его успех зависит от секретности этого ключа. Когда большое количество конечных точек используют один и тот же ключ, вероятность раскрытия увеличивается. Но при асимметричном шифровании закрытый ключ хранится только у авторизованного получателя. Когда одна конечная точка хранит закрытый ключ вместо нескольких, шансы на компрометацию резко снижаются. Вот почему шифрование с асимметричным ключом работает лучше всего, когда задействовано большое количество конечных точек. 3.Упрощает распространение ключейПри асимметричном шифровании вы можете распространять открытый ключ на большое количество конечных точек, потому что вам не нужно беспокоиться о его безопасности. В то время как при симметричном шифровании необходимо очень осторожно распространять ключ. Когда задействованы миллионы серверов и устройств, распределение ключей при симметричном шифровании становится очень сложной задачей, и вероятность взлома возрастает. 4. Делает возможными цифровые подписиАсимметричное шифрование является неотъемлемой частью всей концепции цифровых подписей и того, как они работают.Когда люди говорят о цифровой подписи документа, они имеют в виду, что на самом деле они применяют к нему хэш (фрагмент данных фиксированной длины, который служит односторонней криптографической функцией), который служит контрольной суммой. По сути, это помогает получателю узнать, был ли документ изменен или изменен с момента его первоначальной подписи. Для этого в цифровых подписях используется шифрование с асимметричным ключом. Здесь отправитель применяет хэш в качестве контрольной суммы и, подписывая этот хеш своим закрытым ключом, зашифрует его.Получатель может расшифровать цифровую подпись и выполнить ту же функцию для проверки значения хеш-функции, используя открытый ключ отправителя. Два недостатка асимметричного шифрования1. Более низкая скоростьПоскольку ключи длиннее и серверу необходимо вычислить два разных ключа для шифрования и дешифрования, это становится трудоемким процессом. Также используются более сложные алгоритмы. Это пара причин, по которым шифрование с асимметричным ключом работает медленнее, чем с симметричным шифрованием. 2. Он слишком громоздкий, чтобы использовать его в масштабеИз-за двух отдельных длинных ключей шифрования на сервер ложится огромная нагрузка, связанная с процессом шифрования и дешифрования. Вы не можете использовать асимметричное шифрование там, где задействовано огромное количество данных; в противном случае серверы будут истощены и станут медленными. Вот почему, например, шифрование с асимметричным ключом сначала используется в процессе подтверждения SSL / TLS, но затем оно переключается на симметричное шифрование для обмена данными, который будет происходить между браузером пользователя и веб-сайтом во время их сеанса. Завершение асимметричного шифрованияАсимметричное шифрованиеи его алгоритмы несовершенны, но они по-прежнему невероятно эффективны, помогая нам устанавливать безопасную связь с третьими сторонами через общедоступные каналы. Вот почему некоторые типы сертификатов используют гибридный подход, в котором они используют оба типа шифрования одновременно. Например, в сертификате SSL / TLS вся передача данных осуществляется с использованием симметричного шифрования. Но для передачи симметричного ключа используется асимметричное шифрование. В заключение мы просто хотим сказать, что асимметричное шифрование идеально подходит для передачи небольших фрагментов данных на большое количество конечных точек. Это основной компонент цифровых подписей, и он более безопасен, чем симметричное шифрование. Асимметричное шифрование: определение, архитектура, использованиеКак работает асимметричная криптография?Конфиденциальные сообщения проходят процесс шифрования и дешифрования с помощью открытых и закрытых ключей. Алгоритм запускает процесс. Математическая функция генерирует пару ключей. Каждый ключ отличается, но они связаны друг с другом математически. Протоколы генерации ключей различаются, и ключи, которые они создают, тоже разные. В среде Microsoft, например, вам нужно около четырех строк кода, чтобы начать разработку пары асимметричных ключей. Другие программы работают аналогичным образом. Представьте, что кто-то хочет отправить зашифрованное сообщение другому человеку.Процесс выглядит так:
А теперь представьте, что кто-то хочет общаться с сущностью, а не с человеком. Сертификаты становятся важными. Сертификаты SSL, обычно используемые веб-сайтами, работают как рукопожатия. Организация прыгает через обруч, например, регистрируется в юридическом лице и доказывает право собственности, и создается сертификат. Когда пользователь обращается к подобному сайту, компьютер пользователя и веб-сайт проверяют закрытый и открытый ключи перед передачей информации.Но как только происходит проверка, данные проходят через симметричное шифрование, что обеспечивает скорость. Веб-аутентификация относительно проста для понимания. Мы все это использовали. Но многие другие организации используют эту технику, чтобы обезопасить своих пользователей. Биткойн, например, сильно опирается на асимметричное шифрование. Транзакция связана с открытым ключом, но частный ключ необходим человеку, чтобы переместить эту транзакцию из одной учетной записи в другую. Плюсы и минусы асимметричного шифрованияВсем администраторам сайтов и лицам, заботящимся о безопасности, требуется какой-либо инструмент шифрования.Но асимметричные решения подходят не всем. Плюсы
Минусы
Вы можете прочитать этот список и решить, что преимущества намного перевешивают риски. Но если вы решите, что риски слишком велики, вы можете вместо этого использовать симметричное шифрование. У вас будет меньше рисков, связанных с потерями и скоростью, но ваши данные могут быть немного менее безопасными. История асимметричного шифрованияИдея защиты данных не нова.Фактически, концепции, лежащие в основе асимметричной криптографии, были определены десятилетия назад. В 1977 году два исследователя из Стэнфордского университета опубликовали статью с четко определенными концепциями асимметричного шифрования. Они считали, что новые протоколы необходимы, поскольку потребители переходят от транзакций только за наличные к цифровым версиям, и им нужны были способы защиты своих финансов. Со временем идеи распространились, и вскоре отдельные лица, государственные компании и частные лица приложили все усилия, чтобы реализовать этот высокий уровень безопасности.В 1995 году асимметричное шифрование стало широко распространенным, поскольку протокол HTTPS был выпущен для широкого использования. Теперь такие крупные компании, как Google, используют эту технику для защиты своих сообщений. Мы можем помочьУзнайте больше о том, как Okta использует асимметричное шифрование для защиты вашей организации. Мы можем помочь вам понять, какие решения лучше всего подходят для вашей организации, и можем реализовать их для вас. Свяжитесь с нами, и мы поможем. Список литературыПочему HTTPS для всего? Совет CIO. Генерация ключей для шифрования и дешифрования. (Июль 2020 г.). Microsoft. Каталог открытых ключей. (Март 2009 г.). Кумачан. Как выбрать между этими 5 сертификатами SSL для вашего сайта. Нил Патель. Итак, подождите, насколько на самом деле зашифрованы собрания Zoom? (Апрель 2020 г.). Проводной. Новые направления в криптографии. (Ноябрь 1076 г.). IEEE Transactions по теории информации. Половина Интернета теперь зашифрована.Это делает всех безопаснее. (Январь 2017 г.). Проводной. Вот простое введение в то, как браузеры шифруют ваши данные. (Январь 2019). Антон Спаанс. Симметричное и асимметричное шифрование — в чем разница?14 июня, 2021 Джейсон ПармсДавайте поймем ключевые различия между симметричным и асимметричным шифрованием. Проще говоря, асимметричное шифрование более безопасно, чем симметричное шифрование. Информационная безопасность стала колоссальным фактором, особенно в современных сетях связи, оставляя лазейки, которые могут быть использованы для разрушительных последствий.В этой статье рассматриваются две популярные схемы шифрования, которые можно использовать для усиления безопасности связи при симметричном и асимметричном шифровании. В принципе, лучший способ начать это обсуждение — это сначала начать с основ. Таким образом, мы рассмотрим определения алгоритмов и ключевых криптографических концепций, а затем погрузимся в основную часть обсуждения, где мы представляем сравнение двух методов. АлгоритмыАлгоритм — это в основном процедура или формула для решения проблемы отслеживания данных.Алгоритм шифрования — это набор математических процедур для выполнения шифрования данных. Благодаря использованию такого алгоритма информация превращается в зашифрованный текст и требует использования ключа для преобразования данных в их исходную форму. Это подводит нас к концепции криптографии, которая долгое время использовалась для защиты информации в системах связи. КриптографияКриптография — это метод использования передовых математических принципов для хранения и передачи данных в определенной форме, так что только те, кому она предназначена, могут ее прочитать и обработать.Шифрование — ключевая концепция криптографии. Это процесс, при котором сообщение кодируется в формате, который не может быть прочитан или понят перехватчиком. Эта техника устарела и впервые была использована Цезарем для шифрования своих сообщений с помощью шифра Цезаря. Открытый текст от пользователя может быть зашифрован в зашифрованный текст, а затем отправлен по каналу связи, и никакой перехватчик не сможет вмешаться в открытый текст. Когда он достигает приемной стороны, зашифрованный текст расшифровывается до исходного открытого текста. Термины криптографии
Что такое симметричное шифрование?Это простейший вид шифрования, в котором используется только один секретный ключ для шифрования и дешифрования информации. Симметричное шифрование — старый и наиболее известный метод. Он использует секретный ключ, который может быть числом, словом или цепочкой случайных букв. Он смешан с обычным текстом сообщения для изменения содержимого определенным образом. Отправитель и получатель должны знать секретный ключ, который используется для шифрования и дешифрования всех сообщений.Blowfish, AES, RC4, DES, RC5 и RC6 являются примерами симметричного шифрования. Наиболее широко используемый симметричный алгоритм — AES-128, AES-192 и AES-256. Основным недостатком шифрования с симметричным ключом является то, что все участвующие стороны должны обмениваться ключом, используемым для шифрования данных, прежде чем они смогут их расшифровать. Что такое асимметричное шифрование?Асимметричное шифрование также известно как криптография с открытым ключом, который является относительно новым методом по сравнению с симметричным шифрованием.Асимметричное шифрование использует два ключа для шифрования простого текста. Обмен секретными ключами осуществляется через Интернет или большую сеть. Это гарантирует, что злоумышленники не злоупотребят ключами. Важно отметить, что любой, у кого есть секретный ключ, может расшифровать сообщение, и именно поэтому асимметричное шифрование использует два связанных ключа для повышения безопасности. Открытый ключ предоставляется бесплатно всем, кто может захотеть отправить вам сообщение. Второй закрытый ключ хранится в секрете, так что вы можете только знать. Сообщение, зашифрованное с помощью открытого ключа, можно расшифровать только с помощью закрытого ключа, а также сообщение, зашифрованное с помощью закрытого ключа, можно расшифровать с помощью открытого ключа.Безопасность открытого ключа не требуется, поскольку он общедоступен и может передаваться через Интернет. Асимметричный ключ гораздо лучше обеспечивает безопасность информации, передаваемой во время связи. Асимметричное шифрование в основном используется в повседневных каналах связи, особенно в Интернете. Популярный алгоритм шифрования с асимметричным ключом включает EIGamal, RSA, DSA, методы эллиптической кривой, PKCS. Асимметричное шифрование в цифровых сертификатахДля использования асимметричного шифрования должен быть способ обнаружения открытых ключей.Один из типичных методов — использование цифровых сертификатов в модели взаимодействия клиент-сервер. Сертификат — это пакет информации, который идентифицирует пользователя и сервер. Он содержит такую информацию, как название организации, организация, выдавшая сертификат, адрес электронной почты и страна пользователей, а также открытый ключ пользователя. Когда серверу и клиенту требуется безопасная зашифрованная связь, они отправляют запрос по сети другой стороне, которая отправляет обратно копию сертификата.Открытый ключ другой стороны может быть извлечен из сертификата. Сертификат также может использоваться для однозначной идентификации владельца. SSL / TLS использует как асимметричное, так и симметричное шифрование, быстро просматривайте сертификаты SSL с цифровой подписью, выданные доверенными центрами сертификации (ЦС). Разница между симметричным и асимметричным шифрованием
ЗаключениеКогда дело доходит до шифрования, новейшие схемы могут быть наиболее подходящими. Вы всегда должны использовать алгоритм шифрования, который подходит для вашей задачи. Фактически, по мере того, как в криптографии происходит новый сдвиг, разрабатываются новые алгоритмы, чтобы догнать перехватчиков и защитить информацию для повышения конфиденциальности. В ближайшие годы хакеры непременно усложнят задачу экспертам, поэтому ожидайте большего от криптографического сообщества! Asymmetric Encryption — обзорПравильный ответ и пояснение: C . Ответ C правильный; цифровые подписи требуют асимметричного шифрования. ECC — самый сильный асимметричный алгоритм на бит длины ключа. Это позволяет использовать ключи меньшей длины, требующие меньше ресурсов ЦП. Неправильные ответы и пояснения: A , B и D . Ответы A , B и D неверны. AES — симметричный шифр; симметричные шифры не используются в цифровых подписях.RSA основан на разложении составных чисел на их простые числа, а Эль-Гамаль основан на дискретных логарифмах. Оба метода обеспечивают примерно одинаковую силу на бит и намного слабее на бит, чем ECC. Правильный ответ и пояснение: C . Ответ C правильный; Атаки на выбранный зашифрованный текст обычно запускаются против асимметричных криптосистем, где криптоаналитик может выбрать для расшифровки открытые документы, подписанные (зашифрованные) открытым ключом пользователя. Неправильные ответы и пояснения: A , B и D . Ответы A , B и D неверны. Ни один из них не используется в первую очередь против асимметричного шифрования. Правильный ответ и пояснение: C . Ответ C правильный; Линейный криптоанализ анализирует большое количество пар открытого текста / зашифрованного текста, созданных с одним и тем же ключом, пытаясь вывести информацию о ключе. Неправильные ответы и пояснения: A , B и D . Ответы A , B и D неверны. Линейный криптоанализ — это известная атака с открытым текстом, но вопрос касается именно линейной, что делает известную атаку открытым текстом некорректной. Дифференциальный криптоанализ стремится найти «разницу» между зашифрованными связанными открытыми текстами. Криптоаналитик выбирает открытый текст для шифрования во время выбранной атаки открытого текста. Правильный ответ и пояснение: B . Ответ B правильный; отправитель генерирует хеш открытого текста и шифрует хеш закрытым ключом. Получатель расшифровывает хеш открытым ключом. Неправильные ответы и пояснения: A , C и D . Ответы A , C и D неверны. Отправитель шифрует хэш закрытым, а не открытым ключом.Открытый текст хешируется и не шифруется. Правильный ответ и пояснение: D . Ответ D правильный; Blowfish не был финалистом AES (Twofish, основанный на Blowfish). Неправильные ответы и пояснения: A , B и C . Ответы A , B и C неверны. MARS, RC6 и Serpent были финалистами AES. Симметричное шифрование ключей — зачем, где и как оно используется в банковской сфереВ современном кибер-мире существует постоянный риск несанкционированного доступа ко всем формам данных.Наибольшему риску подвергаются данные финансовых и платежных систем, которые могут раскрыть личную идентификационную информацию (PII) или данные платежных карт клиентов и клиентов. Шифрование имеет решающее значение для защиты PII и снижения рисков, с которыми компании, проводящие платежные транзакции, сталкиваются каждую минуту каждого дня. В этой статье мы поговорим о симметричном шифровании в банковской сфере, его преимуществах и некоторых проблемах управления ключами. Что такое симметричное шифрование?Симметричное шифрование — это тип шифрования, при котором для шифрования и дешифрования электронной информации используется только один ключ (секретный ключ).Сущности, взаимодействующие с помощью симметричного шифрования, должны обмениваться ключом, чтобы его можно было использовать в процессе дешифрования. Этот метод шифрования отличается от асимметричного шифрования, при котором пара ключей, один открытый и один частный, используется для шифрования и дешифрования сообщений. При использовании алгоритмов симметричного шифрования данные преобразуются в форму, недоступную для понимания никому, у кого нет секретного ключа для их расшифровки. Как только предполагаемый получатель, владеющий ключом, получает сообщение, алгоритм меняет свое действие так, чтобы сообщение было возвращено в исходную и понятную форму.Секретный ключ, который используют отправитель и получатель, может быть конкретным паролем / кодом или случайной цепочкой букв или цифр, сгенерированных безопасным генератором случайных чисел (ГСЧ). Для шифрования банковского уровня симметричные ключи должны быть созданы с использованием ГСЧ, сертифицированного в соответствии с отраслевыми стандартами, такими как FIPS 140-2. Существует два типа алгоритмов симметричного шифрования:
Вот некоторые примеры алгоритмов симметричного шифрования:
AES, DES, IDEA, Blowfish, RC5 и RC6 — блочные шифры.RC4 — это поточный шифр. DESВ «современных» вычислениях DES был первым стандартизированным шифром для защиты электронных коммуникаций и используется в различных вариантах (например, 3DES с двумя или тремя ключами). Оригинальный DES больше не используется, так как он считается слишком «слабым» из-за вычислительной мощности современных компьютеров. Даже 3DES не рекомендуется NIST и PCI DSS 3.2, как и все 64-битные шифры. Однако 3DES по-прежнему широко используется в чиповых картах EMV. AESНаиболее часто используемый симметричный алгоритм — это Advanced Encryption Standard (AES), который первоначально был известен как Rijndael.Это стандарт, установленный Национальным институтом стандартов и технологий США в 2001 году для шифрования электронных данных, объявленный в US FIPS PUB 197. Этот стандарт заменяет DES, который использовался с 1977 года. Согласно NIST, шифр AES имеет размер блока 128 бит, но может иметь три разные длины ключа, как показано для AES-128, AES-192 и AES-256. Для чего используется симметричное шифрование?Хотя симметричное шифрование является более старым методом шифрования, оно быстрее и эффективнее, чем асимметричное шифрование, которое сказывается на сетях из-за проблем с производительностью, связанных с размером данных и интенсивным использованием ЦП.Из-за лучшей производительности и более высокой скорости симметричного шифрования (по сравнению с асимметричным) симметричная криптография обычно используется для массового шифрования / шифрования больших объемов данных, например для шифрования базы данных. В случае с базой данных секретный ключ может быть доступен только самой базе данных для шифрования или дешифрования. Некоторые примеры использования симметричной криптографии:
К сожалению, симметричное шифрование имеет свои недостатки.Его самым слабым местом являются аспекты управления ключами, в том числе: Исчерпание ключа Для симметричного шифрованияхарактерно поведение, при котором при каждом использовании ключа «утечка» некоторой информации, которая потенциально может быть использована злоумышленником для восстановления ключа. Защита от этого поведения включает использование иерархии ключей, чтобы гарантировать, что главный ключ или ключи шифрования не используются чрезмерно, и соответствующая ротация ключей, которые действительно шифруют объемы данных. Для обеспечения управляемости оба этих решения требуют грамотных стратегий управления ключами, как будто (например) списанный ключ шифрования не может быть восстановлен, данные потенциально потеряны. Данные об авторстве В отличие от асимметричных (с открытым ключом) сертификатов , симметричные ключи не имеют встроенных метаданных для записи информации, такой как дата истечения срока действия или список управления доступом, указывающий на использование ключа — например, для шифрования, но не для дешифрования. Последняя проблема частично решается такими стандартами, как ANSI X9-31, где ключ может быть привязан к информации, предписывающей его использование. Но для полного контроля над , для чего ключ может использоваться, и , когда его можно использовать, требуется система управления ключами. Управление ключами в крупных масштабах Если в схеме задействовано всего несколько ключей (от десятков до сотен), накладные расходы на управление невелики, и их можно решить вручную, с помощью человека. Однако с большим количеством ресурсов отслеживать истечение срока действия и организовывать ротацию ключей быстро становится непрактичным. Рассмотрим развертывание платежных карт EMV: миллионы карт, умноженные на несколько ключей для каждой карты, требуют специального обеспечения и системы управления ключами. ЗаключениеОбслуживание крупномасштабных систем симметричного шифрования — очень сложная задача. Это особенно верно, когда мы хотим достичь безопасности и контролируемости банковского уровня, когда корпоративная и / или ИТ-архитектура децентрализована / географически распределена. Для того, чтобы сделать это правильно, рекомендуется использовать специальное программное обеспечение для поддержания надлежащего жизненного цикла каждого созданного ключа. В случаях массовой регистрации ключей действительно невозможно провести управление ключами вручную.Для этого нам необходимо специализированное программное обеспечение для управления ключевым жизненным циклом. Ожидается, что квантовые вычисления появятся в ближайшие 5-10 лет. Уже сегодня NIST советует заменить широко используемый алгоритм 3DES алгоритмами, которые мы считаем более безопасными, исходя из сегодняшних знаний. Не зная, каким прогрессом могут быть технологии и, следовательно, эволюция вредоносных алгоритмов дешифрования, мы настоятельно рекомендуем банкам перейти на крипто-гибкую установку. Такая установка позволит быстро заменять алгоритмы при обнаружении слабых мест на алгоритмы, которые считаются более безопасными. 2019. Все права защищены. Карта сайта |