-
Notifications
You must be signed in to change notification settings - Fork 7
/
test_data_4.txt
706 lines (643 loc) · 28.2 KB
/
test_data_4.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
The following data are used in function 'test_sha512_hash_drbg_with_prediction_resistance( )'. They are excerpted from the document provided by NIST. The document can be downloaded from: https://csrc.nist.gov/CSRC/media/Projects/Cryptographic-Standards-and-Guidelines/documents/examples/Hash_DRBG.pdf
Page 516.-- 536.
##############################################################
Hash_DRBG
Requested Security Strength = 256
Requested Hash Algorithm = SHA-512
prediction_resistance_flag = "ENABLED"
EntropyInput =
000102 03040506 0708090A 0B0C0D0E
0F101112 13141516 1718191A 1B1C1D1E 1F202122 23242526
2728292A 2B2C2D2E 2F303132 33343536 3738393A 3B3C3D3E
3F404142 43444546 4748494A 4B4C4D4E 4F505152 53545556
5758595A 5B5C5D5E 5F606162 63646566 6768696A 6B6C6D6E
EntropyInput1 (for Reseed1) =
808182 83848586 8788898A 8B8C8D8E
8F909192 93949596 9798999A 9B9C9D9E 9FA0A1A2 A3A4A5A6
A7A8A9AA ABACADAE AFB0B1B2 B3B4B5B6 B7B8B9BA BBBCBDBE
BFC0C1C2 C3C4C5C6 C7C8C9CA CBCCCDCE CFD0D1D2 D3D4D5D6
D7D8D9DA DBDCDDDE DFE0E1E2 E3E4E5E6 E7E8E9EA EBECEDEE
EntropyInput2 (for Reseed2) =
C0C1C2 C3C4C5C6 C7C8C9CA CBCCCDCE
CFD0D1D2 D3D4D5D6 D7D8D9DA DBDCDDDE DFE0E1E2 E3E4E5E6
E7E8E9EA EBECEDEE EFF0F1F2 F3F4F5F6 F7F8F9FA FBFCFDFE
FF000102 03040506 0708090A 0B0C0D0E 0F101112 13141516
1718191A 1B1C1D1E 1F202122 23242526 2728292A 2B2C2D2E
Nonce =
20212223 24252627 28292A2B 2C2D2E2F
PersonalizationString =
404142 43444546 4748494A 4B4C4D4E
4F505152 53545556 5758595A 5B5C5D5E 5F606162 63646566
6768696A 6B6C6D6E 6F707172 73747576 7778797A 7B7C7D7E
7F808182 83848586 8788898A 8B8C8D8E 8F909192 93949596
9798999A 9B9C9D9E 9FA0A1A2 A3A4A5A6 A7A8A9AA ABACADAE
AdditionalInput1 =
606162 63646566 6768696A 6B6C6D6E
6F707172 73747576 7778797A 7B7C7D7E 7F808182 83848586
8788898A 8B8C8D8E 8F909192 93949596 9798999A 9B9C9D9E
9FA0A1A2 A3A4A5A6 A7A8A9AA ABACADAE AFB0B1B2 B3B4B5B6
B7B8B9BA BBBCBDBE BFC0C1C2 C3C4C5C6 C7C8C9CA CBCCCDCE
AdditionalInput2 =
A0A1A2 A3A4A5A6 A7A8A9AA ABACADAE
AFB0B1B2 B3B4B5B6 B7B8B9BA BBBCBDBE BFC0C1C2 C3C4C5C6
C7C8C9CA CBCCCDCE CFD0D1D2 D3D4D5D6 D7D8D9DA DBDCDDDE
DFE0E1E2 E3E4E5E6 E7E8E9EA EBECEDEE EFF0F1F2 F3F4F5F6
F7F8F9FA FBFCFDFE FF000102 03040506 0708090A 0B0C0D0E
##############################################################
**************************************************************
Hash_DRBG_Instantiate_algorithm
entropy_input is
000102 03040506 0708090A 0B0C0D0E
0F101112 13141516 1718191A 1B1C1D1E 1F202122 23242526
2728292A 2B2C2D2E 2F303132 33343536 3738393A 3B3C3D3E
3F404142 43444546 4748494A 4B4C4D4E 4F505152 53545556
5758595A 5B5C5D5E 5F606162 63646566 6768696A 6B6C6D6E
nonce is
20212223 24252627 28292A2B 2C2D2E2F
---------------------------
personal_str is
404142 43444546 4748494A 4B4C4D4E
4F505152 53545556 5758595A 5B5C5D5E 5F606162 63646566
6768696A 6B6C6D6E 6F707172 73747576 7778797A 7B7C7D7E
7F808182 83848586 8788898A 8B8C8D8E 8F909192 93949596
9798999A 9B9C9D9E 9FA0A1A2 A3A4A5A6 A7A8A9AA ABACADAE
prediction_resistance_flag = "PredictionResistance"
Hash_df - Generate seed(which is V) - Step 2
seed_material is
0001 02030405 06070809 0A0B0C0D 0E0F1011 12131415
16171819 1A1B1C1D 1E1F2021 22232425 26272829 2A2B2C2D
2E2F3031 32333435 36373839 3A3B3C3D 3E3F4041 42434445
46474849 4A4B4C4D 4E4F5051 52535455 56575859 5A5B5C5D
5E5F6061 62636465 66676869 6A6B6C6D 6E202122 23242526
2728292A 2B2C2D2E 2F404142 43444546 4748494A 4B4C4D4E
4F505152 53545556 5758595A 5B5C5D5E 5F606162 63646566
6768696A 6B6C6D6E 6F707172 73747576 7778797A 7B7C7D7E
7F808182 83848586 8788898A 8B8C8D8E 8F909192 93949596
9798999A 9B9C9D9E 9FA0A1A2 A3A4A5A6 A7A8A9AA ABACADAE
no_of_bits_to_return = 888
------------
i = 1
counter||no_of_bits_to_return||input_string is
010000
03780001 02030405 06070809 0A0B0C0D 0E0F1011 12131415
16171819 1A1B1C1D 1E1F2021 22232425 26272829 2A2B2C2D
2E2F3031 32333435 36373839 3A3B3C3D 3E3F4041 42434445
46474849 4A4B4C4D 4E4F5051 52535455 56575859 5A5B5C5D
5E5F6061 62636465 66676869 6A6B6C6D 6E202122 23242526
2728292A 2B2C2D2E 2F404142 43444546 4748494A 4B4C4D4E
4F505152 53545556 5758595A 5B5C5D5E 5F606162 63646566
6768696A 6B6C6D6E 6F707172 73747576 7778797A 7B7C7D7E
7F808182 83848586 8788898A 8B8C8D8E 8F909192 93949596
9798999A 9B9C9D9E 9FA0A1A2 A3A4A5A6 A7A8A9AA ABACADAE
Hash(counter||no_of_bits_to_return||input_string) is
E5A5C585 D6A9E11C 58581F35 14EE19A7
048CF096 A3E9B139 D9C0A2C0 67931041 4073C104 E2F6F8A3
7C7C666E 11FF4439 33ABA1CF AD4C620C DFF5DA8C 0860CEEE
temp =
E5A5C585 D6A9E11C 58581F35 14EE19A7
048CF096 A3E9B139 D9C0A2C0 67931041 4073C104 E2F6F8A3
7C7C666E 11FF4439 33ABA1CF AD4C620C DFF5DA8C 0860CEEE
------------
i = 2
counter||no_of_bits_to_return||input_string is
020000
03780001 02030405 06070809 0A0B0C0D 0E0F1011 12131415
16171819 1A1B1C1D 1E1F2021 22232425 26272829 2A2B2C2D
2E2F3031 32333435 36373839 3A3B3C3D 3E3F4041 42434445
46474849 4A4B4C4D 4E4F5051 52535455 56575859 5A5B5C5D
5E5F6061 62636465 66676869 6A6B6C6D 6E202122 23242526
2728292A 2B2C2D2E 2F404142 43444546 4748494A 4B4C4D4E
4F505152 53545556 5758595A 5B5C5D5E 5F606162 63646566
6768696A 6B6C6D6E 6F707172 73747576 7778797A 7B7C7D7E
7F808182 83848586 8788898A 8B8C8D8E 8F909192 93949596
9798999A 9B9C9D9E 9FA0A1A2 A3A4A5A6 A7A8A9AA ABACADAE
Hash(counter||no_of_bits_to_return||input_string) is
80B87195 7508538D 2D87A4A3 B5728ADB
4191974A 384F323D 2E585869 5C152F99 D0E8CF4C B41BC2A6
12955B4C 4838B9FB EB00568D 36F727E1 742FF774 E8542A4B
temp =
E5A5C5 85D6A9E1 1C58581F 3514EE19
A7048CF0 96A3E9B1 39D9C0A2 C0679310 414073C1 04E2F6F8
A37C7C66 6E11FF44 3933ABA1 CFAD4C62 0CDFF5DA 8C0860CE
EE80B871 95750853 8D2D87A4 A3B5728A DB419197 4A384F32
3D2E5858 695C152F 99D0E8CF 4CB41BC2 A612955B 4C4838B9
---------------------------
V is
E5A5C5 85D6A9E1 1C58581F 3514EE19
A7048CF0 96A3E9B1 39D9C0A2 C0679310 414073C1 04E2F6F8
A37C7C66 6E11FF44 3933ABA1 CFAD4C62 0CDFF5DA 8C0860CE
EE80B871 95750853 8D2D87A4 A3B5728A DB419197 4A384F32
3D2E5858 695C152F 99D0E8CF 4CB41BC2 A612955B 4C4838B9
Hash_df - Generate C - Step 4
0x00||V is
00E5A5C5 85D6A9E1 1C58581F 3514EE19
A7048CF0 96A3E9B1 39D9C0A2 C0679310 414073C1 04E2F6F8
A37C7C66 6E11FF44 3933ABA1 CFAD4C62 0CDFF5DA 8C0860CE
EE80B871 95750853 8D2D87A4 A3B5728A DB419197 4A384F32
3D2E5858 695C152F 99D0E8CF 4CB41BC2 A612955B 4C4838B9
no_of_bits_to_return = 888
------------
i = 1
counter||no_of_bits_to_return||input_string is
01 00000378 00E5A5C5 85D6A9E1 1C58581F 3514EE19
A7048CF0 96A3E9B1 39D9C0A2 C0679310 414073C1 04E2F6F8
A37C7C66 6E11FF44 3933ABA1 CFAD4C62 0CDFF5DA 8C0860CE
EE80B871 95750853 8D2D87A4 A3B5728A DB419197 4A384F32
3D2E5858 695C152F 99D0E8CF 4CB41BC2 A612955B 4C4838B9
Hash(counter||no_of_bits_to_return||input_string) is
0C193DBC 1942C121 C63513ED 95ECA91C
62C55031 7506462C 47B0F34F 99716F36 EAD9FF51 ACAB423C
421CAB62 DF4D8C79 2E38D533 9D60AA24 0292E134 A249A577
temp =
0C193DBC 1942C121 C63513ED 95ECA91C
62C55031 7506462C 47B0F34F 99716F36 EAD9FF51 ACAB423C
421CAB62 DF4D8C79 2E38D533 9D60AA24 0292E134 A249A577
------------
i = 2
counter||no_of_bits_to_return||input_string is
02 00000378 00E5A5C5 85D6A9E1 1C58581F 3514EE19
A7048CF0 96A3E9B1 39D9C0A2 C0679310 414073C1 04E2F6F8
A37C7C66 6E11FF44 3933ABA1 CFAD4C62 0CDFF5DA 8C0860CE
EE80B871 95750853 8D2D87A4 A3B5728A DB419197 4A384F32
3D2E5858 695C152F 99D0E8CF 4CB41BC2 A612955B 4C4838B9
Hash(counter||no_of_bits_to_return||input_string) is
0176FE93 A4C199A2 258615DD A840AE6F
C2E7DB39 1315119E 57774F94 396C81F5 F8D4835D 618D960B
297E97F1 A21B35E3 E450A877 4819D918 961DFC01 FFC73630
temp =
0C193D BC1942C1 21C63513 ED95ECA9
--------------------------------------------------------------
1C62C550 31750646 2C47B0F3 4F99716F 36EAD9FF 51ACAB42
3C421CAB 62DF4D8C 792E38D5 339D60AA 240292E1 34A249A5
770176FE 93A4C199 A2258615 DDA840AE 6FC2E7DB 39131511
9E57774F 94396C81 F5F8D483 5D618D96 0B297E97 F1A21B35
C is
0C193D BC1942C1 21C63513 ED95ECA9
1C62C550 31750646 2C47B0F3 4F99716F 36EAD9FF 51ACAB42
3C421CAB 62DF4D8C 792E38D5 339D60AA 240292E1 34A249A5
770176FE 93A4C199 A2258615 DDA840AE 6FC2E7DB 39131511
9E57774F 94396C81 F5F8D483 5D618D96 0B297E97 F1A21B35
First call to Generate
**************************************************************
--------------------------------------------------------------
First call to Generate
**************************************************************
Hash_DRBG_Generate_algorithm
requested_number_of_bits = 1024
additional_input
606162 63646566 6768696A 6B6C6D6E
6F707172 73747576 7778797A 7B7C7D7E 7F808182 83848586
8788898A 8B8C8D8E 8F909192 93949596 9798999A 9B9C9D9E
9FA0A1A2 A3A4A5A6 A7A8A9AA ABACADAE AFB0B1B2 B3B4B5B6
B7B8B9BA BBBCBDBE BFC0C1C2 C3C4C5C6 C7C8C9CA CBCCCDCE
--------------------------------------------------------------
Generate FAILED: Reseed is required
Hash_DRBG_Reseed_algorithm
entropy_input
808182 83848586 8788898A 8B8C8D8E
8F909192 93949596 9798999A 9B9C9D9E 9FA0A1A2 A3A4A5A6
A7A8A9AA ABACADAE AFB0B1B2 B3B4B5B6 B7B8B9BA BBBCBDBE
BFC0C1C2 C3C4C5C6 C7C8C9CA CBCCCDCE CFD0D1D2 D3D4D5D6
D7D8D9DA DBDCDDDE DFE0E1E2 E3E4E5E6 E7E8E9EA EBECEDEE
additional_input
---------------------------
606162 63646566 6768696A 6B6C6D6E
6F707172 73747576 7778797A 7B7C7D7E 7F808182 83848586
8788898A 8B8C8D8E 8F909192 93949596 9798999A 9B9C9D9E
9FA0A1A2 A3A4A5A6 A7A8A9AA ABACADAE AFB0B1B2 B3B4B5B6
B7B8B9BA BBBCBDBE BFC0C1C2 C3C4C5C6 C7C8C9CA CBCCCDCE
Hash_df - Generate seed(which is V) - Step 2
seed_material is
01E5 A5C585D6 A9E11C58 581F3514 EE19A704 8CF096A3
E9B139D9 C0A2C067 93104140 73C104E2 F6F8A37C 7C666E11
FF443933 ABA1CFAD 4C620CDF F5DA8C08 60CEEE80 B8719575
08538D2D 87A4A3B5 728ADB41 91974A38 4F323D2E 5858695C
152F99D0 E8CF4CB4 1BC2A612 955B4C48 38B98081 82838485
86878889 8A8B8C8D 8E8F9091 92939495 96979899 9A9B9C9D
9E9FA0A1 A2A3A4A5 A6A7A8A9 AAABACAD AEAFB0B1 B2B3B4B5
B6B7B8B9 BABBBCBD BEBFC0C1 C2C3C4C5 C6C7C8C9 CACBCCCD
CECFD0D1 D2D3D4D5 D6D7D8D9 DADBDCDD DEDFE0E1 E2E3E4E5
E6E7E8E9 EAEBECED EE606162 63646566 6768696A 6B6C6D6E
6F707172 73747576 7778797A 7B7C7D7E 7F808182 83848586
8788898A 8B8C8D8E 8F909192 93949596 9798999A 9B9C9D9E
9FA0A1A2 A3A4A5A6 A7A8A9AA ABACADAE AFB0B1B2 B3B4B5B6
B7B8B9BA BBBCBDBE BFC0C1C2 C3C4C5C6 C7C8C9CA CBCCCDCE
no_of_bits_to_return = 888
------------
i = 1
counter||no_of_bits_to_return||input_string is
010000
037801E5 A5C585D6 A9E11C58 581F3514 EE19A704 8CF096A3
E9B139D9 C0A2C067 93104140 73C104E2 F6F8A37C 7C666E11
FF443933 ABA1CFAD 4C620CDF F5DA8C08 60CEEE80 B8719575
08538D2D 87A4A3B5 728ADB41 91974A38 4F323D2E 5858695C
152F99D0 E8CF4CB4 1BC2A612 955B4C48 38B98081 82838485
86878889 8A8B8C8D 8E8F9091 92939495 96979899 9A9B9C9D
9E9FA0A1 A2A3A4A5 A6A7A8A9 AAABACAD AEAFB0B1 B2B3B4B5
B6B7B8B9 BABBBCBD BEBFC0C1 C2C3C4C5 C6C7C8C9 CACBCCCD
CECFD0D1 D2D3D4D5 D6D7D8D9 DADBDCDD DEDFE0E1 E2E3E4E5
E6E7E8E9 EAEBECED EE606162 63646566 6768696A 6B6C6D6E
6F707172 73747576 7778797A 7B7C7D7E 7F808182 83848586
8788898A 8B8C8D8E 8F909192 93949596 9798999A 9B9C9D9E
9FA0A1A2 A3A4A5A6 A7A8A9AA ABACADAE AFB0B1B2 B3B4B5B6
B7B8B9BA BBBCBDBE BFC0C1C2 C3C4C5C6 C7C8C9CA CBCCCDCE
Hash(counter||no_of_bits_to_return||input_string) is
04F0F3B8 9552F8C0 006FE2BA 33D069A4
08885EB0 AE9A9618 F8381C83 2B8A6FD8 1FFFFF52 5C4BD7E2
E3EDE6ED 7AC02DED 66DFBFA0 50134D3B 1A828DA2 D4818482
temp =
04F0F3B8 9552F8C0 006FE2BA 33D069A4
08885EB0 AE9A9618 F8381C83 2B8A6FD8 1FFFFF52 5C4BD7E2
E3EDE6ED 7AC02DED 66DFBFA0 50134D3B 1A828DA2 D4818482
------------
i = 2
counter||no_of_bits_to_return||input_string is
020000
037801E5 A5C585D6 A9E11C58 581F3514 EE19A704 8CF096A3
E9B139D9 C0A2C067 93104140 73C104E2 F6F8A37C 7C666E11
FF443933 ABA1CFAD 4C620CDF F5DA8C08 60CEEE80 B8719575
08538D2D 87A4A3B5 728ADB41 91974A38 4F323D2E 5858695C
152F99D0 E8CF4CB4 1BC2A612 955B4C48 38B98081 82838485
86878889 8A8B8C8D 8E8F9091 92939495 96979899 9A9B9C9D
9E9FA0A1 A2A3A4A5 A6A7A8A9 AAABACAD AEAFB0B1 B2B3B4B5
B6B7B8B9 BABBBCBD BEBFC0C1 C2C3C4C5 C6C7C8C9 CACBCCCD
CECFD0D1 D2D3D4D5 D6D7D8D9 DADBDCDD DEDFE0E1 E2E3E4E5
E6E7E8E9 EAEBECED EE606162 63646566 6768696A 6B6C6D6E
6F707172 73747576 7778797A 7B7C7D7E 7F808182 83848586
8788898A 8B8C8D8E 8F909192 93949596 9798999A 9B9C9D9E
9FA0A1A2 A3A4A5A6 A7A8A9AA ABACADAE AFB0B1B2 B3B4B5B6
B7B8B9BA BBBCBDBE BFC0C1C2 C3C4C5C6 C7C8C9CA CBCCCDCE
Hash(counter||no_of_bits_to_return||input_string) is
6BDA0EED A45C794A 18B04CED 7E8AFAAE
88B743FE 0833735F C59704C4 3252DAC6 76A4C91B 8D3E78DC
41782C01 96D73DFD 11C631F3 7B382D42 D0F77A4A A040E727
temp =
04F0F3 B89552F8 C0006FE2 BA33D069
A408885E B0AE9A96 18F8381C 832B8A6F D81FFFFF 525C4BD7
E2E3EDE6 ED7AC02D ED66DFBF A050134D 3B1A828D A2D48184
826BDA0E EDA45C79 4A18B04C ED7E8AFA AE88B743 FE083373
5FC59704 C43252DA C676A4C9 1B8D3E78 DC41782C 0196D73D
V is
04F0F3 B89552F8 C0006FE2 BA33D069
A408885E B0AE9A96 18F8381C 832B8A6F D81FFFFF 525C4BD7
E2E3EDE6 ED7AC02D ED66DFBF A050134D 3B1A828D A2D48184
826BDA0E EDA45C79 4A18B04C ED7E8AFA AE88B743 FE083373
5FC59704 C43252DA C676A4C9 1B8D3E78 DC41782C 0196D73D
---------------------------
Hash_df - Generate C - Step 4
0x00||V is
0004F0F3 B89552F8 C0006FE2 BA33D069
A408885E B0AE9A96 18F8381C 832B8A6F D81FFFFF 525C4BD7
E2E3EDE6 ED7AC02D ED66DFBF A050134D 3B1A828D A2D48184
826BDA0E EDA45C79 4A18B04C ED7E8AFA AE88B743 FE083373
5FC59704 C43252DA C676A4C9 1B8D3E78 DC41782C 0196D73D
no_of_bits_to_return = 888
------------
i = 1
counter||no_of_bits_to_return||input_string is
01 00000378 0004F0F3 B89552F8 C0006FE2 BA33D069
A408885E B0AE9A96 18F8381C 832B8A6F D81FFFFF 525C4BD7
E2E3EDE6 ED7AC02D ED66DFBF A050134D 3B1A828D A2D48184
826BDA0E EDA45C79 4A18B04C ED7E8AFA AE88B743 FE083373
5FC59704 C43252DA C676A4C9 1B8D3E78 DC41782C 0196D73D
Hash(counter||no_of_bits_to_return||input_string) is
76878CDA 0362CAD7 DB3F3D92 17093D29
602FF901 5D2D87A1 8EE4B2F2 88947D33 4565E066 F7E104AC
DDBC773B 1486541E D12488D3 B70FCD34 AE68F5AD 78464189
temp =
76878CDA 0362CAD7 DB3F3D92 17093D29
602FF901 5D2D87A1 8EE4B2F2 88947D33 4565E066 F7E104AC
DDBC773B 1486541E D12488D3 B70FCD34 AE68F5AD 78464189
------------
i = 2
counter||no_of_bits_to_return||input_string is
02 00000378 0004F0F3 B89552F8 C0006FE2 BA33D069
A408885E B0AE9A96 18F8381C 832B8A6F D81FFFFF 525C4BD7
E2E3EDE6 ED7AC02D ED66DFBF A050134D 3B1A828D A2D48184
826BDA0E EDA45C79 4A18B04C ED7E8AFA AE88B743 FE083373
5FC59704 C43252DA C676A4C9 1B8D3E78 DC41782C 0196D73D
Hash(counter||no_of_bits_to_return||input_string) is
A8053FAF A58CA32F EA5C4F5C 7F3AEF74
D699AD57 13E64377 430E4528 E54B6EE6 CE4DB441 907CA52A
3F90A768 7AA90E89 4E60E54B C1E4E3E5 101AD0F5 CC8DD1E0
temp =
76878C DA0362CA D7DB3F3D 9217093D
29602FF9 015D2D87 A18EE4B2 F288947D 334565E0 66F7E104
ACDDBC77 3B148654 1ED12488 D3B70FCD 34AE68F5 AD784641
89A8053F AFA58CA3 2FEA5C4F 5C7F3AEF 74D699AD 5713E643
77430E45 28E54B6E E6CE4DB4 41907CA5 2A3F90A7 687AA90E
C is
76878C DA0362CA D7DB3F3D 9217093D
29602FF9 015D2D87 A18EE4B2 F288947D 334565E0 66F7E104
ACDDBC77 3B148654 1ED12488 D3B70FCD 34AE68F5 AD784641
89A8053F AFA58CA3 2FEA5C4F 5C7F3AEF 74D699AD 5713E643
77430E45 28E54B6E E6CE4DB4 41907CA5 2A3F90A7 687AA90E
**************************************************************
Hash_DRBG_Generate_algorithm
---------------------------
requested_number_of_bits = 1024
additional_input <empty>
Hashgen
requested_no_of_bits = 1024
------------
i = 1
data is
04F0F3 B89552F8 C0006FE2 BA33D069
A408885E B0AE9A96 18F8381C 832B8A6F D81FFFFF 525C4BD7
E2E3EDE6 ED7AC02D ED66DFBF A050134D 3B1A828D A2D48184
826BDA0E EDA45C79 4A18B04C ED7E8AFA AE88B743 FE083373
5FC59704 C43252DA C676A4C9 1B8D3E78 DC41782C 0196D73D
w_i is
7596A763 72308BD5 A5613439 934678B3
5521A94D 81ABFE63 A21ACF61 ABB88B61 E86A12C3 7F308F2B
BBE32BE4 B38D03AE 80838649 4D70EF52 E9E1365D D18B7784
W is
7596A763 72308BD5 A5613439 934678B3
5521A94D 81ABFE63 A21ACF61 ABB88B61 E86A12C3 7F308F2B
BBE32BE4 B38D03AE 80838649 4D70EF52 E9E1365D D18B7784
------------
i = 2
data is
04F0F3 B89552F8 C0006FE2 BA33D069
A408885E B0AE9A96 18F8381C 832B8A6F D81FFFFF 525C4BD7
E2E3EDE6 ED7AC02D ED66DFBF A050134D 3B1A828D A2D48184
826BDA0E EDA45C79 4A18B04C ED7E8AFA AE88B743 FE083373
5FC59704 C43252DA C676A4C9 1B8D3E78 DC41782C 0196D73E
w_i is
CAB826F3 1D47579E 4D57F69D 8BF3152B
95741946 CEBE5857 1DF58ED3 9980D9AF 44E69F01 E8989759
8E401711 01A0E330 2838E0AD 9E849C01 988993CF 9F6E5263
W is
7596A763 72308BD5
A5613439 934678B3 5521A94D 81ABFE63 A21ACF61 ABB88B61
E86A12C3 7F308F2B BBE32BE4 B38D03AE 80838649 4D70EF52
E9E1365D D18B7784 CAB826F3 1D47579E 4D57F69D 8BF3152B
95741946 CEBE5857 1DF58ED3 9980D9AF 44E69F01 E8989759
8E401711 01A0E330 2838E0AD 9E849C01 988993CF 9F6E5263
---------------------------
returned_bits is
7596A763 72308BD5
A5613439 934678B3 5521A94D 81ABFE63 A21ACF61 ABB88B61
E86A12C3 7F308F2B BBE32BE4 B38D03AE 80838649 4D70EF52
E9E1365D D18B7784 CAB826F3 1D47579E 4D57F69D 8BF3152B
95741946 CEBE5857 1DF58ED3 9980D9AF 44E69F01 E8989759
8E401711 01A0E330 2838E0AD 9E849C01 988993CF 9F6E5263
---------------------------
Update V
0x03||V is
0304F0F3 B89552F8 C0006FE2 BA33D069
A408885E B0AE9A96 18F8381C 832B8A6F D81FFFFF 525C4BD7
E2E3EDE6 ED7AC02D ED66DFBF A050134D 3B1A828D A2D48184
826BDA0E EDA45C79 4A18B04C ED7E8AFA AE88B743 FE083373
5FC59704 C43252DA C676A4C9 1B8D3E78 DC41782C 0196D73D
H is
570B7582 C7A57D2D 0D1631DD 208A507A
9B9BE4AE 3676F474 C31F49B0 AE96CD64 33D19AEB 51584CEA
F532A3C7 9E0C7208 17510AAB 6AF67458 9AB9180B 51620620
Updated values
V is
7B7880 9298B5C3 97DBAF20 4C4AD9A6
CD68B857 B20BC81D BA871CCF 75B41EED 0B6565DF B9542CDC
8FC1AA5E 288F4682 634379CB 3BACA047 7CDF1D60 70D71840
A7AFC3FC D3C0DD91 3D22564C F894934E 5730EBDC A67466A1
CC3B4911 8B241051 C495FD28 C8142F76 A13A20DE BB73866C
reseed_counter is
0000 00000002
rnd_val is
7596A763 72308BD5
A5613439 934678B3 5521A94D 81ABFE63 A21ACF61 ABB88B61
E86A12C3 7F308F2B BBE32BE4 B38D03AE 80838649 4D70EF52
E9E1365D D18B7784 CAB826F3 1D47579E 4D57F69D 8BF3152B
95741946 CEBE5857 1DF58ED3 9980D9AF 44E69F01 E8989759
8E401711 01A0E330 2838E0AD 9E849C01 988993CF 9F6E5263
--------------------------------------------------------------
Second call to Generate
**************************************************************
Hash_DRBG_Generate_algorithm
requested_number_of_bits = 1024
additional_input
A0A1A2 A3A4A5A6 A7A8A9AA ABACADAE
AFB0B1B2 B3B4B5B6 B7B8B9BA BBBCBDBE BFC0C1C2 C3C4C5C6
C7C8C9CA CBCCCDCE CFD0D1D2 D3D4D5D6 D7D8D9DA DBDCDDDE
DFE0E1E2 E3E4E5E6 E7E8E9EA EBECEDEE EFF0F1F2 F3F4F5F6
F7F8F9FA FBFCFDFE FF000102 03040506 0708090A 0B0C0D0E
--------------------------------------------------------------
Generate FAILED: Reseed is required
Hash_DRBG_Reseed_algorithm
entropy_input
C0C1C2 C3C4C5C6 C7C8C9CA CBCCCDCE
CFD0D1D2 D3D4D5D6 D7D8D9DA DBDCDDDE DFE0E1E2 E3E4E5E6
E7E8E9EA EBECEDEE EFF0F1F2 F3F4F5F6 F7F8F9FA FBFCFDFE
FF000102 03040506 0708090A 0B0C0D0E 0F101112 13141516
1718191A 1B1C1D1E 1F202122 23242526 2728292A 2B2C2D2E
additional_input
A0A1A2 A3A4A5A6 A7A8A9AA ABACADAE
AFB0B1B2 B3B4B5B6 B7B8B9BA BBBCBDBE BFC0C1C2 C3C4C5C6
C7C8C9CA CBCCCDCE CFD0D1D2 D3D4D5D6 D7D8D9DA DBDCDDDE
DFE0E1E2 E3E4E5E6 E7E8E9EA EBECEDEE EFF0F1F2 F3F4F5F6
F7F8F9FA FBFCFDFE FF000102 03040506 0708090A 0B0C0D0E
---------------------------
Hash_df - Generate seed(which is V) - Step 2
seed_material is
017B 78809298 B5C397DB AF204C4A D9A6CD68 B857B20B
C81DBA87 1CCF75B4 1EED0B65 65DFB954 2CDC8FC1 AA5E288F
46826343 79CB3BAC A0477CDF 1D6070D7 1840A7AF C3FCD3C0
DD913D22 564CF894 934E5730 EBDCA674 66A1CC3B 49118B24
1051C495 FD28C814 2F76A13A 20DEBB73 866CC0C1 C2C3C4C5
C6C7C8C9 CACBCCCD CECFD0D1 D2D3D4D5 D6D7D8D9 DADBDCDD
DEDFE0E1 E2E3E4E5 E6E7E8E9 EAEBECED EEEFF0F1 F2F3F4F5
F6F7F8F9 FAFBFCFD FEFF0001 02030405 06070809 0A0B0C0D
0E0F1011 12131415 16171819 1A1B1C1D 1E1F2021 22232425
26272829 2A2B2C2D 2EA0A1A2 A3A4A5A6 A7A8A9AA ABACADAE
AFB0B1B2 B3B4B5B6 B7B8B9BA BBBCBDBE BFC0C1C2 C3C4C5C6
C7C8C9CA CBCCCDCE CFD0D1D2 D3D4D5D6 D7D8D9DA DBDCDDDE
DFE0E1E2 E3E4E5E6 E7E8E9EA EBECEDEE EFF0F1F2 F3F4F5F6
F7F8F9FA FBFCFDFE FF000102 03040506 0708090A 0B0C0D0E
no_of_bits_to_return = 888
------------
i = 1
counter||no_of_bits_to_return||input_string is
010000
0378017B 78809298 B5C397DB AF204C4A D9A6CD68 B857B20B
C81DBA87 1CCF75B4 1EED0B65 65DFB954 2CDC8FC1 AA5E288F
46826343 79CB3BAC A0477CDF 1D6070D7 1840A7AF C3FCD3C0
DD913D22 564CF894 934E5730 EBDCA674 66A1CC3B 49118B24
1051C495 FD28C814 2F76A13A 20DEBB73 866CC0C1 C2C3C4C5
C6C7C8C9 CACBCCCD CECFD0D1 D2D3D4D5 D6D7D8D9 DADBDCDD
DEDFE0E1 E2E3E4E5 E6E7E8E9 EAEBECED EEEFF0F1 F2F3F4F5
F6F7F8F9 FAFBFCFD FEFF0001 02030405 06070809 0A0B0C0D
0E0F1011 12131415 16171819 1A1B1C1D 1E1F2021 22232425
26272829 2A2B2C2D 2EA0A1A2 A3A4A5A6 A7A8A9AA ABACADAE
AFB0B1B2 B3B4B5B6 B7B8B9BA BBBCBDBE BFC0C1C2 C3C4C5C6
C7C8C9CA CBCCCDCE CFD0D1D2 D3D4D5D6 D7D8D9DA DBDCDDDE
DFE0E1E2 E3E4E5E6 E7E8E9EA EBECEDEE EFF0F1F2 F3F4F5F6
F7F8F9FA FBFCFDFE FF000102 03040506 0708090A 0B0C0D0E
Hash(counter||no_of_bits_to_return||input_string) is
913CA013 D788EAD1 4EDFA1A5 7857414B
1D68E30D 85930C99 4EC8DEEE 1B2F7E74 4CAC3288 A442A4CD
55A41FD1 A0B265B4 90812D90 00FFCC62 82474D78 8DFB3781
temp =
913CA013 D788EAD1 4EDFA1A5 7857414B
1D68E30D 85930C99 4EC8DEEE 1B2F7E74 4CAC3288 A442A4CD
55A41FD1 A0B265B4 90812D90 00FFCC62 82474D78 8DFB3781
------------
i = 2
counter||no_of_bits_to_return||input_string is
020000
0378017B 78809298 B5C397DB AF204C4A D9A6CD68 B857B20B
C81DBA87 1CCF75B4 1EED0B65 65DFB954 2CDC8FC1 AA5E288F
46826343 79CB3BAC A0477CDF 1D6070D7 1840A7AF C3FCD3C0
DD913D22 564CF894 934E5730 EBDCA674 66A1CC3B 49118B24
1051C495 FD28C814 2F76A13A 20DEBB73 866CC0C1 C2C3C4C5
C6C7C8C9 CACBCCCD CECFD0D1 D2D3D4D5 D6D7D8D9 DADBDCDD
DEDFE0E1 E2E3E4E5 E6E7E8E9 EAEBECED EEEFF0F1 F2F3F4F5
F6F7F8F9 FAFBFCFD FEFF0001 02030405 06070809 0A0B0C0D
0E0F1011 12131415 16171819 1A1B1C1D 1E1F2021 22232425
26272829 2A2B2C2D 2EA0A1A2 A3A4A5A6 A7A8A9AA ABACADAE
AFB0B1B2 B3B4B5B6 B7B8B9BA BBBCBDBE BFC0C1C2 C3C4C5C6
C7C8C9CA CBCCCDCE CFD0D1D2 D3D4D5D6 D7D8D9DA DBDCDDDE
DFE0E1E2 E3E4E5E6 E7E8E9EA EBECEDEE EFF0F1F2 F3F4F5F6
F7F8F9FA FBFCFDFE FF000102 03040506 0708090A 0B0C0D0E
Hash(counter||no_of_bits_to_return||input_string) is
E7F19451 0674954D 9E49CEAC 2FD98109
E08BEBBF FBBBA78C 16FEB723 64F49334 6BB916DB 78563AAD
BD51A07D 55315AFB 4612F770 B4936987 47C3EC71 9C7BF6C0
temp =
913CA0 13D788EA D14EDFA1 A5785741
4B1D68E3 0D85930C 994EC8DE EE1B2F7E 744CAC32 88A442A4
CD55A41F D1A0B265 B490812D 9000FFCC 6282474D 788DFB37
81E7F194 51067495 4D9E49CE AC2FD981 09E08BEB BFFBBBA7
8C16FEB7 2364F493 346BB916 DB78563A ADBD51A0 7D55315A
V is
913CA0 13D788EA D14EDFA1 A5785741
4B1D68E3 0D85930C 994EC8DE EE1B2F7E 744CAC32 88A442A4
CD55A41F D1A0B265 B490812D 9000FFCC 6282474D 788DFB37
81E7F194 51067495 4D9E49CE AC2FD981 09E08BEB BFFBBBA7
8C16FEB7 2364F493 346BB916 DB78563A ADBD51A0 7D55315A
---------------------------
Hash_df - Generate C - Step 4
0x00||V is
00913CA0 13D788EA D14EDFA1 A5785741
4B1D68E3 0D85930C 994EC8DE EE1B2F7E 744CAC32 88A442A4
CD55A41F D1A0B265 B490812D 9000FFCC 6282474D 788DFB37
81E7F194 51067495 4D9E49CE AC2FD981 09E08BEB BFFBBBA7
8C16FEB7 2364F493 346BB916 DB78563A ADBD51A0 7D55315A
no_of_bits_to_return = 888
------------
i = 1
counter||no_of_bits_to_return||input_string is
01 00000378 00913CA0 13D788EA D14EDFA1 A5785741
4B1D68E3 0D85930C 994EC8DE EE1B2F7E 744CAC32 88A442A4
CD55A41F D1A0B265 B490812D 9000FFCC 6282474D 788DFB37
81E7F194 51067495 4D9E49CE AC2FD981 09E08BEB BFFBBBA7
8C16FEB7 2364F493 346BB916 DB78563A ADBD51A0 7D55315A
Hash(counter||no_of_bits_to_return||input_string) is
9FA80ADB 6DC1CD99 3C00413B A974350B
49725E33 4A188BEB 0A992B22 5C49DE64 CFE92B47 8B7589B6
0649255A 304CA2EB 11BF7BB7 9021A86B A4F7BCD9 3679B8F7
temp =
9FA80ADB 6DC1CD99 3C00413B A974350B
49725E33 4A188BEB 0A992B22 5C49DE64 CFE92B47 8B7589B6
0649255A 304CA2EB 11BF7BB7 9021A86B A4F7BCD9 3679B8F7
------------
i = 2
counter||no_of_bits_to_return||input_string is
02 00000378 00913CA0 13D788EA D14EDFA1 A5785741
4B1D68E3 0D85930C 994EC8DE EE1B2F7E 744CAC32 88A442A4
CD55A41F D1A0B265 B490812D 9000FFCC 6282474D 788DFB37
81E7F194 51067495 4D9E49CE AC2FD981 09E08BEB BFFBBBA7
8C16FEB7 2364F493 346BB916 DB78563A ADBD51A0 7D55315A
Hash(counter||no_of_bits_to_return||input_string) is
356ED503 70D4A92A 84F44891 788408BE
D41B4F3C 71B4FD1F 90D1480E 506B96A4 180D945C E02C4369
876C3994 CA9463D6 887B6B27 457709FF FFCA9CE8 CE90D484
temp =
9FA80A DB6DC1CD 993C0041 3BA97435
0B49725E 334A188B EB0A992B 225C49DE 64CFE92B 478B7589
B6064925 5A304CA2 EB11BF7B B79021A8 6BA4F7BC D93679B8
F7356ED5 0370D4A9 2A84F448 91788408 BED41B4F 3C71B4FD
1F90D148 0E506B96 A4180D94 5CE02C43 69876C39 94CA9463
C is
9FA80A DB6DC1CD 993C0041 3BA97435
0B49725E 334A188B EB0A992B 225C49DE 64CFE92B 478B7589
B6064925 5A304CA2 EB11BF7B B79021A8 6BA4F7BC D93679B8
F7356ED5 0370D4A9 2A84F448 91788408 BED41B4F 3C71B4FD
1F90D148 0E506B96 A4180D94 5CE02C43 69876C39 94CA9463
---------------------------
**************************************************************
Hash_DRBG_Generate_algorithm
requested_number_of_bits = 1024
additional_input <empty>
Hashgen
requested_no_of_bits = 1024
------------
i = 1
data is
913CA0 13D788EA D14EDFA1 A5785741
4B1D68E3 0D85930C 994EC8DE EE1B2F7E 744CAC32 88A442A4
CD55A41F D1A0B265 B490812D 9000FFCC 6282474D 788DFB37
81E7F194 51067495 4D9E49CE AC2FD981 09E08BEB BFFBBBA7
8C16FEB7 2364F493 346BB916 DB78563A ADBD51A0 7D55315A
w_i is
DBE5EE36 FCD85301 303E1C36 17C1AC5E
23C08885 D0BEFAAD 0C85A0D8 9F85B9F1 6ECE3D88 A24EB965
04F2F13E FA704962 1782F5DE 2C416A0D 294CCFE5 3545C4E3
W is
DBE5EE36 FCD85301 303E1C36 17C1AC5E
23C08885 D0BEFAAD 0C85A0D8 9F85B9F1 6ECE3D88 A24EB965
04F2F13E FA704962 1782F5DE 2C416A0D 294CCFE5 3545C4E3
------------
i = 2
data is
913CA0 13D788EA D14EDFA1 A5785741
4B1D68E3 0D85930C 994EC8DE EE1B2F7E 744CAC32 88A442A4
CD55A41F D1A0B265 B490812D 9000FFCC 6282474D 788DFB37
81E7F194 51067495 4D9E49CE AC2FD981 09E08BEB BFFBBBA7
8C16FEB7 2364F493 346BB916 DB78563A ADBD51A0 7D55315B
w_i is
09C48E1E 285A2B82 9A574B72 B3C2FBE1
34D01E37 06B486F2 401B9820 E17298A3 42666918 E15B8462
87F8C5AF 2D96B20F AF3D0BB3 92E15F4A 06CDB0DE CD1B6AD7
W is
DBE5EE36 FCD85301
303E1C36 17C1AC5E 23C08885 D0BEFAAD 0C85A0D8 9F85B9F1
6ECE3D88 A24EB965 04F2F13E FA704962 1782F5DE 2C416A0D
294CCFE5 3545C4E3 09C48E1E 285A2B82 9A574B72 B3C2FBE1
34D01E37 06B486F2 401B9820 E17298A3 42666918 E15B8462
87F8C5AF 2D96B20F AF3D0BB3 92E15F4A 06CDB0DE CD1B6AD7
---------------------------
returned_bits is
DBE5EE36 FCD85301
303E1C36 17C1AC5E 23C08885 D0BEFAAD 0C85A0D8 9F85B9F1
6ECE3D88 A24EB965 04F2F13E FA704962 1782F5DE 2C416A0D
294CCFE5 3545C4E3 09C48E1E 285A2B82 9A574B72 B3C2FBE1
34D01E37 06B486F2 401B9820 E17298A3 42666918 E15B8462
87F8C5AF 2D96B20F AF3D0BB3 92E15F4A 06CDB0DE CD1B6AD7
---------------------------
Update V
0x03||V is
03913CA0 13D788EA D14EDFA1 A5785741
4B1D68E3 0D85930C 994EC8DE EE1B2F7E 744CAC32 88A442A4
CD55A41F D1A0B265 B490812D 9000FFCC 6282474D 788DFB37
81E7F194 51067495 4D9E49CE AC2FD981 09E08BEB BFFBBBA7
8C16FEB7 2364F493 346BB916 DB78563A ADBD51A0 7D55315A
H is
73FD2839 3EFADC11 1ADBC674 E19D8341
76345539 6AC56861 F86260C7 4918A450 5D41B9D7 5FC254C0
2EE70292 ED511374 3F2C179A A23149FC 18F27654 98319719
Updated values
V is
30E4AA EF454AB8 6A8ADFE2 E121CB76
5666DB41 40CFAB98 8459620A 1077795C D91C955D D02FB82E
835BED45 2BD0FF09 139F68E2 868BFD85 E903057F 3361F831
EF51B5A2 BF3CB1A0 70859EDE 86C101DA 25F66112 5C2FC564
DA8ED292 1F06739E 17AFDE45 DA89CC7A 3037342E AA515CD7
reseed_counter is
0000 00000002
rnd_val is
DBE5EE36 FCD85301
303E1C36 17C1AC5E 23C08885 D0BEFAAD 0C85A0D8 9F85B9F1
6ECE3D88 A24EB965 04F2F13E FA704962 1782F5DE 2C416A0D
294CCFE5 3545C4E3 09C48E1E 285A2B82 9A574B72 B3C2FBE1
34D01E37 06B486F2 401B9820 E17298A3 42666918 E15B8462
87F8C5AF 2D96B20F AF3D0BB3 92E15F4A 06CDB0DE CD1B6AD7