Архив

Протокол защиты передачи данных в телекомуникационных сетях - IPSec

06 Июнь 2009
privilege15

IPSecIPSec – Internet Protocol Security, комплекс, включающий в себя целый набор протоколов, которые обеспечивают безопасную передачу данных через сеть Интернет. К ним относятся: протокол установки безопасного канала связи IKE, протокол безопасности ESP, протоколы шифрования DES, 3DES, AES, RSA, протоколы проверки подлинности данных MD5, SHA-1 и протокол обмена ключами DH.

Протокол установки безопасного канала связи:

IKE – Internet Key Exchange, протокол, обеспечивающий установку безопасной сессии с удаленным устройством. IKE позволяет удаленным устройствам «договориться» о том, какой протокол безопасности использовать при передаче данных, каким способом зашифровать данные, с помощью какого протокола проверять подлинность переданных данных и какой алгоритм использовать для обмена ключами. Для обмена данными IKE использует протокол UDP, порт 500.

Протоколы безопасности:

AH – Authentication Header, протокол, обеспечивающий только проверку подлинности данных. В настоящий момент считается устаревшим.
ESP - Encapsulating Security Payload, протокол, обеспечивающий не только проверку подлинности данных, но и их зашифрованную передачу через сеть Интернет с помощью тех же алгоритмов, которые использует IKE для установки безопасного соединения. Для обмена данными ESP использует протокол IP, порт 50.

IPSec

Протоколы шифрования:

DES - Data Encryption Standard, протокол шифрования, разработанный IBM. Длина ключа для шифрования данных составляет 56 бит. С ростом вычислительных мощностей, сегодня данный протокол не является эталоном безопасности. На его смену пришел 3DES.
3DES – Triple Data Encryption Standard, протокол, пришедший на смену DES. Использует три ключа DES для шифрования данных. Следовательно, для его работы требуется больше вычислительных ресурсов процессора.
AES - Advanced Encryption Standard, новейший протокол шифрования данных. Алгоритм данного протокола использует длину ключа, которая составляет 128, 192 или 256 бит. Это один из самых ресурсоемких протоколов.
RSA - Rivest, Shamir и Adleman, крипографический алгоритм, в основе которого лежит асимметричная система обмена ключами. Чаще всего используется в криптографических приложениях, наиболее известные из которых: SSH, SSL, HTTPS и др. Длина ключа составляет 512, 768, 1024 бит и более. Алгоритм RSA с длиной ключа 1024 бит является наиболее оптимальным соотношением между криптостойкостью и затратами вычислительной мощности процессора.

Протоколы проверки подлинности данных:

MD5 - Message Digest 5, протокол хэширования данных. Длина хэша составляет 128 бит.

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

IPSec

SHA-1 - Secure Hash Algorithm 1, более эффективный протокол хэширования данных чем MD5. Длина хэша составляет 160 бит.

Протокол обмена ключами:

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

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

IPSec

Криптостойкость алгоритма определяется размером ключа. DH группы 1 имеет размер ключа, равный 768 бит. Размер ключа DH группы 2 равен 1024 бит. Чем выше группа, тем более криптоскойким становится алгоритм, и тем больше ресурсов процессора он потребляет.

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

Всем, кто работает с зашифрованными туннелями Cisco известно, что для организации туннеля, помимо всего прочего, требуется pre-shared key. Я задал себе вопрос, для чего он нужен, используется ли он в процессе шифрования данных или нет, и нашел в сети Интернет на него ответ от Richard Burts:

“In one sense it is appropriate to call the pre-shared key a cryptographic key since it is part of the cryptographic process. But in another sense it may be a bit misleading to call it cryptographic since the pre-shared key used in IPSec is not used to encrypt data but is used in the ISAKMP negotiation. The ISAKMP negotiation produces the working key that is used to encrypt data. So if someone were to get access to the pre-shared key that would not directly give them the ability to get unauthorized access to data being transmitted.”

“The pre shared key is used in the ISAKMP negotiation as the routers determine whether they should proceed to negotiate with each other for IPSec. The actual working key used to encrypt data going through the tunnel is derived using the Diffe Hellman key exchange protocol. So someone would have to crack the DH exchange to get hold of information going through the tunnel.”

“It is difficult to say how much you need to do to protect the pre-shared key. In abstract principles the best practices for Security say that any key should be protected and should be changed periodically. In practical terms the degree of risk associated with the pre-shared key is fairly low and most organizations do not periodically change the pre-shared key.”

Всего комментариев: 0. Оставить комментарий ниже »

Оставить комментарий. *Обязательное поле