Lines Matching full:0

39 static const unsigned char NIST_KW_ICV1[] = { 0xA6, 0xA6, 0xA6, 0xA6, 0xA6, 0xA6, 0xA6, 0xA6 };
41 static const unsigned char NIST_KW_ICV2[] = { 0xA6, 0x59, 0x59, 0xA6 };
48 memset(ctx, 0, sizeof(mbedtls_nist_kw_context)); in mbedtls_nist_kw_init()
86 if ((ret = mbedtls_cipher_setup(&ctx->cipher_ctx, cipher_info)) != 0) { in mbedtls_nist_kw_setkey()
93 ) != 0) { in mbedtls_nist_kw_setkey()
97 return 0; in mbedtls_nist_kw_setkey()
115 size_t i = 0; in calc_a_xor_t()
116 for (i = 0; i < sizeof(t); i++) { in calc_a_xor_t()
117 A[i] ^= (t >> ((sizeof(t) - 1 - i) * 8)) & 0xff; in calc_a_xor_t()
130 int ret = 0; in mbedtls_nist_kw_wrap()
131 size_t semiblocks = 0; in mbedtls_nist_kw_wrap()
133 size_t olen, padlen = 0; in mbedtls_nist_kw_wrap()
134 uint64_t t = 0; in mbedtls_nist_kw_wrap()
138 *out_len = 0; in mbedtls_nist_kw_wrap()
152 #if SIZE_MAX > 0x1FFFFFFFFFFFFF8 in mbedtls_nist_kw_wrap()
153 in_len > 0x1FFFFFFFFFFFFF8 || in mbedtls_nist_kw_wrap()
155 in_len % KW_SEMIBLOCK_LENGTH != 0) { in mbedtls_nist_kw_wrap()
162 if (in_len % 8 != 0) { in mbedtls_nist_kw_wrap()
175 #if SIZE_MAX > 0xFFFFFFFF in mbedtls_nist_kw_wrap()
176 || in_len > 0xFFFFFFFF in mbedtls_nist_kw_wrap()
183 MBEDTLS_PUT_UINT32_BE((in_len & 0xffffffff), output, in mbedtls_nist_kw_wrap()
187 memset(output + KW_SEMIBLOCK_LENGTH + in_len, 0, padlen); in mbedtls_nist_kw_wrap()
198 if (ret != 0) { in mbedtls_nist_kw_wrap()
220 if (ret != 0) { in mbedtls_nist_kw_wrap()
239 if (ret != 0) { in mbedtls_nist_kw_wrap()
240 memset(output, 0, semiblocks * KW_SEMIBLOCK_LENGTH); in mbedtls_nist_kw_wrap()
261 int ret = 0; in unwrap()
264 uint64_t t = 0; in unwrap()
268 *out_len = 0; in unwrap()
287 if (ret != 0) { in unwrap()
306 if (ret != 0) { in unwrap()
307 memset(output, 0, (semiblocks - 1) * KW_SEMIBLOCK_LENGTH); in unwrap()
324 int ret = 0; in mbedtls_nist_kw_unwrap()
329 *out_len = 0; in mbedtls_nist_kw_unwrap()
340 #if SIZE_MAX > 0x200000000000000 in mbedtls_nist_kw_unwrap()
341 in_len > 0x200000000000000 || in mbedtls_nist_kw_unwrap()
343 in_len % KW_SEMIBLOCK_LENGTH != 0) { in mbedtls_nist_kw_unwrap()
349 if (ret != 0) { in mbedtls_nist_kw_unwrap()
356 if (diff != 0) { in mbedtls_nist_kw_unwrap()
362 size_t padlen = 0; in mbedtls_nist_kw_unwrap()
369 #if SIZE_MAX > 0x100000000 in mbedtls_nist_kw_unwrap()
370 in_len > 0x100000000 || in mbedtls_nist_kw_unwrap()
372 in_len % KW_SEMIBLOCK_LENGTH != 0) { in mbedtls_nist_kw_unwrap()
380 if (ret != 0) { in mbedtls_nist_kw_unwrap()
392 if (ret != 0) { in mbedtls_nist_kw_unwrap()
400 if (diff != 0) { in mbedtls_nist_kw_unwrap()
417 const uint8_t zero[KW_SEMIBLOCK_LENGTH] = { 0 }; in mbedtls_nist_kw_unwrap()
420 KW_SEMIBLOCK_LENGTH, KW_SEMIBLOCK_LENGTH - padlen, 0); in mbedtls_nist_kw_unwrap()
422 if (diff != 0) { in mbedtls_nist_kw_unwrap()
426 if (ret != 0) { in mbedtls_nist_kw_unwrap()
429 memset(output + Plen, 0, padlen); in mbedtls_nist_kw_unwrap()
437 if (ret != 0) { in mbedtls_nist_kw_unwrap()
438 memset(output, 0, *out_len); in mbedtls_nist_kw_unwrap()
439 *out_len = 0; in mbedtls_nist_kw_unwrap()
465 { 0x75, 0x75, 0xda, 0x3a, 0x93, 0x60, 0x7c, 0xc2,
466 0xbf, 0xd8, 0xce, 0xc7, 0xaa, 0xdf, 0xd9, 0xa6 },
468 { 0x2d, 0x85, 0x26, 0x08, 0x1d, 0x02, 0xfb, 0x5b,
469 0x85, 0xf6, 0x9a, 0xc2, 0x86, 0xec, 0xd5, 0x7d,
470 0x40, 0xdf, 0x5d, 0xf3, 0x49, 0x47, 0x44, 0xd3 },
471 { 0x11, 0x2a, 0xd4, 0x1b, 0x48, 0x56, 0xc7, 0x25,
472 0x4a, 0x98, 0x48, 0xd3, 0x0f, 0xdd, 0x78, 0x33,
473 0x5b, 0x03, 0x9a, 0x48, 0xa8, 0x96, 0x2c, 0x4d,
474 0x1c, 0xb7, 0x8e, 0xab, 0xd5, 0xda, 0xd7, 0x88 }
479 { 0x42, 0x13, 0x6d, 0x3c, 0x38, 0x4a, 0x3e, 0xea,
480 0xc9, 0x5a, 0x06, 0x6f, 0xd2, 0x8f, 0xed, 0x3f },
482 { 0x95, 0xc1, 0x1b, 0xf5, 0x35, 0x3a, 0xfe, 0xdb,
483 0x98, 0xfd, 0xd6, 0xc8, 0xca, 0x6f, 0xdb, 0x6d,
484 0xa5, 0x4b, 0x74, 0xb4, 0x99, 0x0f, 0xdc, 0x45,
485 0xc0, 0x9d, 0x15, 0x8f, 0x51, 0xce, 0x62, 0x9d,
486 0xe2, 0xaf, 0x26, 0xe3, 0x25, 0x0e, 0x6b, 0x4c },
487 { 0x1b, 0x20, 0xbf, 0x19, 0x90, 0xb0, 0x65, 0xd7,
488 0x98, 0xe1, 0xb3, 0x22, 0x64, 0xad, 0x50, 0xa8,
489 0x74, 0x74, 0x92, 0xba, 0x09, 0xa0, 0x4d, 0xd1 }
508 { 0x03, 0x1f, 0x6b, 0xd7, 0xe6, 0x1e, 0x64, 0x3d,
509 0xf6, 0x85, 0x94, 0x81, 0x6f, 0x64, 0xca, 0xa3,
510 0xf5, 0x6f, 0xab, 0xea, 0x25, 0x48, 0xf5, 0xfb },
512 { 0x44, 0x3c, 0x6f, 0x15, 0x09, 0x83, 0x71, 0x91,
513 0x3e, 0x5c, 0x81, 0x4c, 0xa1, 0xa0, 0x42, 0xec,
514 0x68, 0x2f, 0x7b, 0x13, 0x6d, 0x24, 0x3a, 0x4d,
515 0x6c, 0x42, 0x6f, 0xc6, 0x97, 0x15, 0x63, 0xe8,
516 0xa1, 0x4a, 0x55, 0x8e, 0x09, 0x64, 0x16, 0x19,
517 0xbf, 0x03, 0xfc, 0xaf, 0x90, 0xb1, 0xfc, 0x2d },
518 { 0xba, 0x8a, 0x25, 0x9a, 0x47, 0x1b, 0x78, 0x7d,
519 0xd5, 0xd5, 0x40, 0xec, 0x25, 0xd4, 0x3d, 0x87,
520 0x20, 0x0f, 0xda, 0xdc, 0x6d, 0x1f, 0x05, 0xd9,
521 0x16, 0x58, 0x4f, 0xa9, 0xf6, 0xcb, 0xf5, 0x12 }
526 { 0x78, 0x65, 0xe2, 0x0f, 0x3c, 0x21, 0x65, 0x9a,
527 0xb4, 0x69, 0x0b, 0x62, 0x9c, 0xdf, 0x3c, 0xc4 },
529 { 0xf5, 0xf8, 0x96, 0xa3, 0xbd, 0x2f, 0x4a, 0x98,
530 0x23, 0xef, 0x16, 0x2b, 0x00, 0xb8, 0x05, 0xd7,
531 0xde, 0x1e, 0xa4, 0x66, 0x26, 0x96, 0xa2, 0x58 },
532 { 0x95, 0xda, 0x27, 0x00, 0xca, 0x6f, 0xd9, 0xa5,
533 0x25, 0x54, 0xee, 0x2a, 0x8d, 0xf1, 0x38, 0x6f,
534 0x5b, 0x94, 0xa1, 0xa6, 0x0e, 0xd8, 0xa4, 0xae,
535 0xf6, 0x0a, 0x8d, 0x61, 0xab, 0x5f, 0x22, 0x5a }
540 { 0xbd, 0x68, 0x43, 0xd4, 0x20, 0x37, 0x8d, 0xc8,
541 0x96 },
543 { 0x6c, 0xcd, 0xd5, 0x85, 0x18, 0x40, 0x97, 0xeb,
544 0xd5, 0xc3, 0xaf, 0x3e, 0x47, 0xd0, 0x2c, 0x19,
545 0x14, 0x7b, 0x4d, 0x99, 0x5f, 0x96, 0x43, 0x66,
546 0x91, 0x56, 0x75, 0x8c, 0x13, 0x16, 0x8f },
547 { 0xd1 }
559 { 0x41, 0xec, 0xa9, 0x56, 0xd4, 0xaa, 0x04, 0x7e,
560 0xb5, 0xcf, 0x4e, 0xfe, 0x65, 0x96, 0x61, 0xe7,
561 0x4d, 0xb6, 0xf8, 0xc5, 0x64, 0xe2, 0x35, 0x00 },
563 { 0x4e, 0x9b, 0xc2, 0xbc, 0xbc, 0x6c, 0x1e, 0x13,
564 0xd3, 0x35, 0xbc, 0xc0, 0xf7, 0x73, 0x6a, 0x88,
565 0xfa, 0x87, 0x53, 0x66, 0x15, 0xbb, 0x8e, 0x63,
566 0x8b, 0xcc, 0x81, 0x66, 0x84, 0x68, 0x17, 0x90,
567 0x67, 0xcf, 0xa9, 0x8a, 0x9d, 0x0e, 0x33, 0x26 },
568 { 0x06, 0xba, 0x7a, 0xe6, 0xf3, 0x24, 0x8c, 0xfd,
569 0xcf, 0x26, 0x75, 0x07, 0xfa, 0x00, 0x1b, 0xc4 }
586 int ret = 0; in mbedtls_nist_kw_self_test()
595 for (i = 0; i < num_tests; i++) { in mbedtls_nist_kw_self_test()
596 if (verbose != 0) { in mbedtls_nist_kw_self_test()
602 if (ret != 0) { in mbedtls_nist_kw_self_test()
603 if (verbose != 0) { in mbedtls_nist_kw_self_test()
612 if (ret != 0 || kw_out_len[i] != olen || in mbedtls_nist_kw_self_test()
613 memcmp(out, kw_res[i], kw_out_len[i]) != 0) { in mbedtls_nist_kw_self_test()
614 if (verbose != 0) { in mbedtls_nist_kw_self_test()
623 kw_key[i], key_len[i] * 8, 0)) in mbedtls_nist_kw_self_test()
624 != 0) { in mbedtls_nist_kw_self_test()
625 if (verbose != 0) { in mbedtls_nist_kw_self_test()
635 if (ret != 0 || olen != kw_msg_len[i] || in mbedtls_nist_kw_self_test()
636 memcmp(out, kw_msg[i], kw_msg_len[i]) != 0) { in mbedtls_nist_kw_self_test()
637 if (verbose != 0) { in mbedtls_nist_kw_self_test()
645 if (verbose != 0) { in mbedtls_nist_kw_self_test()
657 for (i = 0; i < num_tests; i++) { in mbedtls_nist_kw_self_test()
659 if (verbose != 0) { in mbedtls_nist_kw_self_test()
665 if (ret != 0) { in mbedtls_nist_kw_self_test()
666 if (verbose != 0) { in mbedtls_nist_kw_self_test()
675 if (ret != 0 || kwp_out_len[i] != olen || in mbedtls_nist_kw_self_test()
676 memcmp(out, kwp_res[i], kwp_out_len[i]) != 0) { in mbedtls_nist_kw_self_test()
677 if (verbose != 0) { in mbedtls_nist_kw_self_test()
686 kwp_key[i], key_len[i] * 8, 0)) in mbedtls_nist_kw_self_test()
687 != 0) { in mbedtls_nist_kw_self_test()
688 if (verbose != 0) { in mbedtls_nist_kw_self_test()
698 if (ret != 0 || olen != kwp_msg_len[i] || in mbedtls_nist_kw_self_test()
699 memcmp(out, kwp_msg[i], kwp_msg_len[i]) != 0) { in mbedtls_nist_kw_self_test()
700 if (verbose != 0) { in mbedtls_nist_kw_self_test()
708 if (verbose != 0) { in mbedtls_nist_kw_self_test()
716 if (verbose != 0) { in mbedtls_nist_kw_self_test()