Шифрование tkip или aes – Шифрование aes или tkip. Тип Шифрования WiFi — Какой Выбрать, WEP или WPA2-PSK Personal-Enterprise Для Защиты Безопасности Сети

Содержание

CompHome | Шифрование AES или TKIP

AES иTKIP — это два альтернативных типа шифрования, которые применяются в режимах безопасности WPA и WPA2 в сетях Wi-Fi.

Advanced Encryption Standard (AES), также известный как Rijndael— симметричный алгоритм блочного шифрования (размер блока 128 бит, ключ 128/192/256 бит), принятый в качестве стандарта шифрования правительством США по результатам конкурса AES. Этот алгоритм хорошо проанализирован и сейчас широко используется. Национальный институт стандартов и технологий США (англ. National Institute of Standards and Technology, NIST) опубликовал спецификацию AES 26 ноября 2001 года после пятилетнего периода, в ходе которого были созданы и оценены 15 кандидатур.

26 мая 2002 года AES был объявлен стандартом шифрования.

В свойствах WiFi соединения можно увидеть такую интересную картину — есть про TKIP и нет про AES.

На самом деле вот это — CCMP.

CCMP (Counter Mode with Cipher Block Chaining Message Authentication Code Protocol — протокол блочного шифрования). CCMP, являясь частью стандарта 802.11i, использует алгоритм Advanced Encryption Standard (AES).

CCMP — это протокол шифрования, а AES  -алгоритм шифрования. 🙂

Temporal Key Integrity Protocol (TKIP) — протокол целостности временного ключа в протоколе защищённого беспроводного доступа Wi-Fi Protected Access.

Был предложен Wi-Fi Alliance как временная мера для замены уязвимого протокола WEP в существующем беспроводном оборудовании путём обновления программного обеспечения. Хотя для шифрования используется тот же самый алгоритм RC4, что и в WEP, разрядность вектора инициализации увеличена вдвое (до 48 бит), а также реализованы правила изменения последовательности битов вектора инициализации.

На настоящий момент протокол TKIP устарел, поддерживаемая максимальная скорость передачи данных не более 54 Мбит/с. Т.е. даже при использовании режимов 802.11n / 802.11ac — скорость будет на уровне 802.11g при выборе TKIP.

Какой параметр выбрать в роутере — AES или TKIP ?

Это очень просто.

Если это Ваш домашний роутер и у Вас есть только современные устройства — устанавливайте AES. Если роутер публичный (например, в кафе) и там могут быть посетители с самыми разными устройствами — устанавливайте связку AES /TKIP,  это позволит:

  • новым устройствам подключаться через AES
  • старым устройствам подключаться через TKIP

 

Отдельно протокол шифрования TKIP не нужен, помним про максимальную скорость не более 54 Мбит/с.

Если в роутере не предусмотрена связка  AES /TKIP — то, наверное, разработчики что-то не додумали и это не очень хороший роутер.

Еще почитать:

Wi-Fi

Wi-Fi  — технология беспроводной локальной сети с устройствами на основе стандартов IEEE 802.11 .



Логотип Wi-Fi является торговой маркой Wi-Fi Alliance . Под аббревиатурой Wi-Fi (от английского словосочетания Wireless Fidelity , которое можно дословно…

Параметры сети Wi-Fi не соответствуют

Windows 7 пишет так: «Параметры сети WiFi, сохраненные на этом компьютере, не соответствуют требованиям этой сети».



Главное — абсолютно непонятно, что это и почему.

Основная причина — изменение настроек роутера по сравнению с предыдущем подключением….

Подключаем защищенный Wi-Fi без пароля (кнопка WPS)

WPS — это сокращение от  Wi-Fi Protected Setup . Специальная технология для упрощения подключения устройств к роутеру через Wi-Fi.



У данной технологии есть еще и второе название от компании TP-link -> QSS ( Quick Security Setup ).

Да:

сое…

Реальная скорость подключения WiFi

Что влияет на реальную скорость подключения WiFi?



Самая простая загадка — скорость подключения 54 Мбит/с. Тут два основных варианта:

или на устройстве урезан диапазон 802.11n (заблокирован)
или используется протокол шифрования TKIP

Ширина канала WiFi 40МГц или 20 МГц

Какую ширину канала WiFi выбрать?

Картинка из настроек роутера обычно такая.



Что лучше — ширина канала 20 МГц или ширина канала 40 МГц? И зачем такой выбор пользователю?

Конечно — лучше 40 МГц, на такой ширине канала и 802.11n и 802.11ac будут раб…

Шифрование aes или tkip. Тип Шифрования WiFi — Какой Выбрать, WEP или WPA2-PSK Personal-Enterprise Для Защиты Безопасности Сети

WPA шифрование подразумевает использование защищенной сети Wi-Fi. Вообще, WPA расшифровывается как Wi-Fi Protected Access, то есть защищенный доступ к Wi-Fi.

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

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

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

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

Итак, WPA – это протокол, технология, программа, которая содержит в себе набор сертификатов, используемых при передаче сигнала Wi-Fi.

Если проще, эта технология позволяет использовать различные методы аутентификации для защиты Wi-Fi сети.

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

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

Для справки: Аутентификация – это средство защиты, которое позволяет установить подлинность лица и его право на доступ к сети, при помощи сопоставления сообщенных им и ожидаемых данных.

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

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

Рис. 1. Сканер отпечатка пальца на смартфоне

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

В WPA есть собственный набор таких способов. О них мы поговорим далее, а перед этим уточним несколько важных моментов.

Что нужно знать о WPA?

  1. Данную технологию могут использовать не все устройства, а только те, которые поддерживают ее на программном уровне. То есть если производитель заложил в устройство функцию поддержки WPA, значит, его можно использовать.
  2. WPA является наследием WEP, другой технологии, в которой не было аутентификации как таковой.
  3. WPA использует специальные ключи, которые рассылаются всем устройствам, которые будут иметь право подключаться к сети. А дальше все просто:
  • сигнал попадает на новое устройство и запрашивает у него ключ;
  • если устройство дает ключ, то подключается к сети;
  • а если не дает, сигнал об этом отправляется на центральное устройство и подключение не происходит.

Если Вы когда-то работали с Cisco Pocket Tracer (симулятор построения сетей от этой фирмы), то принцип работы данной технологии Вы сможете понять, если посмотрите на рисунок 2.

Предупреждение! В принципе, если Вы никогда не работали с Cisco Pocket Tracer, не заморачивайтесь. И без этой схемы Вам все будет понятно.

Там есть LAP – прибор, который осуществляет удаленное управление и передает сигнал клиенту, то есть компьютеру, который использует сигнал Wi-Fi.

А также на схеме есть WLC – контроллер беспроводной локальной сети. Справа расположен сервер аутентификации.

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

Клиент при попытке подключиться к сети должен передать на LAP ключ, который он знает. Этот ключ попадает на сервер аутентификации и сравнивается с нужным ключом.

Если ключи совпадают, сигнал свободно распространяется к клиенту.

Рис. 2. Примерная схема WPA в Cisco Pocket Tracer

Составляющие WPA

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

В WPA входит сразу несколько технологий, которые и помогают генерировать и передавать эти самые ключи.

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

Рис. 3. Формула с составляющими WPA

А теперь рассмотрим каждую из этих составляющих по отдельности:

  • 1X – это стандарт, который используется для генерирования того самого уникального ключа, с помощью которого в дальнейшем и происходит аутентификация.
  • EAP – это так называемый расширяемый протокол аутентификации. Он отвечает за формат сообщений, с помощью которых передаются ключи.
  • TKIP – протокол, который позволил расширить размер ключа до 128 байт (раньше, в WEP, он был лишь 40 байт).
  • MIC – механизм проверки сообщений (в частности, они проверяются на предмет целостности). Если сообщения не отвечают критериям, они отправляются обратно.

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

WPA и WPA2 PSK – что это такое, какой ключ шифрования лучше

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

Варианты защиты

Смотрите также видео с инструкциями по настройке безопасности сети WI-FI:

Чтобы быть уверенным в безопасности нашего WI-FI, нужно придумать логин и пароль и определиться с технологией защиты. Из вариантов нам предлагаются WEP, WPA и WPA2.

Одной из первых безопасных технологий была WEP. Она проверяла ключ на целостность при каждом соединении по Wi-Fi и была стандартом IEEE802.11i. Сейчас эта технология считается устаревшей и недостаточно безопасной.

WPA

Тип безопасности для WI-FI: что такое WPA, WPA2 PSK, шифрование

Тип безопасности для WI-FI: что такое WPA, WPA2 PSK, шифрование

Защита WPA выполняет проверку ключа доступа при использовании протокола 802.1Х, таким образом, перебирая все варианты. Это более надежный и современный тип защиты. Полное название – Wi-Fi Protected Access – защищенный доступ Wi-Fi.

Делится на пару видов:

  • WPA-Personal (Personal Key) или сокращенно WPA PSK.
  • WPA-Enterprise.

И наконец, что такое WPA2 PSK? Спросите, какая разница, чем отличается этот вариант от WPA? Она поддерживает шифрование и считается лучшим способом для защиты сетей беспроводного доступа. Еще отличие в том, что это самая современная, свежая версия.

Давайте подробнее остановимся на видах WPA2:

  • WPA2 PSK или персональный (Personal) ключ – это вариант аутентификации. Нам просто нужно придумать пароль, который будет ключом, и пользоваться им во время входа в сеть WI-Fi. Этот пароль будет одним для всех подключаемых девайсов и будет храниться в настройках роутера.

Тип безопасности для WI-FI: что такое WPA, WPA2 PSK, шифрование

Тип безопасности для WI-FI: что такое WPA, WPA2 PSK, шифрование

  • WPA2 Enterprise – усложненный способ аутентификации, подойдет для использования на работе. Он имеет повышенный уровень защиты и использует сервер для выдачи паролей.

Часто по умолчанию в настройках роутера через компьютер можно увидеть общий режим WPA/WPA2. Он используется для избежания проблем с подключением устаревших моделей телефонов и планшетов пользователей.

Шифрование беспроводной сети

Тип безопасности для WI-FI: что такое WPA, WPA2 PSK, шифрование

Тип безопасности для WI-FI: что такое WPA, WPA2 PSK, шифрование

Коротко рассмотрим и алгоритмы шифрования. Их два вида – TKIP и AES. Первый алгоритм поддерживают только устаревшие устройства, поэтому при настройке доступа лучше установить режим «Авто». Если мы выбрали режим WPA2 Personal, то по умолчанию будет предложено только шифрование по AES.

WPA2 Enterprise

Пара слов о данном виде WPA Enterprise. Для использования необходимо иметь в нашей сети RADIUS-сервер. Для любого девайса выдается свой ключ шифрования, который уникален и создается прямо во время аутентификации на сервере.

Как же тогда подключается устройство к сети Wi-Fi? Сначала происходит обмен данными. Затем информация доходит до RADIUS-сервера, где выполняется аутентификация устройства: RADIUS-сервер смотрит, есть ли в его базе такое устройство, проверяет вводимые данные login и password, затем дает разрешение на подключение или запрещает соединение. После положительной проверки беспроводная точка открывает доступ в сеть нашему устройству.

Пароль для сети

После того, как мы выбрали режимы безопасности, нам необходимо задуматься о пароле. Каким он должен быть?

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

Тип безопасности для WI-FI: что такое WPA, WPA2 PSK, шифрование

Тип безопасности для WI-FI: что такое WPA, WPA2 PSK, шифрование

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

Если статья была полезной, ставьте звездочки! Задавайте вопросы и делитесь опытом по теме! Всем спасибо и до новых встреч на WiFi Гид!

что использовать – WPA2-AES, WPA2-TKIP или и то и другое

Протокол WPA2
определяется стандартом IEEE 802.11i, созданным в 2004 году, с целью заменить . В нём реализовано CCMP
и шифрование AES
, за счет чего WPA2
стал более защищённым, чем свой предшественник. С 2006 года поддержка WPA2
является обязательным условием для всех сертифицированных устройств.

Разница между WPA и WPA2

Поиск разницы между и WPA2 для большинства пользователей актуальности не имеет, так как вся защита беспроводной сети сводится к выбору более-менее сложного пароля на доступ. На сегодняшний день ситуация такова, что все устройства, работающие в сетях Wi-Fi, обязаны поддерживать WPA2, так что выбор WPA обусловлен может быть только нестандартными ситуациями. К примеру, операционные системы старше Windows XP SP3 не поддерживают работу с WPA2 без применения патчей, так что машины и устройства, управляемые такими системами, требуют внимания администратора сети. Даже некоторые современные смартфоны могут не поддерживать новый протокол шифрования, преимущественно это касается внебрендовых азиатских гаджетов. С другой стороны, некоторые версии Windows старше XP не поддерживают работу с WPA2 на уровне объектов групповой политики, поэтому требуют в этом случае более тонкой настройки сетевых подключений.

Техническое отличие WPA от WPA2 состоит в технологии шифрования, в частности, в используемых протоколах. В WPA используется протокол TKIP, в WPA2 — протокол AES. На практике это означает, что более современный WPA2 обеспечивает более высокую степень защиты сети. К примеру, протокол TKIP позволяет создавать ключ аутентификации размером до 128 бит, AES — до 256 бит.

Отличие WPA2 от WPA заключается в следующем:

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

Аутентификация в WPA2

Как WPA, так и WPA2 работают в двух режимах аутентификации: персональном (Personal)
и корпоративном (Enterprise)
. В режиме WPA2-Personal из введенной открытым текстом парольной фразы генерируется 256-разрядный ключ, иногда именуемый предварительно распределяемым ключом . Ключ PSK, а также идентификатор и длина последнего вместе образуют математический базис для формирования главного парного ключа PMK (Pairwise Master Key)
, который используется для инициализации четырехстороннего квитирования связи и генерации временного парного или сеансового ключа PTK (Pairwise Transient Key)
, для взаимодействия беспроводного пользовательского устройства с точкой доступа. Как и статическому , протоколу WPA2-Personal присуще наличие проблем распределения и поддержки ключей, что делает его более подходящим для применения в небольших офисах, нежели на предприятиях.

Однако в протоколе WPA2-Enterprise успешно решаемы проблемы, касающиеся распределения статических ключей и управления ими, а его интеграция с большинством корпоративных сервисов аутентификации обеспечивает контроль доступа на основе учетных записей. Для работы в этом режиме требуются такие регистрационные данные, как имя и пароль пользователя, сертификат безопасности или одноразовый пароль; аутентификация же осуществляется между рабочей станцией и центральным сервером аутентификации. Точка доступа или беспроводной контроллер проводят мониторинг соединения и направляют аутентификационные пакеты на соответствующий сервер аутентификации, как правило, это . Базой для режима WPA2-Enterprise служит стандарт 802.1X, поддерживающий основанную на контроле портов аутентификацию пользователей и машин, пригодную как для проводных коммутаторов, так и для беспроводных точек доступа.

Шифрование WPA2

В основе стандарта WPA2 лежит метод шифрования AES, пришедший на смену стандартам DES и 3DES в качестве отраслевого стандарта де-факто. Требующий большого объема вычислений, стандарт AES нуждается в аппаратной поддержке, которая не всегда имеется в старом оборудовании БЛВС.

Для аутентификации и обеспечения целостности данных WPA2 использует протокол CBC-MAC (Cipher Block Chaining Message Authentication Code), а для шифрования данных и контрольной суммы MIC — режим счетчика (Counter Mode — CTR). Код целостности сообщения (MIC) протокола WPA2 представляет собой не что иное, как контрольную сумму и в отличие от и WPA обеспечивает целостность данных для неизменных полей заголовка 802.11. Это предотвращает атаки типа packet replay с целью расшифровки пакетов или компрометации криптографической информации.

Для расчета MIC используется 128-разрядный вектор инициализации (Initialization Vector — IV), для шифрования IV — метод AES и временный ключ, а в итоге получается 128-разрядный результат. Далее над этим результатом и следующими 128 бит данных выполняется операция “исключающее ИЛИ”. Результат ее шифруется посредством AES и TK, а затем над последним результатом и следующими 128 бит данных снова выполняется операция “исключающее ИЛИ”. Процедура повторяется до тех пор, пока не будет исчерпана вся по

Тип безопасности и шифрования беспроводной сети

Содержание статьи

Тип безопасности и шифрования беспроводной сети. Какой выбрать?

Чтобы защитить свою Wi-Fi сеть и установить пароль, необходимо обязательно выбрать тип безопасности беспроводной сети и метод шифрования. И на данном этапе у многих возникает вопрос: а какой выбрать? WEP, WPA, или WPA2? Personal или Enterprise? AES, или TKIP? Какие настройки безопасности лучше всего защитят Wi-Fi сеть? На все эти вопросы я постараюсь ответить в рамках этой статьи. Рассмотрим все возможные методы аутентификации и шифрования. Выясним, какие параметры безопасности Wi-Fi сети лучше установить в настройках маршрутизатора.

Обратите внимание, что тип безопасности, или аутентификации, сетевая аутентификация, защита, метод проверки подлинности – это все одно и то же.

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

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

Защита Wi-Fi сети: WEP, WPA, WPA2

Есть три варианта защиты. Разумеется, не считая «Open» (Нет защиты) .

  • WEP (Wired Equivalent Privacy) – устаревший и небезопасный метод проверки подлинности. Это первый и не очень удачный метод защиты. Злоумышленники без проблем получают доступ к беспроводным сетям, которые защищены с помощью WEP. Не нужно устанавливать этот режим в настройках своего роутера, хоть он там и присутствует (не всегда) .
  • WPA (Wi-Fi Protected Access) – надежный и современный тип безопасности. Максимальная совместимость со всеми устройствами и операционными системами.
  • WPA2 – новая, доработанная и более надежная версия WPA. Есть поддержка шифрования AES CCMP. На данный момент, это лучший способ защиты Wi-Fi сети. Именно его я рекомендую использовать.

WPA/WPA2 может быть двух видов:

  • WPA/WPA2 — Personal (PSK) – это обычный способ аутентификации. Когда нужно задать только пароль (ключ) и потом использовать его для подключения к Wi-Fi сети. Используется один пароль для всех устройств. Сам пароль хранится на устройствах. Где его при необходимости можно посмотреть, или сменить. Рекомендуется использовать именно этот вариант.
  • WPA/WPA2 — Enterprise – более сложный метод, который используется в основном для защиты беспроводных сетей в офисах и разных заведениях. Позволяет обеспечить более высокий уровень защиты. Используется только в том случае, когда для авторизации устройств установлен RADIUS-сервер (который выдает пароли) .

Думаю, со способом аутентификации мы разобрались. Лучшие всего использовать WPA2 — Personal (PSK). Для лучшей совместимости, чтобы не было проблем с подключением старых устройств, можно установить смешанный режим WPA/WPA2. На многих маршрутизаторах этот способ установлен по умолчанию. Или помечен как «Рекомендуется».

Шифрование беспроводной сети

Есть два способа TKIP и AES.

Рекомендуется использовать AES. Если у вас в сети есть старые устройства, которые не поддерживают шифрование AES (а только TKIP) и будут проблемы с их подключением к беспроводной сети, то установите «Авто». Тип шифрования TKIP не поддерживается в режиме 802.11n.

В любом случае, если вы устанавливаете строго WPA2 — Personal (рекомендуется) , то будет доступно только шифрование по AES.

Какую защиту ставить на Wi-Fi роутере?

Используйте WPA2 — Personal с шифрованием AES. На сегодняшний день, это лучший и самый безопасный способ. Вот так настройки защиты беспроводной сети выглядит на маршрутизаторах ASUS:

А вот так эти настройки безопасности выглядят на роутерах от TP-Link (со старой прошивкой) .

Более подробную инструкцию для TP-Link можете посмотреть здесь.

Инструкции для других маршрутизаторов:

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

Не редко замечаю, что после смены пароля, или других параметров защиты, устройства не хотят подключаться к сети. На компьютерах может быть ошибка «Параметры сети, сохраненные на этом компьютере, не соответствуют требованиям этой сети». Попробуйте удалить (забыть) сеть на устройстве и подключится заново. Как это сделать на Windows 7, я писал здесь. А в Windows 10 нужно забыть сеть.

Пароль (ключ) WPA PSK

Какой бы тип безопасности и метод шифрования вы не выбрали, необходимо установить пароль. Он же ключ WPA, Wireless Password, ключ безопасности сети Wi-Fi и т. д.

Длина пароля от 8 до 32 символов. Можно использовать буквы латинского алфавита и цифры. Так же специальные знаки: — @ $ # ! и т. д. Без пробелов! Пароль чувствительный к регистру! Это значит, что «z» и «Z» это разные символы.

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

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

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

Если вам нужно еще больше защиты, то можно использовать привязку по MAC-адресу. Правда, не вижу в этом необходимости. WPA2 — Personal в паре с AES и сложным паролем – вполне достаточно.

А как вы защищаете свою Wi-Fi сеть? Напишите в комментариях. Ну и вопросы задавайте

7 советов по настройке домашнего Wi-Fi-роутера

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

Совет 1. Меняем пароль администратора

Одна из самых распространенных ошибок — использование установленного производителем по умолчанию пароля администратора (чаще всего это что-нибудь вроде «admin:admin» и тому подобные «1234»). В сочетании с какой-нибудь некритичной удаленной уязвимостью или с открытым для всех подключением к беспроводной сети это может дать злоумышленникам полный контроль над роутером. Мы настоятельно рекомендуем установить безопасный пароль, если вы этого еще не сделали.

Меняем пароль администратора

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

Совет 2. Запрещаем удаленное управление

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

Отключаем удаленное администрирование

Как правило, для отключения удаленного администрирования нужно убрать соответствующую галочку (в нашем случае с роутером TP-Link — ввести адрес 0.0.0.0). Также имеет смысл заблокировать доступ к роутеру из Глобальной сети по Telnet или SSH, если он поддерживает данные протоколы. Опытные пользователи могут ограничить возможности управления и в локальной сети — по аппаратным адресам устройств (так называемым MAC-адресам).

Совет 3. Отключаем Broadcast SSID

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

Отключаем Broadcast SSID

Совет 4. Используем надежное шифрование

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

Включаем шифрование WPA2

Кроме того, вашу сеть злоумышленники смогут использовать для совершения мошеннических действий (полиция при этом придет к вам). Так что лучше всего включить шифрование WPA2 (алгоритм WEP недостаточно надежен) и установить безопасный пароль для подключения к Wi-Fi.

Совет 5. UPnP и все-все-все

Современные беспроводные маршрутизаторы умеют не только раздавать Wi-Fi и обеспечивать узлам локальной сети доступ в Интернет — как правило, они поддерживают разнообразные протоколы, позволяющие автоматически настраивать и соединять между собой подключенные «умные устройства».

Universal Plug and Play (UPnP), поддержку стандартов DLNA (Digital Living Network Alliance) и тому подобные вещи лучше отключать, если вы ими не пользуетесь, — так меньше шансов стать жертвой очередной уязвимости, найденной в ПО, использующем данные функции. Вообще это универсальное правило: все лишнее стоит отключить. Если что-то из отключенного вам потребуется, просто включите обратно, это несложно.

Совет 6. Обновляем встроенное ПО

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

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

Обновление прошивки роутера — самый простой и одновременно самый необходимый шаг

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

Совет 7. Не только роутер

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

Защититься можно лишь комплексно, поэтому мы рекомендуем использовать на компьютерах и мобильных устройствах современные брандмауэры и антивирусные программы с актуальными базами сигнатур зловредов. К примеру, Kaspersky Internet Security 2015 позволяет проверить уровень безопасности беспроводной сети и дает рекомендации по изменению ее настроек.

Protect: защита соединений Wi-Fi

Зачем нужна защита Wi-Fi

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

В Яндекс.Браузере в рамках комплексной защиты Protect используется собственный механизм защиты беспроводного соединения. Этот механизм реализован в компьютерной версии Яндекс.Браузера, а также в мобильной версии для смартфонов и планшетов Android.

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

Включение защиты

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

После включения защиты Wi-Fi в Умной строке отображается один из следующих значков:

Значок Значение
Защита Wi-Fi включена.
Защита включена, но некоторые элементы страницы (например, картинки или видео) невозможно пропустить через защищенный канал.
Серверы Яндекса временно недоступны или сайт недоступен для Яндекса (например, если он корпоративный). Если вы не находитесь на защищенном корпоративном сайте, воздержитесь от передачи личных или банковских данных, пока защита Wi-Fi не будет восстановлена.
Значок Значение
Защита Wi-Fi включена.
Защита включена, но некоторые элементы страницы (например, картинки или видео) невозможно пропустить через защищенный канал.
Серверы Яндекса временно недоступны или сайт недоступен для Яндекса (например, если он корпоративный). Если вы не находитесь на защищенном корпоративном сайте, воздержитесь от передачи личных или банковских данных, пока защита Wi-Fi не будет восстановлена.

Настройка шифрования Wi-Fi в домашней сети

Если вы, подключившись к домашнему Wi-Fi, увидели предупреждение Яндекс.Браузера о небезопасной сети, это означает, что используемый вашим роутером алгоритм защиты недостаточно безопасен.

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

Более конкретные рекомендации вы найдете в Руководстве по использованию вашего роутера.

Отключение защиты

Чтобы отключить защиту Wi-Fi до перезапуска браузера:

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

Чтобы полностью отключить защиту Wi-Fi, в том числе предупреждения в Умной строке:

Protect: защита соединений Wi-Fi

Зачем нужна защита Wi-Fi

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

В Яндекс.Браузере в рамках комплексной защиты Protect используется собственный механизм защиты беспроводного соединения. Этот механизм реализован в компьютерной версии Яндекс.Браузера, а также в мобильной версии для смартфонов и планшетов Android.

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

Включение защиты

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

После включения защиты Wi-Fi в Умной строке отображается один из следующих значков:

Значок Значение
Защита Wi-Fi включена.
Защита включена, но некоторые элементы страницы (например, картинки или видео) невозможно пропустить через защищенный канал.
Серверы Яндекса временно недоступны или сайт недоступен для Яндекса (например, если он корпоративный). Если вы не находитесь на защищенном корпоративном сайте, воздержитесь от передачи личных или банковских данных, пока защита Wi-Fi не будет восстановлена.

Значок Значение
Защита Wi-Fi включена.
Защита включена, но некоторые элементы страницы (например, картинки или видео) невозможно пропустить через защищенный канал.
Серверы Яндекса временно недоступны или сайт недоступен для Яндекса (например, если он корпоративный). Если вы не находитесь на защищенном корпоративном сайте, воздержитесь от передачи личных или банковских данных, пока защита Wi-Fi не будет восстановлена.

Настройка шифрования Wi-Fi в домашней сети

Если вы, подключившись к домашнему Wi-Fi, увидели предупреждение Яндекс.Браузера о небезопасной сети, это означает, что используемый вашим роутером алгоритм защиты недостаточно безопасен.

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

Более конкретные рекомендации вы найдете в Руководстве по использованию вашего роутера.

Отключение защиты

Чтобы отключить защиту Wi-Fi до перезапуска браузера:

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

Чтобы полностью отключить защиту Wi-Fi, в том числе предупреждения в Умной строке:

AES или TKIP: какой метод проверки подлинности лучше?

Привет! Заходишь ты такой в настройки своего роутера, а в разделе безопасности беспроводной сети сталкиваешься с первой серьезной и непонятно проблемой – TKIP или AES? Что выбрать пока не понятно, да и практических советов на эту тему нет, ибо все мануалы по настройкам шифрования написаны специалистами для специалистов. Что делать? WiFiGid и Ботан помогут разобраться!

Остались вопросы? Добро пожаловать в наши горячие комментарии с приятным сообществом!

Краткий ответ

Тем, кто не хочет терять своего времени, лучший вариант:

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

Про аутентификацию

Wi-Fi без защиты в наше время похож на находки якутскими учеными мамонтов – зверь вымер, но раз в год находки всплывают. Это к тому, что любую домашнюю сеть в наше время принято защищать любым типом аутентификации. А какие они есть?

  • WEP (Wired Equivalent Privacy) – устаревший стандарт, современный брут паролей взламывает его легко.
  • WPA (Wi-Fi Protected Access) – надежная обновленная система защиты. Пароли от 8 символов сильно мешают бруту.
  • WPA2 – самый используемый тип, как правило сейчас у всех стоит именно он.
  • WPA3 – новинка, обязателен в новом Wi-Fi Идеально, но есть далеко не во всех моделях, поэтому мы обращаем внимание прежде всего на WPA2, даже сейчас его взлом практически невозможен при сильном пароле.

Про шифрование

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

  1. TKIP – ныне устаревший стандарт. Но в силу того, что некоторые старые устройства поддерживают только его, используется как альтернатива. Есть ограничения по использованию с WPA2 и в самом Wi-Fi стандарте, начиная с 802.11n. По сути дела, выпускался как патч для дырявого WEP.
  2. AES – актуальный стандарт шифрования. Применяется везде, где только требуется. Не расшифровывается военными и прочими заинтересованными лицами. Открытый, а отсюда заслуживает доверие и уважение сообщества. Поэтому поддерживается всеми современными стандартами Wi-Fi.

Итого, мои настройки:

Выбор на разных роутерах

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

Все модели перечислить невозможно. Пользуйтесь поиском на нашем сайте, найдите свою модель, ознакомьтесь с полной инструкцией по настройке.

TP-Link

ZyXEL Keenetik

D-Link

Как устроен AES / Habr

О чём эта статья

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

В этой статье я напишу как устроен алгоритм шифрования AES (которого иногда называют Rijndael) и напишу его на JavaScript. Почему на JavaScript? Чтобы запустить программу на этом языке, нужен только браузер в котором вы читаете эту статью. Чтобы запустить программу, скажем, на C, нужен компилятор и найдётся совсем мало желающих, готовых потратить время на компиляцию кода из какой то статьи. В конце есть ссылка по которой можно скачать архив с html страницей и несколькими js файлами — это пример реализации AES на JavaScript.

Как применить AES

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

cipher = encrypt(block, key) // шифруем block с помощью key
block = decrypt(cipher, key) // расшифровываем cipher с помощью key

Размер блока всегда равен 128 бит. Размер ключа также имеет фиксированный размер. Чтобы зашифровать произвольный текст любым паролем можно поступить так:

  • получить хеш от пароля
  • преобразовать хеш в ключ по правилам описанным в стандарте AES
  • разбить текст на блоки по 128 бит
  • зашифровать каждый блок функцией cipher

Это можно записать так:

hash = md5(password) // MD5 хеш имеет длину 128 бит
key = keyexpansion(hash) // преобразуем хеш в ключ
blocks = split(text, 16) // разбить текст на блоки по 16 байт

for (i = 0; i < blocks.length; i++)
cipher[i] = encrypt(blocks[i], key)

Чтобы расшифровать массив блоков cipher нужно применить к каждому блоку decrypt:

hash = md5(password)
key = keyexpansion(hash)

for (i = 0; i < cipher.length; i++)
blocks[i] = decrypt(cipher[i], key)

text = merge(blocks) // соединить все блоки в одну строку

Конечно, длина текста может быть не кратна 128 битам. В таких случаях можно дополнить текст нулями до нужной длины, а в зашифрованные данные добавить несколько байт с зашифрованным размером оригинального текста. Функции aes.encrypt и aes.decrypt в файле aes.js в примере используют этот подход.

Поле GF(28)

AES активно использует так называемое конечное поле GF(28). Чтобы написать AES на JavaScript не обязательно знать, что это за поле, но если вы хотите лучше понять AES, прочтите этот раздел.

Поле GF(28) это числа 0..255 для которых определили особое умножение и особое сложение. Возмём какое нибудь число из этого поля и представим его в виде восьми битов: a = a7a6a5a4a3a2a1a0. Точно также представим число b. Сложение a и b это известная побитовая операция xor:

a + b = a xor b

У сложения есть простые свойства:

a + a = 0

-a = 0 - a = a

a - b = a + (-b) = a + b

Умножение определяется сложнее. Запишем многочлены с коэффициентами из битов этих чисел:

p = a7x7 + a6x6 + a5x5 + a4x4 + a3x3 + a2x2 + a1x + a0

q = b7x7 + b6x6 + b5x5 + b4x4 + b3x3 + b2x2 + b1x + b0

Теперь перемножим эти два многочлена и найдём остаток от деления на m:

m = x8 + x4 + x3 + x + 1

r = pq mod (m)

Почему выбран именно такой m? У этого многочлена есть только два делителя-многочлена на которых он делится без остатка: единица и он сам. По аналогии с простыми числами, многочлен m «простой». Находить остаток от деления можно также как для обычных чисел: для этого достаточно уметь умножать, складывать и вычитать многочлены, причём сложение и вычитание производят по правилам GF(28), т.е. сложение и вычитание многочленов это xor между каждой парой коэффициентов. Вот два примера:

x3 + x2 + 1 mod (x3 + 1) = x2 // нужно один раз отнять x3+1

x3 + x2 + 1 mod (x2 + 1) = (x3 + x2 + 1) - (x + 1)(x2 + 1) = -x

Многочлен r представим в виде

r = r7x7 + r6x6 + r5x5 + r4x4 + r3x3 + r2x2 + r1x + r0

Его 8 коэффициентов представляют собой 8-битовое число из поля GF(28) и это число называется произведением a•b. В отличие от сложения, умножение нельзя найти парой простых побитовых операций. Однако умножение на произвольный многочлен в поле GF(28) можно свести к умножению на многочлен x, а умножить на x можно несколькими побитовыми операциями, о чём пойдёт речь ниже.

Для обозначения многочленов в GF(28) используют 16-ричные цифры. Например

m = x8 + x4 + x3 + x + 1 = 100011011 = 0x011b = {01}{1b}

Умножить на многочлен x = {02} в поле GF(28) очень просто. Рассмотрим произведение:

xp = x(a7x7 + a6x6 + a5x5 + a4x4 + a3x3 + a2x2 + a1x + a0) =

a7x8 + a6x7 + a5x6 + a4x5 + a3x4 + a2x3 + a1x<2 + a0x

p = a7a6a5a4a3a2a1a0

xp = a7a6a5a4a3a2a1a00 // это сдвиг влево на один бит

Теперь нужно найти остаток от деления на m. Если бит a7 = 1, то нужно один раз вычесть m. Если a7 = 0 то вычитать ничего не нужно. Итак:

r = xp mod (m) = xp - m если a7 = 1

r = xp mod (m) = xp если a7 = 0

Умножение на x можно записать такой функцией:

gf.xtime = function(b)
{
	var highbit = b & 0x80
	var shl = (b << 1) & 0xff
	return highbit == 0 ? shl : shl ^ 0x1b
}

Зная как умножать на x можно умножить на любой другой многочлен. Для примера найдём a•b где a = {3c}, b = {a1}:

b = {a1} = 10100001 = {80} + {20} + {01}

a•b = a•{80} + a•{20} + a•{01} = a•x7 + a•x5 + a =

a•{02}•{02}•{02}•{02}•{02}•{02}•{02} + a•{02}•{02}•{02}•{02}•{02} + a =

{29} + {c1} + {3c} = {d4}

Осталась одна простая операция в поле GF(28). У любого байта b, кроме нуля, есть обратный байт a = b-1 который обладает свойством a•b = {01}. Все три функции для работы с полем — умножение на x, умножение двух произвольных байтов и нахождение обратного — я собрал в маленькую библиотеку gf на JavaScript.

Таблица SBox

Эта таблица представляет собой 256-байтый массив и используется для замены одного байта другим. Не обязательно понимать как она получается, потому что в код можно просто скопировать этот массив. Чтобы узнать чему равен элемент SBox[b] нужно три действия:

  1. найти обратный байт к b в поле GF(28) (ноль оставить без изменений)
  2. умножить результат состоящий из восьми битов на матрицу 8×8 из 64 битов
  3. добавить {63}

В сумме эти три действия дают афинное преобразование:

Несложно понять как построена эта матрица из битов. Для умножения битов нужно применять «and», для сложения — «xor». Например:

r0 = b0 + b4 + b5 + b6 + b7 + 1

Функцию sbox я написал так:

aes.sbox = function(b)
{
	var m = 0xf8
	var r = 0
	var q = gf.inv(b) || 0
	
	for (var i = 0; i < 8; i++)
	{
		r = (r << 1) | bits.xorbits(q & m)
		m = (m >> 1) | ((m & 1) << 7)
	}
	
	return r ^ 0x63
}

Построенная таблица выглядит так:

63 7c 77 7b f2 6b 6f c5 30 01 67 2b fe d7 ab 76

ca 82 c9 7d fa 59 47 f0 ad d4 a2 af 9c a4 72 c0

b7 fd 93 26 36 3f f7 cc 34 a5 e5 f1 71 d8 31 15

04 c7 23 c3 18 96 05 9a 07 12 80 e2 eb 27 b2 75

09 83 2c 1a 1b 6e 5a a0 52 3b d6 b3 29 e3 2f 84

53 d1 00 ed 20 fc b1 5b 6a cb be 39 4a 4c 58 cf

d0 ef aa fb 43 4d 33 85 45 f9 02 7f 50 3c 9f a8

51 a3 40 8f 92 9d 38 f5 bc b6 da 21 10 ff f3 d2

cd 0c 13 ec 5f 97 44 17 c4 a7 7e 3d 64 5d 19 73

60 81 4f dc 22 2a 90 88 46 ee b8 14 de 5e 0b db

e0 32 3a 0a 49 06 24 5c c2 d3 ac 62 91 95 e4 79

e7 c8 37 6d 8d d5 4e a9 6c 56 f4 ea 65 7a ae 08

ba 78 25 2e 1c a6 b4 c6 e8 dd 74 1f 4b bd 8b 8a

70 3e b5 66 48 03 f6 0e 61 35 57 b9 86 c1 1d 9e

e1 f8 98 11 69 d9 8e 94 9b 1e 87 e9 ce 55 28 df

8c a1 89 0d bf e6 42 68 41 99 2d 0f b0 54 bb 16

Её можно просто скопировать в код, как часто делают, а можно вычислять функцией sbox по мере надобности.

Таблица InvSBox

Для дешифрования текста AES использует таблицу обратную к SBox. Таблица InvSBox обладает одним свойством: InvSBox[SBox[i]] = i. InvSBox выглядит так:

52 09 6a d5 30 36 a5 38 bf 40 a3 9e 81 f3 d7 fb

7c e3 39 82 9b 2f ff 87 34 8e 43 44 c4 de e9 cb

54 7b 94 32 a6 c2 23 3d ee 4c 95 0b 42 fa c3 4e

08 2e a1 66 28 d9 24 b2 76 5b a2 49 6d 8b d1 25

72 f8 f6 64 86 68 98 16 d4 a4 5c cc 5d 65 b6 92

6c 70 48 50 fd ed b9 da 5e 15 46 57 a7 8d 9d 84

90 d8 ab 00 8c bc d3 0a f7 e4 58 05 b8 b3 45 06

d0 2c 1e 8f ca 3f 0f 02 c1 af bd 03 01 13 8a 6b

3a 91 11 41 4f 67 dc ea 97 f2 cf ce f0 b4 e6 73

96 ac 74 22 e7 ad 35 85 e2 f9 37 e8 1c 75 df 6e

47 f1 1a 71 1d 29 c5 89 6f b7 62 0e aa 18 be 1b

fc 56 3e 4b c6 d2 79 20 9a db c0 fe 78 cd 5a f4

1f dd a8 33 88 07 c7 31 b1 12 10 59 27 80 ec 5f

60 51 7f a9 19 b5 4a 0d 2d e5 7a 9f 93 c9 9c ef

a0 e0 3b 4d ae 2a f5 b0 c8 eb bb 3c 83 53 99 61

17 2b 04 7e ba 77 d6 26 e1 69 14 63 55 21 0c 7d

Виды AES

Алгоритм AES преобразует блок длиной 128 битов в другой блок той же длины. Для преобразования применяется расписание ключей w получаемое из ключа. 128-битный блок в AES представляется в виде матрицы 4×Nb. Стандарт допускает только одно значение Nb = 4, поэтому длина блока всегда 128 бит, хотя алгоритм может работать с любым Nb. Длина ключа равна 4Nk байт. Алгоритм шифрования блока состоит из Nr раундов — применений одной и той же группы преобразований к 128-битному блоку данных. Стандарт допускает следующие комбинации этих трёх параметров:





Nk Nb Nr
AES-128 4 4 10
AES-192 6 4 12
AES-256 8 4 14
Преобразование KeyExpansion

Для шифрования текста AES применяет не пароль или хеш от пароля, а так называемое «расписание ключей» получаемое из ключа. Это расписание можно представить как Nr + 1 матриц размера 4×Nb. Алгоритм шифрования делает Nr + 1 шагов и на каждом шаге он, помимо других действий, берёт одну матрицу 4×Nb из «расписания» и поэлементно добавляет её к блоку данных.

Шифрование блока данных

Алгоритм шифрования получает на вход 128-битный блок данных input и расписание ключей w, которое получается после KeyExpansion. 16-байтый input он записывает в виде матрицы s размера 4×Nb, которая называется состоянием AES, и затем Nr раз применяет к этой матрице 4 преобразования. В конце он записывает матрицу в виде массива и подаёт его на выход — это зашифрованный блок. Каждое из четырёх преобразований очень простое.

  1. AddRoundKey берёт из расписания ключей одну матрицу размера 4×Nb и поэлементно добавляет её к матрице состояния. Если два раза применить AddRoundKey, то ничего не изменится, поэтому преобразование обратное к AddRoundKey это оно само.
  2. SubBytes заменяет каждый элемент матрицы состояния соответвующим элементом таблицы SBox: sij = SBox[sij]. Преобразование SubBytes обратимо. Обратное к нему находится с помощью таблицы InvSBox.
  3. ShiftRows сдвигает i-ую строку матрицы s на i позиций влево, считая i с нуля. Обратное преобразование InvShiftRows сдвигает строки вправо.
  4. MixColumns умножает каждый столбец матрицы s слева на особую матрицу размера 4×4:

    Для шифрования используют [a b c d] = [{02} {03} {01} {01}]. Можно проверить, что преобразование обратное к MixColumns[{02} {03} {01} {01}] это MixColumns[{0e} {0b} {0d} {09}].

Схематично шифрование можно изобразить так:

AddRoundKey(0)	

for (var i = 1; i <= Nr - 1; i++)
{			
	SubBytes()
	ShiftRows()
	MixColumns([0x02, 003, 0x01, 0x01])
	AddRoundKey(i)
}

SubBytes()
ShiftRows()
AddRoundKey(Nr)
Расшифровка

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

Немного оптимизации

Функция sbox имеет всего 256 возможных входных значений и 256 возможных выходных значений. Чтобы не вычислять много раз sbox для одного аргумента, нужно кешировать результаты. На JavaScript это несложно сделать даже не меняя код написанный ранее. Для этого нужно всего лишь дописать ниже вот это:

Function.prototype.cached = function()
{
	var old = this
	var cache = {}
	
	return function(x)
	{
		if (cache[x] !== undefined)
			return cache[x]
			
		cache[x] = old(x)
		return cache[x]
	}
}

aes.sbox = aes.sbox.cached()

Этот код заменяет sbox функцией которая кеширует результаты sbox. Тоже самое можно сделать для любой функции, например для invsbox и rcon. Этот же приём можно применить для функции gf.mul которая умножает два байта в поле GF(28), но в этом случае размер кеша будет равен 256×256 элементов, что довольно много.

Ссылки

Документация к AES на английском называется FIPS 197.

Алгоритм шифрования AES и его надежность

После того как мы на прошлой неделе опубликовали информацию о готовящихся к продаже новых криптотелефонах X-Telecom Secure Mobile, в которых используется алгоритм шифрования AES-256, многие люди стали звонить и интересоваться, что это за алгоритм AES, насколько он надежен и удовлетворяет ли он требования информационной безопасности.

Алгоритм Advanced Encryption Standard

Advanced Encryption Standard – симметричный алгоритм блочного шифрования, принятый правительством США в качестве стандарта в результате конкурса, проведенного между технологическими институтами. Он заменил устаревший Data Encryption Standard, который больше не соответствовал требованиям сетевой безопасности, усложнившимся в XXI веке.

Этот алгоритм, кроме аббревиатуры AES, иногда называют еще Rijndael – это анаграмма из частей имен бельгийских программистов Joan Daemen и Vinent Rijmen, которые разработали AES. Строго говоря, AES и Rijndael – не совсем одно и то же, поскольку AES имеет фиксированный размер блока в 128 бит и размеры ключей в 128, 192 и 256 бит, в то время как для Rijndael могут быть заданы любые размеры блока и ключа, от минимума в 32 бит до максимума в 256 бит.

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

Информация, определенная как секретная, должна быть защищена посредством AES с длиной ключей 128, 192 и 256 бит. Для информации, определенной как особо секретная, эта длина составляет 192 или 256 бит. Суть AES в том, что любая «лобовая атака» на защищенные данные – то есть подбор всех возможных паролей – в перспективе очень сильно растягивается. Если представить, что взломщик располагает огромными ресурсами, то есть целой коллекцией суперкомпьютеров, то при усердном старании доступ к зашифрованным данным он мог бы получить через десятки лет. Если же в его распоряжении ничего этого нет, то взлом AES займет астрономически долгое время.

Надежность алгоритма шифрования AES

Считается, что используемый в Advanced Encryption Standard ключ длиной в 128 бит – достаточно надежная защита против лобовой атаки, то есть с чисто математической точки зрения подобрать один правильный пароль из всех возможных – трудноосуществимая задача. Несмотря даже на некоторые недостатки AES, взломать защищенную с помощью этого алгоритма информацию практически нереально.

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

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

Вот пример перебора 4-битного ключа:

Потребуется максимум 16 стадий, чтобы проверить каждую воз

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *