/space/home/slher/rel/Beken/v6_4_5/macsw/ip/umac/src/mfp/mfp_bip.c File Reference

Manangement Frames protection module. More...

#include "rwnx_config.h"
#include "dbg_assert.h"
#include "mac_frame.h"
#include "co_utils.h"
#include "mfp_bip.h"
#include "hsu.h"

Go to the source code of this file.

Defines

#define S(a, s)   sbox_t[(a >> s) & 0xff]
 Apply Substitution.
#define SX2(a, s)   x_time2_sbox_t[(a >> s) & 0xff]
 apply substitution square
#define SX3(a, s)   x_time3_sbox_t[(a >> s) & 0xff]
 apply substitution cube

Functions

__INLINE uint32_t sched_core (uint32_t val, int r)
 Key schedule core function.
static void aes_expand_key (uint32_t *key, uint32_t *rk)
 expand AES key.
__INLINE void add_round_key (uint32_t *rk, uint32_t *data, int r)
 AddRoundKey step of AES encryption.
__INLINE void shift_sub (uint32_t *data)
 SubBytes and ShiftRows steps of AES encryption.
__INLINE void mix_shift_sub (uint32_t *data)
 SubBytes, ShiftRows and MixColumns steps of AES encryption.
static void aes_encrypt_block (uint32_t *rk, uint32_t *data)
 Encrypt a block of data inplace with AES.
static void aes_cmac_shift_sub_key (uint32_t *k)
 Left shift by 1 bit and XOR CMAC subkey.
__INLINE void xor_block (uint32_t *a, uint32_t *b)
 XOR two vectors of 16 bytes.
static uint64_t aes_cmac (uint32_t *key, int nb_elem, uint32_t addr[], int len[])
 Compute AES-CMAC on provided vectors.
uint64_t mfp_compute_bip (struct key_info_tag *key, uint32_t frame_addr, int frame_len, int machdr_len, uint32_t mmic_addr)
 Compute MIC for BIP (Broadcast Integrity Protocol).

Variables

static const uint8_t sbox_t [256]
 Substitution box.
static const uint8_t x_time2_sbox_t [256]
 Substitution box (square).
static const uint8_t x_time3_sbox_t [256]
 Substitution box (cube).
const uint32_t rcon_t []
 rcon: exponentiation of 2 to a user-specified value
uint16_t mfp_aad [10]
 Additional Authentication Data vector for MIC computation Must be in SHARED RAM when HSU is used.

Detailed Description

Manangement Frames protection module.

Copyright (C) RivieraWaves 2015-2019

Definition in file mfp_bip.c.


Generated on 14 Jan 2020 for Ceva-RW WLAN FullMAC SW documentation by  doxygen 1.6.1