Lines Matching refs:state
91 static inline void chacha20_quarter_round( uint32_t state[16], in chacha20_quarter_round()
98 state[a] += state[b]; in chacha20_quarter_round()
99 state[d] ^= state[a]; in chacha20_quarter_round()
100 state[d] = ROTL32( state[d], 16 ); in chacha20_quarter_round()
103 state[c] += state[d]; in chacha20_quarter_round()
104 state[b] ^= state[c]; in chacha20_quarter_round()
105 state[b] = ROTL32( state[b], 12 ); in chacha20_quarter_round()
108 state[a] += state[b]; in chacha20_quarter_round()
109 state[d] ^= state[a]; in chacha20_quarter_round()
110 state[d] = ROTL32( state[d], 8 ); in chacha20_quarter_round()
113 state[c] += state[d]; in chacha20_quarter_round()
114 state[b] ^= state[c]; in chacha20_quarter_round()
115 state[b] = ROTL32( state[b], 7 ); in chacha20_quarter_round()
126 static void chacha20_inner_block( uint32_t state[16] ) in chacha20_inner_block()
128 chacha20_quarter_round( state, 0, 4, 8, 12 ); in chacha20_inner_block()
129 chacha20_quarter_round( state, 1, 5, 9, 13 ); in chacha20_inner_block()
130 chacha20_quarter_round( state, 2, 6, 10, 14 ); in chacha20_inner_block()
131 chacha20_quarter_round( state, 3, 7, 11, 15 ); in chacha20_inner_block()
133 chacha20_quarter_round( state, 0, 5, 10, 15 ); in chacha20_inner_block()
134 chacha20_quarter_round( state, 1, 6, 11, 12 ); in chacha20_inner_block()
135 chacha20_quarter_round( state, 2, 7, 8, 13 ); in chacha20_inner_block()
136 chacha20_quarter_round( state, 3, 4, 9, 14 ); in chacha20_inner_block()
192 mbedtls_platform_zeroize( ctx->state, sizeof( ctx->state ) ); in mbedtls_chacha20_init()
214 ctx->state[0] = 0x61707865; in mbedtls_chacha20_setkey()
215 ctx->state[1] = 0x3320646e; in mbedtls_chacha20_setkey()
216 ctx->state[2] = 0x79622d32; in mbedtls_chacha20_setkey()
217 ctx->state[3] = 0x6b206574; in mbedtls_chacha20_setkey()
220 ctx->state[4] = BYTES_TO_U32_LE( key, 0 ); in mbedtls_chacha20_setkey()
221 ctx->state[5] = BYTES_TO_U32_LE( key, 4 ); in mbedtls_chacha20_setkey()
222 ctx->state[6] = BYTES_TO_U32_LE( key, 8 ); in mbedtls_chacha20_setkey()
223 ctx->state[7] = BYTES_TO_U32_LE( key, 12 ); in mbedtls_chacha20_setkey()
224 ctx->state[8] = BYTES_TO_U32_LE( key, 16 ); in mbedtls_chacha20_setkey()
225 ctx->state[9] = BYTES_TO_U32_LE( key, 20 ); in mbedtls_chacha20_setkey()
226 ctx->state[10] = BYTES_TO_U32_LE( key, 24 ); in mbedtls_chacha20_setkey()
227 ctx->state[11] = BYTES_TO_U32_LE( key, 28 ); in mbedtls_chacha20_setkey()
240 ctx->state[12] = counter; in mbedtls_chacha20_starts()
243 ctx->state[13] = BYTES_TO_U32_LE( nonce, 0 ); in mbedtls_chacha20_starts()
244 ctx->state[14] = BYTES_TO_U32_LE( nonce, 4 ); in mbedtls_chacha20_starts()
245 ctx->state[15] = BYTES_TO_U32_LE( nonce, 8 ); in mbedtls_chacha20_starts()
282 chacha20_block( ctx->state, ctx->keystream8 ); in mbedtls_chacha20_update()
283 ctx->state[CHACHA20_CTR_INDEX]++; in mbedtls_chacha20_update()
305 chacha20_block( ctx->state, ctx->keystream8 ); in mbedtls_chacha20_update()
306 ctx->state[CHACHA20_CTR_INDEX]++; in mbedtls_chacha20_update()