nearlink_sdr.mac.security¶
安全层配对与鉴权信令 -- TXS-10002-2025 标准 9.2
实现 SLE 配对和鉴权管理所需的信令消息编解码。
Module Contents¶
Classes¶
媒体接入层标识类型 (标准 9.3.3)。 |
|
G 节点媒体接入层标识信息 (标准 9.3.3)。 |
|
G 节点确认码 (标准 9.2)。 |
|
G 节点确认码与随机数 (标准 9.2)。 |
|
G 节点 DH 密钥校验码 (标准 9.2)。 |
|
G 节点身份解析密钥信息 (标准 9.3.3)。 |
|
组播安全算法指示消息 (标准 9.3.2)。 |
|
组播密钥配置消息 (标准 9.3.2)。 |
|
配对确认 (标准 9.2)。 |
|
配对失败 (标准 9.2, 表68)。 |
|
配对初始信息 (标准 9.2): T 节点公钥。 |
|
配对发起 (标准 9.2)。 |
|
配对请求 (标准 9.2)。 |
|
配对响应 (标准 9.2)。 |
|
Ra 随机数消息 (标准 9.2)。 |
|
Rb 随机数消息 (标准 9.2)。 |
|
解析算法枚举 (标准 9.3.3)。 |
|
Rg 随机数消息 (标准 9.2)。 |
|
Rt 随机数消息 (标准 9.2)。 |
|
T 节点媒体接入层标识信息 (标准 9.3.3)。 |
|
T 节点确认码 (标准 9.2)。 |
|
T 节点确认码与随机数 (标准 9.2)。 |
|
T 节点 DH 密钥校验码 (标准 9.2)。 |
|
T 节点身份解析密钥信息 (标准 9.3.3)。 |
API¶
- class nearlink_sdr.mac.security.AddrType[源代码]¶
媒体接入层标识类型 (标准 9.3.3)。
- UNION_ALLOCATED¶
0
- THIRD_PARTY_LOCAL¶
2
- UNION_RESERVED¶
5
- PRIVATE¶
6
- class nearlink_sdr.mac.security.GNodeAddress[源代码]¶
G 节点媒体接入层标识信息 (标准 9.3.3)。
- classmethod unpack(data: bytes) nearlink_sdr.mac.security.GNodeAddress[源代码]¶
- class nearlink_sdr.mac.security.GNodeConfirmCode[源代码]¶
Bases:
nearlink_sdr.mac.security._BytesMessageG 节点确认码 (标准 9.2)。
- class nearlink_sdr.mac.security.GNodeConfirmCodeWithRandom[源代码]¶
Bases:
nearlink_sdr.mac.security._TwoBytesMessageG 节点确认码与随机数 (标准 9.2)。
- class nearlink_sdr.mac.security.GNodeDHKeyVerify[源代码]¶
Bases:
nearlink_sdr.mac.security._BytesMessageG 节点 DH 密钥校验码 (标准 9.2)。
- class nearlink_sdr.mac.security.GNodeIRK[源代码]¶
G 节点身份解析密钥信息 (标准 9.3.3)。
- classmethod unpack(data: bytes) nearlink_sdr.mac.security.GNodeIRK[源代码]¶
- class nearlink_sdr.mac.security.MulticastAlgorithmConfig[源代码]¶
组播安全算法指示消息 (标准 9.3.2)。
- classmethod unpack(data: bytes) nearlink_sdr.mac.security.MulticastAlgorithmConfig[源代码]¶
- class nearlink_sdr.mac.security.MulticastKeyConfig[源代码]¶
组播密钥配置消息 (标准 9.3.2)。
- classmethod unpack(data: bytes) nearlink_sdr.mac.security.MulticastKeyConfig[源代码]¶
- class nearlink_sdr.mac.security.PairingConfirm[源代码]¶
配对确认 (标准 9.2)。
字段:
key_length: 1 字节, 密钥长度
auth_method: 1 字节, 鉴权方法
crypto_algorithm: 4 字节, 加密算法能力
g_public_key_x: 32 字节, G 节点公钥 X 分量
g_public_key_y: 32 字节, G 节点公钥 Y 分量
- classmethod unpack(data: bytes) nearlink_sdr.mac.security.PairingConfirm[源代码]¶
- class nearlink_sdr.mac.security.PairingFailure[源代码]¶
配对失败 (标准 9.2, 表68)。
reason 取值 0x01-0x0C: 0x01 通行码输入失败 0x02 OOB 不可用 0x03 鉴权请求不匹配 0x04 确认值不匹配 0x05 不支持的配对方式 0x06 加密密钥长度不足 0x07 不支持的命令 0x08 未确认的配对 0x09 重复的配对尝试 0x0A 无效参数 0x0B DHKey 校验失败 0x0C 数字比较失败
- classmethod unpack(data: bytes) nearlink_sdr.mac.security.PairingFailure[源代码]¶
- class nearlink_sdr.mac.security.PairingInitialInfo[源代码]¶
Bases:
nearlink_sdr.mac.security._TwoBytesMessage配对初始信息 (标准 9.2): T 节点公钥。
- class nearlink_sdr.mac.security.PairingInitiate[源代码]¶
配对发起 (标准 9.2)。
auth_request 字段布局 (8 bits): 安全属性(2bit) | 防中间人攻击指示位(1bit) | 按键提示(1bit) | 保留(4bit)
- classmethod unpack(data: bytes) nearlink_sdr.mac.security.PairingInitiate[源代码]¶
- class nearlink_sdr.mac.security.PairingRequest[源代码]¶
配对请求 (标准 9.2)。
字段:
io_capability: 1 字节, I/O 能力
oob_data_flag: 1 字节, OOB 数据标志
auth_request: 1 字节, 鉴权请求
max_key_length: 1 字节, 最大密钥长度
security_dist_info: 1 字节, 安全分发信息
crypto_capability: 4 字节, 加密能力
psk_indication: 1 字节, PSK 指示
- classmethod unpack(data: bytes) nearlink_sdr.mac.security.PairingRequest[源代码]¶
- class nearlink_sdr.mac.security.PairingResponse[源代码]¶
配对响应 (标准 9.2)。
字段与 PairingRequest 完全相同。
- classmethod unpack(data: bytes) nearlink_sdr.mac.security.PairingResponse[源代码]¶
- class nearlink_sdr.mac.security.RaMessage[源代码]¶
Bases:
nearlink_sdr.mac.security._BytesMessageRa 随机数消息 (标准 9.2)。
- class nearlink_sdr.mac.security.RbMessage[源代码]¶
Bases:
nearlink_sdr.mac.security._BytesMessageRb 随机数消息 (标准 9.2)。
- class nearlink_sdr.mac.security.ResolutionAlgorithm[源代码]¶
解析算法枚举 (标准 9.3.3)。
- HMAC_SM3¶
1
- AES_CMAC_128¶
2
- class nearlink_sdr.mac.security.RgMessage[源代码]¶
Bases:
nearlink_sdr.mac.security._TwoBytesMessageRg 随机数消息 (标准 9.2)。
- class nearlink_sdr.mac.security.RtMessage[源代码]¶
Bases:
nearlink_sdr.mac.security._TwoBytesMessageRt 随机数消息 (标准 9.2)。
- class nearlink_sdr.mac.security.TNodeAddress[源代码]¶
T 节点媒体接入层标识信息 (标准 9.3.3)。
- classmethod unpack(data: bytes) nearlink_sdr.mac.security.TNodeAddress[源代码]¶
- class nearlink_sdr.mac.security.TNodeConfirmCode[源代码]¶
Bases:
nearlink_sdr.mac.security._BytesMessageT 节点确认码 (标准 9.2)。
- class nearlink_sdr.mac.security.TNodeConfirmCodeWithRandom[源代码]¶
Bases:
nearlink_sdr.mac.security._TwoBytesMessageT 节点确认码与随机数 (标准 9.2)。