Lines Matching refs:ctx

53 void mbedtls_sha256_init( mbedtls_sha256_context *ctx )  in mbedtls_sha256_init()  argument
55 SHA256_VALIDATE( ctx != NULL ); in mbedtls_sha256_init()
57 memset( ctx, 0, sizeof( mbedtls_sha256_context ) ); in mbedtls_sha256_init()
60 void mbedtls_sha256_free( mbedtls_sha256_context *ctx ) in mbedtls_sha256_free() argument
62 if( ctx == NULL ) in mbedtls_sha256_free()
65 mbedtls_platform_zeroize( ctx, sizeof( mbedtls_sha256_context ) ); in mbedtls_sha256_free()
80 int mbedtls_sha256_starts( mbedtls_sha256_context *ctx, int is224 ) in mbedtls_sha256_starts() argument
82 SHA256_VALIDATE_RET( ctx != NULL ); in mbedtls_sha256_starts()
90 ctx->total[0] = 0; in mbedtls_sha256_starts()
91 ctx->total[1] = 0; in mbedtls_sha256_starts()
96 ctx->state[0] = 0x6A09E667; in mbedtls_sha256_starts()
97 ctx->state[1] = 0xBB67AE85; in mbedtls_sha256_starts()
98 ctx->state[2] = 0x3C6EF372; in mbedtls_sha256_starts()
99 ctx->state[3] = 0xA54FF53A; in mbedtls_sha256_starts()
100 ctx->state[4] = 0x510E527F; in mbedtls_sha256_starts()
101 ctx->state[5] = 0x9B05688C; in mbedtls_sha256_starts()
102 ctx->state[6] = 0x1F83D9AB; in mbedtls_sha256_starts()
103 ctx->state[7] = 0x5BE0CD19; in mbedtls_sha256_starts()
109 ctx->state[0] = 0xC1059ED8; in mbedtls_sha256_starts()
110 ctx->state[1] = 0x367CD507; in mbedtls_sha256_starts()
111 ctx->state[2] = 0x3070DD17; in mbedtls_sha256_starts()
112 ctx->state[3] = 0xF70E5939; in mbedtls_sha256_starts()
113 ctx->state[4] = 0xFFC00B31; in mbedtls_sha256_starts()
114 ctx->state[5] = 0x68581511; in mbedtls_sha256_starts()
115 ctx->state[6] = 0x64F98FA7; in mbedtls_sha256_starts()
116 ctx->state[7] = 0xBEFA4FA4; in mbedtls_sha256_starts()
120 ctx->is224 = is224; in mbedtls_sha256_starts()
172 int mbedtls_internal_sha256_process( mbedtls_sha256_context *ctx, in mbedtls_internal_sha256_process() argument
183 SHA256_VALIDATE_RET( ctx != NULL ); in mbedtls_internal_sha256_process()
187 local.A[i] = ctx->state[i]; in mbedtls_internal_sha256_process()
252 ctx->state[i] += local.A[i]; in mbedtls_internal_sha256_process()
265 int mbedtls_sha256_update( mbedtls_sha256_context *ctx, in mbedtls_sha256_update() argument
273 SHA256_VALIDATE_RET( ctx != NULL ); in mbedtls_sha256_update()
279 left = ctx->total[0] & 0x3F; in mbedtls_sha256_update()
282 ctx->total[0] += (uint32_t) ilen; in mbedtls_sha256_update()
283 ctx->total[0] &= 0xFFFFFFFF; in mbedtls_sha256_update()
285 if( ctx->total[0] < (uint32_t) ilen ) in mbedtls_sha256_update()
286 ctx->total[1]++; in mbedtls_sha256_update()
290 memcpy( (void *) (ctx->buffer + left), input, fill ); in mbedtls_sha256_update()
292 if( ( ret = mbedtls_internal_sha256_process( ctx, ctx->buffer ) ) != 0 ) in mbedtls_sha256_update()
302 if( ( ret = mbedtls_internal_sha256_process( ctx, input ) ) != 0 ) in mbedtls_sha256_update()
310 memcpy( (void *) (ctx->buffer + left), input, ilen ); in mbedtls_sha256_update()
318 int mbedtls_sha256_finish( mbedtls_sha256_context *ctx, in mbedtls_sha256_finish() argument
325 SHA256_VALIDATE_RET( ctx != NULL ); in mbedtls_sha256_finish()
331 used = ctx->total[0] & 0x3F; in mbedtls_sha256_finish()
333 ctx->buffer[used++] = 0x80; in mbedtls_sha256_finish()
338 memset( ctx->buffer + used, 0, 56 - used ); in mbedtls_sha256_finish()
343 memset( ctx->buffer + used, 0, 64 - used ); in mbedtls_sha256_finish()
345 if( ( ret = mbedtls_internal_sha256_process( ctx, ctx->buffer ) ) != 0 ) in mbedtls_sha256_finish()
348 memset( ctx->buffer, 0, 56 ); in mbedtls_sha256_finish()
354 high = ( ctx->total[0] >> 29 ) in mbedtls_sha256_finish()
355 | ( ctx->total[1] << 3 ); in mbedtls_sha256_finish()
356 low = ( ctx->total[0] << 3 ); in mbedtls_sha256_finish()
358 MBEDTLS_PUT_UINT32_BE( high, ctx->buffer, 56 ); in mbedtls_sha256_finish()
359 MBEDTLS_PUT_UINT32_BE( low, ctx->buffer, 60 ); in mbedtls_sha256_finish()
361 if( ( ret = mbedtls_internal_sha256_process( ctx, ctx->buffer ) ) != 0 ) in mbedtls_sha256_finish()
367 MBEDTLS_PUT_UINT32_BE( ctx->state[0], output, 0 ); in mbedtls_sha256_finish()
368 MBEDTLS_PUT_UINT32_BE( ctx->state[1], output, 4 ); in mbedtls_sha256_finish()
369 MBEDTLS_PUT_UINT32_BE( ctx->state[2], output, 8 ); in mbedtls_sha256_finish()
370 MBEDTLS_PUT_UINT32_BE( ctx->state[3], output, 12 ); in mbedtls_sha256_finish()
371 MBEDTLS_PUT_UINT32_BE( ctx->state[4], output, 16 ); in mbedtls_sha256_finish()
372 MBEDTLS_PUT_UINT32_BE( ctx->state[5], output, 20 ); in mbedtls_sha256_finish()
373 MBEDTLS_PUT_UINT32_BE( ctx->state[6], output, 24 ); in mbedtls_sha256_finish()
376 if( ctx->is224 == 0 ) in mbedtls_sha256_finish()
378 MBEDTLS_PUT_UINT32_BE( ctx->state[7], output, 28 ); in mbedtls_sha256_finish()
394 mbedtls_sha256_context ctx; in mbedtls_sha256() local
405 mbedtls_sha256_init( &ctx ); in mbedtls_sha256()
407 if( ( ret = mbedtls_sha256_starts( &ctx, is224 ) ) != 0 ) in mbedtls_sha256()
410 if( ( ret = mbedtls_sha256_update( &ctx, input, ilen ) ) != 0 ) in mbedtls_sha256()
413 if( ( ret = mbedtls_sha256_finish( &ctx, output ) ) != 0 ) in mbedtls_sha256()
417 mbedtls_sha256_free( &ctx ); in mbedtls_sha256()
481 mbedtls_sha256_context ctx; in mbedtls_sha256_self_test() local
492 mbedtls_sha256_init( &ctx ); in mbedtls_sha256_self_test()
502 if( ( ret = mbedtls_sha256_starts( &ctx, k ) ) != 0 ) in mbedtls_sha256_self_test()
511 ret = mbedtls_sha256_update( &ctx, buf, buflen ); in mbedtls_sha256_self_test()
519 ret = mbedtls_sha256_update( &ctx, sha256_test_buf[j], in mbedtls_sha256_self_test()
525 if( ( ret = mbedtls_sha256_finish( &ctx, sha256sum ) ) != 0 ) in mbedtls_sha256_self_test()
549 mbedtls_sha256_free( &ctx ); in mbedtls_sha256_self_test()