6.2.7. Опция Binding Authorization Data
Опция Binding Authorization Data (данные авторизации привязки) по существу не имеет требований по выравниванию. Однако поскольку эта опция должна быть последней опцией мобильности, неявным требованием выравнивания является 8n + 2. Эта опция имеет следующий формат:
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type = 5 | Option Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + + | Authenticator | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Опция Binding Authorization Data допустима только в сообщениях Binding Update и Binding Acknowledgement.
Поле Option Length содержит длину удостоверения (поля Authenticator) в октетах.
Поле Authenticator (удостоверение) содержит криптографическое значение, которое может использоваться для определения того, что сообщение в запросе приходит от правильного полномочного органа. Правила вычисления этого значения зависят от используемой процедуры авторизации.
Для процедуры обратной маршрутизируемости эта опция может появляться в сообщениях Binding Update и Binding Acknowledgement. Правила вычисления значения поля Authenticator следующие:
Mobility Data = care-of address | correspondent | MH DataAuthenticator = First (96, HMAC_SHA1 (Kbm, Mobility Data))
Где символ | означает конкатенацию. "care-of address" является временным адресом, который будет регистрироваться для мобильного узла, если сообщение Binding Update успешно проходит проверку, или домашним адресом мобильного узла, если эта опция используется для отмены регистрации. Заметим также, что этот адрес может отличаться от адреса источника сообщения Binding Update, если используется опция мобильности Alternative Care-of Address, или когда время жизни привязки устанавливается в ноль.
"correspondent" представляет собой IPv6-адрес узла-корреспондента. Заметим, что если сообщение посылается на место назначения, которое само по себе является мобильным, адрес "correspondent" может не совпадать с адресом, находящимся в поле Destination Address заголовка IPv6; вместо этого должен использоваться домашний адрес из заголовка маршрутизации типа 2.
"MH Data" представляет собой содержимое заголовка мобильности, исключая само поле Authenticator. Значение поля Authenticator вычисляется, как если бы поле Checksum в заголовке мобильности было нулевым. Однако контрольная сумма в передаваемом пакете вычисляется обычным способом с вычисленным значением поля Authenticator, являющимся частью пакета, защищенного этой контрольной суммой. Kbm представляет собой ключ управления привязкой, который обычно создается с помощью одноразовых номеров, предоставляемых узлом-корреспондентом (см. разд.9.4). Заметим, что хотя содержимое потенциальной опции места назначения Home Address не покрыто в этой формуле, правила вычисления Kbm учитывают домашний адрес. Это гарантирует, что коды MAC для различных домашних адресов будут отличаться.
В качестве поля Authenticator используются первые 96 бит результата вычисления MAC.