Address offset: 0x380
Control the CHACHA engine behavior.
| Bit number | 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ID | G | F | E | E | D | C | B | A | |||||||||||||||||||||||||||
| Reset 0x00000000 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||
| ID | R/W | Field | Value ID | Value | Description | ||||||||||||||||||||||||||||||
| A |
RW |
CHACHA_OR_SALSA |
Run engine in ChaCha or Salsa mode |
||||||||||||||||||||||||||||||||
|
ChaCha |
0 |
Run engine in ChaCha mode |
|||||||||||||||||||||||||||||||||
|
Salsa |
1 |
Run engine in Salsa mode |
|||||||||||||||||||||||||||||||||
| B |
RW |
INIT |
Perform initialization for a new message |
||||||||||||||||||||||||||||||||
|
Disable |
0 |
Message already initialized |
|||||||||||||||||||||||||||||||||
|
Enable |
1 |
Initialize new message |
|||||||||||||||||||||||||||||||||
| C |
RW |
GEN_KEY_POLY1305 |
Generate the key to use in Poly1305 message authentication code calculation. |
||||||||||||||||||||||||||||||||
|
Disable |
0 |
Do not generate Poly1305 key |
|||||||||||||||||||||||||||||||||
|
Enable |
1 |
Generate Poly1305 key |
|||||||||||||||||||||||||||||||||
| D |
RW |
KEY_LEN |
Key length selection. |
||||||||||||||||||||||||||||||||
|
256Bits |
0 |
Use 256 bits key length |
|||||||||||||||||||||||||||||||||
|
128Bits |
1 |
Use 128 bits key length |
|||||||||||||||||||||||||||||||||
| E |
RW |
NUM_OF_ROUNDS |
Set number of permutation rounds, default value is 20. |
||||||||||||||||||||||||||||||||
|
Default |
0 |
Use 20 rounds of rotation (default) |
|||||||||||||||||||||||||||||||||
|
12Rounds |
1 |
Use 12 rounds of rotation |
|||||||||||||||||||||||||||||||||
|
8Rounds |
2 |
Use 8 rounds of rotation |
|||||||||||||||||||||||||||||||||
| F |
RW |
RESET_BLOCK_CNT |
Reset block counter for new messages |
||||||||||||||||||||||||||||||||
|
Disable |
0 |
Use current block counter value |
|||||||||||||||||||||||||||||||||
|
Enable |
1 |
Reset block counter value to zero |
|||||||||||||||||||||||||||||||||
| G |
RW |
USE_IV_96BIT |
Use 96 bits Initialization Vector (IV) |
||||||||||||||||||||||||||||||||
|
Disable |
0 |
Use default size IV of 64 bit |
|||||||||||||||||||||||||||||||||
|
Enable |
1 |
The IV is 96 bits |
|||||||||||||||||||||||||||||||||