Сайт о телевидении

Сайт о телевидении

» » Шифрование. Современные алгоритмы шифрования

Шифрование. Современные алгоритмы шифрования

Доброго времени суток, дорогие друзья, знакомые и прочие личности. Сегодня поговорим про WiFi шифрование , что логично из заголовка.

Думаю, что многие из Вас пользуются такой штукой как , а значит, скорее всего, еще и Wi-Fi на них для Ваших ноутбуков, планшетов и прочих мобильных устройств.

Само собой, что этот самый вай-фай должен быть закрыт паролем, иначе вредные соседи будут безвозмездно пользоваться Вашим интернетом, а то и того хуже, - Вашим компьютером:)

Само собой, что помимо пароля есть еще и всякие разные типы шифрования этого самого пароля, точнее говоря, Вашего Wi-Fi протокола, чтобы им не просто не пользовались, но и не могли взломать.

В общем, сегодня хотелось бы немного поговорить с Вами о такой вещи как WiFi шифрование, а точнее этих самых WPE, WPA, WPA2, WPS и иже с ними.

Готовы? Давайте приступим.

WiFi шифрование - общая информация

Для начала сильно упрощенно поговорим о том как выглядит аутентификация с роутером (сервером), т.е как выглядит процесс шифрования и обмена данными. Вот такая вот у нас получается картинка:

Т.е, сначала, будучи клиентом мы говорим, что мы, - это мы, т.е знаем пароль (стрелочка зелененькая сверху). Сервер, тобишь допустим роутер, радуется и отдаёт нам случайную строку (она же является ключом с помощью которого мы шифруем данные), ну и далее происходит обмен данными, зашифрованными этим самым ключом.

Теперь же поговорим о типах шифрования, их уязвимостях и прочем прочем. Начнем по порядку, а именно с OPEN , т.е с отсутствия всякого шифра, а далее перейдем ко всему остальному.

Тип 1 - OPEN

Как Вы уже поняли (и я говорил только что), собственно, OPEN - это отсутствие всякой защиты, т.е. Wifi шифрование отсутствует как класс, и Вы и Ваш роутер абсолютно не занимаются защитой канала и передаваемых данных.

Именно по такому принципу работают проводные сети - в них нет встроенной защиты и «врезавшись» в неё или просто подключившись к хабу/свичу/роутеру сетевой адаптер будет получать пакеты всех находящихся в этом сегменте сети устройств в открытом виде.

Однако с беспроводной сетью «врезаться» можно из любого места - 10-20-50 метров и больше, причём расстояние зависит не только от мощности вашего передатчика, но и от длины антенны хакера. Поэтому открытая передача данных по беспроводной сети гораздо более опасна, ибо фактически Ваш канал доступен всем и каждому.

Тип 2 - WEP (Wired Equivalent Privacy)

Один из самых первых типов Wifi шифрования это WEP . Вышел еще в конце 90 -х и является, на данный момент, одним из самых слабых типов шифрования.

Во многих современных роутерах этот тип шифрования вовсе исключен из списка возможных для выбора:

Его нужно избегать почти так же, как и открытых сетей - безопасность он обеспечивает только на короткое время, спустя которое любую передачу можно полностью раскрыть вне зависимости от сложности пароля.

Ситуация усугубляется тем, что пароли в WEP - это либо 40 , либо 104 бита, что есть крайне короткая комбинация и подобрать её можно за секунды (это без учёта ошибок в самом шифровании).

Основная проблема WEP - в фундаментальной ошибке проектирования. WEP фактически передаёт несколько байт этого самого ключа вместе с каждым пакетом данных.

Таким образом, вне зависимости от сложности ключа раскрыть любую передачу можно просто имея достаточное число перехваченных пакетов (несколько десятков тысяч, что довольно мало для активно использующейся сети).

Тип 3 - WPA и WPA2 (Wi-Fi Protected Access)

Это одни из самых современных на данный момент типов такой штуки, как Wifi шифрование и новых пока, по сути, почти не придумали.

Собственно, поколение этих типов шифрования пришло на смену многострадальному WEP . Длина пароля - произвольная, от 8 до 63 байт, что сильно затрудняет его подбор (сравните с 3, 6 и 15 байтами в WEP ).

Стандарт поддерживает различные алгоритмы шифрования передаваемых данных после рукопожатия: TKIP и CCMP .

Первый - нечто вроде мостика между WEP и WPA , который был придуман на то время, пока IEEE были заняты созданием полноценного алгоритма CCMP . TKIP так же, как и WEP , страдает от некоторых типов атак, и в целом не сильно безопасен.

Сейчас используется редко (хотя почему вообще ещё применяется - мне не понятно) и в целом использование WPA с TKIP почти то же, что и использование простого WEP .

Кроме разных алгоритмов шифрования, WPA (2) поддерживают два разных режима начальной аутентификации (проверки пароля для доступа клиента к сети) - PSK и Enterprise . PSK (иногда его называют WPA Personal ) - вход по единому паролю, который вводит клиент при подключении.

Это просто и удобно, но в случае больших компаний может быть проблемой - допустим, у вас ушёл сотрудник и чтобы он не мог больше получить доступ к сети приходится менять пароль для всей сети и уведомлять об этом других сотрудников. Enterprise снимает эту проблему благодаря наличию множества ключей, хранящихся на отдельном сервере - RADIUS .

Кроме того, Enterprise стандартизирует сам процесс аутентификации в протоколе EAP (E xtensible A uthentication P rotocol), что позволяет написать собственный алгоритм.

Тип 4 - WPS/QSS

Wifi шифрование WPS , он же QSS - интересная технология, которая позволяет нам вообще не думать о пароле, а просто нажать на кнопку и тут же подключиться к сети. По сути это «легальный» метод обхода защиты по паролю вообще, но удивительно то, что он получил широкое распространение при очень серьёзном просчёте в самой системе допуска - это спустя годы после печального опыта с WEP .

WPS позволяет клиенту подключиться к точке доступа по 8-символьному коду, состоящему из цифр (PIN ). Однако из-за ошибки в стандарте нужно угадать лишь 4 из них. Таким образом, достаточно всего-навсего 10000 попыток подбора и вне зависимости от сложности пароля для доступа к беспроводной сети вы автоматически получаете этот доступ, а с ним в придачу - и этот самый пароль как он есть.

Учитывая, что это взаимодействие происходит до любых проверок безопасности, в секунду можно отправлять по 10-50 запросов на вход через WPS , и через 3-15 часов (иногда больше, иногда меньше) вы получите ключи от рая.

Когда данная уязвимость была раскрыта производители стали внедрять ограничение на число попыток входа (rate limit ), после превышения которого точка доступа автоматически на какое-то время отключает WPS - однако до сих пор таких устройств не больше половины от уже выпущенных без этой защиты.

Даже больше - временное отключение кардинально ничего не меняет, так как при одной попытке входа в минуту нам понадобится всего 10000/60/24 = 6,94 дней. А PIN обычно отыскивается раньше, чем проходится весь цикл.

Хочу ещё раз обратить ваше внимание, что при включенном WPS ваш пароль будет неминуемо раскрыт вне зависимости от своей сложности. Поэтому если вам вообще нужен WPS - включайте его только когда производится подключение к сети, а в остальное время держите выключенным.

Послесловие

Выводы, собственно, можете сделать сами, а вообще, само собой разумеется, что стоит использовать как минимум WPA , а лучше WPA2 .

В следующем материале по Wi-Fi мы поговорим о том как влияют различные типы шифрования на производительность канала и роутера, а так же рассмотрим некоторые другие нюансы.

Как и всегда, если есть какие-то вопросы, дополнения и всё такое прочее, то добро пожаловать в комментарии к теме про Wifi шифрование .

PS : За существование этого материала спасибо автору Хабра под ником ProgerXP . По сути вся текстовка взята из его материала , чтобы не изобретать велосипед своими словами.

Мало кто знает как именно работает асимметричное шифрование. К примеру есть люди которые не считают протокол https какой-либо адекватной защитой передаваемых данных. И как правило на попытку убедить в обратном, они отвечают что-то в духе «если мы передаем зашифрованные данные, то мы должны сказать как их расшифровывать, а эту информацию можно перехватить и, следовательно, расшифровать данные». А на аргументы, что это не так и в основу положено асимметричное шифрование, поступает ответ «Ну и что?».

Ладно, я понимаю, знать все тонкости реализации асимметричного шифрования нужно далеко не всем. Но общий принцип работы, я считаю, должен знать каждый, кто как-либо связан с компьютерами.

Хочу вынести суть данного поста в эту аннотацию: Запомните, асимметричное шифрование безопасно , естественно при выполнении всех условий. И чтобы доказать это я попробую описать алгоритм понятным языком, чтобы каждый смог понять, что он безопасен. Встречайте Алису, Боба и Еву и передачу их секретного сообщения под катом.

Кстати почему Алиса и Боб? Об этом есть кратенькая статья на википедии: Алиса, Боб и Ева . Чтобы было понятнее, Алиса и Боб хотят обменяться сообщениями, а Ева пытается эти сообщения перехватить и прочесть.

Немного истории

Криптография прошлых веков имела одну огромную проблему — проблема передачи ключей. В те времена существовали только так называемые «симметричные» шифры — шифры при котором данные шифруются и расшифровываются одним и тем же ключом.

К примеру, Алиса зашифровала некоторое сообщение и хочет отправить его Бобу. Естественно, чтобы Боб его прочитал, ему нужен ключ которым было зашифровано данное сообщение. И тут возникает проблема, как передать ключ чтобы его никто не смог перехватить. Пытливые умы предложат — пусть передают при личной встрече, а потом общаются сколько захотят. Да, не спорю, выход. А теперь представьте на секунду, что ваша интернет почта, перед тем как вы авторизируетесь в ней, потребует вашей поездки до физического местоположения сервера с почтой. Удобно? Пожалуй не очень.

Конечно ключ можно передавать по другому каналу связи. Но криптография рассматривает все незащищенные каналы связи как небезопасные. То есть передача ключа Бобу по телефону, например, считается небезопасной так, как ничто не мешает Еве прослушивать и телефон в том числе.

До 70-ых годов, эта проблема настолько стала привычной, что считался аксиомой тот факт, что для передачи сообщения нужно передавать и ключ которым сообщение зашифровано (причем некоторых люди до сих пор считают именно так). Но в 76 году Диффи и Хеллман предложили свой «метод экспоненциального обмена ключей». С этих годов и началось развитие асимметричных криптосистем.

Немножко реальной жизни

Прежде чем изучать какой либо алгоритм, нужно представить как он работает. И самый простой способ — это сравнить его с работой чего-то в реальности.

Представим что Алиса и Боб живут в стране, в которой вся почтовая система абсолютно аморальна и почтовые служащие читают всю незащищенную корреспонденцию. Алиса, девочка не глупая, прежде чем отправить сообщение Бобу, взяла железный ящик и, положив внутрь письмо и закрыв его на свой замок, отправляет этот ящик Бобу.

Естественно на почте прочитать это письмо не могут, но его не может прочитать и сам Боб, так как у него нет ключа которым закрыт замок. Алиса, конечно, может взять еще один железный ящик, положить в него ключ от предыдущего, и отправить его Бобу, но его Боб тоже не сможет открыть…

Единственный путь это все же сделать дубликат ключа и дать его Бобу при личной встрече…

И вот начинает казаться что обмен ключами является неизбежной частью шифрования — или все-таки нет?

Представим другую картину. Распишу пошагово:

  1. Алиса кладет свое письмо в железный ящик и, заперев его на замок, отправляет Бобу.
  2. Боб при получении ящика, (внимание!) берет свой замок и, дополнительно заперев им ящик, отправляет обратно.
  3. Алисе ящик приходит уже с двумя замками (напомню с первым замком Алисы от которого у нее есть ключ, и со вторым — Боба, от которого ключ есть есть только у Боба).
  4. Алиса снимает свой замок, и отправляет ящик обратно Бобу
  5. Бобу приходит ящик с уже одним его замком от которого у него есть ключ
  6. Боб отпирает оставшийся его замок своим ключом, и читает сообщение

Значение этой кратенькой истории огромно. Она показывает что два человека могут передавать секретное сообщение без обмена ключами. Вдумайтесь! Эта история фактически рушит все аксиомы на которых была построена тогдашняя криптография. Да мы получаем некоторое усложнение процесса (ящик пришлось пересылать три раза), но результат…

Вернемся к криптографии

Казалось бы решение найдено. Отправитель и принимающий шифруют свое сообщение, и затем собеседники поочередно снимают свой шифр.


Но суть в том что не существуют таких шифров, которые бы позволили снять шифр из под другого шифра. То есть этап где Алиса снимает свой шифр невозможен:


К сожалению, все имеющиеся алгоритмы до сих пор требуют снятия шифров в той очереди в которой они были применены. Боюсь назвать это аксиомой (так как история уже знает случаи когда такие аксиомы разбивались в пух и прах), но это так до сих пор.

Вернемся к математике

Идея с ящиком, о которой я описывал выше, вдохновили Диффи и Хеллмана искать способ передачи сообщения. В конце концов они пришли к использованию односторонних функций.

Что такое односторонняя функция? К примеру есть функция удвоение, т.е удвоить(4)=8 , она двухсторонняя, т.к. из результата 8 легко получить исходное значение 4. Односторонняя функция — та функция после применения которой практически невозможно получить исходное значение. К примеру смешивание желтой и синей краски — пример односторонней функции. Смешать их легко , а вот получить обратно исходные компоненты — невозможно . Одна из таких функций в математике — вычисление по модулю .

За основу алгоритма Хеллман предложил функцию Y x (mod P) . Обратное преобразование для такой функции очень сложно, и можно сказать что, по сути, заключается в полном переборе исходных значений.

К примеру вам сказали, что 5 x (mod 7) = 2 , попробуйте найдите x , а? Нашли? А теперь представьте что за Y и P взяты числа порядка 10 300 .

Кстати сказать, для повышения стойкости, число P должно являться простым числом, а Y — являться первообразным корнем по модулю P . Но так как мы все же пытаемся понять теорию, то смысла заморачиваться на этом я не вижу.

Алгоритм Диффи-Хеллмана

И вот однажды Хеллмана осенило и он смог разработать рабочий алгоритм обмена ключами. Для работы по этому алгоритму нужно выполнять шаги на обоих сторонах, поэтому я зарисую это в таблице:

Алиса Боб
Этап 1 Оба участника договариваются о значениях Y и P для общей односторонней функции. Эта информация не является секретной. Допустим были выбраны значения 7 и 11 . Общая функция будет выглядеть следующим образом: 7 x (mod 11)
Этап 2 Алиса выбирает случайное число, например 3 A Боб выбирает случайное число, например 6 , хранит его в секрете, обозначим его как число B
Этап 3 Алиса подставляет число A 7 3 (mod 11) = 343 (mod 11) = 2 a Боб подставляет число B в общую функцию и вычисляет результат 7 6 (mod 11) = 117649 (mod 11) = 4 , обозначает результат этого вычисления как число b
Этап 4 Алиса передает число a Бобу Боб передает число b Алисе
Этап 5 Алиса получает b от Боба, и вычисляет значение b A (mod 11) = 4 3 (mod 11) = 64 (mod 11) = 9 Боб получает a от Алисы, и вычисляет значение a B (mod 11) = 2 6 (mod 11) = 64 (mod 11) = 9
Этап 6 Оба участника в итоге получили число 9 . Это и будет являться ключом.

Магия? Не спорю, с первого взгляда непонятно. Но после вчитывания и вдумывания в эту таблицу становится понятно как это работает. Впрочем если понятно не стало, то пролистайте до конца главы, там я выложил поясняющее видео.

Причем обратите внимание, что для получения ключа в конечной формуле, любому человеку нужно иметь три значения:

  • Значения a и P , и секретное число Боба B
  • или значения b и P , и секретное число Алисы A

Но секретные числа по каналу не передаются! Еве не получится восстановить ключ, не имея чьего-нибудь секретного числа. Почему — я писал выше, данная функция является односторонней. Попробуйте решите уравнение 4 x (mod 11) = 2 y (mod 11) найдя x и y .

Чтобы было понятнее, как работает схема Хеллмана, представьте шифр, в котором в качестве ключа каким-то образом используется цвет:

Допустим вначале, что у всех, включая Алису, Боба и Еву, имеется трехлитровая банка, в которую налит один литр желтой краски. Если Алиса и Боб хотят договориться о секретном ключе, они добавляют в свои банки по одному литру своей собственной секретной краски.

Алиса может добавить краску фиолетового оттенка, а Боб — малинового. После этого каждый из них посылает свою банку с перемешанным содержимым другому.

И наконец, Алиса берет смесь Боба и подливает в нее один литр своей секретной краски, а Боб берет смесь Алисы и добавляет в нее один литр своей секретной краски. Краска в обеих банках теперь станет одного цвета, поскольку в каждой находится по одному литру желтой, фиолетовой и малиновой краски.

Именно этот цвет, полученный при добавлении дважды в банки красок, и будет использоваться как ключ. Алиса понятия не имеет, какую краску добавил Боб, а Боб также не представляет, какую краску налила Алиса, но оба они достигли одного и того же результата.

Между тем Ева в ярости. Даже если она и сумеет перехватить банки с промежуточным продуктом, ей не удастся определить конечный цвет, который и будет согласованным ключом. Ева может видеть цвет краски, полученной при перемешивании желтой краски и секретной краски Алисы в банке, отправленной Бобу, и она может видеть цвет краски, полученной при перемешивании желтой краски и секретной краски Боба в банке, отправленной Алисе, но чтобы найти ключ, ей, на самом деле, необходимо знать цвета исходных секретных красок Алисы и Боба. Однако, рассматривая банки с перемешанными красками, Ева не сможет определить секретные краски Алисы и Боба. Даже если она возьмет образец одной из смешанных красок, ей не удастся разделить ее на исходные краски, чтобы найти секретную, поскольку смешивание краски является односторонней функцией.

Все равно непонятно? Тогда смотрим видео:

Что же, надеюсь, вы поняли, что существует вполне реальный способ безопасного обмена ключами. Но прошу заметить, назвать этот алгоритм асимметричным шифром пока нельзя, так как по сути это всего лишь алгоритм обмена ключами.

Асимметричное шифрование

асимметричный алгоритм предполагает под собой наличие двух ключей — публичного и приватного. То есть сообщение шифруется публичным ключом, а расшифровывается приватным и ни как иначе. Собственно именно эту концепцию сформулировал Диффи.

В общем суть данного алгоритма заключается в том, что принимающая сторона перед приемкой сообщения генерирует пару ключей на основе алгоритма модульной арифметики (принцип такой же как и в алгоритме Диффи-Хеллмана), собственно приватный и публичный ключ. Отправитель перед отправкой получает публичный ключ и шифрует сообщение данным ключом, после чего данное сообщение можно расшифровать только приватным ключом, который хранится в секрете у принимающей стороны.


Если вернуться к аналогии с замками, то шифрование с открытым ключом можно представить себе следующим образом:

Любой способен запереть замок, просто защелкнув его, чтобы он закрылся, но отпереть его может только тот, у кого есть ключ. Запереть замок (зашифровывание) легко, почти все могут это сделать, но открыть его (расшифровывание) имеет возможность только владелец ключа. Понимание того, как защелкнуть замок, чтобы он закрылся, ничего не скажет вам, как его отпереть.

Можно провести и более глубокую аналогию.

Представьте, что Алиса проектирует замок и ключ. Она бдительно охраняет ключ, но при этом изготавливает тысячи дубликатов замков и рассылает их по почтовым отделениям по всему миру. Если Боб хочет послать сообщение, он кладет его в коробку, идет на местный почтамт, просит «замок Алисы» и запирает им коробку. Теперь уже ему не удастся открыть коробку, но когда коробку получит Алиса, она сможет открыть ее своим единственным ключом.

Замок и защелкивание его, чтобы он закрылся, эквивалентны общему ключу для зашифровывания, поскольку все имеют доступ к замкам и все могут воспользоваться замком, чтобы закрыть сообщение в коробке. Ключ от замка эквивалентен секретному ключу для расшифровывания, потому что он имеется только у Алисы, только она сможет открыть замок, и только она сможет получить доступ к находящемуся в коробке сообщению.

Есть несколько алгоритмов реализующих асимметричное шифрование. Самый известный из них — RSA. Расписывать его я не вижу смысла, так как понять как он работает с ходу все равно не получится, да и лучше чем написано на википедии я написать все равно не смогу.

Заключение

Что же, надеюсь что, поняв как работает асимметричное шифрование изнутри, вы станете больше ему доверять и соответственно чаще пользоваться SSL =)

Использовались материалы из книги Сингх Саймон — Книга шифров. Кстати, самая лучшая книга для тех кто хочет хотя бы чуточку разбираться в криптографии. Всем советую прочитать.

  1. tv

    Подбор такого ключа у вас займет времени ну оооочень много. Чуть больше чем существует вселенная. Даже на очень мощных компьютерах.

  2. Игорь

    Для чего нужна эта ахинея с открытыми ключами? Симметричные надёжней.
    Добрый день!
    Хороший сайт, понятно изложен материал, огромное спасибо автору. Попал сюда случайно в сентябре, когда искал информацию по практическому шифрованию.
    Пишу потому, что хочу спросить: Есть желающие узнать как найти числа для симметричного шифрования? Могу научить на пальцах как быстро проверить число Р на простоту (без поиска числа g) — но это вряд ли будет интересно. Самое интересное:
    Найти число Р любой длины и число g к нему. Никакие 2 в степени n плюс один (или минус один) при этом не использую. Естественно, это бесплатно. Есть даже сайт, где я выложил свою работу.

  • Уася Петровичъ

    Понимаю что прошло много времени, но все же отвечу для таких же как я новых читателей.

    Это не сработает, т.к. после действий 2 и 3 мы видим разницу, на которую изменилось число каждого из блоков, следовательно нам становится очевидно секретное число Боба и нам остается только перехватить сообщение после 4-го действия (т.е. уже без шифра Алисы) и воспользоваться уже известным нам числом Боба.

  • Евгений

    Огромное спасибо за статью!
    После прочтения почти все легло на свои полочки, обрело структуру, которую легко наращивать.
    Имея такую структуру легко генерировать правильные вопросы (полочка для атак MiTM, отдельное спасибо Михаилу:)).

    С точки зрения педагогики Вы сделали все идеально. Думаю Вы правы, что не добавили в эту статью атаки MiTM иначе был бы перегруз информационный.

    Видео прелестное, особенно учитывая его возраст.

    PS: использование метафор для объяснения «сложных» систем честно говоря трудно переоценить. Еще раз спасибо!

  • dbzix

    Из этой статьи я не уловил момент перехода от алгоритма Диффи-Хеллмана, где два абонента для получения секретного ключа обмениваются публичными данными и промежуточными результатами вычислений (в примере получилось целых 6 этапов) к тому этапу, где для шифрования используется некий публичный ключ, который затем дешифруется при помощи приватного (я здесь насчитываю всего 2 этапа передачи данных — отправка публичного ключа и отправка зашифрованного этим ключом сообщения).
    Т.е. я понимаю, что где-то между двумя этими объяснениями наверняка кроется много математики, и в итоге объяснение сводится к «это работает именно так, просто поверь». Но было бы наверное проще понять этот внезапный переход, если бы аналогию с красками распространили на объяснение сути шифрования публичным ключом с последующим дешифрованием приватным. А пока получается какое-то «Б работает потому-что А», в то время как между А и Б чёткой связи не прослеживается. По крайней мере для меня.
    Уважаемый автор, не будете ли вы так любезны пояснить мне сей мистический прыжок от А к Б? :) Спасибо!

  • Евгений

    Добрый день,

    Дано: есть формула Y^x (mod P).
    пример в статье основывается на формуле 7^x (mod 11)

    я взял для своего примера 4^x (mod 7)
    и у меня не получилось прийти к общему ключу.
    Вопрос: почему алгоритм в примере работает для 7^x (mod 11) и не работает для 4^x (mod 7)?

  • Jessi-jane
  • Андрей

    Спасибо, статья отличная!
    Только вот чуть не разобрался в алгоритме, в том, как высчитывать через модуль.
    Не подскажите, как высчитывать число В, если число А меньше модуля?
    Ну например:
    3(mod 13) = ?

    Я знаю, что если, например, нужно высчитать 625(mod 13), нужно 625/13, а потом наибольший возможный целый делитель (48) умножить на модуль (что здесь будет равняться 624), и наконец 625-624 = 1
    Числа 625 и 1 сравнимы по модулю 13, так как 624 делится на 13.
    Вот это я понимаю. А вот как быть если модуль больше числа а?

  • Yellow Horror

    1. Атака «человек посередине», это серьёзная проблема. Насколько я могу судить, в рамках одной только криптографии она в принципе не решается: если принять, что Ева способна перехватить и незаметно подменить ВСЕ данные, поступающие к Алисе или исходящие от неё по ЛЮБЫМ каналам связи, никакое шифрование не поможет. Как минимум один сертификат должен быть получен Алисой из абсолютно надёжного источника. Но в случае, если злоумышленник может только прослушивать канал связи, а не менять данные в нём, асимметричное шифрование вполне надёжно.
    2. Что касается возможности снимать один «слой шифра» из-под другого, этим свойством обладает банальная функция XOR, широко используемая в криптографии с древнейших времён по сей день. Не думаю, что её можно запатентовать:(

    1. Дмитрий Амиров Автор

      Да вы правы, атака mitm на сегодняшний день не решается никак если быть абсолютным параноиком. Если же им не быть то возня с сертификатами и подписями обеспечивают «необходимую и достаточную» защиту.

      Что касается функиции XOR — ее сложно назвать шифром, т.к. им она по своей сути не является.

      1. Yellow Horror

        Да ладно? Погуглите про «Шифр Вернама». Это система передачи сообщений с абсолютной криптоустойчивостью. И основана она именно на XOR. Если оставить в стороне некоторые организационные сложности (создание истинно случайных ключей с равномерным распределением, сохранение тайны шифроблокнота в недружелюбном окружении и надёжное уничтожение использованных ключей), ничего проще и надёжнее человечество ещё не придумало.

      2. Yellow Horror

        Хотя, по здравом размышлении, я понял, что метод с двойным обратимым шифрованием не работает, если злоумышленник знает алгоритм шифрования. Рассмотрим на примере идеи Михаила:

        1. Разбиваем шифруемую информацию на блоки. Каждый блок представлен числом. Размер блока (кол-во бит) определяет кол-во возможных значений блока и (соответственно?) стойкость шифрования.
        2. Алиса для шифрования сообщения выбирает секретное число (которое никому не отправляет), которое прибавляет к каждому из чисел в блоках и отправляет зашифрованное таким образом сообщение Бобу.

        Пока всё в порядке: Ева не может прочесть сообщение Алисы, т.к. не знает число-ключ. Если блоки достаточно велики, восстановить сообщение Алисы сложно, а если блок длиннее сообщения и ключ не имеет уязвимостей — невозможно. Но Ева может скопировать шифрограмму Алисы и делает это.

        3. Боб принимает зашифрованное сообщение, выбирает своё секретное число (которое также никому не отправляет), прибавляет это число к каждому из чисел в блоках зашифрованного Алисой сообщения и отправляет это двукратно зашифрованное сообщение Алисе.

        А вот тут уже начинаются проблемы: Ева всё ещё не может прочесть сообщение Алисы, но, располагая копией полученной Бобом шифрограммы и отправленной им двойной шифровкой, без проблем восстанавливает ключ Боба.

        4. Алиса вычитает своё секретное число из каждого числа в блоках этого двукратно зашифрованного сообщения и отправляет получившееся сообщение Бобу.

        Алиса сняла свой «слой» шифра и теперь пересылает Бобу своё письмо, зашифрованное только ключом Боба. Который у Евы уже есть! Ева расшифровывает письмо и читает его, а также на всякий случай может восстановить ключ Алисы, пользуясь расшифрованным текстом письма и первой перехваченной ею шифрограммой.

  • Dmitriy

    Здравствуйте. Хорошая статья, но я тоже не понял некоторые моменты, которые описали выше.
    Именно переход от алгоритма получения секретного ключа обоими собеседниками (Алиса и Боб) (без их выкладывания в публичный доступ) к асимметричному шифрованию.
    У вас написано, что сообщение кодируется на стороне Алисы публичным ключем, полученным от Боба. Но если мы зашифруем публичным ключём, то Ева сможет легко его получить и сама расшифровать, верно?
    Ещё для меня осталось непонятным, как можно зашифровать публичным ключём и расшифровать только секретным на стороне Боба. То есть зашифровали словом «Дом» , а расшифровали словом «Мир» . Для меня это какая-то несуразица.
    Исходя из этих очевидных пробелов (или у вас, или у меня) , я сделал вывод, что тут схема должна быть посложнее, чем на картинке. Скорее всего под стрелочкой от публичного ключа Боба к Алисе имеется в виду другое, а именно вся последовательность действий по получению «Y» и «P», получению промежуточных результатов и тд. Иными словами, я думаю, что при шифровке исходного сообщения якобы публичным ключем, на самом деле шифруется не публичным, а уже секретным, который вычисляется на каждой стороне по отдельности.

    Ещё у меня возник вопрос о расшифровки дважды зашифрованного сообщения. Если взять,допустим, шифр Цезаря, где каждая буква шифруется другой буквой, стоящей, скажем, на 3 позиции дальше. Если Алиса зашифрует букву А в сообщении буквой Б, а потом Боб зашифрует эту букву Б буквой Г, то получить букву А из Г будет просто, причём в любом порядке. Правда это скорее всего будет работать только в тех случаях, если оба знают тип шифрации собеседника и при достаточно простых типах шифрации (моноалфавитные/полиалфавитные). Я тоже новичок в криптографии, так что это моё имхо;)

    1. Dmitriy

      Забыл ещё спросить.
      В чём разница между симметричным и асимметричным способами?

      1. Dmitriy

        Я почитал, более менее как-то всё сгрупировал в уме.
        Отвечу на вопросы мною написаные, возможно, помогая тем самым другим читателям.
        1. По поводу

        У вас написано, что сообщение кодируется на стороне Алисы публичным ключем, полученным от Боба. Но если мы зашифруем публичным ключём, то Ева сможет легко его получить и сама расшифровать, верно?
        Ещё для меня осталось непонятным, как можно зашифровать публичным ключём и расшифровать только секретным на стороне Боба. То есть зашифровали словом «Дом» , а расшифровали словом «Мир» . Для меня это какая-то несуразица.

        В этой статье упомянут алгоритм RSA. Алгоритм симметричного шифрования. В нём действительно используется следующий алгоритм:
        1) Опираясь на некую одностороннюю функцию шифрования (функция, которую легко посчитать в одну сторону, но очень трудно в другую. А) мы создаём на получателе пару {открытый ключ;закрытый ключ}. Эта пара уникальна, то есть каждому открытому ключу соответствует уникальный закрытый ключ под эту одностороннюю функцию.

        3)Отправитель шифрует сообщение
        4)Передаёт получателю

        Как видите, отправитель не знает закрытого ключа и он не в состоянии сам расшифровать своё же зашифрованное сообщение. Потому он и называется асимметричным, что у одного есть все ключи, а у другого только лишь часть, необходимая для шифрации.

        В чём разница между симметричным и асимметричным способами?
        Если я воспользовался алгоритмом Диффи и Хеллмана для передачи секретного ключа, а потом смог безопасно передать зашифрованное сообщение, то будет ли этот способ симметричным?

        Алгоритм Дэффи-Хелмана, который служит для обмена ключами и дальнейшим симметричным шифрованием . То есть его суть в том, что сначала оба получают полный ключ для шифрации и дешифрации и потом уже начинают самое обычное симметричное шифрование.

        Асимметричный способ — у одного узла есть вся информация для шифр./дешифр., а у другого, как правило, только для шифрации

        Симметричный — оба узла знают всю информацию для шифр./дешифр.

        Надеюсь, что кому-то помог;3

        1. Dmitriy

          В этой статье упомянут алгоритм RSA. Алгоритм Асимметричного шифрования Опечатался.

        2. Дмитрий Амиров Автор

          Гм… только сейчас заметил ваши комментарии. Приношу свои извинения.

          Все вроде верно. Есть одно но по вашему последнему абзацу, а конкретно термины:

          • Алгоритм Дэффи-Хелмана — является алгоритмом позволяющим получить один общий секретный ключ и не более того
          • Ассиметричное/симметричное шифрование — в целом у Вас все верно
          • RSA — алгоритм являющий собой совокупность этих вещей. На пальцах: с помощью ассимтричного шифрования по протоколу Деффи-Хелмена устанавливается секретный ключ с помощью которого уже методом симметричного шифрования шифруются сообщения между собеседниками.
        3. Дмитрий

          Я все равно не понял утверждение:
          2)Открытый ключ передаётся отправителю.
          3) Отправитель шифрует сообщение
          4)Передаёт получателю
          5)Получатель дешифрует с помощью закрытого ключа. Это сообщение нельзя дешифровать с помощью открытого ключа.

          Получается то, что Вы и мели ввиду с самого начала. Шифруем словом Дом, а дешифруем словом Мир. Означет ли это, что присутствует еще один алгоритм связующий Мир и Дом между собой?

  • Роберт

    Спасибо огромное!!!

  • Роман

    Спасибо. Решил наконец разобраться, как это работает и понял из этой статьи. Только, я считаю, если сообщники знают друг друга и есть возможность обменяться безопасно открытыми ключами, то так и стоит сделать. Чтобы исключить пагубное воздействие возможного появления человека посередине при обмене ключами, который будет прикидываться А как Б и Б как А подменяя ключи на свои и просматривая в итоге всю информацию.

    А в видео, думаю, зря они используют вот это вот 3^(24*54), т.к. вообще не очевидно откуда оно взялось, или пояснили бы, что это условно.

  • RinswinD

    Спасибо за статью. Всё очень доступно разъясняется.

  • grigory

    Ну раздражает ведь всех эта неграмотность правописания — «одностороняя» , «примененны», «длинна», как будто уж в 5-м классе. А так, неплохо для понимания основ.

  • grigory

    Бывает, что вопрос стоит просто. Вирусы-шифровальщики используют закрытый ключ. Есть оригинальный файл, есть файл зашифрованный. Задача: найти алгоритм, сказать так, который ищет алгоритм преобразования первого файла во второй…

  • Allexys

    Благодарю за понятную и нескучную статью! Наконец-то я врубился в основы:).

  • Ярослав

    К сожалению, все имеющиеся алгоритмы до сих пор требуют снятия шифров в той очереди в которой они были применены.

    Это не совсем так. приведу пример:
    — предположим что каждой букве соответствует цифровой код А = 1, Б = 2, В = 3 и т.д.;
    — предположим что Алиса отправляет Бобу письмо, состоящее из единственной буквы А (для упрощения примера);

    Алиса: накладывает свой шифр А + 2 = В

    Боб: накладывает свой шифр В + 3 = Е
    Боб: отправляет письмо Алисе
    Алиса: снимает свой шифр Е — 2 = Г
    Алиса: отправляет письмо Бобу
    Боб: снимает свой шифр Г — 3 = А

    Здесь число 2 — секретный ключ Алисы, 3 — секретный ключ Боба. Причем он может быть и не односимвольным. В принципе его длина ничем не ограничена.

  • Дмитрий

    Я долго обходил стороной теоретические основы ассиметричного шифрования. Знал поверхностно — есть открытый ключ, которым шифруются данные, и есть закрытый, которым эти данные дешифруются. Но меня всегда напрягала мысль о реализации подобного шифрования.
    Ваша статья во многом помогла, за это огромное вам спасибо!
    Только к ее концу я опять увидел эту несуразицу — «шифруется открытым ключом». Ведь, строго говоря, шифруется сообщение не открытым ключом, а ключом, полученным на основе закрытого ключа отправителя и открытого ключа получателя (который, в свою очередь, был сгенерирован на основе закрытого ключа получателя). Ведь в таблице про Алису и Боба — они и только они смогли получить один и тот же ключ «9» — он и используется для шифрации и дешифрации сообщения. А вот получить этот ключ можно только на основе пары ключей — секретного (Алисы/Боба) и публичного(Боба/Алисы).
    Образно — да, сообщение шифруется всегда секретным ключом отправителя (он, грубо говоря, постоянен) и публичным ключом получателя (он зависит от конкретного получателя), поэтому в описании шифрация «секретным» ключом опускается — и это опущение ломает всю стройность рассуждений.

  • кларксон

    прочел статью и не очень всеравно понял, хоть и лучше чем на вики. Но одно мне не понимается только. если ктот может ответить правильно — помогите.

    если я всем посылаю вопрос «сколько будет 2+2?», рассказываю как зашифровать ответ мне (рассказываю всем публичный ключ), и все мне направят ответ на вопрос, как я узнаю того, от кого именно я жду ответа, тобиш того с кем я хотел установить связь на самом деле?

    1. Дмитрий Амиров Автор

      Тут вы немного неправильно ставите вопрос.

      Если вам надо с кем то установить связь, то нужно идти от обратного. Вы подключаетесь к собеседнику, и уже он вам предоставляет свой публичный ключ, а не вы ему.

      UPD: написал статью про , я думаю это будет правильный ответ на ваш вопрос.

      1. кларксон

        с моей тупостью придется повоевать. тема расжевана в коментариях и в вашей статье, кажется все обьяснили.

        все же. зачем мне его публик ключ? скажите если я не правильно понимаю.
        я инициатор (мне нужны ответы, в примере я — принимающая сторона), значит генерирую пару. это ему, отвечающему (отправитель в вашем примере) нужен мой публик

        Отправитель перед отправкой получает публичный ключ и шифрует сообщение данным ключем, после чего данное сообщение можно расшифровать только приватным ключем, который хранится в секрете у принимающей стороны.

  • Beshot

    Несколько раз перечитал эту статью и другие по теме, непонятен алгоритм использования ЭЦП в эл. документах. Если так как здесь: https://ru.wikipedia.org/wiki/Электронная_подпись , то возникают расхождения. Так все таки шифруем с помощью закрытого ключа или открытого?

    1. Дмитрий Амиров Автор

      Если мы что то подписываем, то подпись формируем на основе нашего закрытого ключа. А наш публичный ключ должен быть у получателя, с помощью него он сможет эту подпись расшифровать.

      Если подпись «расшифровалась», то значит публичный ключ соответствует закрытому, а т.к. закрытый ключ априори имеется только у отправителя, то значит подписал документ именно отправитель.

      1. Beshot

        Дмитрий, мне очень помогла ваша статья, у вас хороший стиль. Но есть непонятный момент, вы утверждаете, что асимметричный алгоритм предполагает под собой наличие двух ключей – публичного и приватного. То есть сообщение шифруется публичным ключем, а расшифровывается приватным и ни как иначе.

        Может быть дело в исходных задачи, например получателю нужно аутентифицировать посланника.
        Тогда не представляю как эта схема может помочь?

        1. Дмитрий Амиров Автор

          То есть сообщение шифруется публичным ключем, а расшифровывается приватным и ни как иначе.

          Не совсем верно. Сообщение шифруется одним ключом, а расшифровывается другим. Т.е. вполне можно зашифровать приватным, а расшифровать публичным.

          Давайте рассмотрим на примере. Вы хотите мне прислать сообщение, я хочу убедится что прислали его мне именно вы. Поэтапно:
          1) Вы шифруете сообщение закрытым ключом
          2) Присылаете его мне
          3) Я обращаюсь к вам, и получаю от вас Ваш публичный ключ
          4) Полученное сообщение расшифровываю Вашим публичным ключом
          5) Если сообщение расшифровалось — значит послали его именно вы

          Никто другой не сможет послать это сообщение, представившись вами, потому что приватный ключ есть только у вас.

          1. Beshot

            Ок, но как быть если требуется скрыть от любопытных глаз сообщение?

  • Аня

    Добрый день! Статья понравилась, но остались вопросы (даже нашлась пара похожих в комментариях, но без ответов).
    Если во второй части статьи всеже перейти к аналогии с Алисой и Бобом, в частности к числам А, В, а, в, Р и к полученному в примере числу 9, что из них будет закрытым ключом, а что открытым? Заранее спасибо за ответ!

    1. Аня

      Не понятно, отправился мой комментарий или нет:(

    2. Дмитрий Амиров Автор

      Правильнее будет сказать что в процессе обмена данными Алиса и Боб получают общий ключ 9 , который в дальнейшем могут использовать для шифрования своих сообщений. По сути в статье я описывал не само ассиметричное шифрование как таковое, а протокол обмена ключами, который дал толчок к развитию ассиметричного шифрования.
      Алгоритм генерации пары приватный/публичный ключ на самом деле немного сложнее, хотя и похож на выше изложенный алгоритм, но все таки наверное стоит отдельной статьи. В комментарии я не распишу тут сходу, ибо могу много чего напутать.

  • Григорий
  • В этот день свой профессиональный праздник отмечает Криптографическая служба России.

    «Криптография» с древнегреческого означает «тайнопись».

    Как раньше прятали слова?

    Своеобразный метод передачи тайного письма существовал во времена правления династии египетских фараонов:

    выбирали раба. Брили его голову наголо и наносили на неё текст сообщения водостойкой растительной краской. Когда волосы отрастали, его отправляли к адресату.

    Шифр — это какая-либо система преобразования текста с секретом (ключом) для обеспечения секретности передаваемой информации.

    АиФ.ru сделал подборку интересных фактов из истории шифрования.

    Все тайнописи имеют системы

    1. Акростих — осмысленный текст (слово, словосочетание или предложение), сложенный из начальных букв каждой строки стихотворения.

    Вот, например, стихотворение-загадка с разгадкой в первых буквах:

    Д овольно именем известна я своим;
    Р авно клянётся плут и непорочный им,
    У техой в бедствиях всего бываю боле,
    Ж изнь сладостней при мне и в самой лучшей доле.
    Б лаженству чистых душ могу служить одна,
    А меж злодеями — не быть я создана.
    Юрий Нелединский-Мелецкий
    Сергей Есенин, Анна Ахматова, Валентин Загорянский часто пользовались акростихами.

    2. Литорея — род шифрованного письма, употреблявшегося в древнерусской рукописной литературе. Бывает простая и мудрая. Простую называют тарабарской грамотой, она заключается в следующем: поставив согласные буквы в два ряда в порядке:

    употребляют в письме верхние буквы вместо нижних и наоборот, причём гласные остаются без перемены; так, например, токепот = котёнок и т. п.

    Мудрая литорея предполагает более сложные правила подстановки.

    3. «ROT1» — шифр для детишек?

    Возможно, в детстве вы тоже его использовали. Ключ к шифру очень прост: каждая буква алфавита заменяется на последующую букву.

    А заменяется на Б, Б заменяется на В и так далее. «ROT1» буквально означает «вращать на 1 букву вперёд по алфавиту». Фраза «Я люблю борщ» превратится в секретную фразу «А мявмя впсъ» . Этот шифр предназначен для развлечения, его легко понять и расшифровать, даже если ключ используется в обратном направлении.

    4. От перестановки слагаемых...

    Во время Первой мировой войны конфиденциальные сообщения отправляли с помощью так называемых перестановочных шрифтов. В них буквы переставляются с использованием некоторых заданных правил или ключей.

    Например, слова могут быть записаны в обратном направлении, так что фраза «мама мыла раму» превращается во фразу «амам алым умар» . Другой перестановочный ключ заключается в перестановке каждой пары букв, так что предыдущее сообщение становится «ам ам ым ал ар ум» .

    Возможно, покажется, что сложные правила перестановки могут сделать эти шифры очень трудными. Однако многие зашифрованные сообщения могут быть расшифрованы с использованием анаграмм или современных компьютерных алгоритмов.

    5. Сдвижной шифр Цезаря

    Он состоит из 33 различных шифров, по одному на каждую букву алфавита (количество шифров меняется в зависимости от алфавита используемого языка). Человек должен был знать, какой шифр Юлия Цезаря использовать для того, чтобы расшифровать сообщение. Например, если используется шифр Ё, то А становится Ё, Б становится Ж, В становится З и так далее по алфавиту. Если используется шифр Ю, то А становится Ю, Б становится Я, В становится А и так далее. Данный алгоритм является основой для многих более сложных шифров, но сам по себе не обеспечивает надёжную защиту тайны сообщений, поскольку проверка 33-х различных ключей шифра займёт относительно небольшое время.

    Никто не смог. Попробуйте вы

    Зашифрованные публичные послания дразнят нас своей интригой. Некоторые из них до сих пор остаются неразгаданными. Вот они:

    Криптос . Скульптура, созданная художником Джимом Санборном, которая расположена перед штаб-квартирой Центрального разведывательного управления в Лэнгли, Вирджиния. Скульптура содержит в себе четыре шифровки, вскрыть код четвёртой не удаётся до сих пор. В 2010 году было раскрыто, что символы 64-69 NYPVTT в четвёртой части означают слово БЕРЛИН.

    Теперь, когда вы прочитали статью, то наверняка сможете разгадать три простых шифра.

    Свои варианты оставляйте в комментариях к этой статье. Ответ появится в 13:00 13 мая 2014 года.

    Ответ:

    1) Блюдечко

    2) Слоненку все надоело

    3) Хорошая погода

    Время жизни информации

    § При перехвате зашифрованного сообщения для некоторых типов алгоритмов шифрования можно подсчитать частоту появления определённых символов и сопоставить их с вероятностями появления определённых символов или их комбинаций (биграмм, триграмм и т. д.). Это в свою очередь может привести к однозначному дешифрованию (раскрытию) отдельных участков зашифрованного сообщения.

    § Наличие вероятных слов. Это слова или выражения, появление которых можно ожидать в перехваченном сообщении (например, для английского текста – «and», «the», «аrе» и др.).

    § Существуют методы, позволяющие сделать зашифрованные сообщения практически непригодными для статистического анализа и анализа посредством вероятных слов. К ним относятся следующие.

    § Рассеивание. Влияние одного символа открытого сообщения распространяется на множество символов зашифрованного сообщения. Этот метод хотя и приводит к увеличению количества ошибок при расшифровке, однако с его помощью удаётся скрыть статистическую структуру открытого сообщения.

    § Запутывание. Развитие принципа рассеивания. В нём влияние одного символа ключа распространяется на множество символов зашифрованного

    сообщения.

    § Перемешивание. Основывается на использовании особых преобразований исходного сообщения, в результате чего вероятные последовательности как бы рассеиваются по всему пространству возможных открытых сообщений. Развитием этого метода явилось применение составных алгоритмов шифрования, состоящих из последовательности простых операций перестановки и подстановки.

    Примерами изложенных методов служат стандарты шифрования DES и ГОСТ 28147-89.

    Существует два основных типа алгоритмов шифрования:

    § алгоритмы симметричного шифрования;

    § алгоритмы асимметричного шифрования.

    Симметричное шифрование .

    Алгоритмы симметричного шифрования основаны на том, что и для шифрования сообщения, и для его расшифровки используется один и тот же (общий) ключ (рис. 1).

    Одно из главных преимуществ симметричных методов – быстрота шифрования и расшифровки, а главный недостаток – необходимость передачи секретного значения ключа получателю.



    Неизбежно возникаем проблема: как передать ключ и при этом не позволить злоумышленникам перехватить его.

    Преимущества криптографии с симметричными ключами:

    · Высокая производительность.

    · Высокая стойкость. При прочих равных условиях стойкость криптографического алгоритма определяется длиной ключа. При длине ключа 256 бит необходимо произвести 10 77 переборов для его определения.

    Недостатки криптографии с симметричными ключами.

    § Проблема распределения ключей. Так как для шифрования и расшифровки используется один и тот же ключ, требуются очень надёжные механизмы для их распределения (передачи).

    § Масштабируемость. Так как и отправитель, и получатель используют единый ключ, количество необходимых ключей возрастает в геометрической прогрессии в зависимости от числа участников коммуникации. Для обмена сообщениями между 10 пользователями необходимо иметь 45 ключей, а для 1000 пользователей – уже 499 500.

    § Ограниченное использование. Криптография с секретным ключом используется для шифрования данных и ограничения доступа к ним, с ее помощью невозможно обеспечить такие свойства информации, как аутентичность и

    неотрекаемостъ.

    Асимметричное шифрование

    Асимметричные алгоритмы шифрования (криптография с открытыми ключами) предполагают использование двух ключей. Первый ключ – открытый. Он распространяется совершенно свободно, без всяких мер предосторожности. Второй, закрытый ключ, держится в секрете.

    Любое сообщение, зашифрованное с использованием одного из этих ключей, может быть расшифровано только с использованием парного ему ключа. Как правило, отправитель сообщения пользуется открытым ключом получателя, а получатель – своим личным закрытым ключом.

    В асимметричной схеме передачи шифрованных сообщений оба ключа являются производными от единого порождающего мастер-ключа. Когда два ключа сформированы на основе одного, они зависимы в математическом смысле, однако в силу вычислительной сложности ни один из них не может быть вычислен на основании другого. После того, как сформированы оба ключа (и открытый, и личный, закрытый), мастер-ключ уничтожается, и таким образом пресекается любая попытка восстановить в дальнейшем значения производных от него ключей.

    Асимметричная схема идеально сочетается с использованием общедоступных сетей передачи сообщений (например, Интернет). Любой абонент сети может совершенно свободно переслать открытый ключ своему партнеру по переговорам, а последний, в роли отправителя сообщения, будет использовать этот ключ при шифровании отсылаемого сообщения (рис. 2). Это сообщение сможет расшифровать своим личным ключом только получатель сообщения, который отсылал раньше соответствующий открытый ключ. Злоумышленник, перехвативший такой ключ, сможет воспользоваться им только с единственной целью – передавать законному владельцу ключа какие-нибудь зашифрованные сообщения.

    Недостатком асимметричной схемы являются большие затраты времени на шифрование и расшифровку, что не разрешает их использование для оперативного обмена пространными сообщениями в режиме диалога. Реализация методов асимметричного шифрования требует больших затрат процессорного времени. Поэтому в чистом виде криптография с открытыми ключами в мировой практике обычно не применяется.



    Рис. 2. Асимметричная схема шифрования

    Невозможно сравнивать, что лучше, симметричные или асимметричные алгоритмы шифрования. Отмечено, что симметричные криптографические алгоритмы имеют меньшую длину ключа и работают быстрее.

    Криптография с секретным и криптография с открытыми ключами предназначены для решения абсолютно разных проблем. Симметричные алгоритмы хорошо подходят для шифрования данных, асимметричные реализуются в большинстве сетевых криптографических протоколов.

    Наиболее широкое распространение получили методы, сочетающие достоинства обеих схем. Принцип работы комбинированных схем заключается в том, что для очередного сеанса обмена сообщениями генерируется симметричный (сеансовый) ключ. Затем этот ключ зашифровывается и пересылается с помощью асимметричной схемы. После завершения текущего сеанса переговоров симметричный ключ уничтожается.

    Количество людей, которые активно пользуются интернетом растет, как на дрожжах: на работе для решения корпоративных целей и администрирования, дома, в общественных местах. Распространение получают Wi-Fi сети и оборудование, позволяющее беспрепятственно получать доступ к интернету.

    Вай фай сеть обладает зашитой в виде пароля, не зная который, подключиться к конкретной сети будет практически невозможно, кроме общественных сетей (кафе, рестораны, торговые центры, точки доступа на улицах) . «Практически» не стоит понимать в буквальном смысле: умельцев, способных «вскрыть» сеть и получить доступ не только к ресурсу роутера, но и к передаваемым внутри конкретной сети данным, достаточно.

    Но в этом вступительном слове мы поговорили о подключении к wi-fi — аутентификации пользователя (клиента), когда клиентское устройство и точка доступа обнаруживают друг друга и подтверждают, что могут общаться между собой.

    Варианты аутентификации :

    • Open - открытая сеть, в которой все подключаемые устройства авторизованы сразу
    • Shared - подлинность подключаемого устройства должна быть проверена ключом/паролем
    • EAP - подлинность подключаемого устройства должна быть проверена по протоколу EAP внешним сервером

    Шифрование — это алгоритм скремблирования (scramble - шифровать, перемешивать) передаваемых данных, изменение и генерация ключа шифрования

    Для оборудования wifi были разработаны различные типы шифрования, дающие возможность защищать сеть от взлома, а данные от общего доступа.

    На сегодняшний день выделяются несколько вариантов шифрования. Рассмотрим каждый из них подробнее.

    Выделяются и являются самыми распространенными следующие типы:

    • OPEN;
    • WPA, WPA2;

    Первый тип, именуемый не иначе, как OPEN, все требуемую для познания информацию содержит в названии. Зашифровать данные или защитить сетевое оборудование такой режим не позволит, потому как точка доступа будет являться при условии выбора такого типа постоянно открытой и доступной для всех устройств, которыми она будет обнаружена. Минусы и уязвимости такого типа «шифрования» очевидны.

    Если сеть открыта, это не значит, что любой может с ней работать. Чтобы пользоваться такой сетью и передавать в ней данные, нужно совпадение используемого метода шифрования. И еще одно условие пользования такой сетью отсутствие MAC-фильтра, который определяет MAC-адреса пользователей, для того, что бы распознать каким устройствам запрещено или разрешено пользоваться данной сетью

    WEP

    Второй тип, он же WEP, уходит корнями в 90-е годы прошлого века, являясь родоначальником всех последующих типов шифрования. Wep шифрование сегодня – слабейший из всех существующих вариантов организации защиты. Большинство современных роутеров, создаваемых специалистами и учитывающих интересы конфиденциальности пользователей, не поддерживают шифрование wep.

    Среди минусов, вопреки факту наличия хоть какой-то защиты (в сравнении с OPEN), выделяется ненадежность: она обусловлена кратковременной защитой, которая активируется на определенные интервалы времени. По истечении этого промежутка, пароль к вашей сети можно будет легко подобрать, а ключ wep будет взломан за время до 1 минуты. Это обусловлено битностью wep ключа, которая составляет в зависимости от характеристик сетевого оборудования от 40 до 100 бит.

    Уязвимость wep ключа заключается в факте передачи частей пароля в совокупности с пакетами данных. Перехват пакетов для специалиста – хакера или взломщика – задача, легкая для осуществления. Важно понимать и тот факт, что современные программные средства способны перехватывать пакеты данных и созданы специально для этого.

    Таким образом, шифрование wep – самый ненадежный способ защиты вашей сети и сетевого оборудования.

    WPA, WPA2

    Такие разновидности – самые современные и совершенными с точки зрения организации зашиты на данный момент. Аналогов им не существует. Возможность задать любую удобную пользователю длину и цифробуквенную комбинацию wpa ключа довольно затрудняет жизнь желающим несанкционированно воспользоваться конкретной сетью или перехватить данные этой сети.

    Данные стандарты поддерживают различные алгоритмы шифрования, которые могут передаваться после взаимодействия протоколов TKIP и AES. Тип шифрования aes является более совершенным протоколом, чем tkip, и большинством современных роутеров поддерживается и активно используется.

    Шифрование wpa или wpa2 – предпочтительный тип как для домашнего использования, так и для корпоративного. Последний дает возможность применения двух режимов аутентификации: проверка паролей для доступа определенных пользователей к общей сети осуществляется, в зависимости от заданных настроек, по режиму PSK или Enterprise.

    PSK предполагает доступ к сетевому оборудованию и ресурсам интернета при использовании единого пароля, который требуется ввести при подключении к роутеру. Это предпочтительный вариант для домашней сети, подключение которой осуществляется в рамках небольших площадей определенными устройствами, например: мобильным, персональным компьютером и ноутбуком.

    Для компаний, имеющих солидные штаты сотрудников, PSK является недостаточно удобным режимом аутентификации, потому был разработан второй режим – Enterprise. Его использование дает возможность применения множества ключей, который будут храниться на особом выделенном сервере.

    WPS

    По-настоящему современная и , делает возможным подключение к беспроводной сети при помощи одного нажатия на кнопку. Задумываться о паролях или ключах бессмысленно, но стоит выделить и учитывать ряд серьезных недостатков, касающихся допуска к сетям с WPS.

    Подключение посредством такой технологии осуществляется при использовании ключа, включающего в себя 8 символов. Уязвимость типа шифрования заключается в следующем: он обладает серьезной ошибкой, которая взломщикам или хакерам позволяет получить доступ к сети, если им доступны хотя бы 4 цифры из восьмизначной комбинации. Количество попыток подбора пароля при этом составляет порядка нескольких тысяч, однако для современных программных средств это число – смешное. Если измерять процесс форсирования WPS во времени, то процесс займет не более суток.

    Стоит отметить и тот факт, что данная уязвимость находиться на стадии совершенствования и поддается исправлению, потому в последующих моделях оборудования с режимом WPS стали внедряться ограничения на количество попыток входа, что существенно затруднило задачу несанкционированного доступа для заинтересованных в этом лиц.

    И тем не менее, чтобы повысить общий уровень безопасности, опытные пользователи рекомендуют принципиально отказываться от рассмотренной технологии.

    Подводя итоги

    Самой современной и по-настоящему надежной методикой организации защиты сети и данных, передаваемых внутри нее, является WPA или ее аналог WPA2.

    Первый вариант предпочтителен для домашнего использования определенным числом устройств и пользователей.

    Второй, обладающий функцией аутентификации по двум режимам, больше подходит для крупных компаний. Применение его оправдано тем, что при увольнении сотрудников нет необходимости в смене паролей и ключей, потому как определенное количество динамических паролей хранятся на специально выделенном сервере, доступ к которому имеют лишь текущие сотрудники компании.

    Следует отметить, что большинство продвинутых пользователей отдают предпочтение WPA2 даже для домашнего использования. С точки зрения организации защиты оборудования и данных, такой метод шифрования является самым совершенным из существующих на сегодняшний день.

    Что касается набирающего популярность WPS, то отказаться от него – значит в определенной мере обезопасить сетевое оборудование и информационные данные, передаваемые с его помощью. Пока технология не развита достаточно и не обладает всеми преимуществами, например, WPA2, от ее применения рекомендуется воздержаться вопреки кажущейся простоте применения и удобству. Ведь безопасность сети и передаваемых внутри нее информационных массивов – приоритет для большинства пользователей.