Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
3_rashich.pdf
Скачиваний:
441
Добавлен:
23.03.2015
Размер:
3.81 Mб
Скачать

3.3.3. Методы криптографической защиты

Набор алгоритмов шифрования данных, аутентификации данных и шифрования TEK называется криптографическим комплексом

(Cryptographic Suite). Установленные стандартом IEEE 802.16e-2005, 2009

криптографические комплексы сведены в табл. 3.1.

 

 

Таблица 3.1

Криптографические комплексы IEEE 802.16e-2005, 2009

 

 

 

Алгоритм шифрования

Алгоритм аутен-

Алгоритм шифрования

данных

тификации данных

TEK

 

 

 

Не производится

Не производится

Не производится

 

 

 

Режим CBC, DES с

Не производится

3-DES со 128-битным

56-битным ключом

 

ключом

 

 

 

Не производится

Не производится

RSA с 1024-битным клю-

 

 

чом

 

 

 

Режим CBC, DES с

Не производится

RSA с 1024-битным клю-

56-битным ключом

 

чом

 

 

 

Режим CCM, AES со

Не производится

Режим ECB, AES со

128-битным ключом

 

128-битным ключом

 

 

 

Алгоритм шифрования

Алгоритм аутен-

Алгоритм шифрования

данных

тификации данных

TEK

 

 

 

Режим CCM, AES со

Режим CCM, AES со

Режим ECB, AES со

128-битным ключом

128-битным ключом

128-битным ключом

 

 

 

Режим CCM, AES со

Режим CCM, AES со

AES со 128-битным клю-

128-битным ключом

128-битным ключом

чом, с шифрованием клю-

 

 

ча

 

 

 

Режим CBC, AES со

Не производится

Режим ECB, AES со

128-битным ключом

 

128-битным ключом

 

 

 

Режим CTR, AES со

Не производится

Режим ECB, AES со

128-битным ключом

 

128-битным ключом

для MBS c 8-битным

 

 

ROC

 

 

 

 

 

156

Алгоритм шифрования

Алгоритм аутен-

Алгоритм шифрования

данных

тификации данных

TEK

 

 

 

Режим CTR, AES со

Не производится

AES со 128-битным клю-

128-битным ключом

 

чом, с шифрованием клю-

для MBS c 8-битным

 

ча

ROC

 

 

 

 

 

Как видно из табл. 3.1, блочное шифрование в WIMAX производится в одном из четырех режимов: ECB, CBC, CTR и CCM. Данные режимы различаются осуществляемыми операциями над блоками шифруемых данных, способом формирования инициализирующего вектора (если он используется) и возможностью аутентификации данных.

Режим шифрования ECB

Режим ECB (Electronic CodeBook) представляет собой простейшую схему блочного шифрования данных (рис. 3.9). В этом случае не производится аутентификация данных, и не используются инициализирующие векторы.

 

Шифрование

 

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

 

Незашифрованный

Незашифрованный

 

Зашифрованный

Зашифрованный

 

блок 1

блок 2

 

блок 1

блок 2

TEK

шифрование

шифрование

TEK

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

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

AES

AES

AES

AES

 

 

 

Зашифрованный

Зашифрованный

 

Незашифрованный

Незашифрованный

 

блок 1

блок 2

 

блок 1

блок 2

 

Рис. 3.9. Шифрование и дешифрование данных в режиме ECB

Режим шифрования CBC

В режиме CBC (Cipher-Block Chaining) каждый блок данных, подлежащий шифрованию, побитно складывается по модулю 2 с результатом шифрования предыдущего блока данных. Первый блок побитно складывается с инициализирующим вектором (рис. 3.10). Аутентификация данных в данном режиме не производится.

157

 

Шифрование

 

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

 

 

Незашифрованный

Незашифрованный

ИнициализируюЗашифрованный

Зашифрованный

 

блок 1

блок 2

щий вектор

блок 1

блок 2

Инициализиру

 

 

 

 

-ющий вектор

 

TEK

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

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

 

AES/DES

AES/DES

 

 

 

 

TEK

шифрование

шифрование

 

 

 

AES/DES

AES/DES

 

 

 

 

 

 

 

 

Зашифрованный

Зашифрованный

 

Незашифрованный

Незашифрованный

 

блок 1

блок 2

 

блок 1

блок 2

 

Рис. 3.10. Шифрование и дешифрование данных в режиме CBC

Инициализирующий вектор в случае шифрования по алгоритму DES формируется при побитном сложении по модулю 2 инициализирующего вектора, сгенерированного БС для конкретного TEK, и номера кадра, в котором передается MAC PDU. В случае шифрования по алгоритму AES инициализирующий вектор генерируется в несколько этапов (рис. 3.11).

 

 

 

 

 

Заголовок Generic MAC

Полезная нагрузка MAC PDU

CRC

(необязательное поле)

(необязательное поле)

 

 

 

 

 

 

Заголовок

Информация о

MAC-адрес МС

XOR

Generic MAC

синхронизации

Счетчик PDU

 

 

48 бит

32 бита

48 бит

 

XOR

 

Инициализирующий вектор, сгенерированный БС для TEK

TEK

 

 

AES

 

 

шифрование

 

 

 

Инициализирующий вектор в режиме CBC

Рис. 3.11. Формирование инициализирующего вектора в режиме CBC

при использовании алгоритма AES

158

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

PDU.

Режим шифрования CTR

В режиме CTR (CounTeR) выполняется шифрование уникальных инициализирующих векторов, которые после этого побитно складываются по модулю 2 с блоками данных (рис. 3.12). Режим CTR применяется для широковещательных посылок по защищенному каналу. Аутентификация данных в данном режиме не производится.

 

Шифрование

 

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

 

Инициализирую-

Инициализирую-

 

Инициализирую-

Инициализирую-

 

щий вектор 1

 

щий вектор 2

 

щий вектор 1

 

щий вектор 2

TEK

шифрование

 

шифрование

TEK

шифрование

 

шифрование

AES/DES

 

AES/DES

AES/DES

 

AES/DES

 

 

 

 

Незашифро-

 

Незашифро-

Зашифро-

 

Зашифро-

ванный блок 1

ванный блок 2

ванный блок 1

ванный блок 2

 

Зашифрованный

 

Зашифрованный

 

Незашифрованный

Незашифрованный

 

блок 1

 

блок 2

 

блок 1

 

блок 2

Рис. 3.12. Шифрование и дешифрование данных в режиме CTR

При генерировании инициализирующих векторов применяется счетчик по нескольким позициям (Rollover Сounter, ROC). Счетчик имеет длину 8 бит, причем 3 наиболее значимых бита используются для отсчета номера кадра (по модулю 8), а следующие 5 бит — для отсчета номера MAC PDU. Инициализирующий вектор для первого блока шифрования формируется следующим образом:

1). Генерируется 32-битная строка, в которой 8 наиболее значимых битов представляют собой ROC, а последующие 24 бит — 8-битный номер текущего фрейма, повторенный 3 раза.

2). Полученная строка повторяется 4 раза, генерируя 128-битное начальное значение счетчика.

159

При шифровании каждого последующего блока данных значение этого 128-битного счетчика увеличивается на 1. Значение ROC помещается перед зашифрованной полезной нагрузкой MAC PDU (рис. 3.13).

Заголовок

ROC

Зашифрованная полезная

CRC

Generic MAC

нагрузка MBS

(необязательное поле)

 

 

 

 

 

Рис. 3.13. Формат MAC PDU в режиме шифрования CTR

Режим шифрования CCM

Режим CCM (Counter with CBC-MAC) является сочетанием режима шифрования CTR и режима аутентификации данных CBC-MAC. В этом случае к полезной нагрузке MAC PDU добавляются:

номер передаваемого пакета данных (Packet Number, PN), который обнуляется при получении нового TEK;

аутентификационный код полезной нагрузки MAC PDU.

Формат MAC PDU в режиме шифрования CCM представлен на рис. 3.14.

 

 

 

 

 

 

 

 

 

L байт

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Полезная нагрузка MAC PDU

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

L+12 байт

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4 байта

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8 байт

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PN

 

Полезная нагрузка MAC PDU

Аутентификаци-

 

 

 

онный код

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 3.14. Формат MAC PDU в режиме шифрования CCM

На первом этапе обработки полезной нагрузки MAC PDU вычисляется ее аутентификационный код в режиме CBC-MAC (рис. 3.15).

160

Незашифрованный

Незашифрованный

Незашифрованный

блок 1

блок 2

блок N

Инициализиру

 

 

-ющий вектор

 

 

TEK

шифрование

шифрование

шифрование

AES/DES

AES/DES

AES/DES

 

 

 

 

Аутентифика-

 

 

 

ционный код

Рис. 3.15. Вычисление аутентификационного кода полезной нагрузки

MAC PDU в режиме CBC-MAC

Полезная нагрузка объединяется с полученным аутентификационным кодом, после чего производится их совместное шифрование в режиме CTR. Однако в данном случае инициализирующие векторы генерируются иначе. Сначала создается основная 13-байтная часть вектора (рис. 3.16), в которой используется первые 5 байт заголовка Generic MAC (за исключением поля HCS) и значение PN. Далее этот вектор дополняется 1-байтной константой, а также значением длины полезной нагрузки до шифрования или номером шифруемого блока.

5 байт

4 байта

4 байта

Заголовок Generic MAC

0x00000000

PN

0x19

Основная часть

Длина полезной

 

вектора

нагрузки

1 байт

13 байт

2 байта

 

Инициализирующий вектор

 

первого блока

0x01

Основная часть

Счетчик блока

 

вектора

шифрования

1 байт

13 байт

2 байта

 

Инициализирующий вектор

 

последующих блоков

Рис. 3.16. Формирование инициализирующего вектора в режиме CCM

161