[][src]Type Definition lpc55s6x_pac::hashcrypt::cryptcfg::R

type R = R<u32, CRYPTCFG>;

Reader of register CRYPTCFG

Methods

impl R[src]

pub fn msw1st_out(&self) -> MSW1ST_OUT_R[src]

Bit 0 - If 1, OUTDATA0 will be read Most significant word 1st for AES. Else it will be read in normal little endian - Least significant word 1st. Note: only if allowed by configuration.

pub fn swapkey(&self) -> SWAPKEY_R[src]

Bit 1 - If 1, will Swap the key input (bytes in each word).

pub fn swapdat(&self) -> SWAPDAT_R[src]

Bit 2 - If 1, will SWAP the data and IV inputs (bytes in each word).

pub fn msw1st(&self) -> MSW1ST_R[src]

Bit 3 - If 1, load of key, IV, and data is MSW 1st for AES. Else, the words are little endian. Note: only if allowed by configuration.

pub fn aesmode(&self) -> AESMODE_R[src]

Bits 4:5 - AES Cipher mode to use if plain AES

pub fn aesdecrypt(&self) -> AESDECRYPT_R[src]

Bit 6 - AES ECB direction. Only encryption used if CTR mode or manual modes such as CFB

pub fn aessecret(&self) -> AESSECRET_R[src]

Bit 7 - Selects the Hidden Secret key vs. User key, if provided. If security levels are used, only the highest level is permitted to select this.

pub fn aeskeysz(&self) -> AESKEYSZ_R[src]

Bits 8:9 - Sets the AES key size

pub fn aesctrpos(&self) -> AESCTRPOS_R[src]

Bits 10:12 - Halfword position of 16b counter in IV if AESMODE is CTR (position is fixed for Salsa and ChaCha). Only supports 16b counter, so application must control any additional bytes if using more. The 16-bit counter is read from the IV and incremented by 1 each time. Any other use CTR should use ECB directly and do its own XOR and so on.

pub fn streamlast(&self) -> STREAMLAST_R[src]

Bit 16 - Is 1 if last stream block. If not 1, then the engine will compute the next "hash".

pub fn xsalsa(&self) -> XSALSA_R[src]

Bit 17 - Is 1 if XSalsa 128b NONCE to be used vs. 64b

pub fn icbsz(&self) -> ICBSZ_R[src]

Bits 20:21 - This sets the ICB size between 32 and 128 bits, using the following rules. Note that the counter is assumed to occupy the low order bits of the IV.

pub fn icbstrm(&self) -> ICBSTRM_R[src]

Bits 22:23 - The size of the ICB-AES stream that can be pushed before needing to compute a new IV/ctr (counter start). This optimizes the performance of the stream of blocks after the 1st.