|
| enum | dir_t { ZUC_UPLINK =0x00
, ZUC_DOWNLINK =0x01
} |
| |
|
| | jzuc (dir_t dir, uint8_t *key, uint32_t keylen, uint32_t count, uint8_t bearer) |
| |
| | jzuc (dir_t dir, uint8_t *key, uint32_t keylen, uint8_t *iv, uint32_t ivlen) |
| |
| | jzuc (dir_t dir, uint8_t *key, uint32_t keylen, uint32_t count, uint32_t bearer) |
| |
| | jzuc (dir_t dir, uint8_t *key, uint32_t keylen, uint8_t *iv, uint32_t ivlen, uint32_t icvlen) |
| |
|
| ~jzuc () |
| | Standard deconstructor.
|
| |
| void | ProcessData (const uint8_t *input, uint8_t *output, uint32_t length) |
| |
| void | ProcessData (const uint8_t *input, uint32_t length) |
| |
| void | result (uint8_t *result) |
| |
| uint32_t | result_size () |
| |
|
| jzuc (jzuc &rhs)=delete |
| |
|
| jzuc (const jzuc &rhs)=delete |
| |
◆ dir_t
Direction of processing for ZUC ZUC_UPLINK - User to tower ZUC_DOWNLINK - Tower to user
◆ jzuc() [1/4]
| ProtocolPP::jzuc::jzuc |
( |
dir_t |
dir, |
|
|
uint8_t * |
key, |
|
|
uint32_t |
keylen, |
|
|
uint32_t |
count, |
|
|
uint8_t |
bearer |
|
) |
| |
Constructor for ZUC encryption
- Parameters
-
| dir | - direction of processing |
| key | - encryption key |
| keylen | - length of the encryption key (16 bytes) |
| count | - 32-bit COUNT value |
| bearer | - bearer value |
◆ jzuc() [2/4]
| ProtocolPP::jzuc::jzuc |
( |
dir_t |
dir, |
|
|
uint8_t * |
key, |
|
|
uint32_t |
keylen, |
|
|
uint8_t * |
iv, |
|
|
uint32_t |
ivlen |
|
) |
| |
Constructor for ZUC-256 encryption and authentication
- Parameters
-
| dir | - direction of processing |
| key | - encryption key |
| keylen | - length of the encryption key (32 bytes) |
| iv | - initialization vector |
| ivlen | - length of the initialization vector (25 bytes) |
◆ jzuc() [3/4]
| ProtocolPP::jzuc::jzuc |
( |
dir_t |
dir, |
|
|
uint8_t * |
key, |
|
|
uint32_t |
keylen, |
|
|
uint32_t |
count, |
|
|
uint32_t |
bearer |
|
) |
| |
Constructor for ZUC authentication with 4-byte ICV
- Parameters
-
| dir | - direction of processing (ZUC_DOWNLINK, ZUC_UPLINK) |
| key | - authentication key |
| keylen | - length of the authentication key (16 bytes) |
| count | - 32-bit COUNT value |
| bearer | - bearer value |
◆ jzuc() [4/4]
| ProtocolPP::jzuc::jzuc |
( |
dir_t |
dir, |
|
|
uint8_t * |
key, |
|
|
uint32_t |
keylen, |
|
|
uint8_t * |
iv, |
|
|
uint32_t |
ivlen, |
|
|
uint32_t |
icvlen |
|
) |
| |
Constructor for ZUC-256 authentication
- Parameters
-
| dir | - direction of processing (ZUC_DOWNLINK, ZUC_UPLINK) |
| key | - authentication key |
| keylen | - length of the authentication key (32 bytes) |
| iv | - initialization vector |
| ivlen | - length of the initialization vector (25 bytes) |
| icvlen | - length of the ICV (4, 8, 16 for zuc256) |
◆ ProcessData() [1/2]
| void ProtocolPP::jzuc::ProcessData |
( |
const uint8_t * |
input, |
|
|
uint32_t |
length |
|
) |
| |
calculates the MAC (icv)
- Parameters
-
| input | - input authentication data |
| length | - length of the input data |
◆ ProcessData() [2/2]
| void ProtocolPP::jzuc::ProcessData |
( |
const uint8_t * |
input, |
|
|
uint8_t * |
output, |
|
|
uint32_t |
length |
|
) |
| |
calculates the ciphertext/plaintext
- Parameters
-
| input | - input data |
| output | - output data |
| length | - length of the input data |
◆ result()
| void ProtocolPP::jzuc::result |
( |
uint8_t * |
result | ) |
|
returns the MAC (icv)
- Parameters
-
| result | - ICV of length 4-bytes |
◆ result_size()
| uint32_t ProtocolPP::jzuc::result_size |
( |
| ) |
|
returns the length of the MAC (icv)
- Returns
- - length of the ICV (4 bytes for ZUC or 4, 8, or 16 for ZUC-256)
The documentation for this class was generated from the following file: