diff --git a/grain/grain.c b/grain/grain.c index 8d30d22..81117ed 100644 --- a/grain/grain.c +++ b/grain/grain.c @@ -134,7 +134,17 @@ uint8_t grain_enc(grain_ctx_t* ctx){ h = (pgm_read_byte(h_lut+(i/8)))>>(i%8); h ^= B(0) ^ B(1) ^ B(3) ^ B(9) ^ B(30) ^ B(42) ^ B(55); - return h&1; + return (h&1); +} + +uint8_t grain_getbyte(grain_ctx_t* ctx){ + uint8_t i=0; + uint8_t r=0; + do{ + r >>= 1; + r |= grain_enc(ctx)?0x80:0x00; + }while(++i<8); + return r; } #ifdef GRAIN_REVERSEKEY diff --git a/grain/grain.h b/grain/grain.h index 2526fdc..06e8c78 100644 --- a/grain/grain.h +++ b/grain/grain.h @@ -35,7 +35,7 @@ typedef struct gain_ctx_st{ uint8_t nfsr[10]; } grain_ctx_t; - +uint8_t grain_getbyte(grain_ctx_t* ctx); uint8_t grain_enc(grain_ctx_t* ctx); void grain_init(const void* key, const void* iv, grain_ctx_t* ctx); diff --git a/mkfiles/grain.mk b/mkfiles/grain.mk index 5e6638e..caf2b87 100644 --- a/mkfiles/grain.mk +++ b/mkfiles/grain.mk @@ -6,8 +6,8 @@ STREAM_CIPHERS += $(ALGO_NAME) $(ALGO_NAME)_DIR := grain/ $(ALGO_NAME)_OBJ := grain.o -$(ALGO_NAME)_TEST_BIN := main-grain-test.o $(CLI_STD) \ - nessie_stream_test.o nessie_common.o performance_test.o +$(ALGO_NAME)_INCDIR := memxor/ scal/ +$(ALGO_NAME)_TEST_BIN := main-grain-test.o $(CLI_STD) $(SCAL_STD) scal_grain.o $(ALGO_NAME)_NESSIE_TEST := "nessie" $(ALGO_NAME)_PERFORMANCE_TEST := "performance" diff --git a/mkfiles/mickey128.mk b/mkfiles/mickey128.mk index c7bc17d..50f5f3d 100644 --- a/mkfiles/mickey128.mk +++ b/mkfiles/mickey128.mk @@ -6,8 +6,8 @@ STREAM_CIPHERS += $(ALGO_NAME) $(ALGO_NAME)_DIR := mickey128/ $(ALGO_NAME)_OBJ := mickey128.o -$(ALGO_NAME)_TEST_BIN := main-mickey128-test.o $(CLI_STD) \ - nessie_stream_test.o nessie_common.o +$(ALGO_NAME)_INCDIR := memxor/ scal/ +$(ALGO_NAME)_TEST_BIN := main-mickey128-test.o $(CLI_STD) $(SCAL_STD) scal_mickey128.o $(ALGO_NAME)_NESSIE_TEST := "nessie" $(ALGO_NAME)_PERFORMANCE_TEST := "performance" diff --git a/scal/scal-nessie.c b/scal/scal-nessie.c index 26105c0..b4cddf4 100644 --- a/scal/scal-nessie.c +++ b/scal/scal-nessie.c @@ -118,6 +118,9 @@ void long_block(scgen_ctx_t *ctx){ hook_str_ptr = (uint8_t*)hook_str_ptr + 2; nessie_print_item(str, block, 64); } + if(i%64==0){ + NESSIE_SEND_ALIVE; + } } strcpy_P(str, (PGM_VOID_P)pgm_read_word(hook_str_ptr)); nessie_print_item(str, xor_block, 64); diff --git a/scal/scal_grain.c b/scal/scal_grain.c new file mode 100644 index 0000000..33ab7ea --- /dev/null +++ b/scal/scal_grain.c @@ -0,0 +1,56 @@ +/* scal_grain.c */ +/* + This file is part of the AVR-Crypto-Lib. + Copyright (C) 2011 Daniel Otte (daniel.otte@rub.de) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +*/ + +#include +#include +#include +#include "streamcipher_descriptor.h" +#include "keysize_descriptor.h" + +#include "grain.h" + +const char grain_str[] PROGMEM = "Grain"; + +const uint8_t grain_keysize_desc[] PROGMEM = { + KS_TYPE_LIST, 1, KS_INT(80), + KS_TYPE_TERMINATOR }; + +const uint8_t grain_ivsize_desc[] PROGMEM = { + KS_TYPE_LIST, 1, KS_INT(64), + KS_TYPE_TERMINATOR }; + +const scdesc_t grain_desc PROGMEM = { + SCDESC_TYPE_STREAMCIPHER, /* abstraction layer type designator */ + SC_INIT_TYPE_2|SC_GEN_TYPE_1, /* flags*/ + grain_str, /* name string pointer */ + sizeof(grain_ctx_t), /* size of context */ + 8, /* blocksize */ + {(void_fpt)grain_init}, /* init function pointer */ + {(void_fpt)grain_getbyte}, /* key stream generator function pointer */ + {(void_fpt)NULL}, /* key stream generator for random access function pointer */ + (sc_free_fpt)NULL, /* free function pointer */ + grain_keysize_desc, /* key size descriptor pointer */ + grain_ivsize_desc /* iv size descriptor pointer */ +}; + + + + + + diff --git a/scal/scal_grain.h b/scal/scal_grain.h new file mode 100644 index 0000000..a67d1d5 --- /dev/null +++ b/scal/scal_grain.h @@ -0,0 +1,27 @@ +/* scal_grain.h */ +/* + This file is part of the AVR-Crypto-Lib. + Copyright (C) 2011 Daniel Otte (daniel.otte@rub.de) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +*/ + +#ifndef SCAL_GRAIN_H_ +#define SCAL_GRAIN_H_ + +#include "streamcipher_descriptor.h" + +extern const scdesc_t grain_desc; + +#endif /* SCAL_GRAIN_H_ */ diff --git a/scal/scal_mickey128.c b/scal/scal_mickey128.c new file mode 100644 index 0000000..a3c6928 --- /dev/null +++ b/scal/scal_mickey128.c @@ -0,0 +1,56 @@ +/* scal_mickey128.c */ +/* + This file is part of the AVR-Crypto-Lib. + Copyright (C) 2011 Daniel Otte (daniel.otte@rub.de) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +*/ + +#include +#include +#include +#include "streamcipher_descriptor.h" +#include "keysize_descriptor.h" + +#include "mickey128.h" + +const char mickey128_str[] PROGMEM = "Mickey128"; + +const uint8_t mickey128_keysize_desc[] PROGMEM = { + KS_TYPE_LIST, 1, KS_INT(128), + KS_TYPE_TERMINATOR }; + +const uint8_t mickey128_ivsize_desc[] PROGMEM = { + KS_TYPE_RANGE, KS_INT(0), KS_INT(128), + KS_TYPE_TERMINATOR }; + +const scdesc_t mickey128_desc PROGMEM = { + SCDESC_TYPE_STREAMCIPHER, /* abstraction layer type designator */ + SC_INIT_TYPE_5|SC_GEN_TYPE_1, /* flags*/ + mickey128_str, /* name string pointer */ + sizeof(mickey128_ctx_t), /* size of context */ + 8, /* blocksize */ + {(void_fpt)mickey128_init}, /* init function pointer */ + {(void_fpt)mickey128_getbyte}, /* key stream generator function pointer */ + {(void_fpt)NULL}, /* key stream generator for random access function pointer */ + (sc_free_fpt)NULL, /* free function pointer */ + mickey128_keysize_desc, /* key size descriptor pointer */ + mickey128_ivsize_desc /* iv size descriptor pointer */ +}; + + + + + + diff --git a/scal/scal_mickey128.h b/scal/scal_mickey128.h new file mode 100644 index 0000000..c874867 --- /dev/null +++ b/scal/scal_mickey128.h @@ -0,0 +1,27 @@ +/* scal_mickey128.h */ +/* + This file is part of the AVR-Crypto-Lib. + Copyright (C) 2011 Daniel Otte (daniel.otte@rub.de) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +*/ + +#ifndef SCAL_MICKEY128_H_ +#define SCAL_MICKEY128_H_ + +#include "streamcipher_descriptor.h" + +extern const scdesc_t mickey128_desc; + +#endif /* SCAL_MICKEY128_H_ */ diff --git a/scal/scal_trivium.c b/scal/scal_trivium.c index a8a2789..bebf391 100644 --- a/scal/scal_trivium.c +++ b/scal/scal_trivium.c @@ -32,7 +32,7 @@ const uint8_t trivium_keysize_desc[] PROGMEM = { KS_TYPE_TERMINATOR }; const uint8_t trivium_ivsize_desc[] PROGMEM = { - KS_TYPE_LIST, 2, KS_INT(32), KS_INT(80), + KS_TYPE_LIST, 3, KS_INT(32), KS_INT(64), KS_INT(80), KS_TYPE_TERMINATOR }; const scdesc_t trivium_desc PROGMEM = { @@ -40,9 +40,9 @@ const scdesc_t trivium_desc PROGMEM = { SC_INIT_TYPE_5|SC_GEN_TYPE_1, /* flags*/ trivium_str, /* name string pointer */ sizeof(trivium_ctx_t), /* size of context */ - 1, /* blocksize */ + 8, /* blocksize */ {(void_fpt)trivium_init}, /* init function pointer */ - {(void_fpt)trivium_enc}, /* key stream generator function pointer */ + {(void_fpt)trivium_getbyte}, /* key stream generator function pointer */ {(void_fpt)NULL}, /* key stream generator for random access function pointer */ (sc_free_fpt)NULL, /* free function pointer */ trivium_keysize_desc, /* key size descriptor pointer */ diff --git a/scal/scal_trivium.h b/scal/scal_trivium.h index 14789a7..17f921a 100644 --- a/scal/scal_trivium.h +++ b/scal/scal_trivium.h @@ -17,11 +17,11 @@ along with this program. If not, see . */ -#ifndef SCAL_ARCFOUR_H_ -#define SCAL_ARCFOUR_H_ +#ifndef SCAL_TRIVIUM_H_ +#define SCAL_TRIVIUM_H_ #include "streamcipher_descriptor.h" extern const scdesc_t trivium_desc; -#endif /* SCAL_ARCFOUR_H_ */ +#endif /* SCAL_TRIVIUM_H_ */ diff --git a/test_src/main-grain-test.c b/test_src/main-grain-test.c index 1cd10e1..08931fe 100644 --- a/test_src/main-grain-test.c +++ b/test_src/main-grain-test.c @@ -28,7 +28,9 @@ #include "cli.h" #include "grain.h" -#include "nessie_stream_test.h" +#include "scal_grain.h" +#include "scal-basic.h" +#include "scal-nessie.h" #include "performance_test.h" #include @@ -64,15 +66,7 @@ uint8_t grain_getbyte_dummy_rev(grain_ctx_t* ctx){ } void testrun_nessie_grain(void){ - nessie_stream_ctx.outsize_b = 8; /* actually unused */ - nessie_stream_ctx.keysize_b = 80; /* this is the one we have refrence vectors for */ - nessie_stream_ctx.ivsize_b = 64; - nessie_stream_ctx.name = algo_name; - nessie_stream_ctx.ctx_size_B = sizeof(grain_ctx_t); - nessie_stream_ctx.cipher_genctx = (nessie_stream_genctx_fpt)grain_genctx_dummy; - nessie_stream_ctx.cipher_enc = (nessie_stream_genenc_fpt)grain_getbyte_dummy_rev; - - nessie_stream_run(); + scal_nessie_run(&grain_desc); } diff --git a/test_src/main-mickey128-test.c b/test_src/main-mickey128-test.c index cf30da5..9b62953 100644 --- a/test_src/main-mickey128-test.c +++ b/test_src/main-mickey128-test.c @@ -10,7 +10,9 @@ #include "cli.h" #include "mickey128.h" -#include "nessie_stream_test.h" +#include "scal_mickey128.h" +#include "scal-basic.h" +#include "scal-nessie.h" #include #include @@ -20,20 +22,9 @@ char* algo_name = "Mickey128"; /***************************************************************************** * additional validation-functions * *****************************************************************************/ -void mickey128_genctx_dummy(uint8_t* key, uint16_t keysize_b, void* ctx){ - mickey128_init(key, keysize_b, NULL, 0, ctx); -} void testrun_nessie_mickey128(void){ - nessie_stream_ctx.outsize_b = 8; /* actually unused */ - nessie_stream_ctx.keysize_b = 128; /* this is the one we have refrence vectors for */ - nessie_stream_ctx.ivsize_b = 0; - nessie_stream_ctx.name = algo_name; - nessie_stream_ctx.ctx_size_B = sizeof(mickey128_ctx_t); - nessie_stream_ctx.cipher_genctx = (nessie_stream_genctx_fpt)mickey128_genctx_dummy; - nessie_stream_ctx.cipher_enc = (nessie_stream_genenc_fpt)mickey128_getbyte; - - nessie_stream_run(); + scal_nessie_run(&mickey128_desc); } void testrun_ref_mickey128(void){ diff --git a/test_src/main-trivium-test.c b/test_src/main-trivium-test.c index efbd09d..9961222 100644 --- a/test_src/main-trivium-test.c +++ b/test_src/main-trivium-test.c @@ -29,6 +29,7 @@ #include "trivium.h" #include "scal_trivium.h" +#include "scal-basic.h" #include "scal-nessie.h" #include "performance_test.h" @@ -61,10 +62,9 @@ void testrun_trivium(void){ cli_putstr_P(PSTR("\r\n IV = ")); cli_hexdump(iv, 4); cli_putstr_P(PSTR("\r\n Cipher = ")); - cli_hexdump_block(buffer, 64, 4, 8); + cli_hexdump_block(buffer, 64, 4, 16); scal_cipher_free(&ctx); - key[0] = 0x00; - key[9] = 0x80; + key[0] = 0x40; scal_cipher_init(&trivium_desc, key, 80, iv, 32, &ctx); scal_cipher_gen_fillblock(buffer, 64, &ctx); cli_putstr_P(PSTR("\r\nTest:\r\n Key = ")); @@ -72,7 +72,27 @@ void testrun_trivium(void){ cli_putstr_P(PSTR("\r\n IV = ")); cli_hexdump(iv, 4); cli_putstr_P(PSTR("\r\n Cipher = ")); - cli_hexdump_block(buffer, 64, 4, 8); + cli_hexdump_block(buffer, 64, 4, 16); + scal_cipher_free(&ctx); + key[0] = 0x20; + scal_cipher_init(&trivium_desc, key, 80, iv, 32, &ctx); + scal_cipher_gen_fillblock(buffer, 64, &ctx); + cli_putstr_P(PSTR("\r\nTest:\r\n Key = ")); + cli_hexdump(key, 10); + cli_putstr_P(PSTR("\r\n IV = ")); + cli_hexdump(iv, 4); + cli_putstr_P(PSTR("\r\n Cipher = ")); + cli_hexdump_block(buffer, 64, 4, 16); + scal_cipher_free(&ctx); + key[0] = 0x10; + scal_cipher_init(&trivium_desc, key, 80, iv, 32, &ctx); + scal_cipher_gen_fillblock(buffer, 64, &ctx); + cli_putstr_P(PSTR("\r\nTest:\r\n Key = ")); + cli_hexdump(key, 10); + cli_putstr_P(PSTR("\r\n IV = ")); + cli_hexdump(iv, 4); + cli_putstr_P(PSTR("\r\n Cipher = ")); + cli_hexdump_block(buffer, 64, 4, 16); scal_cipher_free(&ctx); } diff --git a/testvectors/trivium-80.32.test-vectors b/testvectors/trivium-80.32.test-vectors new file mode 100644 index 0000000..a7a465d --- /dev/null +++ b/testvectors/trivium-80.32.test-vectors @@ -0,0 +1,1929 @@ +******************************************************************************** +* ECRYPT Stream Cipher Project * +******************************************************************************** + +Primitive Name: TRIVIUM +======================= +Profile: ___H3 +Key size: 80 bits +IV size: 32 bits + +Test vectors -- set 1 +===================== + +(stream is generated by encrypting 512 zero bytes) + +Set 1, vector# 0: + key = 80000000000000000000 + IV = 00000000 + stream[0..63] = 38EB86FF730D7A9CAF8DF13A4420540D + BB7B651464C87501552041C249F29A64 + D2FBF515610921EBE06C8F92CECF7F80 + 98FF20CCCC6A62B97BE8EF7454FC80F9 + stream[192..255] = EAF2625D411F61E41F6BAEEDDD5FE202 + 600BD472F6C9CD1E9134A745D900EF6C + 023E4486538F09930CFD37157C0EB57C + 3EF6C954C42E707D52B743AD83CFF297 + stream[256..319] = 9A203CF7B2F3F09C43D188AA13A5A202 + 1EE998C42F777E9B67C3FA221A0AA1B0 + 41AA9E86BC2F5C52AFF11F7D9EE480CB + 1187B20EB46D582743A52D7CD080A24A + stream[448..511] = EBF14772061C210843C18CEA2D2A275A + E02FCB18E5D7942455FF77524E8A4CA5 + 1E369A847D1AEEFB9002FCD02342983C + EAFA9D487CC2032B10192CD416310FA4 + xor-digest = 7AE3A4B53355061766122E04391EA1E6 + 699B51C21A1F8058D3CF74A209D7E4CB + 571ED771525CA492552565C10A05E81B + 945DE28AAC043DEB349FD438784904D2 + +Set 1, vector# 9: + key = 00400000000000000000 + IV = 00000000 + stream[0..63] = 61208D286BC1DC431171EDA5CAF79D95 + 60B18ACEF26484417B651A47A3F7A803 + 53F79AF8656DA4301A5E5A02E04265B1 + 82C67F5891220349F8CD1CD06597B77E + stream[192..255] = 242608D58B23D480E65A8957F3FA794F + 53802938517E00F63ACFB5EB6BD9EF46 + 8BBF3E25280DBA37FD0B0FDA76680A55 + 96FF5271210EAFB170F3517238132C6F + stream[256..319] = 61ABC3A8B08C692F171CD714D9D15E88 + 88F71F744EE561D289CD3180AE617FA4 + 3C81C882D7A946B0DDE1F00A6790E83F + 8641FB4573F75836F8E8397EF4A99F92 + stream[448..511] = 178B25236ED340462A30E65B5AEC541A + 314B9D7D053106DA3E6E7D9AD15911A2 + DAE813763536B17B689113F870DC8EA1 + D1C455B4883DCB30227422946513157E + xor-digest = CE6253BA30B97EBB0CA8FA894138D4E1 + 35CA9C2EA1011D8CE3DEE1248B66B8B3 + B6AE334A2218D855F0E716B812FD91C2 + 56184EAA3CA28E547D9531DF9F7BF6E7 + +Set 1, vector# 18: + key = 00002000000000000000 + IV = 00000000 + stream[0..63] = C8F9031DABF8DB03FF120D05512B5F24 + EAEA1BAB43201A5E93BF17F628E5B216 + D58577112F581A67DD5F962484ED4AC5 + 9202BA3509A73E119680B562F86DF0DC + stream[192..255] = C26A443E26697FA16C0FF3D9152075BA + 1E81B900D609087F773FF30F4271F96E + 1BBABB533108766074D2C601E2C27219 + 4B64F775327F7C2250F7FCC0E377761F + stream[256..319] = D0ECE1B05F3199C4AA3CE4BC21A912BC + 4488CC64EAA183C46AFAC7E3C07E459F + CB08A75F1739D9AE1C489AAF307591D7 + 2E4E97339CC711FAA91AD16CB2D830B6 + stream[448..511] = DA6B9F7AD2563E7D14693343FCBBF5D5 + 9F85D5343A3DEA66CF2A81820881703A + 2F37D81A42F8A51B1977CECE86E477EB + 63E932B79F99B1241657B49953588760 + xor-digest = 5D38C5BF8AE69D544AD7280BE74C6E0C + BE6A420BCB2D39A2DAA9D3D63385CCD5 + EE19A18C0C587B57A83CA1ECCD01C8EF + C43F3F367BC5FA0FE7FA7D8631A19AB6 + +Set 1, vector# 27: + key = 00000010000000000000 + IV = 00000000 + stream[0..63] = F7E523040E86EA2C46A2BE705BFC6259 + 7F77E4649C0E71D51B288EDD4FC169BC + D681F4603E192A7971E73290133E1E32 + F916D98B0D77F37927E1215C1D6AE037 + stream[192..255] = 2128A7909071468084923FE0ECF981C9 + 67E59F15740C9A477EA468B81D0D8295 + 7ABD743AD921F9C106BEBC3A0092D491 + 1BC68FAEE7BD0D72B9268640E040B643 + stream[256..319] = 6BB914FF05BA243BC9030BA267C00AF5 + 2A0B7087AA05A5CAE114F89F0B0F8D92 + 6DAB38297B24360A8E9E77BA0C5F5D71 + 0AD1B28F2556874546C973A3A07FF094 + stream[448..511] = 72948944739208A65AC2D1B05DA2CBE5 + 999C536C06331D91081AF737BE28D6AA + FCB4D7EDE955290D1E21038E1737E9E3 + 0A7681180BA89C746B77C2097D3CFD24 + xor-digest = F3B31EF416B68E94DDEF0EE68039AE40 + 476018580ABEB18EEB5FB27019358E0C + A16D0A6E0F93E4B2637CC85236B9245C + 60885178E6F2B4ECA5184840AC88B4E4 + +Set 1, vector# 36: + key = 00000000080000000000 + IV = 00000000 + stream[0..63] = 4B430BDE0F574C7DE06E6A1918BFB4DE + C0E2836071EB446C593EE1F259453327 + 2E720E2A27992730E67D509EDF7BB0E6 + 2AEA85ED87B998FA6F53A0B77D26BBA2 + stream[192..255] = F2422BB51A6EDC8B05CB5C4A86C0FA2A + 8A631A6CA762075121400682E6D4198F + 33C021AF3F6EBA20C6CA1B7055948062 + 28788A3AC73641081FACD4EFF39FCEA5 + stream[256..319] = 087CD26F0DB13D0ABE7946C81C6F1230 + DA00E6120E894143D63E01C76B4DE15B + 0128870032B23995F47A3C8421551E9F + 9DCB326394BEC319DAF4AF828F5A1086 + stream[448..511] = 1075D79B7886F8683D8126203AAB97DF + CAA776F2F2B9D34F19EB09AE82F1193E + 38C6483D5C5A2F3B4F0FEF9559FE491E + 42995B6C9C0544D0EE71B45199257C2C + xor-digest = 6C474C19C540A41CBEC90B9C06740501 + D334D1C7A0321D43D4A2BD114DF64C06 + F924F821FB0BCDA3815AA1C3206BAE93 + 8AE6E4902ECFE86581D915131046707E + +Set 1, vector# 45: + key = 00000000000400000000 + IV = 00000000 + stream[0..63] = 4EAC0C5C7AD327084CFED7EAF72F6EB7 + FF20E11C65DFC1470C1D2EFAFCE2B1FA + 3ED6AFBE7CBEB677DB1189CB6892E810 + 93B16FDC34199D0A26B89F06C86AC9D7 + stream[192..255] = 8E16BFC093187AA1F846233A522292CC + 2C1F829FE186613ACEBE8BBEF0047080 + 7A086475CD3A9F7A024DF5192B2A2C5E + 3599EA4BCFC4424C97F4848AAEE3CE62 + stream[256..319] = 0440260D186A7F351C3BA39ED04F7D38 + 85EEB80873D8A7E0DB3EC9A85D157A64 + 75FFEA67617555A9D1EC8C860C3F5632 + EB09543087C66E40061721F56E443304 + stream[448..511] = 74CCF961E4D4508382AAFB7AC7246A1A + 4FAE1A2722404ED45A173C60E2785F06 + 669914085078DDFF696B1EC62C314952 + 519F59D3F83B6E304FDCA2BE1377DCB9 + xor-digest = 4FCFF4A0D4B751B1CEEA6E867AA2A450 + 52BBCAE2EF464105705FBB25DBA8A46A + 1874A6AD5A4EB2C6D8A0CC99F089ACD6 + 01248AB9CBFFC14902A5E977241723F8 + +Set 1, vector# 54: + key = 00000000000002000000 + IV = 00000000 + stream[0..63] = 2D97F227F2463F271F853BA10806888F + 8BA5733564557D5174A16172BD89D7E3 + 2ADF9C5B257DCC1693AB7CA6248F7A33 + D311FAD4D89D1C6EB7FCF8896D94E79C + stream[192..255] = 9C38E5671BBFF1255B0E0507AEA04A53 + 4CB9DF58FBFBEDF35A8D3E9ABF2D3575 + CFA09D25F4B65958F6335F2EFD5B6B26 + BD32854D2DCFE3BB9B8E45662E82B755 + stream[256..319] = 2241EE8EF8C8E1D5F92660D4308EF4A2 + E049E8BC39C3E97009872036DADD6FC0 + 11236F68D2E53955353EF0BDF8C38AE5 + 89113090AC7B2668FF6D6430E3D86A80 + stream[448..511] = 25D0F4B24C08E64008B664324A487BE9 + 5330E380025E1688B7E094120CB4EAA4 + 66C32BAC66FE0EB407FB61B2EF1D5EAC + 2D2CF69EB18D0CB218304BFB765A710B + xor-digest = D289038D30972F0D331BA98C9B3985B8 + A0ABC29875574729E85DA5D86EF6D8F3 + 564D2106EBD5B01AB1239FFD8E7D9AD9 + CE24F40D38F774B51DED044843E8DC08 + +Set 1, vector# 63: + key = 00000000000000010000 + IV = 00000000 + stream[0..63] = 9EB8F6BD37474B5C2AC01BA1B3EEA5E1 + FBD4D4D1AE63EAFD81A4D2C900B59312 + 73B37820BC68FCD69ED18F1ED4EC9334 + F39FEB330BAAEDEF2A1E51B218B385C8 + stream[192..255] = BF9DEDA5A5E009286220755F2C900A1F + 7FCD3B8C694FA76D82E19A4E598145AD + 064E7F863A6E7477E626D5736FEA8CEF + 48F0B8C6646C2CA76F14EC6864E9AD8A + stream[256..319] = 4137E7D79FC2569ABAC57B2740AB3172 + 97A07F2AD06CEC87C30BB474D86FC64E + 9E9149F5A9135DBF5F55D7811BD50611 + B11F92049D496D498353A1D60F676517 + stream[448..511] = A45AC8C930B8F3A12A1F742E06950A30 + 5F1DB8F4AE9EC0EC2821337843D25CCD + 3CFB3592FA440424F89A5CA600A1DD60 + 3A22C8913E34457D721B93A07D006BB0 + xor-digest = F1C4BB2AF77BB600FB2F785CEE1BE8A2 + 5D47F48E32E6774EA0D8237228A00CE1 + D5A700EBB06D6BF6FE9DA1C01EDA833E + BA80541AA2B62AE65998483C6FDAEEE3 + +Set 1, vector# 72: + key = 00000000000000000080 + IV = 00000000 + stream[0..63] = 5D492E77F8FE62D769C6A142056BE936 + 1FA0ADD8A54601DE615EBC04C4F8B2C1 + 2A8ED2DC9AB286A0F6C49C7AB319BA6A + AFAAF0CD42D0A44C7DACBC90791855D8 + stream[192..255] = DF1884141AB121E7459DE30B2A0C85CD + A0016453D350EF6220526CE33C1806E3 + 831BEE5BF226E560F165FFC3585F2E54 + F4845419893265CD88BE8CB302B20345 + stream[256..319] = FEEF3646A5600D104A2DE2ABAF9B41A9 + 97FEC3EAF10C2F50EBF04D12CE139F6E + BF7544F9BC85FA776E266C368C249D27 + 4DF3ECA2CE43F7A611AF0047D22E8601 + stream[448..511] = 2932E68122A3BD81A5EE6922FA11067F + 5DA90D30B775F752831AE09527B72DBE + FC4DDA52DA28143720A31DFE662CDB73 + DED478E8541E3472AB4F80712250FE41 + xor-digest = 4B2CFA502DE806DF648335D2FE74E83F + 0B9346BB6AF0F0D1371EB9360F2638C7 + 856A9E715D44E5ACD551478FCC0C0AAB + C29DF306EF4B4A3BFD3534434EE26928 + +Test vectors -- set 2 +===================== + +Set 2, vector# 0: + key = 00000000000000000000 + IV = 00000000 + stream[0..63] = FBE0BF265859051B517A2E4E239FC97F + 563203161907CF2DE7A8790FA1B2E9CD + F75292030268B7382B4C1A759AA2599A + 285549986E74805903801A4CB5A5D4F2 + stream[192..255] = 0F1BE95091B8EA857B062AD52BADF477 + 84AC6D9B2E3F85A9D79995043302F0FD + F8B76E5BC8B7B4F0AA46CD20DDA04FDD + 197BC5E1635496828F2DBFB23F6BD5D0 + stream[256..319] = 80F9075437BAC73F696D0ABE3972F5FC + E2192E5FCC13C0CB77D0ABA09126838D + 31A2D38A2087C46304C8A63B54109F67 + 9B0B1BC71E72A58D6DD3E0A3FF890D4A + stream[448..511] = 68450EB0910A98EF1853E0FC1BED8AB6 + BB08DF5F167D34008C2A85284D4B886D + D56883EE92BF18E69121670B4C81A568 + 9C9B0538373D22EB923A28A2DB44C0EB + xor-digest = 106E884DA4E38669DDEBA948CCF69D09 + 7624FA9131B60DF0C8F41C7FDC29B46F + DFED222B48781CF7D6B566AC7518E518 + D74F11A16F8171C1C26FAFBB1E632934 + +Set 2, vector# 9: + key = 09090909090909090909 + IV = 00000000 + stream[0..63] = AB97616E7BAF0921F424B2573BFA15BD + CA01898ABBE6AB77279AB1D732ABD105 + 12769CC69FAB34E03B807F92C96627C1 + 7656BCC9BD9D377240A2B6FDBD784453 + stream[192..255] = 8B6043B0C76E991D352361045F1B0724 + 56C04D7972CEE60F8727798497D4D3AC + 69CE6781D09795DDCD16A48236785201 + AF1884E69825977D4988B6C45409E187 + stream[256..319] = EDF6242C03842CAC95579088A4B6C604 + 96FC3C80A17BB01FD25F647D1998DE1E + B70FB1D5FE3754DD7C8801576C7CB6E0 + 6CBEE317B091C542BA91B83B1389CE50 + stream[448..511] = EC087DE06F92F49E8B0C69BCE33276CC + 3EC0B0472494E4DE3F8EBE37A9599EC8 + B6F46FCB72459FE7C273B3EB5188A6FC + 42B7733D74F7D2462B14D34EC0E24971 + xor-digest = ACCD41AA0780F62208176BDDC3E752DB + 1C228A5F99B2904CEE22946F46F8013A + 40B797D54FD1C289510FAF21940AFB7C + 0587174163E4D61295B3302C2E30C58F + +Set 2, vector# 18: + key = 12121212121212121212 + IV = 00000000 + stream[0..63] = AD35E17B1971AF6B5B3E365FA64EB4CF + 7EBF023D520889AD71F1A07AA2E0FF44 + CEE32D09CF77360C52434D462B53A405 + EF5A60D82A0F5E3CF3321B3727A3D61E + stream[192..255] = 850E4A9D5D6CE76AB58B97B6BD3F9654 + 19FA993BCE0C618B0200A0B024B6EF30 + 1BD3E32B173F8D63D2077887DE45D2EE + 842B71B407CCD7629EB5185732F048B0 + stream[256..319] = 360B6895BCDBBB111156A9F9892850F0 + F059EF19E4EB265896AB3FD71017E156 + D80071542C5EB8843294053EEF33E6C0 + E62C640182BD26D0CB0677422964E23B + stream[448..511] = 3889B97439DBBAF76E480EEDA6EB3871 + 01DD97679826677500297211E7BC7121 + 8E4CC353596562C17E1B7BB4228B9869 + 149CE108339442C16EE2A4E6A20EC1EA + xor-digest = 5451383945D449593499E2DCFDB7441F + 03106D84C1F1058E1FA5FDED446D3ADB + 4AFF88C3B0A1CCEBF493481BDBA77B84 + AD798C93D1C132BDB5250293A69834C6 + +Set 2, vector# 27: + key = 1B1B1B1B1B1B1B1B1B1B + IV = 00000000 + stream[0..63] = 575AC77DCD54E7F48D837ADE0A88C70D + 777839B310C297835F5BB88C1A5FFD15 + 69A4C4676E7D7CEA864FA1AD2F78E3E0 + 44E7D145827DD6E4095CB308111F5C72 + stream[192..255] = 0961EB35FD322EAE8011052513323CC5 + 1B0F4EBFBC25104A2E947B98B545D00D + AE223FFF25AAAE27A6AD25CC7CBAD627 + 559664E720CFB9061DD15F8C6BAE45F8 + stream[256..319] = ED7100988973CC712992DB2C42BA0FDF + 3F0A5B49B41398E96214F1C2F4F1C0EF + EC17C6A8E80875D3EB40E973710614E5 + 72233CC2D88AABBA1B67D40365A10641 + stream[448..511] = EBA754FCAC87029BD9D475FB79FBD6FD + 1ADE18D75DF85CDF875C517862855665 + C6DD45F3999032410D7B71EFDE3E4FDA + A923E9346121C8EA2EC999575870E043 + xor-digest = 397DB0E5B8C4A77CFD9CED0DD47E7F2A + A3A0890C5AF816C18B8006E7363F2E81 + D60F24B438A5DD41EE24A787FBB1406F + 3F9270CB9FCDD19D651EB12204BE68DB + +Set 2, vector# 36: + key = 24242424242424242424 + IV = 00000000 + stream[0..63] = 5502DF8070387D1237EF5213B5F19EB7 + 9B9CC30810DB966DD2B25C9249C0378B + 17423F4E788BC3E82FBFC7FA3FED4A57 + 04BA35CF9CBD12DCFD56CB6DD431A4D5 + stream[192..255] = A68899B41A40E33776B5F06905D41726 + 7698EB1306923997588459F83620CFEE + C503FB9299F7640B67554079E04A404F + F84966D5838D35D639065CE9B63BCE00 + stream[256..319] = 1D0DF339EEB936F041748F00AD035065 + 51E81724ECCC589A0848C24962EF1766 + 008B90259738515712B2F23EE6C81E39 + 85439A1D6E9E2DBD6CE0207DA4ACFAE4 + stream[448..511] = D3D23D51D0786C1724E9043C2FAF83E6 + 32292A3640B2CE6C129B509EFC9641B6 + 2BED08E57E2E3FF6F19B335B49468CB5 + D49DD8CA4575617BEE7A3A2B12DFF7D4 + xor-digest = 3174B207516E0629865B094F2C1FD668 + C583DE7A6C781AA8F66FA6A831A1DE81 + F5CB1E105F4879E3C54D97628420E175 + 37B2B4E5F2B762B2BE0958D6E5E39094 + +Set 2, vector# 45: + key = 2D2D2D2D2D2D2D2D2D2D + IV = 00000000 + stream[0..63] = FC87849624217531385850ABE1CA16D5 + 792A45F8FC40638B0BDFB7A32D5B53CC + 6751FE1CBE1BA673D2113AB900CFC9C3 + 095CA85EAAF17DC617249FEB362A3F43 + stream[192..255] = 9DFDFB4E65756A17EB25E7780B76A5E3 + 8387FD2E6680F1C95E43168890626763 + 86883BFCB70CF7D3B996ADE723A640F0 + 6F4FB89998DC89836BE5DE6867AB009F + stream[256..319] = E994EA686CD3B38CBAE1623243671723 + E73659DB9E9AE918738B9178EEFB9165 + A63359C35F56DA951C50C8507CB75922 + 3AB159C8330DCDC1E96B59840B4A7F87 + stream[448..511] = 4A1497F3FF052FD845DA746EA324C700 + A10BD0C4E66F5E542542571EF612FABF + C71F6CB099F615D0D5A09BDBD566337E + 40A25B7F2665C28CE0DC8ACCBB13F76E + xor-digest = F66B5DA82D74918496B50BCC58AB2198 + A7023908D0AC9BC6F993800ED66BA4D3 + 90574B418F9313ABCF6D1B2E5A5690BA + 21349FF7B4A0FAB8D6918600225B7ACD + +Set 2, vector# 54: + key = 36363636363636363636 + IV = 00000000 + stream[0..63] = 1F9A14B98CB448D4002A3770361447F8 + D0FCA7B2BCFA40D618AB1833FF19DF6F + B9BE5D7A47B692FE64C7CA520D60DA1C + 35AC0B9E608C5E459037F8E9E68B8CD8 + stream[192..255] = 1FEDA2908F13CDD9173BBCD4768E7A20 + 3654C47A559AA91242AE6EED90581772 + A11CA7E7AB5E9044C10FE91C9FA48B81 + A213D4B43357E95B318E28CE1FA8C045 + stream[256..319] = 520BC403381964A1674226905F75DAC0 + 5D2B760BDE414D8494ADCC53973527B4 + 6B73FF86C6DCFF0781DDB346B784FD25 + A04DD0919BAB0307A11902AED883DC48 + stream[448..511] = FB9DAA7CAC309E70D9DF5EFED29401B8 + 32B2DEC6A4DD4C249ED2CAE2CED7052D + 4C73FABCFA489E56D4A78C30ACC7CD3F + 31C3C10D6B1B6BEB94E5829663AE53E0 + xor-digest = 575F46D572322875F036A716A5A987C2 + 72999B1E1A7AD2958DBC687530B2735A + CC60763507474BC76A7E980F120F2132 + 186CB7F3654EAC410B52E1C6C74642D6 + +Set 2, vector# 63: + key = 3F3F3F3F3F3F3F3F3F3F + IV = 00000000 + stream[0..63] = F2D9792B78C2D3EC67D8C80A710D19EA + DB163199C6D9A1CB8F30624D4B30D916 + E4C201E013EF6F4E0BA58296BAB2C561 + E737EDABD055F517CD546B2B22F27C66 + stream[192..255] = FDFB348C58892CDFAD20A7D2D4BA83D9 + 75862EAC35593F154B9B4323D487A762 + 802AEE46A3FAF0074A815FBEC00FB104 + 395E02E3BA0EFD60616670D800BE8641 + stream[256..319] = 37BD3FD4A5AD0BD7990B94E6AF98213C + BDFB54EE18918A73751BBA9F8D2B28C5 + BE5796166B740D10B3F6408C86707925 + 9D39965E95740C49D2FB156C319493C5 + stream[448..511] = A2F204C5985690B2BFEEC7DEFBD7CBA3 + 6C765676A61731647C6DFEAF90215DBA + 36A2168BC89542BAB3E8D404CE989E86 + 03899007F2656DF6A17A6516F725375A + xor-digest = 7BF9C7EE0A793EE956E78BB7590247E3 + 69244299304920548624C760D7537372 + 14464E3918E10D797247BF4B10883B87 + 19E15E0BE512115C4AC86DFD9F1E12AB + +Set 2, vector# 72: + key = 48484848484848484848 + IV = 00000000 + stream[0..63] = 435E4729820B9EF9670DACC074442115 + 00C1F4A18134B8FA1B08067050698D2F + A18B3827F5BE7DD06B75AF49CA442788 + 0B47FA46E74D48F424ED5C981BE1B9BF + stream[192..255] = 6D13EE06E76DB7837348016FFECEE7BE + 3F3D812A5FCDCCFC2A9AE5DDAAA776A8 + 44745A2A0442A8E0CE97A30CDF933229 + 84DC45C43FAAE7E15B31870F37C4A9AD + stream[256..319] = 48D6B3800D2C3775B13D0E0927FD81CF + 35E6F9662D5AED68D0E22BBE37B222C1 + 5FB8DA5D73768AD44AF8E48FB3336556 + 5571CECD079E42BA5F86B669C48F0A7D + stream[448..511] = 9CBBB687D06CE1D01D3D3D894AC66FF3 + 89BD9CBEB6DFC6988FF39DF4B11C0296 + AE09F99AC63D0ECFC39E2D0B28825630 + 26DA86D1E0EDA3C4B1A3A4E4C28C2040 + xor-digest = 6D37BF8CBB9581A71106DD3170D61926 + EBEBD9BA6469FBF06BA15EDEC9F00811 + 9E65D2BC3370B345F53E545345E40DF7 + 2E8A524E826437AD3DD5CD814CE1CB1E + +Set 2, vector# 81: + key = 51515151515151515151 + IV = 00000000 + stream[0..63] = 0FC805C2829B79F15F34AC308018C3E7 + 34B14005BE0473B19378CE115146A094 + 0DAE4DA349905637C3981F68E430047A + A3056EEF32174120D9DA49B2CF8C0EA7 + stream[192..255] = 9388BA6B4D10E0B2F33A092273052300 + 9E6211FEECDEDFF5ACA9438E2C3CB37B + 6A49F57B5E6C73B9107AA6D120005964 + BCDE4DD6766AC98D6395BC3232AF35FB + stream[256..319] = 75D8595E76693C32B0795F61BE77DEFB + 3ED354FAAD29242D99F3BFC0484A51B0 + AF5CBC3B07E7C5659D4AB716371F0D64 + A88B0763A9B1CA33BCBFA75B430161D0 + stream[448..511] = 689AD47E7ADBB2F7867C01811427ECD1 + 2122DA2C9D41D474B2FCE5FAC6606AE7 + 761FFA11B1F790AFF5173FDFAA84085C + DC49B0A93B46CE8D3395A44742810CF8 + xor-digest = E132E58124DB7F70C5CA326EC41855FD + 2FAA6326F7F54301B2F485ADDBEC3D3F + 6498E19AA308BB585569DAAB5D39D46A + E529603A5955ADDDD79C3C2FD002825C + +Set 2, vector# 90: + key = 5A5A5A5A5A5A5A5A5A5A + IV = 00000000 + stream[0..63] = 2C7F53F2FD7CC9342EBDB26E8245BB9F + 298D54B74A7E7C608E4EE6FD7A6608B6 + 9EE71B83D9635C457DD9D05FE9090FBA + 05E249D44218E97D1B905E4F0810A912 + stream[192..255] = FCF3B19A6355A85830A068339E297391 + F79486B659F4BA98E3015D9BAA13A2E8 + 7F069CD5FED504F466A92B92107C4B21 + 792E690467C7E2094055F48540F024CE + stream[256..319] = 794471E527052FEF0FB797E288032D7D + A3BF1D4C0955E6E1FFAC1D78A5936CCC + 894D498C9D6AB826E8D8DCD58022CA0D + 610CA0733281A87E34D25FECD0E2508E + stream[448..511] = 1537EFC35B24460E0C96D1ABEA7EC9C4 + C0567222ADC0181ED68D12F695FB3A2B + 65760A00CC353F2675819225E574EB9B + 9FCF37F90D6351F5F89E98BB5B4D23DD + xor-digest = 991125CF01E862459F3A3CF3130E6409 + 4F267BCB6DB6F545315A137068D3B754 + 458800513EB758545A99956FBB14F791 + 9583F158A67274A5FB9AFFFD1863C2B3 + +Set 2, vector# 99: + key = 63636363636363636363 + IV = 00000000 + stream[0..63] = F6652E27AC1B2705B90EAAC51D79FE00 + 093FD0FA2DC60E743768B47477E0129A + 2FD23E0FF656F56A39BA260FA2D45BB3 + 5BA106507CF6A0027F86C92E0174DB1A + stream[192..255] = E59768F3627BE1541F803B1523212F26 + 9524E7257FAFC3121EB9D6C30B9E651F + 5BBB507CBE63620007FAA8109BA340CB + 4D9132EC5A18F9E322F7D0BF5E8D7F4F + stream[256..319] = 2F7B8AEAF185ADA971FBBA7C716DF689 + 3FFC24C22F7F576E60B28C08FC7C00B4 + 0FDAFDA95CAAAF970C2B5537AF4BB436 + 93D45D20D56EF92B5EDC1F6C29F12906 + stream[448..511] = 5C7878A24D338E6C732536B48B14C6B4 + 2EC62E7220CCFB2D997A167B34343787 + F0C03328AF85401A9A4AA22926901ACB + 9079525D256D74DF3CA958541D364010 + xor-digest = EEA65C2D1B122A93E50A2AC4D3239C59 + 0365FD42FB54FBD80914C677F4ACB2BF + CEFF6C596C03617140340A79E06C649C + 0F6C9351358B6CC396E11CC2F3EFFFC5 + +Set 2, vector#108: + key = 6C6C6C6C6C6C6C6C6C6C + IV = 00000000 + stream[0..63] = 7E1A2E71199A17B0BB9A8B9B8102A9AD + DA23AB4642AA1922B334D0A6B5D62F37 + 100055CCCC7D4D5694DE2745221B6BDF + 02ED1F56B81BDDA070C0E09643FB31DE + stream[192..255] = CB3ED9DF81EF89063DF118A6C08C36E4 + 750A999E452328DE398A5581D6ABB6FC + B739D189773D19C7073FD54EBFB07A26 + BBC737196073036049DEF546DBDE6FB6 + stream[256..319] = 0C31B4C18EF8863E1F891B13B08967EF + 2D2026926D5D508FFE5D6AD06A664E64 + BA675C5D2081C3033664B5C2A5C10670 + 1BE4893152F8BF00DCB334470423A21B + stream[448..511] = 809D6CC7F3E5303927B47948A68AA2AF + 2113C9B5D969898F27E30E24D148EBFC + DFDA0DD27E7E7C269E1B774260125800 + E40C9785FD24E9AFD64942180F2E5C75 + xor-digest = 7DDD82137D58DCF886F8BCBA29798269 + 7CF9A0F384492CB0E31FCA3A456D54BD + 10BC808208DD5A90E083EEEC5F3145E2 + 888E98162158B3ACC523798667A24CE8 + +Set 2, vector#117: + key = 75757575757575757575 + IV = 00000000 + stream[0..63] = EAD8FBE63C182904DD66EDB353791503 + 8DDEE8EEAAE44F9DB87DEF80D9DCFAA7 + 1017333258A8CADA82D35292A48CB49B + 4838D84E0C95A12BD5B9805FE726A804 + stream[192..255] = 208FA6B0309284BFBD185AF987B4CFB6 + 65CF191D57C45ECD869DDCA329EBAB7E + 9D7003BC227C5A0D278B64357F5B31E7 + 4A83DA5BADF99DAED902F804CF0BC7F1 + stream[256..319] = D2F07231788112C5096C74FFAC36E765 + 4D4E79FD02E545B33BD4FB2EE35150E1 + CAD8A5BA225230FE57955866927DB0DF + 0610E3462F425411D257E4BD5D52E6D8 + stream[448..511] = 7ED0A3B04B194D6141AEF29D626272B8 + 869ADC25F7158FDBFAD036A15D633C3F + 2161243F66EE3EF3D35FEA9E2E1F8095 + 3B5F5C1AD9FEB50CC20A30C7A33079D9 + xor-digest = F64ABDFC5061BE3904DD56DA047711A3 + 35413C8B20E8100F2A681D3CE3FD55EA + 12181C69DAACEC69D27B9ABDEBA4F591 + BA2E4CBAA9C840F8B21A086F45572DFF + +Set 2, vector#126: + key = 7E7E7E7E7E7E7E7E7E7E + IV = 00000000 + stream[0..63] = 7CC89FF6F0DF4C88343622535F876688 + 4FB2A27760EC4EA0ACA75CC5907DB254 + EE37DF12E5C89CB0A78A569279BBCDB1 + 21C34EFBBAC3311006A6DD01DC2836C3 + stream[192..255] = 179FE09EA2E5598C870E88089E4EE1B1 + FF235CEDC6EC6AF26D0291BF8C93524D + 61AB1A4B05E6F42CCDB876C47AD4BADD + 0A24985E732F6776334FB5526D89BFDE + stream[256..319] = 5ABE9B8F5C71853905A911E1CBC4438C + 9B3D4DD3AA8A38C433597C163BD2C7D6 + 6155466AB5D15ADDA22F959940E3833F + 822326EC9DC284D7210FD39D21485C62 + stream[448..511] = 1C29C24BD3423A43C4FE454E7E6788CB + 7EAE84A1AF400D412DC1F4C4D6732271 + 6F095F7A51D26C80BEA656107CAE9A6C + F997963EA4C4B9596FF091BDBAD2DD41 + xor-digest = FBD314825DFECC8C127EF9F61F680EC5 + 90AD16AB53D335530CC70195D42227A5 + DE01D77D93CC4B6B340655C06A43047A + 270F22477EE0E43DDBBF431AC6DD36E7 + +Set 2, vector#135: + key = 87878787878787878787 + IV = 00000000 + stream[0..63] = 01DA3DC2C02DF6FF26DBAEFA1A6C2780 + A66ECF539527B0FDC73D4468798F7D80 + E15E0633C9B71A8A5A33EBA9E29F9035 + E6BF125417BE003D4DD5048C8DC64BD8 + stream[192..255] = 0EC0EA759FD67F2357836A9CEBE58FBA + 7064A368F36A0CC785B89DB0C8FBF6A7 + AD400C21FE7AFCFD382B140EC2E7CA44 + B315FDF79FFF9E0652802577AE8343AE + stream[256..319] = 91022C2D328706843E6F201B4A29E2B1 + B3B4D9E66C313264E14C5B017A89AC94 + 1179E4BDB99171263B628BEB92FC4FFE + DCA064715E9E3DAF96CDE8EEC377301A + stream[448..511] = EF49F76F7E9CAFE273B45C50785C2C53 + AA0177BB9F91CCD10E74CE4AF926BF9C + 767AB065F36019FB6755569ED1B40AC8 + 20D00FE052BE8DF23BC472D8F9AAF68F + xor-digest = D8C3912C25C656F81E417B5F94898EB3 + B0D60C47B9F3EF62E11C23E4F31E327D + CC65EA914584DCE5F659D768112C478B + 7786002CFDBEBFF86BE39F0B2FEC53A2 + +Set 2, vector#144: + key = 90909090909090909090 + IV = 00000000 + stream[0..63] = 6AB0802657876C8F7211B14CE05E7802 + 4AA6D1E5F974815D398D7BB9E16855C3 + 2FB8896F57C43828D1AE034BAE3F42D6 + 1D006022C71103EDD1125CC5EBFDBCE0 + stream[192..255] = 88214677293AB58CE7741E6620E7E494 + 87BE9C2AC25E1BD86D9790CC30925DD9 + BAEA934BF1B66DFC6ED59F277FB73AE7 + F061A9A755732AD409793E71DAF33D2F + stream[256..319] = F56466340AD5F9652852C4A6C5419788 + 41055E5F6101880C742DE820DA34EA22 + EED5F9F25BA1654407469BCAB70D33B4 + F5061CBE97A915A78B6E8A915CD34343 + stream[448..511] = 301B4C0D28CE2A00996031B076FBB20B + E3646E80760E163D22A2600D77F63AA2 + 3F48FB42AF20BE33B5C2CC0E0BBD40C1 + 5375578FA8A3005571C9B3F58381B250 + xor-digest = F9F2779B49CD6E88D70188E3A30B0269 + D7B548DF0546B4692D293833EF7BBFBC + 10E1EE87A00F498249C21845F86DB25D + 6EF844DAA40E0B8756C607E442C33956 + +Set 2, vector#153: + key = 99999999999999999999 + IV = 00000000 + stream[0..63] = D6D25A2BE87898CE1FECAFCE8770B121 + 4C7193240939F29545F76278FCB196D5 + B7D9CD12FC253C495BE60E0E3707438E + 2CB54214899BFAC8F5895AC439D29F25 + stream[192..255] = 69E26B3E0B2514D7FE1F39A4B81E4C8B + AC55B40D200795C94936C8E2BA2E2E7F + AF46865F3A9E4883AB2A4D698BB8D817 + EF62F41E660FBE5F070320C46260AA6F + stream[256..319] = A8322CD98D7D93A02A8E18360DEEBEBB + 1A01E77457DC39B1C204FF96E553E2BC + FF1DF66F6E733DDC73C54A71B377D9E7 + 27E8EF96BDF34D1184112CC7481F167B + stream[448..511] = 10A4BF8ECFB25198C1BB5D3EA5461818 + 4729D59EA85315C4F04138D7C9943112 + 8EDD8736B77EFE977236796FD19240A0 + BF71B2391E90BB4AFB530A6B80D8794C + xor-digest = 9EA0AB5474C153C83DE6860C9D9B4B31 + B245327E28E99CA5EF581831B4EB1CD9 + 61B215AFC665231AF59C3E2462D8ED1B + 618D754F4A2F2F2C8DB8667439D5A152 + +Set 2, vector#162: + key = A2A2A2A2A2A2A2A2A2A2 + IV = 00000000 + stream[0..63] = EA8BD0720E569161E9BD399691518E7A + 54830A6B8EA55FA00C651B00B1F1EA2E + C68741910B8F0367B7987024D807DB8E + C7015462E6B53578EF129EE67417BF01 + stream[192..255] = D6057F137D1FC24E7F0A34C51D9C0A0E + 823C26339BCDBDA90FC219F582B15D1C + 42B0E41BCCB2643731EA7386A3D51E88 + 56155010EF82099D8EABD5206357A3CF + stream[256..319] = 0E46D1C2F449616A27005A3EAC76A4AD + B274B9D20BF963ECD159BF1ECEDD8E92 + 8196D33CF6B95116F783BA68C3964B61 + 049BEBDA36A15F4AEC8549A20D7E0AFF + stream[448..511] = F7C97CD9198EDE554A0C10EB6A699831 + 7626FCC74E0F0EBAFCDA93BBF1029505 + 2C10C5AF8C7C805E698FEED1474E59FF + F7CA36B22BC3B76719A87B69042536FA + xor-digest = 066BC24CFB6B12FF98BCB14A03F6FB96 + C5A842181B57E5AC64B13905FBDFDFA7 + 6A69995D10FDDE6136F71421C94F9261 + 123A7AB94A618B53F5B9B2B9499D32C4 + +Set 2, vector#171: + key = ABABABABABABABABABAB + IV = 00000000 + stream[0..63] = E2ED9461B719158E3F48D2D8CDACA1A1 + 3626A0BF92ECC9AB9272DA04C284A649 + A228B32C4607C6D0FDA518ECD5D9548C + 8044DCE2236F0B9415BEF8BB0E414EB6 + stream[192..255] = 033454A28BE92FCBE564CAA7F89FE923 + C4806D4FBA287536DA74F29B4F359C81 + 2A7F7038A675E1139B0510E4181AE169 + 3A412C55DC8D2B106FB690DD7B1B0998 + stream[256..319] = EA4C80A27131E734D426AB240DBCBD05 + 0158D3D1F2865CB2C029BDF5D0A914E4 + 5BDD3DC8F28FFEBE3AD98090A6754625 + DBB84D9C2F36EDE755967B649EE37075 + stream[448..511] = 48AE58F9CF8D2522E7E6541F36FF0720 + 50E5F8FDD173807BE42A2D0B0B859D5D + B1570B180F6D9F861A7CA19A535858B2 + EDD7FA939C0B442DE3B8A5D74776C0B0 + xor-digest = 5D164B4F8E2911D9D192FD8C6B837869 + 2401EDD92ED0A4463D61A8134C3346EC + 7DD224CD632FF2BD8AABAE5CB869A6E9 + 8C58FFCD372FF9E9216BB2951F77DAD3 + +Set 2, vector#180: + key = B4B4B4B4B4B4B4B4B4B4 + IV = 00000000 + stream[0..63] = 736640C555214B9D30C268B8B651F614 + C8724314624A4FDBA75D6DC8C15DF93B + EB80E8325218EA489128BBFDA19A6413 + 9510DE9B6AC006DF3B29CF7A673016BF + stream[192..255] = B6F45E71ACB33ABDF77ABEADABF50B19 + 3448ECEDA50CD70E9AC05F3F3860C9E3 + 47DF93AAC79CF2F69A9E675BC99F3990 + 822DEA02B57333F63B79D92A06D23FE5 + stream[256..319] = DFD0B42211250AE2645006864CECD6DA + 89A57B978F57D79E50DF883A49B88D8E + 211CA69518B487C22A96B010CB92901B + 2B8A4196EA1086C8BF306F8BFCDFEAC4 + stream[448..511] = 0CC9D87CFDCF2F5094BB0BC7959FD20E + C5A86D0B4F1BB6E7E46B91697300CF34 + 87C5C2CFC651079C3DFBB2B17CF98FA9 + 423EAD13D975B9D69D5A919B7F59AEF6 + xor-digest = 6359A47FECD0A662A367B233C012F1F9 + 1F0C0FB5642151BACB3251E4E26E75A7 + 755B6184C98ECD10F90D03C817F6E427 + 63FCC7E807CCFACC4CF120E0496077DD + +Set 2, vector#189: + key = BDBDBDBDBDBDBDBDBDBD + IV = 00000000 + stream[0..63] = 7FE26D4ED762AC9D9C1D45DC116A393C + 1C98F3F7181A8109475C97AE3D5FAA38 + 1F8286A55A7A9A7EAD349EB0354E8914 + 90F7EE0C5496E3FCF217D1E71A28638A + stream[192..255] = 06045815FB8B880DCCE9A0FE286F7467 + B80290BAB8389E7CC6EB828DB1CF1CA2 + B471CFCDCB7924172FDB6213E77A2155 + 537F79224E3C340C78C5B9E4BD6C2803 + stream[256..319] = C4BD39FE0A1E4E531420AC6BA1217298 + EFA81FAD06881179219470B1FF1F4966 + AC09CD84ED67A3014C988639C5ED7E8F + C7C42651545D2946C476E79096DF676C + stream[448..511] = A1872E9DD2355AE77A36987FEF290CF2 + 8F5403ADE6867B7A658C156302AB4C63 + 18BFEE598F33D8AAE877AD773ED3D78A + 82E534F17A8866DABE26B227B3B2098A + xor-digest = AFEE3A56B281A6CE4E9C54E80BA36EA6 + 0B1CDADB185DB72EC83D2E67A9197236 + 842758D71794F88E40B1C7F31DC12C5D + 49B00912BF5708FE2EC812DA46E4C6F4 + +Set 2, vector#198: + key = C6C6C6C6C6C6C6C6C6C6 + IV = 00000000 + stream[0..63] = CACCB9A2E28AA22B80634BBA8572F27E + 8BBF72F76F54FDF93F6692824AEB1D35 + 965AD35ED01571125E6EA8DEECC21290 + F530748CB2B43DF34081A93C8BA9F652 + stream[192..255] = 443A382587AF7B5DA460EAC09595CFA6 + 2917D25E1F298C739D23ABE74C3DFD6D + CE8F32DD208439BF04E1694098BD8C66 + AD5E683F008588ECC6CE51B376DF172A + stream[256..319] = 7C6762465EF13B387C5E6893A601F723 + A80C5881B0E909EF3A87A427A368F6A4 + 0B4CEFA0645846419F640B20BF1916D5 + 8E9932F55E71831F84EEF6ABCFE8162F + stream[448..511] = 417C31FFDA7823EE7F99C19E6340DA3D + 72AA1D95FBCBF9426F77D4E09C88FDFF + 44A2F55B62458E7C713A7845FD8E4D8E + 9581E9AA9089567926F7A8941680BF17 + xor-digest = AC912E896C6FBC0C6CD151955D703A08 + 74579E135D2F9F499F33A0E6D6236B43 + 3EFB6BE44EC2EEDB06DABB503ACA120B + 7AB1D3224C06C8394E4BCBB27CC7E777 + +Set 2, vector#207: + key = CFCFCFCFCFCFCFCFCFCF + IV = 00000000 + stream[0..63] = 91146F1605C9F8B0B1BAA71E77C660BB + 77846361F43250C1F7AA9B5613E3928F + 4D3AFEDF6A489CC471D337549134FCCB + B560A99F275BCF8604E039A338566E32 + stream[192..255] = 955C6ED81E1925E3C777AB942D6DD36B + CF81DF2DDDFEFB0BFB2DAB4159B3170F + 523A40C626BC22CA4CE7C332810521FF + 7ACB370CA30007AB1B85602427BE348E + stream[256..319] = A0934F52AF3E20D4082D734CD4D5BC3C + 223F0B6ECC90C89FAADC6DE32FE30429 + DB10CB61045116CE0F5B2582C3B12643 + FC9A13F592C0516A503EE56B7B848A5A + stream[448..511] = 7AA95A6CD6470FEDD8EDC44B6410A532 + 4FD294F369263CA729F52DFFF4C004D1 + 5A8B57647A48B6B237EBACB1F150AF1E + 837FB9E11161D3C2E2042C2C7DBFF922 + xor-digest = 4BE3FA3BACB68C2D04F4CFB7FFAFBE9F + 51DCF564AF201D8FA801C4728A419213 + 9446CB68D8F1C5091B2AF4C32A0CC4A4 + 623D39AD9979E89F9C317B2D65200F7D + +Set 2, vector#216: + key = D8D8D8D8D8D8D8D8D8D8 + IV = 00000000 + stream[0..63] = 9B452E88539B47CFE4ACC7713C3CCB76 + D15BBBF36A8280917D701A9A516204FF + 0D0A21A38E6221E7E64F416A381FE6E0 + 48FADF96ED9E5599F5C01D97D3E2C8FD + stream[192..255] = AD8FFABE68DA9F61CE7B67D11A873B03 + 988F6B6C385F61455F2CB45DC3CC0893 + CC7484491D0AF1C470E8CFF58F70FE70 + 173E85EE2D67B73DCC9E7CB6550E42E1 + stream[256..319] = 00A2E750AF680E6A61920D9BA674EE92 + 664FB5282BF44C0009A0F9FA0BC51793 + 6AB0295A54E22EBEB9432D9CE5D518C6 + 3F2919EA615BB76853205DA3FE61C011 + stream[448..511] = BC3AF274262DF0838D3CF9F6DC4B825D + C6DC120BE17E930FED17C4AD18C7E98E + A129CAB3AD036DB2E2B059C402F728C8 + 5B219F77A8FB74B54FBD7D145DF4547E + xor-digest = 6963342177EEC9B691B5C82B480FED89 + 81868AFC788E3573DE62F2AE9A9557A1 + 0C5F39B20DC9BE62B60AB3DED4C3603A + A956729A3890232836D1E995D34580A8 + +Set 2, vector#225: + key = E1E1E1E1E1E1E1E1E1E1 + IV = 00000000 + stream[0..63] = 1D34750D13D4C28BE03D95688A98FB00 + 0AE065F9289E5F48E070113A1FD2A7E5 + 7FDBE7410C40F4D3924032496F069BD0 + FA9ED7241632AB07F312D8FAEAC31C59 + stream[192..255] = F1DD677F3711E26C4A276874C73726C3 + D356AA8E6DD34951B6D5EC504B054DFE + 29114CA15F214775D56BB7B75200D152 + E6E9E44A18CB00B4FB940D6C0AC041B6 + stream[256..319] = F8E17AA6EE31FCA075CDF92478059A99 + 93614CFCBF793B0B93577A635752C419 + E709CB07913C3AC179C693A5C225849B + 7A40CA448D9373861A32EDDB2033F45E + stream[448..511] = D3149B0B62D2B9C5CAF5080CEE9FBFA8 + A3B7E593097D44735D7671A1F473388F + 3F27A13487064E90B9DB7E698E699237 + 22E16D2AF78C84F8FDE961B5DB0DE08B + xor-digest = 89CEDC5963E7BFB2781AC34616F83D65 + C2E8D306FBDA58ED2023D21034723439 + CA85D73675549E97DEA371D3DA14D725 + A5B1E15C93DF72F783F3FE17A7DBE455 + +Set 2, vector#234: + key = EAEAEAEAEAEAEAEAEAEA + IV = 00000000 + stream[0..63] = 14B1062591D38C06D50B0BDF05BA594B + 8ADF2598145594FC06AEBBC3C1803A9F + 72B6D3A9BA549B35E01DC52A8B14EC66 + DC70DCA3BDD9728DFA030EB1BC8C3EB8 + stream[192..255] = 04E59AEF8C0D71199BAB3BF84FA0672B + 515BF4C2CFBA0A718DAA99B1255FA660 + A5C57BEFF43EDBC769B8B23662E07C22 + 29E1202F1713301A076888B606CA8610 + stream[256..319] = 51D545B727FE63FB47D00584411D7496 + B8FD1057017D35C180EA732443D8FB0F + 714ABFB8C8AEC4085F461C323F43F631 + 1B3110ABD2951F12BBC702AEAE7D6353 + stream[448..511] = 1319E7BDE46BA59746EAEAB2A4AF6D05 + 647DBC990C5081F0480A473DAEA3C915 + 3FBA464811527D04BF8073C0B07D6D99 + 9D6E8B8637710DB4D9A7019D4303E7D0 + xor-digest = 073D2DCC504C8C939C479AF52E183E71 + 0C8271D497A589F0B8130872B0F65F1B + 652141D6C22E2539B3212EA0B67782D1 + 87E757CB71C1C41C271E09B3A8B8F061 + +Set 2, vector#243: + key = F3F3F3F3F3F3F3F3F3F3 + IV = 00000000 + stream[0..63] = 6F91E50A1812C42C60711F10644DF00B + C2C6D0EE78B1C0D81E7FFD6AB4E2C61F + AC4A3ECF2C6765693CF412E704355118 + 6982F0051DD1820BF9A8E58511B4F1B1 + stream[192..255] = 9506812219BC74DBEED7DC5044D6D6E4 + 0A8A95A0296365A4A726912178A3F6F1 + 64DCEA5E2A6758CF792955D08BCE4ABC + AA7D26C446E71FF5D329309FC4D83D66 + stream[256..319] = 547034A7BB80E5FCF2B7D6CB42D434C2 + E30658A7A2059F3F0A3AC85219DA3D53 + E98EEE123A10B1577B3CF39A624AD525 + 62130A32DDABBA9ADC7B43C8A9C3E052 + stream[448..511] = 4CD2E16C57CB5D4D308A0CEE5789CF93 + 03B966C0507BF124B892AEDFBE452A8D + F50D4F0328BD61093F05395813B8EFFC + AADF15A66ED5403A2AF9260F5AAB50D0 + xor-digest = 57F92994DA4233DC5AAF5A83E0A45BB6 + FDCF501D2E0C29D42BA013FA25C06F7C + 10E2C59AACA7FB7C68F6D13C452F328B + 96A5FCDD11ADF60805E977E2DA4168C1 + +Set 2, vector#252: + key = FCFCFCFCFCFCFCFCFCFC + IV = 00000000 + stream[0..63] = 0F5E42876722C200404CCFB421C0FC7A + B78CA298FFA9243FD76181FEE0C806EC + DB28BB296EEAACA1AAAD27BC5BC52A25 + 7779E10A1FB2F6D1D62DC8D91BA67FEA + stream[192..255] = C9A3CC437DDE342EB811CC732E069C0C + 711DCA252A71101FB5575A9157612B65 + D9FEF435CC7314956319A97AE66879EF + 01A56BB7DFAD6D4049A3F85A28E946AE + stream[256..319] = 6B4513126AF0707F802642D11468AA17 + 600EE7D57C5B9607F101AFAC255FBC81 + C669375BD839CAB0F59C47A0E64A0ACB + FAD35CD75C896157B51AEAD47EEE8508 + stream[448..511] = 035C46D2F3214D41CB87CE305CB20B24 + 433C41F9EA4A4BA0B8BB2A5575100DFF + 5741E3F58BDDD5C80283D9A2E35B956D + 77E412C5CD7E647D634E1B1AB6D92172 + xor-digest = ADFA83A0BD89255AFA375692F6FF4060 + F2E4F6A9519CC4ABA1B4F1955D016115 + 7A93FD624EAE206A4E8F4299F7EAD78F + 24DA856DCB1E94BF94FC11B55C4A3667 + +Test vectors -- set 3 +===================== + +Set 3, vector# 0: + key = 00010203040506070809 + IV = 00000000 + stream[0..63] = D2A8740BBA6FD9067077F9AFC0C27D40 + 32B6AEAE50C42ECEFF255C584C0143E7 + 8CFA4E3EBE03074F23D762D0A7563521 + BE755B2166CD920EECBB5DB84737FA01 + stream[192..255] = 3F6A4CDDA613CE64B1F9C9AC662E4AB2 + EF2751400CD6A0A119CF0BE7B287E727 + 536D18D953327B2D971EF9F34EA28762 + CD062B7AEA83C1AC4363333219F767F8 + stream[256..319] = 44D06CB5157B2A8EE1CEEBC6DD5B500D + E7FBF83F189DFBE822042F85D814427F + F03F108FDB0989E7693257C863947712 + 8BF371CAA422D3306F6CDC1E03645BFE + stream[448..511] = 30CD0B54E741F4CDD6E9B5CCAB184D7A + 3453C03D4158FE7CB8BC92ECB66811C6 + E560C62CF1ADE69BAE308ADC0602667C + CADEE71244968844376FBEB113E73345 + xor-digest = 44DFE4D6F43708EC245C7EACA3B1B20F + BFA9436C7B2DC676457C932CC11F3960 + E5D9852D2F9FDC77AEA2DDEC91CC2E1B + DE326CF4E21ED9380983C897CDC005A6 + +Set 3, vector# 9: + key = 090A0B0C0D0E0F101112 + IV = 00000000 + stream[0..63] = 1849D8F8D00D4FD49CA825C40654B49A + CD75DD143661F099A12911E14AFB9A35 + E6A19303809DE3B5956178A9CC6E29A8 + CC97F1A3C47AA3360B4819ADDF4FFF7D + stream[192..255] = A58AE7EF31280AB14224B25C1BEDEB0E + 08BA7CE89BDBFCF3EAE875C248C3203F + BAD73B2239719F7392EB156EB2CD2E67 + 3D36D15B6FE94D92D39B941A9993E91F + stream[256..319] = 76FD514B6E02C3EF97203D3C65109BF9 + B65CC60F5301F125FD13A88C3EB2FB7D + 92472AC82FA0D41B1C24588FB58B6FBB + C48F549F8DA556AB5050A40892AA2150 + stream[448..511] = 70D9531FAED799F560491757220DC8A9 + 92EEC0D6C745661A04D0AAEEC515CC3F + EB318E80E18BCF55D5EF9C22EA9EF195 + D82E4BA17E676BDBD6F22C0C5747FE7D + xor-digest = A40AD16354D565E7E7D4009B0A40DAB1 + 08C5E95E3DB2680D0B4E865257C474CD + 599DC5A6C9907A1DE6C2678AC94228EF + 71BD924EEDFFDA8BCF914E8791525B4D + +Set 3, vector# 18: + key = 12131415161718191A1B + IV = 00000000 + stream[0..63] = D24D36A07F26A03280CE4C2A671FC7B6 + 17E92D231F649128EB4D17070003C8D3 + 65DA16662EFFA87679E6C4E557F84E12 + E69FB65A496394D35DECBC9714C16BB1 + stream[192..255] = C7129A32FE9B6A2E29BCE6903D101085 + 3F39E0D7F9CF7AA5EFDD0A6A7F1AD32F + ADB3072BC10E7695EBF35AD3D462153A + 00448FC7DB068978A7FE75394756AC3F + stream[256..319] = EE85884D8FF9E1D1906222BAB49CC989 + E8CB6FF872760A17C7186F25ADBCFF01 + 849E960625D6B21B6789CA1AB6F676E5 + 944C17F3BEDE9EBACA5336883ABD4FF6 + stream[448..511] = B2A5884F10B45AB018EE03DBD6775753 + 87DA3180D1E12BEC63615A89C200B698 + 057F09C60C21737AA68B9599451150CD + 72C0E09BB2025E7F803C76A34AE46276 + xor-digest = 78A29D158AD7EC31EE3BA621687FAA02 + A60A1EDDFB1058BE462C337321E5978A + CE98C374C2BE605728EBCDF2B98C14C0 + FF3578D624F7B8B2BA1241741E4ADB36 + +Set 3, vector# 27: + key = 1B1C1D1E1F2021222324 + IV = 00000000 + stream[0..63] = CC84F164802715C020425A7FF64C1A0B + 033D52B940AC2CC91F0737592951826A + 76D190B92661E4FAD4750451D6E365CE + FF041FAB358A09B5DDDAD4AAD6FA460E + stream[192..255] = 94CD4537F903E8DC7EA41438271E46AE + C274FB1B0E406F023681EE4364DC2663 + 5BECCCEB361FB71D64B8EF76B3525F12 + 9401990C1189B5B9A703C05CA8ABF4D3 + stream[256..319] = FA997F3C1723AAECE7E77009F2E3D4F2 + B272EE894C93CE45B923A25EA70C282E + 0F5A18AB1FF34F8D408BFBA1DD1851FD + F09BDF0F6F511DEFC40A0F59C8EE51D0 + stream[448..511] = 63DD4AD292C8E24E662CBE2BE342805F + 7968F4032C4C0E7B1A105802D9A204E0 + C71194EFD4227539BAE677DF3B8A00DC + 36170F3416955FE116B33AA83BC0B8D9 + xor-digest = C8F949292D545C92443F5D27BA0E94BF + F14EB962F43C8401389FA9B7D627F1C3 + 8BD100295AFC5DB3415FB5B2C86505C1 + F459E40F39A2B26EB2436F8826B6F73B + +Set 3, vector# 36: + key = 2425262728292A2B2C2D + IV = 00000000 + stream[0..63] = 2DE8D0F2BC8176D633CA1052E1554C4D + 54A2118E4776445251193CE6C1A43959 + 4DAE1126EF6A78E62AA19B843BF60DEC + 261D6DA1EA64C1449D83E83D29267747 + stream[192..255] = 567DAC9BAD7DFC04610BE6142B5EE022 + 9CECE20AFC83FF3BADBF85D814B17E6E + 3A41075146E1FBF757F76F525EC99378 + 6ED6A1A3C5F686421A4BEB17CD6F4C77 + stream[256..319] = 4B947774271656982FDECE58AC358B2D + B23F9DD07AFBD98D4F8A4F25653EB767 + 30BF17FAAB9EDB1305AC31E1A707DD50 + C4DB6DE759A73133507F026C6FE83945 + stream[448..511] = 8712F7AFF67E07781B7350862A1C7005 + 64C65A6C5DA5B586B42DFA75FE14DB9C + A4A882F17238AF574D9E2EEDCCB57D61 + BC1591CD1A4D103F69657E3AAB251CD3 + xor-digest = 95D8769D02F8B788841A22C78687F950 + 9771EAA7B8CAA248629798B6DEE49B7A + D3C124C0B1F71970FD1770E86D58A78F + A04FA8D87DCE49BD1138E606D6C507D4 + +Set 3, vector# 45: + key = 2D2E2F30313233343536 + IV = 00000000 + stream[0..63] = 0B4A173B35C6705A4DB98C4D0FC70B8F + 4C1EB77A823B550C296770F2C0CEED87 + B47B66E828CD39723663D60578C676AB + 39AD5F3BE5D2676E685C1143BFF19A52 + stream[192..255] = B85128088D97766345A23642655DA385 + 683ACF6A99100268871673EE280C7468 + 9FC6A165179FC774DBA28436C472A736 + 7487228D5606BE4864A2A185AB58540F + stream[256..319] = 6CDF8223648D818C84A98FA3869D769F + E46E60A0C5809309F4604CD3EC28453A + 84F9373C788397701C5573EBCD6E3F2F + E9A89E037328D9BD3B38512346E09FE0 + stream[448..511] = 833DE70D31769D4A8A0D626A88A7EE03 + 480E74ABB8AD2CEA6C01FA994278B01D + 109D1DA4B58352EB98749B5CA064A62E + 92AF98DF4B65AD83855E90C4455F88A6 + xor-digest = FD84F65088C9A9E12C05E8044F70D7FA + 941B8CBA46FA563DBAB51AE4509BB50F + 69768BF5E9D5103037D7DF53C748FDAF + 9E49DED381751E6F99A18DFA4F0B9F2F + +Set 3, vector# 54: + key = 363738393A3B3C3D3E3F + IV = 00000000 + stream[0..63] = BE006EB16B3554B2F3B44E22F6FA657A + 3567A9B62F96133F300ED2843AE6E524 + 7BABD8521C2099DF4080A51B022BC53D + 881BB63766150D26EA5258A1B4412FBC + stream[192..255] = CD44882646F62EBB42037D4D3895CC56 + C010DE5A0A21E233E520FFD9BA579CE7 + 27A5E631D94678D1CD84E069A9B64A63 + 50C6CFD042BBB924E02F118324019ECB + stream[256..319] = 84FF2789A1DEE20DD3BA5BE9255DFDD2 + 9CEA78155F7DE266AE4BEE5C1004D947 + 31B44B415997B3289F57D330E8147AF6 + 51AFE60CD2C68C4EA0EBA6BF174BCD47 + stream[448..511] = 22127164A78995D7EF9E6E1BC9C7E64F + 7B2CCD2819C165DF422BF33954D48F6D + 6310F63C073F45D7AC60F56D8C947802 + 2D2FA529A214E73DFCB8692DCF4D278F + xor-digest = DCC5243EF25FD1385CD9AF2C6C9267B5 + 86B33BBC4B7ADB45FF2C1496A87D8D7A + 38233E5B8C466D89EB7A46A2527FA2CF + 816A1C658487FDE0558989B994DA7D3E + +Set 3, vector# 63: + key = 3F404142434445464748 + IV = 00000000 + stream[0..63] = 6A3E215FD1A2A55AEC4C84BB216494FD + 81C17279D131527A9FD4F3B04350B0C7 + 365B375827950AD45EE8388E00F8A8FC + F021B3D63FE031A7CF4E8D0EB46B0155 + stream[192..255] = B38EA20CC97B8B4F8EA02ECE132370E4 + 677B0E486997CE6E33CC65A8AA26DDCE + EA495B5D56EA9907962FEFDA57D010DC + C93F9482966578762E460C8B72624E2E + stream[256..319] = 06FC1D28F9F5BE1D23E1F706F20C748C + 8B459FFC5B2DE4D49FD57E2BBCE4D57B + B3BB70F078CB0458C76307E8843D1A4F + BF6F08C8D766885AF0015B6C7EE7FA36 + stream[448..511] = 64D70BFB3004946C465646B4961B0D22 + 80B8EB7D7CB2572B68DCF6CDEE211498 + 4420DC18C2CC85A3C7688BB01DA172E5 + 00E856EF4C27F27FF0E504DCD702DDC9 + xor-digest = 1F5A96CCC25A478BAA3AB2EDF5E592D2 + E46F4E2A5572585624F4EF8DD1243423 + 9E5C4671A819B6701BC1FFBCFA7990DA + 4B9D29252D9AD51138F3313A0A879282 + +Set 3, vector# 72: + key = 48494A4B4C4D4E4F5051 + IV = 00000000 + stream[0..63] = 863AFB906F2A73DFCADFBC47EEEE2031 + CEE0AF8847777825AFD141D8897A9E96 + C5F9284A391CCEC34A199EE8228B0B98 + 1ADCC859B9008754D3D0B99F136EF4E9 + stream[192..255] = F0089C174791826D8F6E9454192AB235 + B3C906C6A065741E9B9B04C3B280CC4D + 2B835445A64AE2B5668E6EB2AB050D49 + 9E24090DC475A775AAFB10CE16F18E67 + stream[256..319] = F256EF10D39C854849A529238AE82E6B + 1F3D0C2E66E0553DF9375BF8CA4B2F04 + 45B4765CE670B954C956EDE71D3B04F7 + AB2AD54520A6CBD16A0B0D9505FE9652 + stream[448..511] = 52957523B15EB5E069302CD5EA577EB4 + 9BEF63C3EC73D90688F3EBA77267E8FD + 4120A2C8A3901B8F24928C78BFD88434 + F415C828F39BA1ACA07BFCB3C22DFC5E + xor-digest = FE5CAB87CB43CEAC72CCB5D75F0294E5 + DD9A90B1443B3CDABFF1E3F914685D82 + 169EC54FECA2EEE40F19BA042637DA98 + 6055034B173D0D66E2A08069B8376389 + +Set 3, vector# 81: + key = 5152535455565758595A + IV = 00000000 + stream[0..63] = 252C4021B2FE2C6176376D4D905DCC59 + C502884E87E2E27F54AC46F37B62234B + 46C7863F75438884DB124A3AAC258D50 + 611275FFC8F20FB94E8FC45306A7A86E + stream[192..255] = BE4435F219F43CE50EC4F24CFDC0D22A + C7D9CD7B02EDA38281D2DAC2752E7D56 + AA8BA4370C94312F409954DF4A0E13A3 + 5D766614DC7DCC9EE273213FB659BD0E + stream[256..319] = 21B9B862E703935C5D4BF1F7A7FE24E3 + F27B6A405DB9C5E8C1A0B5175F3B48A4 + D86E3D06F7A04B02A2FA1BF4F471C106 + 19DB8E2B39A21147B9D4A6931DF0F609 + stream[448..511] = 6DEAF9542B247878DCEFB592A6DDED27 + 26B7B4C3E9023F69D6ED180E9F3F612C + 955560AFAAB0065DE12A004F22424F3C + 43D134BB159234D1F1484E2F6B9A308B + xor-digest = BD0ED4E81169F8F8D9036A07CCF3ACC5 + 5FC831A94F407F4688584802B92542F9 + 3315EFEA6F6653BA21DFBF4C729FAA86 + 37A85689BE7C44EFCFEA37AA2DAAB365 + +Set 3, vector# 90: + key = 5A5B5C5D5E5F60616263 + IV = 00000000 + stream[0..63] = 34E30006E62AF394ADF5042EAF6F8598 + 39F13ED4519AB0CEE2590F93D802011E + 1C1F257839054060A55B28BF157ED8B5 + DD8E54E92415AB12844CAF90498C2023 + stream[192..255] = 4DADB796C029D1728E2298AB5D01D636 + 5CB309D128B052B6484C933889183454 + 19161CEDA3C443DC9E3D5CEEF0D59505 + 06E057D209B38513E8FFD6584B4ECF27 + stream[256..319] = 725E71B657E6D0FCB72E3185AA375286 + E1CAC4A33B91C07EC2E61DC32C7CB017 + D2CD9560BD3E62BFB84CCDBDA83E3DE0 + C5E725CB19B13FFA86C273EC00DE65BD + stream[448..511] = C0F2C3F808BDAF9E456044167CCD617F + BEB57759C1E01A57F8F0DFC23DF5E695 + 48BB33C72C0C3F9323003B536CE221B7 + 7A57D28265820E936649AF56859E1BF4 + xor-digest = 961BBB2E186D03D6486AA6163EDACF93 + 29657AE5B919ED5FB975188E17E49974 + 6638D98112C1D3512E4C5550DE9BE5BF + A0CC30D33C8AE7E412601AA89D19FA82 + +Set 3, vector# 99: + key = 636465666768696A6B6C + IV = 00000000 + stream[0..63] = 41DF606120C6447801EF9BCE34C659FB + 1855A59BF575379C34CA364D029C722B + DA107F619295D212B7E23F9CA0788F85 + EBA749FD9DAC94902943AC65C768B579 + stream[192..255] = 8C117EA9A699440FACF0716184416E22 + 55DF5B643DB317988B2036906D62B8B2 + 666ADBF2A439FDC21616B3BF654BAD13 + A811102FA193C516B62010E95B696CAD + stream[256..319] = AF9C7E9B24E455D5FA9C4B8B2089E32F + C63B2D5DADB5B8F84A4A565F4C69F2DD + E230FA99D9CEBB1891FE2AC1009A638A + 4B4283DAF7ED89F7C7E9D1C59E06F3A8 + stream[448..511] = 6D42E41BF7E783BA3E48FF0C66B42A52 + 06AC8979A03C7E3A006A3A942577FB7A + 293B1BFE797AABEDC4FDCDB808EDA005 + E26C4B8E76E3A8ACC234F47CFE0215A1 + xor-digest = 6A4BBA179543769E680C1B24A25CC4F8 + 2906BF1639D83A3078B78C950007D822 + 0B5F7719E5503F3DE1A089A3281AEBF2 + 792C9B65DEDA02F44374519DCECD0E7E + +Set 3, vector#108: + key = 6C6D6E6F707172737475 + IV = 00000000 + stream[0..63] = 4D0E814EBBC40E61B330C8A4678DEBF9 + FCED0C71298E1159CB903DEE6EBDC294 + D9AC00441438441D61F61FE421C4F8A8 + 39C715B0A9082FE8921DB51E14B188DA + stream[192..255] = A2FF3C7294691E2EED33BAB8C3D0809F + A3BB406D92AE8FA7C4611C7C7CF9EE85 + 4DE8EBE85CA4E90AA9EC493226D379AC + FFFA3ED8BC638BE7F08451A1A1CDC7F5 + stream[256..319] = BADCE4DFE3550ECB8667BF9CCEBBA2A4 + BBECA954E7E60315CC548CAC138CE550 + 46991C8D86F1FF1D92E65F4F7544FF7E + 0AA529D2303392BC2A3D1241297D1309 + stream[448..511] = 91509BAA92BF2E7487831A72B17815A0 + AC6D0FFB3C5A1EF6E39B5AC6338E63C5 + E9D6BC870191305B1EBC331948B46E42 + 8350709663EFFDB55CD8B578551BA8F7 + xor-digest = DDA5B99D08365FA6A95DF31BC8A3037B + 462CFA1B9DCD3421F0655EB422CE07A0 + C1B1951E008C991CECF2F3393E75EF0F + 1575845BFF9B260DCC4D6AE1B1764C6D + +Set 3, vector#117: + key = 75767778797A7B7C7D7E + IV = 00000000 + stream[0..63] = 8958E8ACAC755678CE2D4F5C482AD71A + C7AFE4CF8E5062555906EF8DEBBA30A6 + EBF09D9FDFD2ACBDC4619199BA95C6B6 + B145D084E61B4EDF02693DFC3DE76A54 + stream[192..255] = 9C421B6673A40204EEF6C6D998E4C40A + 9062073BA16927370811B89137B43755 + 3543BC1A1720AA9E2973991713B4FCD8 + 9B5CBB26DF6D93823C897AE1D4B5824C + stream[256..319] = FC9A521C3559AF8DBC2EEBD02692107A + 78F4CA24474C6BF9B9EF351B4654EAF9 + 98BB5002A254264D12406A3CB1BEBB41 + 1B93597A0CA794B5DA083913DDF68F54 + stream[448..511] = 59A00ADDA629C11AB94AAAD8DD4D667C + F6311EE5CD7F7440C01AFD7B2EED64D6 + AB5213D6DEF41170C38806B310C03C19 + E28B5564DFD5CEA7848ADA2F5C18929C + xor-digest = B41B2457EDFF5226D583447FCAC4C778 + 4EEBAEBECB87C4FF9133FBB3DCA0FA91 + 2AC857B210311C99C7B7847962811936 + 1E98EB073446DA2750EF26ECE3E09546 + +Set 3, vector#126: + key = 7E7F8081828384858687 + IV = 00000000 + stream[0..63] = CAE3F9794BE605739E8B133E4DD97AE0 + 6D00780A66F1BDC3B856D178D263EC28 + 2EC6775E89B15A429307643BAD6042CF + FC248E8D082475FB5FFFF84EC5E2F5C7 + stream[192..255] = 7E18337A5FDF151F1D92328932710836 + A385763F62DA9D3B48470C6064474B62 + EBED8B32A9917D43C9D4C8F0061F9F93 + AC078A91F049258961C1708BE5436D58 + stream[256..319] = 8C78186BAE492BB5A3A8D23FB2763A5C + 5B01CF40C8944CD0ECBF028197D32BF9 + D58B39C2B658B2B23585A289B7C01485 + 95076422183E1A64CA977485F1056929 + stream[448..511] = 87FDD673045CF74D1134C1DBABE00E8E + C0D054835559CBD686409B6FA2A9EBB1 + 82ECF22B98ADD4DC17549669EC7E5AE5 + F8132D8F4951229849EEA7C5C5034478 + xor-digest = D67196035DD5E6660084F0E7A647B67B + 80C568186F52F11EF1C444699C89C863 + 7307526FCDE03DA470DFA78FF1B6E2C9 + 11316EDCB63BBA36D788AFB56B318BB6 + +Set 3, vector#135: + key = 8788898A8B8C8D8E8F90 + IV = 00000000 + stream[0..63] = C204861394C3B27301D2B216AF74F01B + 36CD63EACC07A6FB8FB60971F3C4160C + 72E009D795B74B9F826B264DFC1FFB9D + 334CC9CA88C03009B6AC5ED59F70A259 + stream[192..255] = 387C70F9B484A4679C770431C27E7A74 + D78BF8F3DCB1E1F45826792FB1990836 + A217A25DD2D6394EE3D01FFF75F986A1 + 872A095C1C3A60487C40BF00CA6388EB + stream[256..319] = CB97C4F1F47DEB8BC114B6DFEFE05F09 + 4AD8FD77CF782D8724A0A4D65664B4E4 + 0BB39D48A5A5B39B059200E99F114BC6 + 1DD2F3C892FC7F3CC5C413E529B4DA28 + stream[448..511] = 5F112D2015F4A59C401A61F562895985 + F692A9DBAEE0BA83B2724CCD25FDB60C + 0E7A4044FAD51EE6F697961B75633ECE + E73A165DF380F24AA5268E50C7F63ABD + xor-digest = 5AB8AB90E211C14BF5ADB98030AA5F50 + 8934B463260BE7D66421643037A93538 + 4F0365301D3370F248A7D8E72F9DDD77 + 0EF33BED740826CCB3EE7B248EFD7F5D + +Set 3, vector#144: + key = 90919293949596979899 + IV = 00000000 + stream[0..63] = 0972B6F8B7CEC540EAF230E2465AC6A3 + 05D78A9E5CCBB38A013F6674A36DFF22 + 7E292760C637629C3BEC82E56AB55090 + 3E3D559D1648462B8E2535E2B2132E3A + stream[192..255] = 8C58A4F1FE80260B3D7651063AA9D114 + B4BCA933C7741A5BECC190104A14CD14 + 725BAC8BAB1AA87A5F5927BFD8F0B5DE + 76622EEAB1096D1F6BC9C047A4C50483 + stream[256..319] = 2E8A6ACA920F0AEF25AAC1F0F1DEDFA3 + 1086BBF6B0F802215614901478D7DD0F + 81477279FDF2800ED67D42A75F06BFB6 + 8A994D87B726C887577A3869AD29F672 + stream[448..511] = 6E252987CCC7C791B21DF690599F401E + 087B415FFBAF1F9F91C091C7FB3637FC + FCAC355B186240FD569C50DC2AC313C2 + EA095622D41F708914199BF4693F27F9 + xor-digest = B6FCE84C517517514574EF3AA62FFEC2 + B21C6936D3DF9C5FB9A32468AEB16705 + 3B469F8EB2B55F7D7F7CB236B5810C58 + 1297DF3D601254160AD9C67ABCFC33F7 + +Set 3, vector#153: + key = 999A9B9C9D9E9FA0A1A2 + IV = 00000000 + stream[0..63] = 1C35DA8526E84D18F9F319DBC6488548 + FFB3A460DE4C70E8CD95EF7C0A342620 + D76119F17C4E56B17239FC1785469A07 + 0AE68D917931F73E190936D0B918EE5B + stream[192..255] = 79718B710030C50910162D57FAC34235 + CE813E22E6D7629CE9215E0989B0EED5 + D9D87A7CEE2D03B5D02BC7B056D089AD + 292D192619B86F311E6708FE253D038F + stream[256..319] = F3F46BB2F3635213096AB29EF395F301 + BF8FDDF5418A97329E161D2B9952D24F + D6A95E518B524DD70F1D0736DD3E7F35 + 3766925D2E1887CABE494A0196C8922A + stream[448..511] = AD0C76547F1A1D3C3B38F2659F25C590 + BC8FF2C9FCF46EEE43FB83ED5174025F + 5437B093248629CBBA191AE19B4A0E64 + A7C71CACCE9A3B4F857648C630CB839F + xor-digest = F1F52CDC085FA57BB62C04945B48046B + AC5753ECCF4079C69D5C24D125DEEFA0 + D2D0BFEC24B5625D93E64CFD8BE45249 + B702DD45FB86A73FA375C598125DAE9C + +Set 3, vector#162: + key = A2A3A4A5A6A7A8A9AAAB + IV = 00000000 + stream[0..63] = 412AB1D18E675AE9626553235CB4EB93 + 90694F9E1B793EA64EE1EBB9CA315292 + EE9AFE32827FA7993F355F026C874EEB + 6B89EF05D0EBE2BC0D8CC7CCDF04A177 + stream[192..255] = C04842F0FC1253A70192FD435A22A1BF + C658B54C448795ABDA5F1111435C85C2 + F988600D1CC56D1798132265D1C47555 + 502D8774CC4E808BE3009B6AF2E86FF4 + stream[256..319] = 162FC4E34488452A7596A36C12711A18 + F3BAF40A66873A7832817E963EF72655 + 2F39CF5AEF8973CBDFF3C505C77E5144 + FC85B40AD160D7C49842D5A16425E90B + stream[448..511] = 7770B56AA68C0F3978D88C5E33EB161C + AAA41977195180713055699FCB18430A + 4509C636DA2D3374A0E9206C4EF71E20 + 998C805B2CDDB3F5884E957587835CF8 + xor-digest = E99E2D6CB63B26E7018A4A8B01AF260E + 7E0007931F0B286D99A08B61C8C88E64 + 71094630888E0BF0673BEA78C727AC3A + 1954B31315E009DA2BAFFD337DB03858 + +Set 3, vector#171: + key = ABACADAEAFB0B1B2B3B4 + IV = 00000000 + stream[0..63] = 01E759B71C1EB69C81580610006BBA1A + E6962D7ED9FB6F804611D20DFBBE47F6 + 2527B3F8102876C5467CB4844723C979 + CA4A91FDCFEC8637578F7E46B8301F10 + stream[192..255] = 25E2411C0901731651D5CD30916D595E + 2F56FBCDD249799AD1A464A3A26C2A59 + 6EDAC0D356CCD12C102263765C1B3C8D + 3FF3FF0ADA141200AD39811097AD2253 + stream[256..319] = 2596358B166C08186D23118EBCBCC92D + 8740884796D7699510F9DF45D1A99C24 + A78407410EB834D3CB3BCB68827F74B7 + ED55824F613A7B158B24FB027AC01286 + stream[448..511] = ABFBF454EAD08D9BF2FA964E92488204 + DC89B8F9F8BB6D6F5473696D29259FE0 + 10366A157F0E5486F25BFF7F8259BBE1 + B2CB05A1AF1FD305F1611F5C4E41B042 + xor-digest = A63750A1C1B9974DAD21022828296905 + D044E89E42BF9E1B691E2791D196125D + 94C374958F12949178198AAC02B8DF4E + E83B57B030D364E53FC76B0838391FBC + +Set 3, vector#180: + key = B4B5B6B7B8B9BABBBCBD + IV = 00000000 + stream[0..63] = A1C1EE5C63AB5C0655EB6957C4B6C846 + 585A432D6EE6F42661B4EBDEA363CA1E + CB9950BD1C59B8D75C1362E0768958CE + 0047715335DE0ACC4228B8EBE4017036 + stream[192..255] = 98BF3045F88AEDE0E1FB1399EEE583C4 + 5514A15856156465FC00FFA468108F7F + 831A2E91AC1CE4172A3846572FB8A10F + 94DF6626E04058743883A723989CEFC8 + stream[256..319] = 7838BE9626C649F52D31A615312D41BC + 2193A76F0E3A5877F907F1D352A7BE6E + D3E7405F8219A738CE5D50A51DC794C3 + 1D838C6BED79739DAA45011DBAFD950B + stream[448..511] = DA5602BAF84EA74FE4E1D5143E43E6C4 + B15135B839C82AC85A4C79D3E2B7705A + FCEC707E1E1E7DEABBCD50F8794DD328 + 9FFC20E277FB9C75B8785C534D904BC5 + xor-digest = 76D8016BE212209DAEE4784D145CEB9B + 4C8D477E2E1BD6A2789A29DA9F5992A9 + A723D5A54BB072DE3325345E30B3583F + BDA863B3E8B389C08255D9D95FFD748B + +Set 3, vector#189: + key = BDBEBFC0C1C2C3C4C5C6 + IV = 00000000 + stream[0..63] = B7BE8BF5D02E37871E6257092232E6B4 + 7DB4026F9F5227F1096731FC3CD66AFA + 9B3D04520BA87785C43F401F40302758 + 194BE49CA8CF00A58D991F40B9662F56 + stream[192..255] = 2A86CC644422B5CF4788BDA9A146730C + 8F35E3A6F516AE98E0BD660B5260763E + 1C2540CDA27188C9DBFA70A75FFEFF36 + F0E7F7CE3804F18D734255C3978DC3EA + stream[256..319] = ECBF7B6BA3BBDFC008FEAAD039C9E939 + 7DFCCF1CC5B4DB927DA9110BE6CDA33F + 8B36356F87642C25C5A7E91232632EB4 + 025DAB487291097F1BE0F35FCCBBF40A + stream[448..511] = C647143F922F0F94F9C6E0B784E71523 + 8740E4781A39C7B793D2D5C31769AA79 + 5C3999D019AD40ABBD7FB6566FDEA342 + 6668E00D50E3767917FF8A356E2D8545 + xor-digest = D729267A90098B72089EA753264A38AD + 9F9FEAC27336CBD3C627ED54F0E95A23 + B93A0B15FAB3035090EE9A74C8AFCA40 + B9B3F3766B327C3542F622ECFFD517EC + +Set 3, vector#198: + key = C6C7C8C9CACBCCCDCECF + IV = 00000000 + stream[0..63] = 10FBD1336E81B0D149A9FD88CCA7DAA9 + 17CCFF08B8B1D3675C27FD6270130134 + C24847ECF7EE5C1DC02E6E6634FF1EE2 + F0889F607F2AB072DC81799B8B861D4E + stream[192..255] = 6B118BD4A0BAE716C08E84318F60CDD1 + 618AA6B0AB0464B6EE2CBA009BAF60C8 + DDD59B28AE94EE94889897333F319C3C + ED8B05827F9A8A08124B9A81DAA93D77 + stream[256..319] = B31739639D6D06C0793A72EA265D0D69 + F5E1FC4859BD18132BC418EA0E587A87 + 572B22E21D3F91E30B17E92CE55B7184 + 89D50315AE2BAD0FA24CDA5EFF944253 + stream[448..511] = B19713A228073EC54D2C51645554F66D + 26C1306376446E9F472A65682029C2D0 + 8C1DBD84E56181208C6C1EA9C8654718 + C7FFE4B3DDC8DF9D3538429461E31C53 + xor-digest = 9A9913BE55B9A61B86FA248CD0040D41 + FC3549D46F8BCF01F3EA9D6F12FE2A00 + 4F5681F3BD1F2AECA63E3FF0F1B3016D + E53F381000FA7E3E701A59AFBFEC9CD8 + +Set 3, vector#207: + key = CFD0D1D2D3D4D5D6D7D8 + IV = 00000000 + stream[0..63] = 90B147BB4CE3844664E75678B78F02C2 + 925687A91C4481918E8784EA4C51A698 + D52B2D16C6C2A8B58C61A7786E4A3BE7 + 15689BFE8E251A46EBEEE2E422056F9C + stream[192..255] = A956C4190F0871542222B43BF4C7786E + A82D67F04E9823DAD659510CE555C578 + BEFABF8386E9AA020787E1D9DC6949C1 + 3F79F96446E77CE5604056BEF7E9A910 + stream[256..319] = EB0B9CFC3E92BAAA7FCCC46911D8BE3B + ECF71B6012C8EF7942EE0C8BAEAB8443 + ACEDAD3C2F1D25A68CB9B5423D8F9996 + ED07BF2A5B11DE993A5939533B8BA1A3 + stream[448..511] = 3071BB5D6124DC1C1D0A4ECF863B88EF + 4FA5AD8EC3B56F20FD1D25E0B4806478 + 1C27027DB494E5D36C044BB691265384 + 41AC3C6BA0EDD17F5EEE94B4A61AC20F + xor-digest = DB413BFF59A5A2CDF144DBFDEF3EDD64 + 0D23CFBB8277F7C9CEA46A2E3935371A + C2DFF9065E61796C0B2BACC353BBD4FE + 29A1C5D160930530D89FB13428D5CBFB + +Set 3, vector#216: + key = D8D9DADBDCDDDEDFE0E1 + IV = 00000000 + stream[0..63] = 1ADB5D07C885936394FDD08666830F5E + 3F30CDD1B94D9B1804108B79E594D391 + 1E0D195B8099E6766277DE88A7C2B810 + 6094B64359DDAD8B77E199167CFA1343 + stream[192..255] = 2D6BD46317835C2C217F55F1BE537082 + A318CEB7A4F9B6970D0A05AD6682717F + 9936F684F6EC35F7D2EC4A88F525ED48 + D54C4F39CBDE9A94F9FD4F9B47035979 + stream[256..319] = 41BF5768BA098B7C61771F9D13B18C0B + 9212923AF23358246D5AE3089425A7FA + A63596E8CEF7B08CC4BD7675137B2D08 + 28DAADCFF51F5F5FD63FB6EFC2F0CF04 + stream[448..511] = BA8C52932C3CC5B31A5799F0BA1E73AB + A40A72670CCA295CB857F0FE0D02DD85 + AEE1E558EC9475DD3E996D3DB0A8CC90 + 722BAFE2BBB4A366F7A91E7DC363739C + xor-digest = 5DB47A6DDA5C4F3BC03465228020F15F + AC681C27A57FF2C999EBB6A487DBD21F + 2C3342A22E6B579C11EBCEA10C7CD1C2 + 87E5B4055BB582D775F49F83A30B75D0 + +Set 3, vector#225: + key = E1E2E3E4E5E6E7E8E9EA + IV = 00000000 + stream[0..63] = B620614F87449DFE64BE90AE86F61216 + E342838490C10838ACFE1BDDF6481763 + 936DA9E1FEB6DCB635605C94CCB0E167 + 962B84037CC274EE964DEEE41CAF0F85 + stream[192..255] = 4649ABC6F91EC897EDA8EBAA32FAE32B + 8D2C59190B883080663255C04F691403 + 5CB01C73CD292B483DB271AD0D30A3C4 + 1184D773359ED0B35BEBF36C02F0B857 + stream[256..319] = 943B9AD515DEE60EF7DB62861C1CBC0E + 7C768C5F1BF999940968FF56DEE52332 + 625F13AF36CFDF6EFE9849F3178CDACD + 344405792AFDBAC17C9D6029BBCDE049 + stream[448..511] = 262179FDCAD88AA362503E03D5A5F64D + 4EF60647B5719B74C902E164E886EEC0 + F1B0C3721748E81BB02661F7EE1709D3 + F03FB5EBCBB8E3E9728F0B20E3C69F7B + xor-digest = 70079F7FFF05F29CC64FDD1E06044BAB + C7584C81A6F18568C4464273D688CA64 + DBC9F0E06EFAF213F8B6CDEB3F3A0D08 + 57CCB485F4E6D6136C7EB5EBF61327D9 + +Set 3, vector#234: + key = EAEBECEDEEEFF0F1F2F3 + IV = 00000000 + stream[0..63] = 8E9E13AE97E14098B9DF8672AE245286 + CE437159905F026515498ECA6F9122B5 + EED90AF2330DF448D18EE4D638D8BEA3 + CBE93497319CFC8E5DD387B6129121C9 + stream[192..255] = 8C7E9F45348BBA511B2E0A9FB6C87E17 + 98AD4F2B6FDCD31D89A913BEA8CD3F8A + CC20E7F4503BCECE20C8B61CC0FD6B7F + 0703A88BA2C5A1AF378EE31BF90CA4DC + stream[256..319] = E28DB5BC51E48EA5A92443ECCF96BF9E + 6D4744357EDCA5071EF8685D7A70EBEE + C306ADC94E610979B9B75688215C0A59 + 420241E776D475B007413B939AACF3E3 + stream[448..511] = BBED8437ECC72ECADBC496F0E0568D04 + DE9DABDAFABFA8F621E477878F4AA17F + 4BD5BC59784852FED306C9274F2AFA19 + 5199BA5128CD8999EF06A7BE02226B90 + xor-digest = F378D169AD75D334D68426E3D213417D + 5E2DB9B2FBF89FAE478B0C86824BDEC0 + BB9E3C4FF9451CBFC0739DBA8D4AE81E + C21F529E5A50E8C1B191953D63ED2DBE + +Set 3, vector#243: + key = F3F4F5F6F7F8F9FAFBFC + IV = 00000000 + stream[0..63] = AEF73417AE8120FE8B785E0C6671C689 + C58892D394E8AB8EF6B926558DCA31D0 + F974E26B13EAA417D932AA9A7BE270FA + F8ACCB4C0CBD396040DDE6C912490643 + stream[192..255] = D5A2B3A7647E39F152413B73F21042EE + 11919C5A08B57B5E192ACD2F1A99AFF8 + 5ED990B06A01C4A1CDAC456B766C8283 + D6D5992BB4F083A72E0859654B06A958 + stream[256..319] = E5ADB0B29575FEAEC4255E60206DB79E + E553A7025F26E9D099B47DEF8C8F72BF + 846E8A72EE3C0AA906A422C850DEE335 + 5C7D899228192B2DD8B04E62BD5BAD02 + stream[448..511] = BD4CDF9CE7F1B75C7DCC7A240BECE494 + 04AC5DFE7BF0168F8F0BE8916E7BBA4E + 95E7B2B7C85D001EEE2EF7DBB9DC26AA + E5C6B983D11E080FADA196D8C32C3773 + xor-digest = 38776182D2BEBD98307A67A80E2B458A + 9D6F2AADE56D4226ECC5598750A91C19 + 8F48FFDB2F3205DCFB3416245ECF22D3 + 7129E7D9E86094C565D3C236B8AACBD4 + +Set 3, vector#252: + key = FCFDFEFF000102030405 + IV = 00000000 + stream[0..63] = 496191DC1EDC22DE848E61CA625E3A7A + AA407E459DA413BD1D19401DC13160AB + F74F384A9DC921157213373E268479B5 + 709A132C11C4798C5B1D285D95308EAC + stream[192..255] = E7E9305490D4FDCA39D5C211E8837B4B + A5AC6270156E397F52802EAC62E4C763 + 7E03EDBC7B7DEBF6B4D00CBEE03E1069 + 60BA27C4ECF169486D40C32C00C603A4 + stream[256..319] = 1A5F0D5EA4FB00CC19E91E2F1C8B4A2E + 2471A5D7C317088AF549F35C357FB613 + 0786F1EA8BF56E1F3D02B4A8F8901D9B + A525584983747FB1B0E529165C628E64 + stream[448..511] = 10B9F29BE5AB0DBF8AAE16B98460000F + 414221D4048CCF8A8923D4ABEEEA286C + B00CC99BD9155F8758BCE098333E8BAB + 4DDEEC9317A791077AA605874B069516 + xor-digest = 1344C0AC589EE96008E7B5FEC7D91817 + F321F5E51C757DC1B3CAD494B6649EDB + ADACDB74445F3682EAAA15B8FAD60042 + 178BBAFE05E6801510ED943F925D8B64 + +Test vectors -- set 4 +===================== + +Set 4, vector# 0: + key = 0053A6F94C9FF24598EB + IV = 00000000 + stream[0..63] = A1809640CE79C540802F49D32023B2EA + 8A398428F4A5EFDB0A124FDDF39D23CE + FE5257EE1BCADC0954049102826E144C + A96E65D4A169823FFF20E832880B7B8E + stream[65472..65535] = 94CFCB48311A41D96101DD49862B0937 + 7C60CB9866045A7277170038F65844E0 + 9FFEA5496E1BC4FBEDB13922942FFAF2 + 6F69829174FD62032940E16A33532D41 + stream[65536..65599] = 00BC07F6F216BBD156129698840FC4DA + 9703ADD18A0AA9CB59E4DDADA0BBA168 + A4CB10A93620726E24D507CC106203A9 + A2D5ED7C81A2D5EFC243FF78F8BE9647 + stream[131008..131071] = 10D80B17A6730D965DBC946F45B1D582 + 2D957F997F1C56467ADE565E6E69CA9F + CEC68D6950E22313661FE82210D694FB + 921A3C3D69EADDBA952547BF7B846D81 + xor-digest = 78DF2A6D134908490632289B3066D669 + 0686E604DC3A1FBE133CBF8704B29703 + 41BD03C3B4C2841A5F89BD9D1F80366E + 9CEE68D6A1D45C1BF5E17D5D38EBE57F + +Set 4, vector# 1: + key = 0558ABFE51A4F74A9DF0 + IV = 00000000 + stream[0..63] = 203612E1D1F22BD47314E9C03DDA5BB7 + 579F5C499983A481F8FE21C9490093D5 + EC7C63FDAC95AD9537DC9E87CD143988 + D97BBCCDB9E348519D07DB0C43E4A069 + stream[65472..65535] = 29FECC94F77015CB1CA10129DEE39D86 + 2FB0B553D1A44CB5E7ABD4FB92B23274 + D9284F437E9D918CD821AEAB95E53421 + 3186AEA0074F95A2B8717185F5E56A3D + stream[65536..65599] = 197A3FCFD4B565D3546F8C6CFCADA23A + 033576E189DB5FC47C873A1A64B429BD + A4B3F83BA7ADC177335B8D5EFC698F39 + ACE5ED3C542510E38AF35ECDFC3252A5 + stream[131008..131071] = 1A3E75C176596E8D5D35A3F68CED704F + 8C3B0F22BA41BF029A86CF0FB72AD50B + 7EF6A1CFF5A4273FAA9501675AFEB32C + A78D2B80174756522B84D8F16773B5AB + xor-digest = 03BF24619159664680F552C21CC95325 + A2C661DAF2AB7EDC3272BD88DA409351 + BE7367531999C6AF7C748429CBBDB7F4 + 5D91C08658A6471472D13F4FAA7B93C2 + +Set 4, vector# 2: + key = 0A5DB00356A9FC4FA2F5 + IV = 00000000 + stream[0..63] = 22E1C692C76EE198113F84A3D73B6C5A + 2EC7CB8B775AA68759471EFC86B3FA32 + 03BBED11817CDFCC82FFDE2EA2FDE7D1 + 4666369636C6958C896BBAE5EB0C51C1 + stream[65472..65535] = 94B33DF87803BFFA34D060162939FDC2 + 271495487785B040AB9672DEC1722009 + 0B5AE71C372F2C9381AE345129D505EF + 61DDB872A500992E045A961E121C7626 + stream[65536..65599] = 377C3BDEF19B2659FD1FC3E9758CCE44 + CFDAF6E44E9D9EEA13CE156EF2503565 + 2E3422776903C2994564EA5D3BA69714 + A8FCFA5644428F0DE4F04D94F200881C + stream[131008..131071] = F9EE55C93B29479799F5D57D5D7EBF66 + 1AF839CC998636C02A9670BB89B5A1F3 + CE78098D7FC67379CF7A9241E26375C2 + 6FD07E1970ECD5A2B6A92387684C24E3 + xor-digest = B7DA2BC8B69EA14D357102476FDF871A + F6AE598E30975844E93940617AA4A077 + A916DDC8932B210BF5741893B0619BC9 + 90542DFBA20F942A7E681B7DD668A374 + +Set 4, vector# 3: + key = 0F62B5085BAE0154A7FA + IV = 00000000 + stream[0..63] = 124B35E1F161A9FFE3D65A9041D5235F + A3659DC9BE659A47C16A0C2E6A7519CE + 8892744E88FDD4032395C02A07B7BBD6 + CF780FCFAB6B179E608EC9B07B9AE61F + stream[65472..65535] = 3C910BFC6300809C113E4CC118F2C8F6 + ACEFDDC2F04F7EA7C89BE5AA76C665E4 + 206584187ABD28F8EA92D91F8C4E6B03 + 0FA4E2A5168886F5F20E6521D51DE9F0 + stream[65536..65599] = 095BA5E4B2AB09ACC5C27B380F1D6240 + ADC913868298381FACF9AF9939D94F68 + 99016E4EF342BAFD0C2756F4F629F167 + FC4C09C9197D9CFC50FF9AD8B8C33524 + stream[131008..131071] = 5B477BBC0C8491BD085F9A9CD1EAD535 + F43FD125CB83E6464533E8D4DB73DFAD + B6E96D4661BB11A7DF031096FC6B1F68 + 653898D50405A15E07639291E6E320E5 + xor-digest = E91229D7189352E779A9B0DEA4FB5EB8 + BFA1ADF511ACB3427E720915ECF180BE + 64200A5F829A597F4E0D560ACE8CF8CA + 96FD591A077B9C863D335B09A78BD9B8 + +Test vectors -- set 5 +===================== + +Set 5, vector# 0: + key = 00000000000000000000 + IV = 80000000 + stream[0..63] = F806AB889D99686F52BE4A7010B8DDAE + C002902F2A9D33D6AC68E7AEDC3F0C01 + 2A138A7A870A2CB9DF9759B482D9AB22 + 00F799F864B0570A10990FE68A52B885 + stream[192..255] = 17FE7976ABBD6BECCFE452B2F94F133E + 94503CB35EDD3668FC6A2027740823E3 + 04B53873D2B4ED80A754C30F4319932B + 288C5A23D0705D1C06BF3EEC9F572291 + stream[256..319] = 6F5AAC443E73A74298A9EA1065129BB0 + 8BF7775A59A44C241F2665AA54531BF6 + 5A151C79446388AC8416F910A6AC521F + D2AB395F15EC91028959DDA79CE65FAB + stream[448..511] = F78154CCD96DED3C5EED0937EADEFEB7 + 8210583F76C4410E63D370490C381065 + 1E53546182674A6C1437052159501BD3 + 9B0D9CA0D34A952FD1959E82FD251130 + xor-digest = 5A8123B6B03B25A2FC57492E1FC955D0 + BA3034C52EAE9A643D154D55FCCBE2BC + 4A3A14D86BB4ED72141BF0B538EDCE69 + A4AE7F880C8322347A51CA97C9BD1109 + +Set 5, vector# 9: + key = 00000000000000000000 + IV = 00400000 + stream[0..63] = 7B76C6E3A9161935238BCBFFA1D3CD77 + 3D027E0A13ED6EFE7977ABED8A2A71A9 + 93D9DE36B2B6A24113E36CD5815F7AE6 + 8DC0E718994829F9C0E5E9D3960950AB + stream[192..255] = 2E83332B529660818F528F5F45AD9B67 + F33055B9F4EF82242FFFE40F1A92FA66 + 9E2D5CEAD3578D41EB0928425017F28A + 6F8EA8E3637044C2268B934FE8EB9FB4 + stream[256..319] = 1634B8EE2B6F5BE009C8CD86AC4479F6 + 3898FE466BEA4B8BF4663B56475A02AC + E8ECB5FC1CD51960C7C1BA4C861E8AE7 + 030578F0FE9F72C1760EA90B4AA92B4A + stream[448..511] = 5B51A9CBC9CD148BA46C8913730CE4AD + 5199A9C332116B1041097E8ED7ACC15D + D891436892321E9CBAB2A05888B3FDAA + 34B2B8F33B5596CFE79640A405351DE1 + xor-digest = 2946ED22EC2F3B3D765E48F1EDB0856D + 27D96B01211C1112D457E5723BE9D503 + E0B71A78CB00ACC0C536C571FCB6B25D + E39CD8F68212441F99B7F2355F665059 + +Set 5, vector# 18: + key = 00000000000000000000 + IV = 00002000 + stream[0..63] = 7D4424731E6FC855B33B8C8549D89074 + FDB8D8C6CF12C9253D258EE81D353212 + 1CE08DEA13E6F709067CE2A2881E9CC7 + 715CD08A111E4EFEC58F484A672FB582 + stream[192..255] = 52A991035EC075152CD43B122B5F0BEF + EC7678761B7E74292A8A1C47099A31F9 + 8904965F3097685C6882AEB82343142F + 59111FF0BDA1EC6FAEC6363C915BE869 + stream[256..319] = 2479313842F29482E973202919F218C0 + E3389EBC3E6B0CAA2B0D890186982B5C + 5687B80CCDCB0363E96FBC006640E58F + 82B0E8BAEE1B59951B505301F2EC952E + stream[448..511] = DF00F019460A597BFD2EDB358ADCC4EE + D69DF22B6724D9FAF4A4A9B765C449B2 + 592825D77BBCFDAC7146C9A1EAC7F7CE + AE295D17C09530C87139DD5870135ACC + xor-digest = DE395EDC7A4883A84BEA3AFEC9CC7116 + 47875D9421E2E6B20C35410318F44F4E + 1247A9570767FB2077E550939AC6E3C0 + 7D52AFAA96733AE7B7477E8B0A6B8C2B + +Set 5, vector# 27: + key = 00000000000000000000 + IV = 00000010 + stream[0..63] = B0820A503ABB0329F14AD71CF616A3A9 + 67E6A98FB481A2530DFC8196CDF90799 + 1DEAC0B2A506B9C8DD486B40DF7E00BD + 362ABE7293AA1304D2FBB35B23D2F8F4 + stream[192..255] = F7DB950E4CE99A243CC5498CF9C8E77C + 7F516BD991C139B9E190F698711DCF98 + 401D6C5087E11E309C10ACFC34E9F42D + 99C17297211BD532992389179355E412 + stream[256..319] = 81E770D51527D97366B2252C3E7EA23D + A33E129B3CC393527A22DD43886FC539 + CD1D6DA77DF451DF575B89DFE3E00A32 + 5F14D1A932667C89D5D718A36CFD6932 + stream[448..511] = 7670B73B044FF2E2C6568CF98646D758 + 1F8A13D16180C020AF5882E7F2CB3B9B + AA5B50A3B5040C59E2838934D97CB030 + B9A0CFB1D885D2C7A85A047B949DFF40 + xor-digest = C66335B4A8DF24E4896BCDCC8E0018A1 + 4B9F03C9A4AB2DF9E32174BA6257D98A + BC77E02BB7CE3531FDFA3B7EB8B8B2AF + 12F73E722D5E66279C9A16B0B9C52683 + +Test vectors -- set 6 +===================== + +Set 6, vector# 0: + key = 0053A6F94C9FF24598EB + IV = 0D74DB42 + stream[0..63] = 1EE5830A5321D9123EAD6F8374C0C047 + 6A6E034F73AAA2F83D64C59AB7C346DB + 910FB7DBDE6E136B5539AD6BA595652C + 90C1130044AAE272C34FB4B8AED279F2 + stream[65472..65535] = 6C4DBBA8F71BFDF709BF6D448E25814E + 4CD2EAD084615E53526CB7FE45CD6E0E + E35A4A06B418FA4B1F08B88D135F0657 + 6F4C8F67FFC1044B2DEC207AC9A6C204 + stream[65536..65599] = 694B2B0127CB499BCFFF6870C04D2D49 + E3C3EE31C7649B10ECEE7DC5F051B8A3 + 026633E1632A1A62C5ECC5AEC1CF69FD + 7895258D47B1F236068E6CF0A57006F3 + stream[131008..131071] = A02AE7CBD3B046830DAEBB35B665149B + C6D1322DF24A4801DE87D8CDECFEA764 + 9334A5D0EDCF5A914286E5D37DC7CC3C + F3EA10CC2661A1A5253E30272A6379EF + xor-digest = 5B055B298DDC2DE3E2E914887FD68C16 + BFFFA7ADF997AB6922213716B7D29926 + BAEC84D1DB39ABC0708FA008F27DBB61 + 0DABCA08A9F75297E0688F561F94B163 + +Set 6, vector# 1: + key = 0558ABFE51A4F74A9DF0 + IV = 167DE44B + stream[0..63] = B95813F9855845F95AD6AAE103B9DFCB + B295E9D79D4A00FAD4C2A7E43A073952 + DA3FA4EF2AAF2D064ABD75DF7A167135 + ABF2F080B51097FCCBD72062ED91C700 + stream[65472..65535] = 5A91787A9F68561792163646CFBC13D9 + 8A89288A1DB43F1134E01B122DD8A96D + EE30218276C473366F5456CE40DE8B7E + 69AB35E19B15ACBC323A3208C936739E + stream[65536..65599] = 912275C27DBA3A52C30A29C931C66498 + 5972BFDC0DE094C108FED45CDABC8E7B + D3930A1E715D9EA2A414DFADE4E1796D + 24C58284CDA8581881CF600A37C15242 + stream[131008..131071] = 37025C8EBBCE8CEF072E027F590AE23B + 57EE677798312BBE532CAAB89ADA1EB1 + 415F9E4FD73AE1EAF29269193C5047A6 + 050F96FCD4A94E205DC60976669522B4 + xor-digest = E5345875049D77C87C3D3B804E5A0F09 + 14DEFDDCDEABDB7791A326F4B14266F8 + 9793DAEC13045AB85C4896C583F62715 + F534ECBFB1286EC974D37B571FDF4AFA + +Set 6, vector# 2: + key = 0A5DB00356A9FC4FA2F5 + IV = 1F86ED54 + stream[0..63] = FCAFA9F24BE1FF543A48A311C22481AF + 3AFE07284CAF43F000450AA8B1411152 + 3B99FDC7D84C2B615EB62A7ED2941F49 + 1D7434BC06690D329DD6943C618191DC + stream[65472..65535] = D79C3C7FEB790055CB2602DB4292B39B + 7473E65099FC46EE0B989F5141717C73 + 2DDBB84233600437F64BF17943AB9739 + C2CEB7D6B0ED8AC0B63B01B2BDE5B6B0 + stream[65536..65599] = C65E03CCB9DA343E0C09FE1EADFEFAF0 + 5A3C74AA436C6252E5D98C19E42D535A + D7F23FD1E9581A688D856AF94203C6FD + A1459BE93A30F57B31105D9502681676 + stream[131008..131071] = 592494E45E268781A58D1E7E71A879E7 + 73BE21B28574EABF9EDB7EB55898CAFC + FD15F608B840578B92AC4B41475EB235 + 431DAFE02A790434EA153CB790408C76 + xor-digest = DD79218C7547EC70BC75ABFBD356ED21 + D4C02DE9C5C6C33CECE6B54E1D8981D7 + 6AFDDD4DCAC9ADE551FE6EC52729103F + 115D0986C58DAABAB6F9C2D5CA84FB31 + +Set 6, vector# 3: + key = 0F62B5085BAE0154A7FA + IV = 288FF65D + stream[0..63] = 5C7CD7C1D4567F3A09D316D794FBD9BC + 1671F88D5149148FD2FF329BF981EFE0 + D1BA3A893BA4600DA7652722421D56BD + 9C1DEE7C1379A0FDCF41DE8E5A715097 + stream[65472..65535] = 4906ED622EEEB4AD9E45BAEBDD713F85 + D3D13A3C508CB45383C12B01C03ACA23 + D35FAE0FA38059DE7F5E051EFE922BAE + F9900C7EC384C17872264D4C652DA4F4 + stream[65536..65599] = E4638BCA4F14C573C2055AB3BEB474BE + 242CE0BDD8DF96A3A8908A0F8328B3C3 + C683CE0F4CBE45EB2702D41B5B0AC8F3 + E875B2997BD700E5F5900864A4BE3C20 + stream[131008..131071] = 9AF2CD658DD8F5D9D69B2CEC16180222 + EBB3260BA90465025CA022C468127BD3 + C236D2BD8B801008DB2E16E5CF4CCCF1 + D350DD569171BBBF937239B97C555020 + xor-digest = 3A842DAC934000501933FC36AFB7ED0C + 18DBA3861C922BE8CF6DA13E7A143F9F + F0E35E38A98191F901EE5B09DE8074A0 + 9C07B697EC6EC8F793CE71F9FF737E0B + + + +End of test vectors diff --git a/testvectors/trivium-80.64.test-vectors b/testvectors/trivium-80.64.test-vectors new file mode 100644 index 0000000..c9472df --- /dev/null +++ b/testvectors/trivium-80.64.test-vectors @@ -0,0 +1,2022 @@ + +Primitive Name: TRIVIUM +======================= +Profile: ___H3 +Key size: 80 bits +IV size: 64 bits + +Test vectors -- set 1 +===================== + +(stream is generated by encrypting 512 zero bytes) + +Set 1, vector# 0: + key = 80000000000000000000 + IV = 0000000000000000 + stream[0..63] = 38EB86FF730D7A9CAF8DF13A4420540D + BB7B651464C87501552041C249F29A64 + D2FBF515610921EBE06C8F92CECF7F80 + 98FF20CCCC6A62B97BE8EF7454FC80F9 + stream[192..255] = EAF2625D411F61E41F6BAEEDDD5FE202 + 600BD472F6C9CD1E9134A745D900EF6C + 023E4486538F09930CFD37157C0EB57C + 3EF6C954C42E707D52B743AD83CFF297 + stream[256..319] = 9A203CF7B2F3F09C43D188AA13A5A202 + 1EE998C42F777E9B67C3FA221A0AA1B0 + 41AA9E86BC2F5C52AFF11F7D9EE480CB + 1187B20EB46D582743A52D7CD080A24A + stream[448..511] = EBF14772061C210843C18CEA2D2A275A + E02FCB18E5D7942455FF77524E8A4CA5 + 1E369A847D1AEEFB9002FCD02342983C + EAFA9D487CC2032B10192CD416310FA4 + xor-digest = 7AE3A4B53355061766122E04391EA1E6 + 699B51C21A1F8058D3CF74A209D7E4CB + 571ED771525CA492552565C10A05E81B + 945DE28AAC043DEB349FD438784904D2 + +Set 1, vector# 9: + key = 00400000000000000000 + IV = 0000000000000000 + stream[0..63] = 61208D286BC1DC431171EDA5CAF79D95 + 60B18ACEF26484417B651A47A3F7A803 + 53F79AF8656DA4301A5E5A02E04265B1 + 82C67F5891220349F8CD1CD06597B77E + stream[192..255] = 242608D58B23D480E65A8957F3FA794F + 53802938517E00F63ACFB5EB6BD9EF46 + 8BBF3E25280DBA37FD0B0FDA76680A55 + 96FF5271210EAFB170F3517238132C6F + stream[256..319] = 61ABC3A8B08C692F171CD714D9D15E88 + 88F71F744EE561D289CD3180AE617FA4 + 3C81C882D7A946B0DDE1F00A6790E83F + 8641FB4573F75836F8E8397EF4A99F92 + stream[448..511] = 178B25236ED340462A30E65B5AEC541A + 314B9D7D053106DA3E6E7D9AD15911A2 + DAE813763536B17B689113F870DC8EA1 + D1C455B4883DCB30227422946513157E + xor-digest = CE6253BA30B97EBB0CA8FA894138D4E1 + 35CA9C2EA1011D8CE3DEE1248B66B8B3 + B6AE334A2218D855F0E716B812FD91C2 + 56184EAA3CA28E547D9531DF9F7BF6E7 + +Set 1, vector# 18: + key = 00002000000000000000 + IV = 0000000000000000 + stream[0..63] = C8F9031DABF8DB03FF120D05512B5F24 + EAEA1BAB43201A5E93BF17F628E5B216 + D58577112F581A67DD5F962484ED4AC5 + 9202BA3509A73E119680B562F86DF0DC + stream[192..255] = C26A443E26697FA16C0FF3D9152075BA + 1E81B900D609087F773FF30F4271F96E + 1BBABB533108766074D2C601E2C27219 + 4B64F775327F7C2250F7FCC0E377761F + stream[256..319] = D0ECE1B05F3199C4AA3CE4BC21A912BC + 4488CC64EAA183C46AFAC7E3C07E459F + CB08A75F1739D9AE1C489AAF307591D7 + 2E4E97339CC711FAA91AD16CB2D830B6 + stream[448..511] = DA6B9F7AD2563E7D14693343FCBBF5D5 + 9F85D5343A3DEA66CF2A81820881703A + 2F37D81A42F8A51B1977CECE86E477EB + 63E932B79F99B1241657B49953588760 + xor-digest = 5D38C5BF8AE69D544AD7280BE74C6E0C + BE6A420BCB2D39A2DAA9D3D63385CCD5 + EE19A18C0C587B57A83CA1ECCD01C8EF + C43F3F367BC5FA0FE7FA7D8631A19AB6 + +Set 1, vector# 27: + key = 00000010000000000000 + IV = 0000000000000000 + stream[0..63] = F7E523040E86EA2C46A2BE705BFC6259 + 7F77E4649C0E71D51B288EDD4FC169BC + D681F4603E192A7971E73290133E1E32 + F916D98B0D77F37927E1215C1D6AE037 + stream[192..255] = 2128A7909071468084923FE0ECF981C9 + 67E59F15740C9A477EA468B81D0D8295 + 7ABD743AD921F9C106BEBC3A0092D491 + 1BC68FAEE7BD0D72B9268640E040B643 + stream[256..319] = 6BB914FF05BA243BC9030BA267C00AF5 + 2A0B7087AA05A5CAE114F89F0B0F8D92 + 6DAB38297B24360A8E9E77BA0C5F5D71 + 0AD1B28F2556874546C973A3A07FF094 + stream[448..511] = 72948944739208A65AC2D1B05DA2CBE5 + 999C536C06331D91081AF737BE28D6AA + FCB4D7EDE955290D1E21038E1737E9E3 + 0A7681180BA89C746B77C2097D3CFD24 + xor-digest = F3B31EF416B68E94DDEF0EE68039AE40 + 476018580ABEB18EEB5FB27019358E0C + A16D0A6E0F93E4B2637CC85236B9245C + 60885178E6F2B4ECA5184840AC88B4E4 + +Set 1, vector# 36: + key = 00000000080000000000 + IV = 0000000000000000 + stream[0..63] = 4B430BDE0F574C7DE06E6A1918BFB4DE + C0E2836071EB446C593EE1F259453327 + 2E720E2A27992730E67D509EDF7BB0E6 + 2AEA85ED87B998FA6F53A0B77D26BBA2 + stream[192..255] = F2422BB51A6EDC8B05CB5C4A86C0FA2A + 8A631A6CA762075121400682E6D4198F + 33C021AF3F6EBA20C6CA1B7055948062 + 28788A3AC73641081FACD4EFF39FCEA5 + stream[256..319] = 087CD26F0DB13D0ABE7946C81C6F1230 + DA00E6120E894143D63E01C76B4DE15B + 0128870032B23995F47A3C8421551E9F + 9DCB326394BEC319DAF4AF828F5A1086 + stream[448..511] = 1075D79B7886F8683D8126203AAB97DF + CAA776F2F2B9D34F19EB09AE82F1193E + 38C6483D5C5A2F3B4F0FEF9559FE491E + 42995B6C9C0544D0EE71B45199257C2C + xor-digest = 6C474C19C540A41CBEC90B9C06740501 + D334D1C7A0321D43D4A2BD114DF64C06 + F924F821FB0BCDA3815AA1C3206BAE93 + 8AE6E4902ECFE86581D915131046707E + +Set 1, vector# 45: + key = 00000000000400000000 + IV = 0000000000000000 + stream[0..63] = 4EAC0C5C7AD327084CFED7EAF72F6EB7 + FF20E11C65DFC1470C1D2EFAFCE2B1FA + 3ED6AFBE7CBEB677DB1189CB6892E810 + 93B16FDC34199D0A26B89F06C86AC9D7 + stream[192..255] = 8E16BFC093187AA1F846233A522292CC + 2C1F829FE186613ACEBE8BBEF0047080 + 7A086475CD3A9F7A024DF5192B2A2C5E + 3599EA4BCFC4424C97F4848AAEE3CE62 + stream[256..319] = 0440260D186A7F351C3BA39ED04F7D38 + 85EEB80873D8A7E0DB3EC9A85D157A64 + 75FFEA67617555A9D1EC8C860C3F5632 + EB09543087C66E40061721F56E443304 + stream[448..511] = 74CCF961E4D4508382AAFB7AC7246A1A + 4FAE1A2722404ED45A173C60E2785F06 + 669914085078DDFF696B1EC62C314952 + 519F59D3F83B6E304FDCA2BE1377DCB9 + xor-digest = 4FCFF4A0D4B751B1CEEA6E867AA2A450 + 52BBCAE2EF464105705FBB25DBA8A46A + 1874A6AD5A4EB2C6D8A0CC99F089ACD6 + 01248AB9CBFFC14902A5E977241723F8 + +Set 1, vector# 54: + key = 00000000000002000000 + IV = 0000000000000000 + stream[0..63] = 2D97F227F2463F271F853BA10806888F + 8BA5733564557D5174A16172BD89D7E3 + 2ADF9C5B257DCC1693AB7CA6248F7A33 + D311FAD4D89D1C6EB7FCF8896D94E79C + stream[192..255] = 9C38E5671BBFF1255B0E0507AEA04A53 + 4CB9DF58FBFBEDF35A8D3E9ABF2D3575 + CFA09D25F4B65958F6335F2EFD5B6B26 + BD32854D2DCFE3BB9B8E45662E82B755 + stream[256..319] = 2241EE8EF8C8E1D5F92660D4308EF4A2 + E049E8BC39C3E97009872036DADD6FC0 + 11236F68D2E53955353EF0BDF8C38AE5 + 89113090AC7B2668FF6D6430E3D86A80 + stream[448..511] = 25D0F4B24C08E64008B664324A487BE9 + 5330E380025E1688B7E094120CB4EAA4 + 66C32BAC66FE0EB407FB61B2EF1D5EAC + 2D2CF69EB18D0CB218304BFB765A710B + xor-digest = D289038D30972F0D331BA98C9B3985B8 + A0ABC29875574729E85DA5D86EF6D8F3 + 564D2106EBD5B01AB1239FFD8E7D9AD9 + CE24F40D38F774B51DED044843E8DC08 + +Set 1, vector# 63: + key = 00000000000000010000 + IV = 0000000000000000 + stream[0..63] = 9EB8F6BD37474B5C2AC01BA1B3EEA5E1 + FBD4D4D1AE63EAFD81A4D2C900B59312 + 73B37820BC68FCD69ED18F1ED4EC9334 + F39FEB330BAAEDEF2A1E51B218B385C8 + stream[192..255] = BF9DEDA5A5E009286220755F2C900A1F + 7FCD3B8C694FA76D82E19A4E598145AD + 064E7F863A6E7477E626D5736FEA8CEF + 48F0B8C6646C2CA76F14EC6864E9AD8A + stream[256..319] = 4137E7D79FC2569ABAC57B2740AB3172 + 97A07F2AD06CEC87C30BB474D86FC64E + 9E9149F5A9135DBF5F55D7811BD50611 + B11F92049D496D498353A1D60F676517 + stream[448..511] = A45AC8C930B8F3A12A1F742E06950A30 + 5F1DB8F4AE9EC0EC2821337843D25CCD + 3CFB3592FA440424F89A5CA600A1DD60 + 3A22C8913E34457D721B93A07D006BB0 + xor-digest = F1C4BB2AF77BB600FB2F785CEE1BE8A2 + 5D47F48E32E6774EA0D8237228A00CE1 + D5A700EBB06D6BF6FE9DA1C01EDA833E + BA80541AA2B62AE65998483C6FDAEEE3 + +Set 1, vector# 72: + key = 00000000000000000080 + IV = 0000000000000000 + stream[0..63] = 5D492E77F8FE62D769C6A142056BE936 + 1FA0ADD8A54601DE615EBC04C4F8B2C1 + 2A8ED2DC9AB286A0F6C49C7AB319BA6A + AFAAF0CD42D0A44C7DACBC90791855D8 + stream[192..255] = DF1884141AB121E7459DE30B2A0C85CD + A0016453D350EF6220526CE33C1806E3 + 831BEE5BF226E560F165FFC3585F2E54 + F4845419893265CD88BE8CB302B20345 + stream[256..319] = FEEF3646A5600D104A2DE2ABAF9B41A9 + 97FEC3EAF10C2F50EBF04D12CE139F6E + BF7544F9BC85FA776E266C368C249D27 + 4DF3ECA2CE43F7A611AF0047D22E8601 + stream[448..511] = 2932E68122A3BD81A5EE6922FA11067F + 5DA90D30B775F752831AE09527B72DBE + FC4DDA52DA28143720A31DFE662CDB73 + DED478E8541E3472AB4F80712250FE41 + xor-digest = 4B2CFA502DE806DF648335D2FE74E83F + 0B9346BB6AF0F0D1371EB9360F2638C7 + 856A9E715D44E5ACD551478FCC0C0AAB + C29DF306EF4B4A3BFD3534434EE26928 + +Test vectors -- set 2 +===================== + +Set 2, vector# 0: + key = 00000000000000000000 + IV = 0000000000000000 + stream[0..63] = FBE0BF265859051B517A2E4E239FC97F + 563203161907CF2DE7A8790FA1B2E9CD + F75292030268B7382B4C1A759AA2599A + 285549986E74805903801A4CB5A5D4F2 + stream[192..255] = 0F1BE95091B8EA857B062AD52BADF477 + 84AC6D9B2E3F85A9D79995043302F0FD + F8B76E5BC8B7B4F0AA46CD20DDA04FDD + 197BC5E1635496828F2DBFB23F6BD5D0 + stream[256..319] = 80F9075437BAC73F696D0ABE3972F5FC + E2192E5FCC13C0CB77D0ABA09126838D + 31A2D38A2087C46304C8A63B54109F67 + 9B0B1BC71E72A58D6DD3E0A3FF890D4A + stream[448..511] = 68450EB0910A98EF1853E0FC1BED8AB6 + BB08DF5F167D34008C2A85284D4B886D + D56883EE92BF18E69121670B4C81A568 + 9C9B0538373D22EB923A28A2DB44C0EB + xor-digest = 106E884DA4E38669DDEBA948CCF69D09 + 7624FA9131B60DF0C8F41C7FDC29B46F + DFED222B48781CF7D6B566AC7518E518 + D74F11A16F8171C1C26FAFBB1E632934 + +Set 2, vector# 9: + key = 09090909090909090909 + IV = 0000000000000000 + stream[0..63] = AB97616E7BAF0921F424B2573BFA15BD + CA01898ABBE6AB77279AB1D732ABD105 + 12769CC69FAB34E03B807F92C96627C1 + 7656BCC9BD9D377240A2B6FDBD784453 + stream[192..255] = 8B6043B0C76E991D352361045F1B0724 + 56C04D7972CEE60F8727798497D4D3AC + 69CE6781D09795DDCD16A48236785201 + AF1884E69825977D4988B6C45409E187 + stream[256..319] = EDF6242C03842CAC95579088A4B6C604 + 96FC3C80A17BB01FD25F647D1998DE1E + B70FB1D5FE3754DD7C8801576C7CB6E0 + 6CBEE317B091C542BA91B83B1389CE50 + stream[448..511] = EC087DE06F92F49E8B0C69BCE33276CC + 3EC0B0472494E4DE3F8EBE37A9599EC8 + B6F46FCB72459FE7C273B3EB5188A6FC + 42B7733D74F7D2462B14D34EC0E24971 + xor-digest = ACCD41AA0780F62208176BDDC3E752DB + 1C228A5F99B2904CEE22946F46F8013A + 40B797D54FD1C289510FAF21940AFB7C + 0587174163E4D61295B3302C2E30C58F + +Set 2, vector# 18: + key = 12121212121212121212 + IV = 0000000000000000 + stream[0..63] = AD35E17B1971AF6B5B3E365FA64EB4CF + 7EBF023D520889AD71F1A07AA2E0FF44 + CEE32D09CF77360C52434D462B53A405 + EF5A60D82A0F5E3CF3321B3727A3D61E + stream[192..255] = 850E4A9D5D6CE76AB58B97B6BD3F9654 + 19FA993BCE0C618B0200A0B024B6EF30 + 1BD3E32B173F8D63D2077887DE45D2EE + 842B71B407CCD7629EB5185732F048B0 + stream[256..319] = 360B6895BCDBBB111156A9F9892850F0 + F059EF19E4EB265896AB3FD71017E156 + D80071542C5EB8843294053EEF33E6C0 + E62C640182BD26D0CB0677422964E23B + stream[448..511] = 3889B97439DBBAF76E480EEDA6EB3871 + 01DD97679826677500297211E7BC7121 + 8E4CC353596562C17E1B7BB4228B9869 + 149CE108339442C16EE2A4E6A20EC1EA + xor-digest = 5451383945D449593499E2DCFDB7441F + 03106D84C1F1058E1FA5FDED446D3ADB + 4AFF88C3B0A1CCEBF493481BDBA77B84 + AD798C93D1C132BDB5250293A69834C6 + +Set 2, vector# 27: + key = 1B1B1B1B1B1B1B1B1B1B + IV = 0000000000000000 + stream[0..63] = 575AC77DCD54E7F48D837ADE0A88C70D + 777839B310C297835F5BB88C1A5FFD15 + 69A4C4676E7D7CEA864FA1AD2F78E3E0 + 44E7D145827DD6E4095CB308111F5C72 + stream[192..255] = 0961EB35FD322EAE8011052513323CC5 + 1B0F4EBFBC25104A2E947B98B545D00D + AE223FFF25AAAE27A6AD25CC7CBAD627 + 559664E720CFB9061DD15F8C6BAE45F8 + stream[256..319] = ED7100988973CC712992DB2C42BA0FDF + 3F0A5B49B41398E96214F1C2F4F1C0EF + EC17C6A8E80875D3EB40E973710614E5 + 72233CC2D88AABBA1B67D40365A10641 + stream[448..511] = EBA754FCAC87029BD9D475FB79FBD6FD + 1ADE18D75DF85CDF875C517862855665 + C6DD45F3999032410D7B71EFDE3E4FDA + A923E9346121C8EA2EC999575870E043 + xor-digest = 397DB0E5B8C4A77CFD9CED0DD47E7F2A + A3A0890C5AF816C18B8006E7363F2E81 + D60F24B438A5DD41EE24A787FBB1406F + 3F9270CB9FCDD19D651EB12204BE68DB + +Set 2, vector# 36: + key = 24242424242424242424 + IV = 0000000000000000 + stream[0..63] = 5502DF8070387D1237EF5213B5F19EB7 + 9B9CC30810DB966DD2B25C9249C0378B + 17423F4E788BC3E82FBFC7FA3FED4A57 + 04BA35CF9CBD12DCFD56CB6DD431A4D5 + stream[192..255] = A68899B41A40E33776B5F06905D41726 + 7698EB1306923997588459F83620CFEE + C503FB9299F7640B67554079E04A404F + F84966D5838D35D639065CE9B63BCE00 + stream[256..319] = 1D0DF339EEB936F041748F00AD035065 + 51E81724ECCC589A0848C24962EF1766 + 008B90259738515712B2F23EE6C81E39 + 85439A1D6E9E2DBD6CE0207DA4ACFAE4 + stream[448..511] = D3D23D51D0786C1724E9043C2FAF83E6 + 32292A3640B2CE6C129B509EFC9641B6 + 2BED08E57E2E3FF6F19B335B49468CB5 + D49DD8CA4575617BEE7A3A2B12DFF7D4 + xor-digest = 3174B207516E0629865B094F2C1FD668 + C583DE7A6C781AA8F66FA6A831A1DE81 + F5CB1E105F4879E3C54D97628420E175 + 37B2B4E5F2B762B2BE0958D6E5E39094 + +Set 2, vector# 45: + key = 2D2D2D2D2D2D2D2D2D2D + IV = 0000000000000000 + stream[0..63] = FC87849624217531385850ABE1CA16D5 + 792A45F8FC40638B0BDFB7A32D5B53CC + 6751FE1CBE1BA673D2113AB900CFC9C3 + 095CA85EAAF17DC617249FEB362A3F43 + stream[192..255] = 9DFDFB4E65756A17EB25E7780B76A5E3 + 8387FD2E6680F1C95E43168890626763 + 86883BFCB70CF7D3B996ADE723A640F0 + 6F4FB89998DC89836BE5DE6867AB009F + stream[256..319] = E994EA686CD3B38CBAE1623243671723 + E73659DB9E9AE918738B9178EEFB9165 + A63359C35F56DA951C50C8507CB75922 + 3AB159C8330DCDC1E96B59840B4A7F87 + stream[448..511] = 4A1497F3FF052FD845DA746EA324C700 + A10BD0C4E66F5E542542571EF612FABF + C71F6CB099F615D0D5A09BDBD566337E + 40A25B7F2665C28CE0DC8ACCBB13F76E + xor-digest = F66B5DA82D74918496B50BCC58AB2198 + A7023908D0AC9BC6F993800ED66BA4D3 + 90574B418F9313ABCF6D1B2E5A5690BA + 21349FF7B4A0FAB8D6918600225B7ACD + +Set 2, vector# 54: + key = 36363636363636363636 + IV = 0000000000000000 + stream[0..63] = 1F9A14B98CB448D4002A3770361447F8 + D0FCA7B2BCFA40D618AB1833FF19DF6F + B9BE5D7A47B692FE64C7CA520D60DA1C + 35AC0B9E608C5E459037F8E9E68B8CD8 + stream[192..255] = 1FEDA2908F13CDD9173BBCD4768E7A20 + 3654C47A559AA91242AE6EED90581772 + A11CA7E7AB5E9044C10FE91C9FA48B81 + A213D4B43357E95B318E28CE1FA8C045 + stream[256..319] = 520BC403381964A1674226905F75DAC0 + 5D2B760BDE414D8494ADCC53973527B4 + 6B73FF86C6DCFF0781DDB346B784FD25 + A04DD0919BAB0307A11902AED883DC48 + stream[448..511] = FB9DAA7CAC309E70D9DF5EFED29401B8 + 32B2DEC6A4DD4C249ED2CAE2CED7052D + 4C73FABCFA489E56D4A78C30ACC7CD3F + 31C3C10D6B1B6BEB94E5829663AE53E0 + xor-digest = 575F46D572322875F036A716A5A987C2 + 72999B1E1A7AD2958DBC687530B2735A + CC60763507474BC76A7E980F120F2132 + 186CB7F3654EAC410B52E1C6C74642D6 + +Set 2, vector# 63: + key = 3F3F3F3F3F3F3F3F3F3F + IV = 0000000000000000 + stream[0..63] = F2D9792B78C2D3EC67D8C80A710D19EA + DB163199C6D9A1CB8F30624D4B30D916 + E4C201E013EF6F4E0BA58296BAB2C561 + E737EDABD055F517CD546B2B22F27C66 + stream[192..255] = FDFB348C58892CDFAD20A7D2D4BA83D9 + 75862EAC35593F154B9B4323D487A762 + 802AEE46A3FAF0074A815FBEC00FB104 + 395E02E3BA0EFD60616670D800BE8641 + stream[256..319] = 37BD3FD4A5AD0BD7990B94E6AF98213C + BDFB54EE18918A73751BBA9F8D2B28C5 + BE5796166B740D10B3F6408C86707925 + 9D39965E95740C49D2FB156C319493C5 + stream[448..511] = A2F204C5985690B2BFEEC7DEFBD7CBA3 + 6C765676A61731647C6DFEAF90215DBA + 36A2168BC89542BAB3E8D404CE989E86 + 03899007F2656DF6A17A6516F725375A + xor-digest = 7BF9C7EE0A793EE956E78BB7590247E3 + 69244299304920548624C760D7537372 + 14464E3918E10D797247BF4B10883B87 + 19E15E0BE512115C4AC86DFD9F1E12AB + +Set 2, vector# 72: + key = 48484848484848484848 + IV = 0000000000000000 + stream[0..63] = 435E4729820B9EF9670DACC074442115 + 00C1F4A18134B8FA1B08067050698D2F + A18B3827F5BE7DD06B75AF49CA442788 + 0B47FA46E74D48F424ED5C981BE1B9BF + stream[192..255] = 6D13EE06E76DB7837348016FFECEE7BE + 3F3D812A5FCDCCFC2A9AE5DDAAA776A8 + 44745A2A0442A8E0CE97A30CDF933229 + 84DC45C43FAAE7E15B31870F37C4A9AD + stream[256..319] = 48D6B3800D2C3775B13D0E0927FD81CF + 35E6F9662D5AED68D0E22BBE37B222C1 + 5FB8DA5D73768AD44AF8E48FB3336556 + 5571CECD079E42BA5F86B669C48F0A7D + stream[448..511] = 9CBBB687D06CE1D01D3D3D894AC66FF3 + 89BD9CBEB6DFC6988FF39DF4B11C0296 + AE09F99AC63D0ECFC39E2D0B28825630 + 26DA86D1E0EDA3C4B1A3A4E4C28C2040 + xor-digest = 6D37BF8CBB9581A71106DD3170D61926 + EBEBD9BA6469FBF06BA15EDEC9F00811 + 9E65D2BC3370B345F53E545345E40DF7 + 2E8A524E826437AD3DD5CD814CE1CB1E + +Set 2, vector# 81: + key = 51515151515151515151 + IV = 0000000000000000 + stream[0..63] = 0FC805C2829B79F15F34AC308018C3E7 + 34B14005BE0473B19378CE115146A094 + 0DAE4DA349905637C3981F68E430047A + A3056EEF32174120D9DA49B2CF8C0EA7 + stream[192..255] = 9388BA6B4D10E0B2F33A092273052300 + 9E6211FEECDEDFF5ACA9438E2C3CB37B + 6A49F57B5E6C73B9107AA6D120005964 + BCDE4DD6766AC98D6395BC3232AF35FB + stream[256..319] = 75D8595E76693C32B0795F61BE77DEFB + 3ED354FAAD29242D99F3BFC0484A51B0 + AF5CBC3B07E7C5659D4AB716371F0D64 + A88B0763A9B1CA33BCBFA75B430161D0 + stream[448..511] = 689AD47E7ADBB2F7867C01811427ECD1 + 2122DA2C9D41D474B2FCE5FAC6606AE7 + 761FFA11B1F790AFF5173FDFAA84085C + DC49B0A93B46CE8D3395A44742810CF8 + xor-digest = E132E58124DB7F70C5CA326EC41855FD + 2FAA6326F7F54301B2F485ADDBEC3D3F + 6498E19AA308BB585569DAAB5D39D46A + E529603A5955ADDDD79C3C2FD002825C + +Set 2, vector# 90: + key = 5A5A5A5A5A5A5A5A5A5A + IV = 0000000000000000 + stream[0..63] = 2C7F53F2FD7CC9342EBDB26E8245BB9F + 298D54B74A7E7C608E4EE6FD7A6608B6 + 9EE71B83D9635C457DD9D05FE9090FBA + 05E249D44218E97D1B905E4F0810A912 + stream[192..255] = FCF3B19A6355A85830A068339E297391 + F79486B659F4BA98E3015D9BAA13A2E8 + 7F069CD5FED504F466A92B92107C4B21 + 792E690467C7E2094055F48540F024CE + stream[256..319] = 794471E527052FEF0FB797E288032D7D + A3BF1D4C0955E6E1FFAC1D78A5936CCC + 894D498C9D6AB826E8D8DCD58022CA0D + 610CA0733281A87E34D25FECD0E2508E + stream[448..511] = 1537EFC35B24460E0C96D1ABEA7EC9C4 + C0567222ADC0181ED68D12F695FB3A2B + 65760A00CC353F2675819225E574EB9B + 9FCF37F90D6351F5F89E98BB5B4D23DD + xor-digest = 991125CF01E862459F3A3CF3130E6409 + 4F267BCB6DB6F545315A137068D3B754 + 458800513EB758545A99956FBB14F791 + 9583F158A67274A5FB9AFFFD1863C2B3 + +Set 2, vector# 99: + key = 63636363636363636363 + IV = 0000000000000000 + stream[0..63] = F6652E27AC1B2705B90EAAC51D79FE00 + 093FD0FA2DC60E743768B47477E0129A + 2FD23E0FF656F56A39BA260FA2D45BB3 + 5BA106507CF6A0027F86C92E0174DB1A + stream[192..255] = E59768F3627BE1541F803B1523212F26 + 9524E7257FAFC3121EB9D6C30B9E651F + 5BBB507CBE63620007FAA8109BA340CB + 4D9132EC5A18F9E322F7D0BF5E8D7F4F + stream[256..319] = 2F7B8AEAF185ADA971FBBA7C716DF689 + 3FFC24C22F7F576E60B28C08FC7C00B4 + 0FDAFDA95CAAAF970C2B5537AF4BB436 + 93D45D20D56EF92B5EDC1F6C29F12906 + stream[448..511] = 5C7878A24D338E6C732536B48B14C6B4 + 2EC62E7220CCFB2D997A167B34343787 + F0C03328AF85401A9A4AA22926901ACB + 9079525D256D74DF3CA958541D364010 + xor-digest = EEA65C2D1B122A93E50A2AC4D3239C59 + 0365FD42FB54FBD80914C677F4ACB2BF + CEFF6C596C03617140340A79E06C649C + 0F6C9351358B6CC396E11CC2F3EFFFC5 + +Set 2, vector#108: + key = 6C6C6C6C6C6C6C6C6C6C + IV = 0000000000000000 + stream[0..63] = 7E1A2E71199A17B0BB9A8B9B8102A9AD + DA23AB4642AA1922B334D0A6B5D62F37 + 100055CCCC7D4D5694DE2745221B6BDF + 02ED1F56B81BDDA070C0E09643FB31DE + stream[192..255] = CB3ED9DF81EF89063DF118A6C08C36E4 + 750A999E452328DE398A5581D6ABB6FC + B739D189773D19C7073FD54EBFB07A26 + BBC737196073036049DEF546DBDE6FB6 + stream[256..319] = 0C31B4C18EF8863E1F891B13B08967EF + 2D2026926D5D508FFE5D6AD06A664E64 + BA675C5D2081C3033664B5C2A5C10670 + 1BE4893152F8BF00DCB334470423A21B + stream[448..511] = 809D6CC7F3E5303927B47948A68AA2AF + 2113C9B5D969898F27E30E24D148EBFC + DFDA0DD27E7E7C269E1B774260125800 + E40C9785FD24E9AFD64942180F2E5C75 + xor-digest = 7DDD82137D58DCF886F8BCBA29798269 + 7CF9A0F384492CB0E31FCA3A456D54BD + 10BC808208DD5A90E083EEEC5F3145E2 + 888E98162158B3ACC523798667A24CE8 + +Set 2, vector#117: + key = 75757575757575757575 + IV = 0000000000000000 + stream[0..63] = EAD8FBE63C182904DD66EDB353791503 + 8DDEE8EEAAE44F9DB87DEF80D9DCFAA7 + 1017333258A8CADA82D35292A48CB49B + 4838D84E0C95A12BD5B9805FE726A804 + stream[192..255] = 208FA6B0309284BFBD185AF987B4CFB6 + 65CF191D57C45ECD869DDCA329EBAB7E + 9D7003BC227C5A0D278B64357F5B31E7 + 4A83DA5BADF99DAED902F804CF0BC7F1 + stream[256..319] = D2F07231788112C5096C74FFAC36E765 + 4D4E79FD02E545B33BD4FB2EE35150E1 + CAD8A5BA225230FE57955866927DB0DF + 0610E3462F425411D257E4BD5D52E6D8 + stream[448..511] = 7ED0A3B04B194D6141AEF29D626272B8 + 869ADC25F7158FDBFAD036A15D633C3F + 2161243F66EE3EF3D35FEA9E2E1F8095 + 3B5F5C1AD9FEB50CC20A30C7A33079D9 + xor-digest = F64ABDFC5061BE3904DD56DA047711A3 + 35413C8B20E8100F2A681D3CE3FD55EA + 12181C69DAACEC69D27B9ABDEBA4F591 + BA2E4CBAA9C840F8B21A086F45572DFF + +Set 2, vector#126: + key = 7E7E7E7E7E7E7E7E7E7E + IV = 0000000000000000 + stream[0..63] = 7CC89FF6F0DF4C88343622535F876688 + 4FB2A27760EC4EA0ACA75CC5907DB254 + EE37DF12E5C89CB0A78A569279BBCDB1 + 21C34EFBBAC3311006A6DD01DC2836C3 + stream[192..255] = 179FE09EA2E5598C870E88089E4EE1B1 + FF235CEDC6EC6AF26D0291BF8C93524D + 61AB1A4B05E6F42CCDB876C47AD4BADD + 0A24985E732F6776334FB5526D89BFDE + stream[256..319] = 5ABE9B8F5C71853905A911E1CBC4438C + 9B3D4DD3AA8A38C433597C163BD2C7D6 + 6155466AB5D15ADDA22F959940E3833F + 822326EC9DC284D7210FD39D21485C62 + stream[448..511] = 1C29C24BD3423A43C4FE454E7E6788CB + 7EAE84A1AF400D412DC1F4C4D6732271 + 6F095F7A51D26C80BEA656107CAE9A6C + F997963EA4C4B9596FF091BDBAD2DD41 + xor-digest = FBD314825DFECC8C127EF9F61F680EC5 + 90AD16AB53D335530CC70195D42227A5 + DE01D77D93CC4B6B340655C06A43047A + 270F22477EE0E43DDBBF431AC6DD36E7 + +Set 2, vector#135: + key = 87878787878787878787 + IV = 0000000000000000 + stream[0..63] = 01DA3DC2C02DF6FF26DBAEFA1A6C2780 + A66ECF539527B0FDC73D4468798F7D80 + E15E0633C9B71A8A5A33EBA9E29F9035 + E6BF125417BE003D4DD5048C8DC64BD8 + stream[192..255] = 0EC0EA759FD67F2357836A9CEBE58FBA + 7064A368F36A0CC785B89DB0C8FBF6A7 + AD400C21FE7AFCFD382B140EC2E7CA44 + B315FDF79FFF9E0652802577AE8343AE + stream[256..319] = 91022C2D328706843E6F201B4A29E2B1 + B3B4D9E66C313264E14C5B017A89AC94 + 1179E4BDB99171263B628BEB92FC4FFE + DCA064715E9E3DAF96CDE8EEC377301A + stream[448..511] = EF49F76F7E9CAFE273B45C50785C2C53 + AA0177BB9F91CCD10E74CE4AF926BF9C + 767AB065F36019FB6755569ED1B40AC8 + 20D00FE052BE8DF23BC472D8F9AAF68F + xor-digest = D8C3912C25C656F81E417B5F94898EB3 + B0D60C47B9F3EF62E11C23E4F31E327D + CC65EA914584DCE5F659D768112C478B + 7786002CFDBEBFF86BE39F0B2FEC53A2 + +Set 2, vector#144: + key = 90909090909090909090 + IV = 0000000000000000 + stream[0..63] = 6AB0802657876C8F7211B14CE05E7802 + 4AA6D1E5F974815D398D7BB9E16855C3 + 2FB8896F57C43828D1AE034BAE3F42D6 + 1D006022C71103EDD1125CC5EBFDBCE0 + stream[192..255] = 88214677293AB58CE7741E6620E7E494 + 87BE9C2AC25E1BD86D9790CC30925DD9 + BAEA934BF1B66DFC6ED59F277FB73AE7 + F061A9A755732AD409793E71DAF33D2F + stream[256..319] = F56466340AD5F9652852C4A6C5419788 + 41055E5F6101880C742DE820DA34EA22 + EED5F9F25BA1654407469BCAB70D33B4 + F5061CBE97A915A78B6E8A915CD34343 + stream[448..511] = 301B4C0D28CE2A00996031B076FBB20B + E3646E80760E163D22A2600D77F63AA2 + 3F48FB42AF20BE33B5C2CC0E0BBD40C1 + 5375578FA8A3005571C9B3F58381B250 + xor-digest = F9F2779B49CD6E88D70188E3A30B0269 + D7B548DF0546B4692D293833EF7BBFBC + 10E1EE87A00F498249C21845F86DB25D + 6EF844DAA40E0B8756C607E442C33956 + +Set 2, vector#153: + key = 99999999999999999999 + IV = 0000000000000000 + stream[0..63] = D6D25A2BE87898CE1FECAFCE8770B121 + 4C7193240939F29545F76278FCB196D5 + B7D9CD12FC253C495BE60E0E3707438E + 2CB54214899BFAC8F5895AC439D29F25 + stream[192..255] = 69E26B3E0B2514D7FE1F39A4B81E4C8B + AC55B40D200795C94936C8E2BA2E2E7F + AF46865F3A9E4883AB2A4D698BB8D817 + EF62F41E660FBE5F070320C46260AA6F + stream[256..319] = A8322CD98D7D93A02A8E18360DEEBEBB + 1A01E77457DC39B1C204FF96E553E2BC + FF1DF66F6E733DDC73C54A71B377D9E7 + 27E8EF96BDF34D1184112CC7481F167B + stream[448..511] = 10A4BF8ECFB25198C1BB5D3EA5461818 + 4729D59EA85315C4F04138D7C9943112 + 8EDD8736B77EFE977236796FD19240A0 + BF71B2391E90BB4AFB530A6B80D8794C + xor-digest = 9EA0AB5474C153C83DE6860C9D9B4B31 + B245327E28E99CA5EF581831B4EB1CD9 + 61B215AFC665231AF59C3E2462D8ED1B + 618D754F4A2F2F2C8DB8667439D5A152 + +Set 2, vector#162: + key = A2A2A2A2A2A2A2A2A2A2 + IV = 0000000000000000 + stream[0..63] = EA8BD0720E569161E9BD399691518E7A + 54830A6B8EA55FA00C651B00B1F1EA2E + C68741910B8F0367B7987024D807DB8E + C7015462E6B53578EF129EE67417BF01 + stream[192..255] = D6057F137D1FC24E7F0A34C51D9C0A0E + 823C26339BCDBDA90FC219F582B15D1C + 42B0E41BCCB2643731EA7386A3D51E88 + 56155010EF82099D8EABD5206357A3CF + stream[256..319] = 0E46D1C2F449616A27005A3EAC76A4AD + B274B9D20BF963ECD159BF1ECEDD8E92 + 8196D33CF6B95116F783BA68C3964B61 + 049BEBDA36A15F4AEC8549A20D7E0AFF + stream[448..511] = F7C97CD9198EDE554A0C10EB6A699831 + 7626FCC74E0F0EBAFCDA93BBF1029505 + 2C10C5AF8C7C805E698FEED1474E59FF + F7CA36B22BC3B76719A87B69042536FA + xor-digest = 066BC24CFB6B12FF98BCB14A03F6FB96 + C5A842181B57E5AC64B13905FBDFDFA7 + 6A69995D10FDDE6136F71421C94F9261 + 123A7AB94A618B53F5B9B2B9499D32C4 + +Set 2, vector#171: + key = ABABABABABABABABABAB + IV = 0000000000000000 + stream[0..63] = E2ED9461B719158E3F48D2D8CDACA1A1 + 3626A0BF92ECC9AB9272DA04C284A649 + A228B32C4607C6D0FDA518ECD5D9548C + 8044DCE2236F0B9415BEF8BB0E414EB6 + stream[192..255] = 033454A28BE92FCBE564CAA7F89FE923 + C4806D4FBA287536DA74F29B4F359C81 + 2A7F7038A675E1139B0510E4181AE169 + 3A412C55DC8D2B106FB690DD7B1B0998 + stream[256..319] = EA4C80A27131E734D426AB240DBCBD05 + 0158D3D1F2865CB2C029BDF5D0A914E4 + 5BDD3DC8F28FFEBE3AD98090A6754625 + DBB84D9C2F36EDE755967B649EE37075 + stream[448..511] = 48AE58F9CF8D2522E7E6541F36FF0720 + 50E5F8FDD173807BE42A2D0B0B859D5D + B1570B180F6D9F861A7CA19A535858B2 + EDD7FA939C0B442DE3B8A5D74776C0B0 + xor-digest = 5D164B4F8E2911D9D192FD8C6B837869 + 2401EDD92ED0A4463D61A8134C3346EC + 7DD224CD632FF2BD8AABAE5CB869A6E9 + 8C58FFCD372FF9E9216BB2951F77DAD3 + +Set 2, vector#180: + key = B4B4B4B4B4B4B4B4B4B4 + IV = 0000000000000000 + stream[0..63] = 736640C555214B9D30C268B8B651F614 + C8724314624A4FDBA75D6DC8C15DF93B + EB80E8325218EA489128BBFDA19A6413 + 9510DE9B6AC006DF3B29CF7A673016BF + stream[192..255] = B6F45E71ACB33ABDF77ABEADABF50B19 + 3448ECEDA50CD70E9AC05F3F3860C9E3 + 47DF93AAC79CF2F69A9E675BC99F3990 + 822DEA02B57333F63B79D92A06D23FE5 + stream[256..319] = DFD0B42211250AE2645006864CECD6DA + 89A57B978F57D79E50DF883A49B88D8E + 211CA69518B487C22A96B010CB92901B + 2B8A4196EA1086C8BF306F8BFCDFEAC4 + stream[448..511] = 0CC9D87CFDCF2F5094BB0BC7959FD20E + C5A86D0B4F1BB6E7E46B91697300CF34 + 87C5C2CFC651079C3DFBB2B17CF98FA9 + 423EAD13D975B9D69D5A919B7F59AEF6 + xor-digest = 6359A47FECD0A662A367B233C012F1F9 + 1F0C0FB5642151BACB3251E4E26E75A7 + 755B6184C98ECD10F90D03C817F6E427 + 63FCC7E807CCFACC4CF120E0496077DD + +Set 2, vector#189: + key = BDBDBDBDBDBDBDBDBDBD + IV = 0000000000000000 + stream[0..63] = 7FE26D4ED762AC9D9C1D45DC116A393C + 1C98F3F7181A8109475C97AE3D5FAA38 + 1F8286A55A7A9A7EAD349EB0354E8914 + 90F7EE0C5496E3FCF217D1E71A28638A + stream[192..255] = 06045815FB8B880DCCE9A0FE286F7467 + B80290BAB8389E7CC6EB828DB1CF1CA2 + B471CFCDCB7924172FDB6213E77A2155 + 537F79224E3C340C78C5B9E4BD6C2803 + stream[256..319] = C4BD39FE0A1E4E531420AC6BA1217298 + EFA81FAD06881179219470B1FF1F4966 + AC09CD84ED67A3014C988639C5ED7E8F + C7C42651545D2946C476E79096DF676C + stream[448..511] = A1872E9DD2355AE77A36987FEF290CF2 + 8F5403ADE6867B7A658C156302AB4C63 + 18BFEE598F33D8AAE877AD773ED3D78A + 82E534F17A8866DABE26B227B3B2098A + xor-digest = AFEE3A56B281A6CE4E9C54E80BA36EA6 + 0B1CDADB185DB72EC83D2E67A9197236 + 842758D71794F88E40B1C7F31DC12C5D + 49B00912BF5708FE2EC812DA46E4C6F4 + +Set 2, vector#198: + key = C6C6C6C6C6C6C6C6C6C6 + IV = 0000000000000000 + stream[0..63] = CACCB9A2E28AA22B80634BBA8572F27E + 8BBF72F76F54FDF93F6692824AEB1D35 + 965AD35ED01571125E6EA8DEECC21290 + F530748CB2B43DF34081A93C8BA9F652 + stream[192..255] = 443A382587AF7B5DA460EAC09595CFA6 + 2917D25E1F298C739D23ABE74C3DFD6D + CE8F32DD208439BF04E1694098BD8C66 + AD5E683F008588ECC6CE51B376DF172A + stream[256..319] = 7C6762465EF13B387C5E6893A601F723 + A80C5881B0E909EF3A87A427A368F6A4 + 0B4CEFA0645846419F640B20BF1916D5 + 8E9932F55E71831F84EEF6ABCFE8162F + stream[448..511] = 417C31FFDA7823EE7F99C19E6340DA3D + 72AA1D95FBCBF9426F77D4E09C88FDFF + 44A2F55B62458E7C713A7845FD8E4D8E + 9581E9AA9089567926F7A8941680BF17 + xor-digest = AC912E896C6FBC0C6CD151955D703A08 + 74579E135D2F9F499F33A0E6D6236B43 + 3EFB6BE44EC2EEDB06DABB503ACA120B + 7AB1D3224C06C8394E4BCBB27CC7E777 + +Set 2, vector#207: + key = CFCFCFCFCFCFCFCFCFCF + IV = 0000000000000000 + stream[0..63] = 91146F1605C9F8B0B1BAA71E77C660BB + 77846361F43250C1F7AA9B5613E3928F + 4D3AFEDF6A489CC471D337549134FCCB + B560A99F275BCF8604E039A338566E32 + stream[192..255] = 955C6ED81E1925E3C777AB942D6DD36B + CF81DF2DDDFEFB0BFB2DAB4159B3170F + 523A40C626BC22CA4CE7C332810521FF + 7ACB370CA30007AB1B85602427BE348E + stream[256..319] = A0934F52AF3E20D4082D734CD4D5BC3C + 223F0B6ECC90C89FAADC6DE32FE30429 + DB10CB61045116CE0F5B2582C3B12643 + FC9A13F592C0516A503EE56B7B848A5A + stream[448..511] = 7AA95A6CD6470FEDD8EDC44B6410A532 + 4FD294F369263CA729F52DFFF4C004D1 + 5A8B57647A48B6B237EBACB1F150AF1E + 837FB9E11161D3C2E2042C2C7DBFF922 + xor-digest = 4BE3FA3BACB68C2D04F4CFB7FFAFBE9F + 51DCF564AF201D8FA801C4728A419213 + 9446CB68D8F1C5091B2AF4C32A0CC4A4 + 623D39AD9979E89F9C317B2D65200F7D + +Set 2, vector#216: + key = D8D8D8D8D8D8D8D8D8D8 + IV = 0000000000000000 + stream[0..63] = 9B452E88539B47CFE4ACC7713C3CCB76 + D15BBBF36A8280917D701A9A516204FF + 0D0A21A38E6221E7E64F416A381FE6E0 + 48FADF96ED9E5599F5C01D97D3E2C8FD + stream[192..255] = AD8FFABE68DA9F61CE7B67D11A873B03 + 988F6B6C385F61455F2CB45DC3CC0893 + CC7484491D0AF1C470E8CFF58F70FE70 + 173E85EE2D67B73DCC9E7CB6550E42E1 + stream[256..319] = 00A2E750AF680E6A61920D9BA674EE92 + 664FB5282BF44C0009A0F9FA0BC51793 + 6AB0295A54E22EBEB9432D9CE5D518C6 + 3F2919EA615BB76853205DA3FE61C011 + stream[448..511] = BC3AF274262DF0838D3CF9F6DC4B825D + C6DC120BE17E930FED17C4AD18C7E98E + A129CAB3AD036DB2E2B059C402F728C8 + 5B219F77A8FB74B54FBD7D145DF4547E + xor-digest = 6963342177EEC9B691B5C82B480FED89 + 81868AFC788E3573DE62F2AE9A9557A1 + 0C5F39B20DC9BE62B60AB3DED4C3603A + A956729A3890232836D1E995D34580A8 + +Set 2, vector#225: + key = E1E1E1E1E1E1E1E1E1E1 + IV = 0000000000000000 + stream[0..63] = 1D34750D13D4C28BE03D95688A98FB00 + 0AE065F9289E5F48E070113A1FD2A7E5 + 7FDBE7410C40F4D3924032496F069BD0 + FA9ED7241632AB07F312D8FAEAC31C59 + stream[192..255] = F1DD677F3711E26C4A276874C73726C3 + D356AA8E6DD34951B6D5EC504B054DFE + 29114CA15F214775D56BB7B75200D152 + E6E9E44A18CB00B4FB940D6C0AC041B6 + stream[256..319] = F8E17AA6EE31FCA075CDF92478059A99 + 93614CFCBF793B0B93577A635752C419 + E709CB07913C3AC179C693A5C225849B + 7A40CA448D9373861A32EDDB2033F45E + stream[448..511] = D3149B0B62D2B9C5CAF5080CEE9FBFA8 + A3B7E593097D44735D7671A1F473388F + 3F27A13487064E90B9DB7E698E699237 + 22E16D2AF78C84F8FDE961B5DB0DE08B + xor-digest = 89CEDC5963E7BFB2781AC34616F83D65 + C2E8D306FBDA58ED2023D21034723439 + CA85D73675549E97DEA371D3DA14D725 + A5B1E15C93DF72F783F3FE17A7DBE455 + +Set 2, vector#234: + key = EAEAEAEAEAEAEAEAEAEA + IV = 0000000000000000 + stream[0..63] = 14B1062591D38C06D50B0BDF05BA594B + 8ADF2598145594FC06AEBBC3C1803A9F + 72B6D3A9BA549B35E01DC52A8B14EC66 + DC70DCA3BDD9728DFA030EB1BC8C3EB8 + stream[192..255] = 04E59AEF8C0D71199BAB3BF84FA0672B + 515BF4C2CFBA0A718DAA99B1255FA660 + A5C57BEFF43EDBC769B8B23662E07C22 + 29E1202F1713301A076888B606CA8610 + stream[256..319] = 51D545B727FE63FB47D00584411D7496 + B8FD1057017D35C180EA732443D8FB0F + 714ABFB8C8AEC4085F461C323F43F631 + 1B3110ABD2951F12BBC702AEAE7D6353 + stream[448..511] = 1319E7BDE46BA59746EAEAB2A4AF6D05 + 647DBC990C5081F0480A473DAEA3C915 + 3FBA464811527D04BF8073C0B07D6D99 + 9D6E8B8637710DB4D9A7019D4303E7D0 + xor-digest = 073D2DCC504C8C939C479AF52E183E71 + 0C8271D497A589F0B8130872B0F65F1B + 652141D6C22E2539B3212EA0B67782D1 + 87E757CB71C1C41C271E09B3A8B8F061 + +Set 2, vector#243: + key = F3F3F3F3F3F3F3F3F3F3 + IV = 0000000000000000 + stream[0..63] = 6F91E50A1812C42C60711F10644DF00B + C2C6D0EE78B1C0D81E7FFD6AB4E2C61F + AC4A3ECF2C6765693CF412E704355118 + 6982F0051DD1820BF9A8E58511B4F1B1 + stream[192..255] = 9506812219BC74DBEED7DC5044D6D6E4 + 0A8A95A0296365A4A726912178A3F6F1 + 64DCEA5E2A6758CF792955D08BCE4ABC + AA7D26C446E71FF5D329309FC4D83D66 + stream[256..319] = 547034A7BB80E5FCF2B7D6CB42D434C2 + E30658A7A2059F3F0A3AC85219DA3D53 + E98EEE123A10B1577B3CF39A624AD525 + 62130A32DDABBA9ADC7B43C8A9C3E052 + stream[448..511] = 4CD2E16C57CB5D4D308A0CEE5789CF93 + 03B966C0507BF124B892AEDFBE452A8D + F50D4F0328BD61093F05395813B8EFFC + AADF15A66ED5403A2AF9260F5AAB50D0 + xor-digest = 57F92994DA4233DC5AAF5A83E0A45BB6 + FDCF501D2E0C29D42BA013FA25C06F7C + 10E2C59AACA7FB7C68F6D13C452F328B + 96A5FCDD11ADF60805E977E2DA4168C1 + +Set 2, vector#252: + key = FCFCFCFCFCFCFCFCFCFC + IV = 0000000000000000 + stream[0..63] = 0F5E42876722C200404CCFB421C0FC7A + B78CA298FFA9243FD76181FEE0C806EC + DB28BB296EEAACA1AAAD27BC5BC52A25 + 7779E10A1FB2F6D1D62DC8D91BA67FEA + stream[192..255] = C9A3CC437DDE342EB811CC732E069C0C + 711DCA252A71101FB5575A9157612B65 + D9FEF435CC7314956319A97AE66879EF + 01A56BB7DFAD6D4049A3F85A28E946AE + stream[256..319] = 6B4513126AF0707F802642D11468AA17 + 600EE7D57C5B9607F101AFAC255FBC81 + C669375BD839CAB0F59C47A0E64A0ACB + FAD35CD75C896157B51AEAD47EEE8508 + stream[448..511] = 035C46D2F3214D41CB87CE305CB20B24 + 433C41F9EA4A4BA0B8BB2A5575100DFF + 5741E3F58BDDD5C80283D9A2E35B956D + 77E412C5CD7E647D634E1B1AB6D92172 + xor-digest = ADFA83A0BD89255AFA375692F6FF4060 + F2E4F6A9519CC4ABA1B4F1955D016115 + 7A93FD624EAE206A4E8F4299F7EAD78F + 24DA856DCB1E94BF94FC11B55C4A3667 + +Test vectors -- set 3 +===================== + +Set 3, vector# 0: + key = 00010203040506070809 + IV = 0000000000000000 + stream[0..63] = D2A8740BBA6FD9067077F9AFC0C27D40 + 32B6AEAE50C42ECEFF255C584C0143E7 + 8CFA4E3EBE03074F23D762D0A7563521 + BE755B2166CD920EECBB5DB84737FA01 + stream[192..255] = 3F6A4CDDA613CE64B1F9C9AC662E4AB2 + EF2751400CD6A0A119CF0BE7B287E727 + 536D18D953327B2D971EF9F34EA28762 + CD062B7AEA83C1AC4363333219F767F8 + stream[256..319] = 44D06CB5157B2A8EE1CEEBC6DD5B500D + E7FBF83F189DFBE822042F85D814427F + F03F108FDB0989E7693257C863947712 + 8BF371CAA422D3306F6CDC1E03645BFE + stream[448..511] = 30CD0B54E741F4CDD6E9B5CCAB184D7A + 3453C03D4158FE7CB8BC92ECB66811C6 + E560C62CF1ADE69BAE308ADC0602667C + CADEE71244968844376FBEB113E73345 + xor-digest = 44DFE4D6F43708EC245C7EACA3B1B20F + BFA9436C7B2DC676457C932CC11F3960 + E5D9852D2F9FDC77AEA2DDEC91CC2E1B + DE326CF4E21ED9380983C897CDC005A6 + +Set 3, vector# 9: + key = 090A0B0C0D0E0F101112 + IV = 0000000000000000 + stream[0..63] = 1849D8F8D00D4FD49CA825C40654B49A + CD75DD143661F099A12911E14AFB9A35 + E6A19303809DE3B5956178A9CC6E29A8 + CC97F1A3C47AA3360B4819ADDF4FFF7D + stream[192..255] = A58AE7EF31280AB14224B25C1BEDEB0E + 08BA7CE89BDBFCF3EAE875C248C3203F + BAD73B2239719F7392EB156EB2CD2E67 + 3D36D15B6FE94D92D39B941A9993E91F + stream[256..319] = 76FD514B6E02C3EF97203D3C65109BF9 + B65CC60F5301F125FD13A88C3EB2FB7D + 92472AC82FA0D41B1C24588FB58B6FBB + C48F549F8DA556AB5050A40892AA2150 + stream[448..511] = 70D9531FAED799F560491757220DC8A9 + 92EEC0D6C745661A04D0AAEEC515CC3F + EB318E80E18BCF55D5EF9C22EA9EF195 + D82E4BA17E676BDBD6F22C0C5747FE7D + xor-digest = A40AD16354D565E7E7D4009B0A40DAB1 + 08C5E95E3DB2680D0B4E865257C474CD + 599DC5A6C9907A1DE6C2678AC94228EF + 71BD924EEDFFDA8BCF914E8791525B4D + +Set 3, vector# 18: + key = 12131415161718191A1B + IV = 0000000000000000 + stream[0..63] = D24D36A07F26A03280CE4C2A671FC7B6 + 17E92D231F649128EB4D17070003C8D3 + 65DA16662EFFA87679E6C4E557F84E12 + E69FB65A496394D35DECBC9714C16BB1 + stream[192..255] = C7129A32FE9B6A2E29BCE6903D101085 + 3F39E0D7F9CF7AA5EFDD0A6A7F1AD32F + ADB3072BC10E7695EBF35AD3D462153A + 00448FC7DB068978A7FE75394756AC3F + stream[256..319] = EE85884D8FF9E1D1906222BAB49CC989 + E8CB6FF872760A17C7186F25ADBCFF01 + 849E960625D6B21B6789CA1AB6F676E5 + 944C17F3BEDE9EBACA5336883ABD4FF6 + stream[448..511] = B2A5884F10B45AB018EE03DBD6775753 + 87DA3180D1E12BEC63615A89C200B698 + 057F09C60C21737AA68B9599451150CD + 72C0E09BB2025E7F803C76A34AE46276 + xor-digest = 78A29D158AD7EC31EE3BA621687FAA02 + A60A1EDDFB1058BE462C337321E5978A + CE98C374C2BE605728EBCDF2B98C14C0 + FF3578D624F7B8B2BA1241741E4ADB36 + +Set 3, vector# 27: + key = 1B1C1D1E1F2021222324 + IV = 0000000000000000 + stream[0..63] = CC84F164802715C020425A7FF64C1A0B + 033D52B940AC2CC91F0737592951826A + 76D190B92661E4FAD4750451D6E365CE + FF041FAB358A09B5DDDAD4AAD6FA460E + stream[192..255] = 94CD4537F903E8DC7EA41438271E46AE + C274FB1B0E406F023681EE4364DC2663 + 5BECCCEB361FB71D64B8EF76B3525F12 + 9401990C1189B5B9A703C05CA8ABF4D3 + stream[256..319] = FA997F3C1723AAECE7E77009F2E3D4F2 + B272EE894C93CE45B923A25EA70C282E + 0F5A18AB1FF34F8D408BFBA1DD1851FD + F09BDF0F6F511DEFC40A0F59C8EE51D0 + stream[448..511] = 63DD4AD292C8E24E662CBE2BE342805F + 7968F4032C4C0E7B1A105802D9A204E0 + C71194EFD4227539BAE677DF3B8A00DC + 36170F3416955FE116B33AA83BC0B8D9 + xor-digest = C8F949292D545C92443F5D27BA0E94BF + F14EB962F43C8401389FA9B7D627F1C3 + 8BD100295AFC5DB3415FB5B2C86505C1 + F459E40F39A2B26EB2436F8826B6F73B + +Set 3, vector# 36: + key = 2425262728292A2B2C2D + IV = 0000000000000000 + stream[0..63] = 2DE8D0F2BC8176D633CA1052E1554C4D + 54A2118E4776445251193CE6C1A43959 + 4DAE1126EF6A78E62AA19B843BF60DEC + 261D6DA1EA64C1449D83E83D29267747 + stream[192..255] = 567DAC9BAD7DFC04610BE6142B5EE022 + 9CECE20AFC83FF3BADBF85D814B17E6E + 3A41075146E1FBF757F76F525EC99378 + 6ED6A1A3C5F686421A4BEB17CD6F4C77 + stream[256..319] = 4B947774271656982FDECE58AC358B2D + B23F9DD07AFBD98D4F8A4F25653EB767 + 30BF17FAAB9EDB1305AC31E1A707DD50 + C4DB6DE759A73133507F026C6FE83945 + stream[448..511] = 8712F7AFF67E07781B7350862A1C7005 + 64C65A6C5DA5B586B42DFA75FE14DB9C + A4A882F17238AF574D9E2EEDCCB57D61 + BC1591CD1A4D103F69657E3AAB251CD3 + xor-digest = 95D8769D02F8B788841A22C78687F950 + 9771EAA7B8CAA248629798B6DEE49B7A + D3C124C0B1F71970FD1770E86D58A78F + A04FA8D87DCE49BD1138E606D6C507D4 + +Set 3, vector# 45: + key = 2D2E2F30313233343536 + IV = 0000000000000000 + stream[0..63] = 0B4A173B35C6705A4DB98C4D0FC70B8F + 4C1EB77A823B550C296770F2C0CEED87 + B47B66E828CD39723663D60578C676AB + 39AD5F3BE5D2676E685C1143BFF19A52 + stream[192..255] = B85128088D97766345A23642655DA385 + 683ACF6A99100268871673EE280C7468 + 9FC6A165179FC774DBA28436C472A736 + 7487228D5606BE4864A2A185AB58540F + stream[256..319] = 6CDF8223648D818C84A98FA3869D769F + E46E60A0C5809309F4604CD3EC28453A + 84F9373C788397701C5573EBCD6E3F2F + E9A89E037328D9BD3B38512346E09FE0 + stream[448..511] = 833DE70D31769D4A8A0D626A88A7EE03 + 480E74ABB8AD2CEA6C01FA994278B01D + 109D1DA4B58352EB98749B5CA064A62E + 92AF98DF4B65AD83855E90C4455F88A6 + xor-digest = FD84F65088C9A9E12C05E8044F70D7FA + 941B8CBA46FA563DBAB51AE4509BB50F + 69768BF5E9D5103037D7DF53C748FDAF + 9E49DED381751E6F99A18DFA4F0B9F2F + +Set 3, vector# 54: + key = 363738393A3B3C3D3E3F + IV = 0000000000000000 + stream[0..63] = BE006EB16B3554B2F3B44E22F6FA657A + 3567A9B62F96133F300ED2843AE6E524 + 7BABD8521C2099DF4080A51B022BC53D + 881BB63766150D26EA5258A1B4412FBC + stream[192..255] = CD44882646F62EBB42037D4D3895CC56 + C010DE5A0A21E233E520FFD9BA579CE7 + 27A5E631D94678D1CD84E069A9B64A63 + 50C6CFD042BBB924E02F118324019ECB + stream[256..319] = 84FF2789A1DEE20DD3BA5BE9255DFDD2 + 9CEA78155F7DE266AE4BEE5C1004D947 + 31B44B415997B3289F57D330E8147AF6 + 51AFE60CD2C68C4EA0EBA6BF174BCD47 + stream[448..511] = 22127164A78995D7EF9E6E1BC9C7E64F + 7B2CCD2819C165DF422BF33954D48F6D + 6310F63C073F45D7AC60F56D8C947802 + 2D2FA529A214E73DFCB8692DCF4D278F + xor-digest = DCC5243EF25FD1385CD9AF2C6C9267B5 + 86B33BBC4B7ADB45FF2C1496A87D8D7A + 38233E5B8C466D89EB7A46A2527FA2CF + 816A1C658487FDE0558989B994DA7D3E + +Set 3, vector# 63: + key = 3F404142434445464748 + IV = 0000000000000000 + stream[0..63] = 6A3E215FD1A2A55AEC4C84BB216494FD + 81C17279D131527A9FD4F3B04350B0C7 + 365B375827950AD45EE8388E00F8A8FC + F021B3D63FE031A7CF4E8D0EB46B0155 + stream[192..255] = B38EA20CC97B8B4F8EA02ECE132370E4 + 677B0E486997CE6E33CC65A8AA26DDCE + EA495B5D56EA9907962FEFDA57D010DC + C93F9482966578762E460C8B72624E2E + stream[256..319] = 06FC1D28F9F5BE1D23E1F706F20C748C + 8B459FFC5B2DE4D49FD57E2BBCE4D57B + B3BB70F078CB0458C76307E8843D1A4F + BF6F08C8D766885AF0015B6C7EE7FA36 + stream[448..511] = 64D70BFB3004946C465646B4961B0D22 + 80B8EB7D7CB2572B68DCF6CDEE211498 + 4420DC18C2CC85A3C7688BB01DA172E5 + 00E856EF4C27F27FF0E504DCD702DDC9 + xor-digest = 1F5A96CCC25A478BAA3AB2EDF5E592D2 + E46F4E2A5572585624F4EF8DD1243423 + 9E5C4671A819B6701BC1FFBCFA7990DA + 4B9D29252D9AD51138F3313A0A879282 + +Set 3, vector# 72: + key = 48494A4B4C4D4E4F5051 + IV = 0000000000000000 + stream[0..63] = 863AFB906F2A73DFCADFBC47EEEE2031 + CEE0AF8847777825AFD141D8897A9E96 + C5F9284A391CCEC34A199EE8228B0B98 + 1ADCC859B9008754D3D0B99F136EF4E9 + stream[192..255] = F0089C174791826D8F6E9454192AB235 + B3C906C6A065741E9B9B04C3B280CC4D + 2B835445A64AE2B5668E6EB2AB050D49 + 9E24090DC475A775AAFB10CE16F18E67 + stream[256..319] = F256EF10D39C854849A529238AE82E6B + 1F3D0C2E66E0553DF9375BF8CA4B2F04 + 45B4765CE670B954C956EDE71D3B04F7 + AB2AD54520A6CBD16A0B0D9505FE9652 + stream[448..511] = 52957523B15EB5E069302CD5EA577EB4 + 9BEF63C3EC73D90688F3EBA77267E8FD + 4120A2C8A3901B8F24928C78BFD88434 + F415C828F39BA1ACA07BFCB3C22DFC5E + xor-digest = FE5CAB87CB43CEAC72CCB5D75F0294E5 + DD9A90B1443B3CDABFF1E3F914685D82 + 169EC54FECA2EEE40F19BA042637DA98 + 6055034B173D0D66E2A08069B8376389 + +Set 3, vector# 81: + key = 5152535455565758595A + IV = 0000000000000000 + stream[0..63] = 252C4021B2FE2C6176376D4D905DCC59 + C502884E87E2E27F54AC46F37B62234B + 46C7863F75438884DB124A3AAC258D50 + 611275FFC8F20FB94E8FC45306A7A86E + stream[192..255] = BE4435F219F43CE50EC4F24CFDC0D22A + C7D9CD7B02EDA38281D2DAC2752E7D56 + AA8BA4370C94312F409954DF4A0E13A3 + 5D766614DC7DCC9EE273213FB659BD0E + stream[256..319] = 21B9B862E703935C5D4BF1F7A7FE24E3 + F27B6A405DB9C5E8C1A0B5175F3B48A4 + D86E3D06F7A04B02A2FA1BF4F471C106 + 19DB8E2B39A21147B9D4A6931DF0F609 + stream[448..511] = 6DEAF9542B247878DCEFB592A6DDED27 + 26B7B4C3E9023F69D6ED180E9F3F612C + 955560AFAAB0065DE12A004F22424F3C + 43D134BB159234D1F1484E2F6B9A308B + xor-digest = BD0ED4E81169F8F8D9036A07CCF3ACC5 + 5FC831A94F407F4688584802B92542F9 + 3315EFEA6F6653BA21DFBF4C729FAA86 + 37A85689BE7C44EFCFEA37AA2DAAB365 + +Set 3, vector# 90: + key = 5A5B5C5D5E5F60616263 + IV = 0000000000000000 + stream[0..63] = 34E30006E62AF394ADF5042EAF6F8598 + 39F13ED4519AB0CEE2590F93D802011E + 1C1F257839054060A55B28BF157ED8B5 + DD8E54E92415AB12844CAF90498C2023 + stream[192..255] = 4DADB796C029D1728E2298AB5D01D636 + 5CB309D128B052B6484C933889183454 + 19161CEDA3C443DC9E3D5CEEF0D59505 + 06E057D209B38513E8FFD6584B4ECF27 + stream[256..319] = 725E71B657E6D0FCB72E3185AA375286 + E1CAC4A33B91C07EC2E61DC32C7CB017 + D2CD9560BD3E62BFB84CCDBDA83E3DE0 + C5E725CB19B13FFA86C273EC00DE65BD + stream[448..511] = C0F2C3F808BDAF9E456044167CCD617F + BEB57759C1E01A57F8F0DFC23DF5E695 + 48BB33C72C0C3F9323003B536CE221B7 + 7A57D28265820E936649AF56859E1BF4 + xor-digest = 961BBB2E186D03D6486AA6163EDACF93 + 29657AE5B919ED5FB975188E17E49974 + 6638D98112C1D3512E4C5550DE9BE5BF + A0CC30D33C8AE7E412601AA89D19FA82 + +Set 3, vector# 99: + key = 636465666768696A6B6C + IV = 0000000000000000 + stream[0..63] = 41DF606120C6447801EF9BCE34C659FB + 1855A59BF575379C34CA364D029C722B + DA107F619295D212B7E23F9CA0788F85 + EBA749FD9DAC94902943AC65C768B579 + stream[192..255] = 8C117EA9A699440FACF0716184416E22 + 55DF5B643DB317988B2036906D62B8B2 + 666ADBF2A439FDC21616B3BF654BAD13 + A811102FA193C516B62010E95B696CAD + stream[256..319] = AF9C7E9B24E455D5FA9C4B8B2089E32F + C63B2D5DADB5B8F84A4A565F4C69F2DD + E230FA99D9CEBB1891FE2AC1009A638A + 4B4283DAF7ED89F7C7E9D1C59E06F3A8 + stream[448..511] = 6D42E41BF7E783BA3E48FF0C66B42A52 + 06AC8979A03C7E3A006A3A942577FB7A + 293B1BFE797AABEDC4FDCDB808EDA005 + E26C4B8E76E3A8ACC234F47CFE0215A1 + xor-digest = 6A4BBA179543769E680C1B24A25CC4F8 + 2906BF1639D83A3078B78C950007D822 + 0B5F7719E5503F3DE1A089A3281AEBF2 + 792C9B65DEDA02F44374519DCECD0E7E + +Set 3, vector#108: + key = 6C6D6E6F707172737475 + IV = 0000000000000000 + stream[0..63] = 4D0E814EBBC40E61B330C8A4678DEBF9 + FCED0C71298E1159CB903DEE6EBDC294 + D9AC00441438441D61F61FE421C4F8A8 + 39C715B0A9082FE8921DB51E14B188DA + stream[192..255] = A2FF3C7294691E2EED33BAB8C3D0809F + A3BB406D92AE8FA7C4611C7C7CF9EE85 + 4DE8EBE85CA4E90AA9EC493226D379AC + FFFA3ED8BC638BE7F08451A1A1CDC7F5 + stream[256..319] = BADCE4DFE3550ECB8667BF9CCEBBA2A4 + BBECA954E7E60315CC548CAC138CE550 + 46991C8D86F1FF1D92E65F4F7544FF7E + 0AA529D2303392BC2A3D1241297D1309 + stream[448..511] = 91509BAA92BF2E7487831A72B17815A0 + AC6D0FFB3C5A1EF6E39B5AC6338E63C5 + E9D6BC870191305B1EBC331948B46E42 + 8350709663EFFDB55CD8B578551BA8F7 + xor-digest = DDA5B99D08365FA6A95DF31BC8A3037B + 462CFA1B9DCD3421F0655EB422CE07A0 + C1B1951E008C991CECF2F3393E75EF0F + 1575845BFF9B260DCC4D6AE1B1764C6D + +Set 3, vector#117: + key = 75767778797A7B7C7D7E + IV = 0000000000000000 + stream[0..63] = 8958E8ACAC755678CE2D4F5C482AD71A + C7AFE4CF8E5062555906EF8DEBBA30A6 + EBF09D9FDFD2ACBDC4619199BA95C6B6 + B145D084E61B4EDF02693DFC3DE76A54 + stream[192..255] = 9C421B6673A40204EEF6C6D998E4C40A + 9062073BA16927370811B89137B43755 + 3543BC1A1720AA9E2973991713B4FCD8 + 9B5CBB26DF6D93823C897AE1D4B5824C + stream[256..319] = FC9A521C3559AF8DBC2EEBD02692107A + 78F4CA24474C6BF9B9EF351B4654EAF9 + 98BB5002A254264D12406A3CB1BEBB41 + 1B93597A0CA794B5DA083913DDF68F54 + stream[448..511] = 59A00ADDA629C11AB94AAAD8DD4D667C + F6311EE5CD7F7440C01AFD7B2EED64D6 + AB5213D6DEF41170C38806B310C03C19 + E28B5564DFD5CEA7848ADA2F5C18929C + xor-digest = B41B2457EDFF5226D583447FCAC4C778 + 4EEBAEBECB87C4FF9133FBB3DCA0FA91 + 2AC857B210311C99C7B7847962811936 + 1E98EB073446DA2750EF26ECE3E09546 + +Set 3, vector#126: + key = 7E7F8081828384858687 + IV = 0000000000000000 + stream[0..63] = CAE3F9794BE605739E8B133E4DD97AE0 + 6D00780A66F1BDC3B856D178D263EC28 + 2EC6775E89B15A429307643BAD6042CF + FC248E8D082475FB5FFFF84EC5E2F5C7 + stream[192..255] = 7E18337A5FDF151F1D92328932710836 + A385763F62DA9D3B48470C6064474B62 + EBED8B32A9917D43C9D4C8F0061F9F93 + AC078A91F049258961C1708BE5436D58 + stream[256..319] = 8C78186BAE492BB5A3A8D23FB2763A5C + 5B01CF40C8944CD0ECBF028197D32BF9 + D58B39C2B658B2B23585A289B7C01485 + 95076422183E1A64CA977485F1056929 + stream[448..511] = 87FDD673045CF74D1134C1DBABE00E8E + C0D054835559CBD686409B6FA2A9EBB1 + 82ECF22B98ADD4DC17549669EC7E5AE5 + F8132D8F4951229849EEA7C5C5034478 + xor-digest = D67196035DD5E6660084F0E7A647B67B + 80C568186F52F11EF1C444699C89C863 + 7307526FCDE03DA470DFA78FF1B6E2C9 + 11316EDCB63BBA36D788AFB56B318BB6 + +Set 3, vector#135: + key = 8788898A8B8C8D8E8F90 + IV = 0000000000000000 + stream[0..63] = C204861394C3B27301D2B216AF74F01B + 36CD63EACC07A6FB8FB60971F3C4160C + 72E009D795B74B9F826B264DFC1FFB9D + 334CC9CA88C03009B6AC5ED59F70A259 + stream[192..255] = 387C70F9B484A4679C770431C27E7A74 + D78BF8F3DCB1E1F45826792FB1990836 + A217A25DD2D6394EE3D01FFF75F986A1 + 872A095C1C3A60487C40BF00CA6388EB + stream[256..319] = CB97C4F1F47DEB8BC114B6DFEFE05F09 + 4AD8FD77CF782D8724A0A4D65664B4E4 + 0BB39D48A5A5B39B059200E99F114BC6 + 1DD2F3C892FC7F3CC5C413E529B4DA28 + stream[448..511] = 5F112D2015F4A59C401A61F562895985 + F692A9DBAEE0BA83B2724CCD25FDB60C + 0E7A4044FAD51EE6F697961B75633ECE + E73A165DF380F24AA5268E50C7F63ABD + xor-digest = 5AB8AB90E211C14BF5ADB98030AA5F50 + 8934B463260BE7D66421643037A93538 + 4F0365301D3370F248A7D8E72F9DDD77 + 0EF33BED740826CCB3EE7B248EFD7F5D + +Set 3, vector#144: + key = 90919293949596979899 + IV = 0000000000000000 + stream[0..63] = 0972B6F8B7CEC540EAF230E2465AC6A3 + 05D78A9E5CCBB38A013F6674A36DFF22 + 7E292760C637629C3BEC82E56AB55090 + 3E3D559D1648462B8E2535E2B2132E3A + stream[192..255] = 8C58A4F1FE80260B3D7651063AA9D114 + B4BCA933C7741A5BECC190104A14CD14 + 725BAC8BAB1AA87A5F5927BFD8F0B5DE + 76622EEAB1096D1F6BC9C047A4C50483 + stream[256..319] = 2E8A6ACA920F0AEF25AAC1F0F1DEDFA3 + 1086BBF6B0F802215614901478D7DD0F + 81477279FDF2800ED67D42A75F06BFB6 + 8A994D87B726C887577A3869AD29F672 + stream[448..511] = 6E252987CCC7C791B21DF690599F401E + 087B415FFBAF1F9F91C091C7FB3637FC + FCAC355B186240FD569C50DC2AC313C2 + EA095622D41F708914199BF4693F27F9 + xor-digest = B6FCE84C517517514574EF3AA62FFEC2 + B21C6936D3DF9C5FB9A32468AEB16705 + 3B469F8EB2B55F7D7F7CB236B5810C58 + 1297DF3D601254160AD9C67ABCFC33F7 + +Set 3, vector#153: + key = 999A9B9C9D9E9FA0A1A2 + IV = 0000000000000000 + stream[0..63] = 1C35DA8526E84D18F9F319DBC6488548 + FFB3A460DE4C70E8CD95EF7C0A342620 + D76119F17C4E56B17239FC1785469A07 + 0AE68D917931F73E190936D0B918EE5B + stream[192..255] = 79718B710030C50910162D57FAC34235 + CE813E22E6D7629CE9215E0989B0EED5 + D9D87A7CEE2D03B5D02BC7B056D089AD + 292D192619B86F311E6708FE253D038F + stream[256..319] = F3F46BB2F3635213096AB29EF395F301 + BF8FDDF5418A97329E161D2B9952D24F + D6A95E518B524DD70F1D0736DD3E7F35 + 3766925D2E1887CABE494A0196C8922A + stream[448..511] = AD0C76547F1A1D3C3B38F2659F25C590 + BC8FF2C9FCF46EEE43FB83ED5174025F + 5437B093248629CBBA191AE19B4A0E64 + A7C71CACCE9A3B4F857648C630CB839F + xor-digest = F1F52CDC085FA57BB62C04945B48046B + AC5753ECCF4079C69D5C24D125DEEFA0 + D2D0BFEC24B5625D93E64CFD8BE45249 + B702DD45FB86A73FA375C598125DAE9C + +Set 3, vector#162: + key = A2A3A4A5A6A7A8A9AAAB + IV = 0000000000000000 + stream[0..63] = 412AB1D18E675AE9626553235CB4EB93 + 90694F9E1B793EA64EE1EBB9CA315292 + EE9AFE32827FA7993F355F026C874EEB + 6B89EF05D0EBE2BC0D8CC7CCDF04A177 + stream[192..255] = C04842F0FC1253A70192FD435A22A1BF + C658B54C448795ABDA5F1111435C85C2 + F988600D1CC56D1798132265D1C47555 + 502D8774CC4E808BE3009B6AF2E86FF4 + stream[256..319] = 162FC4E34488452A7596A36C12711A18 + F3BAF40A66873A7832817E963EF72655 + 2F39CF5AEF8973CBDFF3C505C77E5144 + FC85B40AD160D7C49842D5A16425E90B + stream[448..511] = 7770B56AA68C0F3978D88C5E33EB161C + AAA41977195180713055699FCB18430A + 4509C636DA2D3374A0E9206C4EF71E20 + 998C805B2CDDB3F5884E957587835CF8 + xor-digest = E99E2D6CB63B26E7018A4A8B01AF260E + 7E0007931F0B286D99A08B61C8C88E64 + 71094630888E0BF0673BEA78C727AC3A + 1954B31315E009DA2BAFFD337DB03858 + +Set 3, vector#171: + key = ABACADAEAFB0B1B2B3B4 + IV = 0000000000000000 + stream[0..63] = 01E759B71C1EB69C81580610006BBA1A + E6962D7ED9FB6F804611D20DFBBE47F6 + 2527B3F8102876C5467CB4844723C979 + CA4A91FDCFEC8637578F7E46B8301F10 + stream[192..255] = 25E2411C0901731651D5CD30916D595E + 2F56FBCDD249799AD1A464A3A26C2A59 + 6EDAC0D356CCD12C102263765C1B3C8D + 3FF3FF0ADA141200AD39811097AD2253 + stream[256..319] = 2596358B166C08186D23118EBCBCC92D + 8740884796D7699510F9DF45D1A99C24 + A78407410EB834D3CB3BCB68827F74B7 + ED55824F613A7B158B24FB027AC01286 + stream[448..511] = ABFBF454EAD08D9BF2FA964E92488204 + DC89B8F9F8BB6D6F5473696D29259FE0 + 10366A157F0E5486F25BFF7F8259BBE1 + B2CB05A1AF1FD305F1611F5C4E41B042 + xor-digest = A63750A1C1B9974DAD21022828296905 + D044E89E42BF9E1B691E2791D196125D + 94C374958F12949178198AAC02B8DF4E + E83B57B030D364E53FC76B0838391FBC + +Set 3, vector#180: + key = B4B5B6B7B8B9BABBBCBD + IV = 0000000000000000 + stream[0..63] = A1C1EE5C63AB5C0655EB6957C4B6C846 + 585A432D6EE6F42661B4EBDEA363CA1E + CB9950BD1C59B8D75C1362E0768958CE + 0047715335DE0ACC4228B8EBE4017036 + stream[192..255] = 98BF3045F88AEDE0E1FB1399EEE583C4 + 5514A15856156465FC00FFA468108F7F + 831A2E91AC1CE4172A3846572FB8A10F + 94DF6626E04058743883A723989CEFC8 + stream[256..319] = 7838BE9626C649F52D31A615312D41BC + 2193A76F0E3A5877F907F1D352A7BE6E + D3E7405F8219A738CE5D50A51DC794C3 + 1D838C6BED79739DAA45011DBAFD950B + stream[448..511] = DA5602BAF84EA74FE4E1D5143E43E6C4 + B15135B839C82AC85A4C79D3E2B7705A + FCEC707E1E1E7DEABBCD50F8794DD328 + 9FFC20E277FB9C75B8785C534D904BC5 + xor-digest = 76D8016BE212209DAEE4784D145CEB9B + 4C8D477E2E1BD6A2789A29DA9F5992A9 + A723D5A54BB072DE3325345E30B3583F + BDA863B3E8B389C08255D9D95FFD748B + +Set 3, vector#189: + key = BDBEBFC0C1C2C3C4C5C6 + IV = 0000000000000000 + stream[0..63] = B7BE8BF5D02E37871E6257092232E6B4 + 7DB4026F9F5227F1096731FC3CD66AFA + 9B3D04520BA87785C43F401F40302758 + 194BE49CA8CF00A58D991F40B9662F56 + stream[192..255] = 2A86CC644422B5CF4788BDA9A146730C + 8F35E3A6F516AE98E0BD660B5260763E + 1C2540CDA27188C9DBFA70A75FFEFF36 + F0E7F7CE3804F18D734255C3978DC3EA + stream[256..319] = ECBF7B6BA3BBDFC008FEAAD039C9E939 + 7DFCCF1CC5B4DB927DA9110BE6CDA33F + 8B36356F87642C25C5A7E91232632EB4 + 025DAB487291097F1BE0F35FCCBBF40A + stream[448..511] = C647143F922F0F94F9C6E0B784E71523 + 8740E4781A39C7B793D2D5C31769AA79 + 5C3999D019AD40ABBD7FB6566FDEA342 + 6668E00D50E3767917FF8A356E2D8545 + xor-digest = D729267A90098B72089EA753264A38AD + 9F9FEAC27336CBD3C627ED54F0E95A23 + B93A0B15FAB3035090EE9A74C8AFCA40 + B9B3F3766B327C3542F622ECFFD517EC + +Set 3, vector#198: + key = C6C7C8C9CACBCCCDCECF + IV = 0000000000000000 + stream[0..63] = 10FBD1336E81B0D149A9FD88CCA7DAA9 + 17CCFF08B8B1D3675C27FD6270130134 + C24847ECF7EE5C1DC02E6E6634FF1EE2 + F0889F607F2AB072DC81799B8B861D4E + stream[192..255] = 6B118BD4A0BAE716C08E84318F60CDD1 + 618AA6B0AB0464B6EE2CBA009BAF60C8 + DDD59B28AE94EE94889897333F319C3C + ED8B05827F9A8A08124B9A81DAA93D77 + stream[256..319] = B31739639D6D06C0793A72EA265D0D69 + F5E1FC4859BD18132BC418EA0E587A87 + 572B22E21D3F91E30B17E92CE55B7184 + 89D50315AE2BAD0FA24CDA5EFF944253 + stream[448..511] = B19713A228073EC54D2C51645554F66D + 26C1306376446E9F472A65682029C2D0 + 8C1DBD84E56181208C6C1EA9C8654718 + C7FFE4B3DDC8DF9D3538429461E31C53 + xor-digest = 9A9913BE55B9A61B86FA248CD0040D41 + FC3549D46F8BCF01F3EA9D6F12FE2A00 + 4F5681F3BD1F2AECA63E3FF0F1B3016D + E53F381000FA7E3E701A59AFBFEC9CD8 + +Set 3, vector#207: + key = CFD0D1D2D3D4D5D6D7D8 + IV = 0000000000000000 + stream[0..63] = 90B147BB4CE3844664E75678B78F02C2 + 925687A91C4481918E8784EA4C51A698 + D52B2D16C6C2A8B58C61A7786E4A3BE7 + 15689BFE8E251A46EBEEE2E422056F9C + stream[192..255] = A956C4190F0871542222B43BF4C7786E + A82D67F04E9823DAD659510CE555C578 + BEFABF8386E9AA020787E1D9DC6949C1 + 3F79F96446E77CE5604056BEF7E9A910 + stream[256..319] = EB0B9CFC3E92BAAA7FCCC46911D8BE3B + ECF71B6012C8EF7942EE0C8BAEAB8443 + ACEDAD3C2F1D25A68CB9B5423D8F9996 + ED07BF2A5B11DE993A5939533B8BA1A3 + stream[448..511] = 3071BB5D6124DC1C1D0A4ECF863B88EF + 4FA5AD8EC3B56F20FD1D25E0B4806478 + 1C27027DB494E5D36C044BB691265384 + 41AC3C6BA0EDD17F5EEE94B4A61AC20F + xor-digest = DB413BFF59A5A2CDF144DBFDEF3EDD64 + 0D23CFBB8277F7C9CEA46A2E3935371A + C2DFF9065E61796C0B2BACC353BBD4FE + 29A1C5D160930530D89FB13428D5CBFB + +Set 3, vector#216: + key = D8D9DADBDCDDDEDFE0E1 + IV = 0000000000000000 + stream[0..63] = 1ADB5D07C885936394FDD08666830F5E + 3F30CDD1B94D9B1804108B79E594D391 + 1E0D195B8099E6766277DE88A7C2B810 + 6094B64359DDAD8B77E199167CFA1343 + stream[192..255] = 2D6BD46317835C2C217F55F1BE537082 + A318CEB7A4F9B6970D0A05AD6682717F + 9936F684F6EC35F7D2EC4A88F525ED48 + D54C4F39CBDE9A94F9FD4F9B47035979 + stream[256..319] = 41BF5768BA098B7C61771F9D13B18C0B + 9212923AF23358246D5AE3089425A7FA + A63596E8CEF7B08CC4BD7675137B2D08 + 28DAADCFF51F5F5FD63FB6EFC2F0CF04 + stream[448..511] = BA8C52932C3CC5B31A5799F0BA1E73AB + A40A72670CCA295CB857F0FE0D02DD85 + AEE1E558EC9475DD3E996D3DB0A8CC90 + 722BAFE2BBB4A366F7A91E7DC363739C + xor-digest = 5DB47A6DDA5C4F3BC03465228020F15F + AC681C27A57FF2C999EBB6A487DBD21F + 2C3342A22E6B579C11EBCEA10C7CD1C2 + 87E5B4055BB582D775F49F83A30B75D0 + +Set 3, vector#225: + key = E1E2E3E4E5E6E7E8E9EA + IV = 0000000000000000 + stream[0..63] = B620614F87449DFE64BE90AE86F61216 + E342838490C10838ACFE1BDDF6481763 + 936DA9E1FEB6DCB635605C94CCB0E167 + 962B84037CC274EE964DEEE41CAF0F85 + stream[192..255] = 4649ABC6F91EC897EDA8EBAA32FAE32B + 8D2C59190B883080663255C04F691403 + 5CB01C73CD292B483DB271AD0D30A3C4 + 1184D773359ED0B35BEBF36C02F0B857 + stream[256..319] = 943B9AD515DEE60EF7DB62861C1CBC0E + 7C768C5F1BF999940968FF56DEE52332 + 625F13AF36CFDF6EFE9849F3178CDACD + 344405792AFDBAC17C9D6029BBCDE049 + stream[448..511] = 262179FDCAD88AA362503E03D5A5F64D + 4EF60647B5719B74C902E164E886EEC0 + F1B0C3721748E81BB02661F7EE1709D3 + F03FB5EBCBB8E3E9728F0B20E3C69F7B + xor-digest = 70079F7FFF05F29CC64FDD1E06044BAB + C7584C81A6F18568C4464273D688CA64 + DBC9F0E06EFAF213F8B6CDEB3F3A0D08 + 57CCB485F4E6D6136C7EB5EBF61327D9 + +Set 3, vector#234: + key = EAEBECEDEEEFF0F1F2F3 + IV = 0000000000000000 + stream[0..63] = 8E9E13AE97E14098B9DF8672AE245286 + CE437159905F026515498ECA6F9122B5 + EED90AF2330DF448D18EE4D638D8BEA3 + CBE93497319CFC8E5DD387B6129121C9 + stream[192..255] = 8C7E9F45348BBA511B2E0A9FB6C87E17 + 98AD4F2B6FDCD31D89A913BEA8CD3F8A + CC20E7F4503BCECE20C8B61CC0FD6B7F + 0703A88BA2C5A1AF378EE31BF90CA4DC + stream[256..319] = E28DB5BC51E48EA5A92443ECCF96BF9E + 6D4744357EDCA5071EF8685D7A70EBEE + C306ADC94E610979B9B75688215C0A59 + 420241E776D475B007413B939AACF3E3 + stream[448..511] = BBED8437ECC72ECADBC496F0E0568D04 + DE9DABDAFABFA8F621E477878F4AA17F + 4BD5BC59784852FED306C9274F2AFA19 + 5199BA5128CD8999EF06A7BE02226B90 + xor-digest = F378D169AD75D334D68426E3D213417D + 5E2DB9B2FBF89FAE478B0C86824BDEC0 + BB9E3C4FF9451CBFC0739DBA8D4AE81E + C21F529E5A50E8C1B191953D63ED2DBE + +Set 3, vector#243: + key = F3F4F5F6F7F8F9FAFBFC + IV = 0000000000000000 + stream[0..63] = AEF73417AE8120FE8B785E0C6671C689 + C58892D394E8AB8EF6B926558DCA31D0 + F974E26B13EAA417D932AA9A7BE270FA + F8ACCB4C0CBD396040DDE6C912490643 + stream[192..255] = D5A2B3A7647E39F152413B73F21042EE + 11919C5A08B57B5E192ACD2F1A99AFF8 + 5ED990B06A01C4A1CDAC456B766C8283 + D6D5992BB4F083A72E0859654B06A958 + stream[256..319] = E5ADB0B29575FEAEC4255E60206DB79E + E553A7025F26E9D099B47DEF8C8F72BF + 846E8A72EE3C0AA906A422C850DEE335 + 5C7D899228192B2DD8B04E62BD5BAD02 + stream[448..511] = BD4CDF9CE7F1B75C7DCC7A240BECE494 + 04AC5DFE7BF0168F8F0BE8916E7BBA4E + 95E7B2B7C85D001EEE2EF7DBB9DC26AA + E5C6B983D11E080FADA196D8C32C3773 + xor-digest = 38776182D2BEBD98307A67A80E2B458A + 9D6F2AADE56D4226ECC5598750A91C19 + 8F48FFDB2F3205DCFB3416245ECF22D3 + 7129E7D9E86094C565D3C236B8AACBD4 + +Set 3, vector#252: + key = FCFDFEFF000102030405 + IV = 0000000000000000 + stream[0..63] = 496191DC1EDC22DE848E61CA625E3A7A + AA407E459DA413BD1D19401DC13160AB + F74F384A9DC921157213373E268479B5 + 709A132C11C4798C5B1D285D95308EAC + stream[192..255] = E7E9305490D4FDCA39D5C211E8837B4B + A5AC6270156E397F52802EAC62E4C763 + 7E03EDBC7B7DEBF6B4D00CBEE03E1069 + 60BA27C4ECF169486D40C32C00C603A4 + stream[256..319] = 1A5F0D5EA4FB00CC19E91E2F1C8B4A2E + 2471A5D7C317088AF549F35C357FB613 + 0786F1EA8BF56E1F3D02B4A8F8901D9B + A525584983747FB1B0E529165C628E64 + stream[448..511] = 10B9F29BE5AB0DBF8AAE16B98460000F + 414221D4048CCF8A8923D4ABEEEA286C + B00CC99BD9155F8758BCE098333E8BAB + 4DDEEC9317A791077AA605874B069516 + xor-digest = 1344C0AC589EE96008E7B5FEC7D91817 + F321F5E51C757DC1B3CAD494B6649EDB + ADACDB74445F3682EAAA15B8FAD60042 + 178BBAFE05E6801510ED943F925D8B64 + +Test vectors -- set 4 +===================== + +Set 4, vector# 0: + key = 0053A6F94C9FF24598EB + IV = 0000000000000000 + stream[0..63] = A1809640CE79C540802F49D32023B2EA + 8A398428F4A5EFDB0A124FDDF39D23CE + FE5257EE1BCADC0954049102826E144C + A96E65D4A169823FFF20E832880B7B8E + stream[65472..65535] = 94CFCB48311A41D96101DD49862B0937 + 7C60CB9866045A7277170038F65844E0 + 9FFEA5496E1BC4FBEDB13922942FFAF2 + 6F69829174FD62032940E16A33532D41 + stream[65536..65599] = 00BC07F6F216BBD156129698840FC4DA + 9703ADD18A0AA9CB59E4DDADA0BBA168 + A4CB10A93620726E24D507CC106203A9 + A2D5ED7C81A2D5EFC243FF78F8BE9647 + stream[131008..131071] = 10D80B17A6730D965DBC946F45B1D582 + 2D957F997F1C56467ADE565E6E69CA9F + CEC68D6950E22313661FE82210D694FB + 921A3C3D69EADDBA952547BF7B846D81 + xor-digest = 78DF2A6D134908490632289B3066D669 + 0686E604DC3A1FBE133CBF8704B29703 + 41BD03C3B4C2841A5F89BD9D1F80366E + 9CEE68D6A1D45C1BF5E17D5D38EBE57F + +Set 4, vector# 1: + key = 0558ABFE51A4F74A9DF0 + IV = 0000000000000000 + stream[0..63] = 203612E1D1F22BD47314E9C03DDA5BB7 + 579F5C499983A481F8FE21C9490093D5 + EC7C63FDAC95AD9537DC9E87CD143988 + D97BBCCDB9E348519D07DB0C43E4A069 + stream[65472..65535] = 29FECC94F77015CB1CA10129DEE39D86 + 2FB0B553D1A44CB5E7ABD4FB92B23274 + D9284F437E9D918CD821AEAB95E53421 + 3186AEA0074F95A2B8717185F5E56A3D + stream[65536..65599] = 197A3FCFD4B565D3546F8C6CFCADA23A + 033576E189DB5FC47C873A1A64B429BD + A4B3F83BA7ADC177335B8D5EFC698F39 + ACE5ED3C542510E38AF35ECDFC3252A5 + stream[131008..131071] = 1A3E75C176596E8D5D35A3F68CED704F + 8C3B0F22BA41BF029A86CF0FB72AD50B + 7EF6A1CFF5A4273FAA9501675AFEB32C + A78D2B80174756522B84D8F16773B5AB + xor-digest = 03BF24619159664680F552C21CC95325 + A2C661DAF2AB7EDC3272BD88DA409351 + BE7367531999C6AF7C748429CBBDB7F4 + 5D91C08658A6471472D13F4FAA7B93C2 + +Set 4, vector# 2: + key = 0A5DB00356A9FC4FA2F5 + IV = 0000000000000000 + stream[0..63] = 22E1C692C76EE198113F84A3D73B6C5A + 2EC7CB8B775AA68759471EFC86B3FA32 + 03BBED11817CDFCC82FFDE2EA2FDE7D1 + 4666369636C6958C896BBAE5EB0C51C1 + stream[65472..65535] = 94B33DF87803BFFA34D060162939FDC2 + 271495487785B040AB9672DEC1722009 + 0B5AE71C372F2C9381AE345129D505EF + 61DDB872A500992E045A961E121C7626 + stream[65536..65599] = 377C3BDEF19B2659FD1FC3E9758CCE44 + CFDAF6E44E9D9EEA13CE156EF2503565 + 2E3422776903C2994564EA5D3BA69714 + A8FCFA5644428F0DE4F04D94F200881C + stream[131008..131071] = F9EE55C93B29479799F5D57D5D7EBF66 + 1AF839CC998636C02A9670BB89B5A1F3 + CE78098D7FC67379CF7A9241E26375C2 + 6FD07E1970ECD5A2B6A92387684C24E3 + xor-digest = B7DA2BC8B69EA14D357102476FDF871A + F6AE598E30975844E93940617AA4A077 + A916DDC8932B210BF5741893B0619BC9 + 90542DFBA20F942A7E681B7DD668A374 + +Set 4, vector# 3: + key = 0F62B5085BAE0154A7FA + IV = 0000000000000000 + stream[0..63] = 124B35E1F161A9FFE3D65A9041D5235F + A3659DC9BE659A47C16A0C2E6A7519CE + 8892744E88FDD4032395C02A07B7BBD6 + CF780FCFAB6B179E608EC9B07B9AE61F + stream[65472..65535] = 3C910BFC6300809C113E4CC118F2C8F6 + ACEFDDC2F04F7EA7C89BE5AA76C665E4 + 206584187ABD28F8EA92D91F8C4E6B03 + 0FA4E2A5168886F5F20E6521D51DE9F0 + stream[65536..65599] = 095BA5E4B2AB09ACC5C27B380F1D6240 + ADC913868298381FACF9AF9939D94F68 + 99016E4EF342BAFD0C2756F4F629F167 + FC4C09C9197D9CFC50FF9AD8B8C33524 + stream[131008..131071] = 5B477BBC0C8491BD085F9A9CD1EAD535 + F43FD125CB83E6464533E8D4DB73DFAD + B6E96D4661BB11A7DF031096FC6B1F68 + 653898D50405A15E07639291E6E320E5 + xor-digest = E91229D7189352E779A9B0DEA4FB5EB8 + BFA1ADF511ACB3427E720915ECF180BE + 64200A5F829A597F4E0D560ACE8CF8CA + 96FD591A077B9C863D335B09A78BD9B8 + +Test vectors -- set 5 +===================== + +Set 5, vector# 0: + key = 00000000000000000000 + IV = 8000000000000000 + stream[0..63] = 7C2E8D258553EBE2C585776B1E29C7CF + EDCFA21B8639405B208F19AA917A0CB4 + 3D62C385C7870EE66CA832B45FF98990 + 85D5CB371395706AD0DBD8312DF7B107 + stream[192..255] = F409AE7132B008995EF76ADF3E211DB9 + 38071BAE992CEA7E20ADDE4F2E7F8CDC + 5B4673DC7D8661B4690287E024F7D647 + 8CC1D8C078E1ACCB34C12219DA188BE1 + stream[256..319] = 9A465C4B24D9D6270A6B2D48BA2D249B + 7563E135B9C564CDEAC2D2530E7C9388 + 5BB33539629EC51B706808FC7EC52CBB + 0631721C42F65D8C975A4BE12D480BD5 + stream[448..511] = D4D6653854338AB2774EF2D8216FA6D4 + 50013856481321A3E402BF728B8EBC2F + 41C8D359F61892EE04B5D0D516216B40 + C2A322394662B9EC630E0F730FD57A75 + xor-digest = 97E01E74D5E0BEFBDE276A6061ECBE16 + 6F002DE2BA164B17CD9DB4318243386C + 720DDBAAA215BF0FFD12C769269FCD79 + A07299082CE969E85507C1A9B9F53B69 + +Set 5, vector# 9: + key = 00000000000000000000 + IV = 0040000000000000 + stream[0..63] = 0EBA4E0EA9CAAD26D921955584A1D585 + ABA1A9AC67DD0CF6E5B1301953FDEA4F + 17F95D9DC13260517ABD7FA74D501EB5 + FBBCA814ED21E37313B8E752342E6257 + stream[192..255] = 90CDD3AB9128F6E3C1F8F0BB663ABBE3 + 0AEF8BBE2D07C8C7D6EC761F73CB755B + 6AC2FACFFB712CF290FD794CCF971F93 + 28CE2F13CEF9287F22643335E2C8914C + stream[256..319] = F73A506D7E9F96650F0A533940889264 + 7E5D99A5F284BF43B5761F3F102AD0A2 + A6807ED27E719ECC3C22F58DF245177A + 825310A7B242A395C51CE72F47424598 + stream[448..511] = 19401DED0006901B4B827BDA196946DF + C2BB055D8E0617A408EA67DCE374C082 + A3CF08CE24BF3C29AD29EF4477FF8B60 + 065E37E8B7F8A1617DB26E605DF07C03 + xor-digest = 6CBD2282CB6FF446827476BE234B27B6 + 496788A6FFCF7086889017AEB8B15526 + DBCFFEDD2A35D50AE389DFD3EC9756C3 + 0449560F9E9D28393AC6F1E69326575D + +Set 5, vector# 18: + key = 00000000000000000000 + IV = 0000200000000000 + stream[0..63] = B3FF12922FD450DFC82BFB124C29F949 + EF0C630330FE4FC2858D8D84E94622A2 + 0E288BDFC64CB3A45E00FBDEB8A5A803 + 0943F3E9A4981CDD3E9EDF25F3630F7A + stream[192..255] = 97423F890C092A6BF1043435A90E7604 + 0A99E1567B35701D538206745A24323D + 092167BE63C1615B18A7FD2964CB5E63 + 880121AAF72777BF0B02284B5DB1E805 + stream[256..319] = A217AD0381DADA5C375B059F4C8C5C0F + C08F7BAC5F2F11EE431128F093623B1D + FAC2027601541CC3BC96D1506612B2EA + FF7D687F83343CB59687DE02D82D8F29 + stream[448..511] = F03CF90839BFA7C6A6756CC90566153C + 87A2A76CBB77EE1F6B29CCA6D179EE0B + 5F8D08F9348458308C110534E7F6A7E4 + FFB1DB124CCFD4D9FB91F1458BC23442 + xor-digest = 5E09BA4C977E4C536DF247053147685A + C0A26E7F3164A720A8101FE1CF10319B + A4CDA5F047C8147CEEE5DB42A8C492D4 + 9D41649E8A974499F036A666B4EB993D + +Set 5, vector# 27: + key = 00000000000000000000 + IV = 0000001000000000 + stream[0..63] = BF4F0D47AA3C1217D6EC437DA956E654 + FE8307CC26D9BA774B3C2E99DDC931C8 + 92D51DB6695ABC29548D9F02B67C7A1A + 4424FCED2EFBC18A2610731830AB0728 + stream[192..255] = E037F46D4DCE22F4CAA5B7479DE02E38 + ED9757771A910D29EF5DDF6F5501A7CE + 7012282CA3780A90E466CF7F4F9C3ED8 + F947A829C32555F2747E5DAD5F014383 + stream[256..319] = 3E45507F2446535F65FC7E06F906A1D2 + 5842E9DBDE965E7D8AA0D3B27BB5F736 + E65E99F2604055B819E256799909B7ED + A5262A80FF1AD7F8F525E3F8B01B5645 + stream[448..511] = 9FFDCD19822F9FA211759FF1B1C06BD2 + C87E5D9FDA31BC518B0F5926F578214E + F8A125878DD7AF14946750C5CC1ED840 + 69CEA26AA1AD522CECA186BE79313057 + xor-digest = 3F20DD8BB23DEA99DEBFF06B86A7B080 + 7C0A2471EB34A8B283BF21A053736964 + 40CCFD9148F2EB1C97FA55704965C8E9 + 33C7FEAE2FEE5A19F92A66EE5C16D84C + +Set 5, vector# 36: + key = 00000000000000000000 + IV = 0000000008000000 + stream[0..63] = 38C0EEEDAE15909B588EC77DB243F45E + 2876AA175231BB87AEF124D169BAE406 + E4926FA6C7A8E0BBE7562EC332C51264 + 866C295EC661B1A8E371270FFBA811A9 + stream[192..255] = F69EC11DA57E7C2B609E48BEB901AEF3 + B976B771F43EF8648BDB8E6BEFE3E91B + DC4E1161DC8DBB85AF6F1ED0D0E094CD + CB3DC29874A705E75A022846CE2C3852 + stream[256..319] = BFAB2EDD958568200A523A3557CE355D + 0E71D4B932E69F4C58156B80A671318D + 8AD30EC6FF36D5B4FEE574411F79ED02 + B86C91DC570ED2C81946C0BB2F40142C + stream[448..511] = 06D8B41C1EACDE5F758746CB96FA2680 + 3BE31AA4F2384BFFB59C5351B48BFF28 + 06DB599703D18F3D1613A11B691C20A1 + F1214848F7CB977F13F10A1D4839F283 + xor-digest = 19C1AF15AEB9B8AFD7EC523DEA27D003 + CF0A6A81A5B3145C75DB0BEBBB6E798A + 44F3D1A16378676E896101E62BED34E0 + 389CD1D07721DF83223990DA6AD34517 + +Set 5, vector# 45: + key = 00000000000000000000 + IV = 0000000000040000 + stream[0..63] = 2F022294DA51A59D847ADEA3295A8045 + 44471177EDCBE7955BE08A771125D111 + 6DB6075B4A4BCA23E7DFFE7B3128CF8D + 394E60D4B1097882C6207E642C8C907D + stream[192..255] = 700979F79A97178C3B335E691E826221 + 479639173DD57E3A9D7F7E64964BA9A2 + 5A96A4D61596A77C6427D100C5B80AC3 + 21C43AF244AC6B166577F7FA39168243 + stream[256..319] = 4A1063C951E1AB3BA8401EC9CFD487A9 + D00E79C4C0848C2A9E95022CA5D5D29E + 107C303E132DC39B3D944F6724141DBF + 1B80D72F8260EBE9C169263975AEA408 + stream[448..511] = E1B38482DA028E5B5945B8C779F340BA + 2B48E61C30A4B70AC144E58BE0D10EC9 + E3A960CE2C4CFAFA514F354CF89C1FA3 + 2ED51D29D8B1D417E8420BD8738B638A + xor-digest = 11210A7EF3B0EB14A1798A33F4A8D859 + 846D0E5897FC63414F512780C660BE2B + 0DEBBEAE2EC2CAB6C82682EB7958E418 + 865D45AC2BE87F5B9B94C816E976A6B1 + +Set 5, vector# 54: + key = 00000000000000000000 + IV = 0000000000000200 + stream[0..63] = 80A39839FD912FEC1CDF1E589E9183E6 + F0AA878A540BA733145DF7F17C53E334 + 2F90F0ACC17965FC1B77476D183D4093 + B4768C78EFF2557D00993FEC7F1CD92E + stream[192..255] = 174F3A02660C7E3D2A1E2245EBAB0B46 + 18DCE4EEA70C533166894B911505611A + E7CB719E0012FE1E220AB69942B9E5C7 + F60D77F05B4F3204638D659C0F8815E9 + stream[256..319] = 8A95F673DB11D1E09E3769982663F9DA + 93D80F180812E7725ADEE1E3679E92B7 + 4C41361F7C278DF1815A6B69194E3584 + 3F124F7F9C247EB54D489F0E59AC36C0 + stream[448..511] = 03BD556BCFA7D36A97112FB99F338C49 + 14471080639406600AAA930E2422A664 + DDC1906E1ED38E2586B881E84F2E9A81 + 81369839503EB6099990FA7BBE8D911E + xor-digest = 2075EEC950B6311303B1D1E2D4B54412 + 6E7D5B895DBAAC347887AC6C49A97517 + 878425EEE14F050B3426ACD6A0141478 + 7E221AC4597C7909585CA2031AD963D2 + +Set 5, vector# 63: + key = 00000000000000000000 + IV = 0000000000000001 + stream[0..63] = 9A5C56169E7FA406709E293EBE5B3E73 + D72313A88EBFA9C8ADD82437B45FB7B4 + BFDB540BD11A60CCB80F48BFFFEAC9EB + 105901C85F5485B0ECD4C4CF1B2FB9B5 + stream[192..255] = 29181A108AA48A69CA97033E55192F2F + 0A3AB80C4B5125112A5B047658B50D7D + C9A8F4A462D341D41C8D515B003DB15A + 12FFD5BEB9FBF4052CC2469A6A1977D5 + stream[256..319] = BEC44A53F1623652401331D6C63557C9 + CE2F2854EA2ADB57E75C4108AA77376E + BA9111B84E40D455A1916D0B6C474FAE + 5C574C935D2C9C1DEA7D442FCB62569E + stream[448..511] = 43C15449683C076C970589C3F10D8D9F + 12C2701FC28E4655187A42A6970EFE82 + B3A0F3803804E4A5583B560619EBC656 + D6C76589164E14383092B7E1B20B800F + xor-digest = 2536C1CA96C3B4BD84EBF76924138C7C + 6BED25D573641620B73234523D066BD5 + E77C0CD3DA11E6FDFC298AC3B680DA47 + C3F50B39C8165E8AD6FFC6BF69BBC9D8 + +Test vectors -- set 6 +===================== + +Set 6, vector# 0: + key = 0053A6F94C9FF24598EB + IV = 0D74DB42A91077DE + stream[0..63] = F737F5F05DF047DCF3EA865DACE28D30 + 200CE25C86607B12662CA2BACCCACA6E + CEB27314776E5610AC41916E9B39D387 + C170E6AE976C578498712AF03EA0CD0A + stream[65472..65535] = 5069C3B9373AE874A9E1A55E7B58D241 + 28CF81F70BA53D2B10873D59D14683C6 + 6AF48FDF1E95D718272D191ACAA1CC61 + 2DFB40652A0332AA36B00798D1CB0AD2 + stream[65536..65599] = A85DB04436715BD9BC244CFF8C689BB0 + 0F8E54FB908D4F94130A00ED7C3768A2 + CDEA6142897D21409484FB2E130F9B20 + 68DC3B5B30C7F3A4D6F5B8F2BDA78534 + stream[131008..131071] = 9FA2594D688CD3BEE2E936DCA0B3D02D + C1C43D070096D8BAE179B08FB30E827D + EB1EDF3A61AA032DCAD246FEDCC50DF7 + 6D26CEF6B1E7934ABD565DEE2D3131AF + xor-digest = E7E68EE80A41F30C2BC7DD751E18AC52 + 156608F240F323C4A9FEFEED5CC99823 + 44AF140558E127346B488FB6A49C323D + 136EE833F5CBCC299BBF408087AD26D6 + +Set 6, vector# 1: + key = 0558ABFE51A4F74A9DF0 + IV = 167DE44BB21980E7 + stream[0..63] = CB272E34623E38B651EDF269CE358AE4 + 6826A6D5C4B48D16C53A53880F3C1F19 + 2867FE890C92C4AA1614F5AC719550F1 + 1305FE39ADB226AAE99C24DD0DDF40C0 + stream[65472..65535] = 779D2F2224C71BE424959B21B923DDEA + 800004167296999AC168E509AD4D2E63 + FEB3CA9FDE01B1523387CA8B26A57DB3 + 397C67639EB70B7C46CF19EE6FE4176E + stream[65536..65599] = 9D756609B4C2CE0AEC2EC38226B585F6 + FE628699A1FC5F92D10857C2BA28D04D + A95912B34747FCFB04968B9337008AE5 + 8D914D772CE5308F72FBCBA86EB88BF7 + stream[131008..131071] = CC9ACFED77B8394777809F68CCF097D2 + 3F2AC791F20E04904F6EF7012DA2D5CD + 57F1F33EFCB631E1753A48B0EE7A68DD + A6B71C104DA8C1FEB26E3527B6CD5400 + xor-digest = C61A7ACE933E05930C39F667D1E4E373 + FA2D17785BAB9C666E6909BAB32FD49A + 12AFCDDC47E91A3F308D9056428F57AC + AA6F22C07BF9AA287D3511F7FE5C370B + +Set 6, vector# 2: + key = 0A5DB00356A9FC4FA2F5 + IV = 1F86ED54BB2289F0 + stream[0..63] = 7DE608A48163C395892428F7124C9F7D + 0255A5E3728F31EFD8C7A17EA22AD905 + D68A33BB736555716FA800EF8B713B0D + 55D890CBE28E68F2442B04215A6D848A + stream[65472..65535] = 774F86634BB8E8EDE0566EC305497EB9 + 721233679F900B514A05E856E9BC0EBE + 22131AE28D431B052C6C6BDE2E00A178 + 9798006E583E91AB5F9CF5B86C910202 + stream[65536..65599] = 889F147DA996085CCD022344790C8801 + 48248C28155237D4472F1BDFFDE33278 + 17BA82F4C3D69A5B14F87BB22E3BEA7A + 14E52987DC25156702017C7C0D7CA68E + stream[131008..131071] = 34E7E048C86BEEF5DE76D7CA52ADA633 + D0D47BDBAEEB33D0F6CB7FB98BF97B5A + 6DB55D1E80B132A4111E9A700FED662D + 1EE0FC61C46A1399C5D7DF14855B4197 + xor-digest = A150C6920D13DD733732649E9C590E16 + 6C73FE8FBAE2C20F89864A61A56D5723 + 36D3AC8ACB2980BE2DF12BB2CE18575C + 0C387A3952086F11CD20CEB6322A9308 + +Set 6, vector# 3: + key = 0F62B5085BAE0154A7FA + IV = 288FF65DC42B92F9 + stream[0..63] = 914D430673D2C07255A7C2ADF9A2FD7A + E88671B4E2CCE9536317A951E114F001 + FE802478294094FBB64DF49C0F3F9771 + FC691360EFBE986168BF6B32CFBF0E51 + stream[65472..65535] = 974317B75864F6EF36C81E4271A1BA7E + C1E93EBDB00C6FBDC1B620AF2C96BFE2 + 4AC1C4722B212A6B102068794B1D863A + 78B2D9683DA069CE52C01DD371E95CA4 + stream[65536..65599] = 7F584246BFC52ADA1BC7A8574D812441 + 29B30D65C9382A8364C12F1DBBF8F6E3 + 756D3AEDBB9A867EDFF62867194A347F + FF643B0FBE48BDC4968F1C82CA22C06E + stream[131008..131071] = 458BD178BEA7F62DEA9CE811E5FB05FF + 4C9C10631AF290F661D819647C8B838C + 4CF3536DB8F1D26535F6B89EFE77FBDF + 1ECFCE322D09232BEE4AD20C83821054 + xor-digest = 8B243404EB1B735DA1BCC37375AD4C8B + 2F1251F41C08E5B812B07B1F6EB59D22 + 730904052CD98DCFE844EC223E75CAE4 + 1973DCDEF5F57EA0D7965B9108063CB3 + + + +End of test vectors diff --git a/testvectors/trivium-80.80.test-vectors b/testvectors/trivium-80.80.test-vectors new file mode 100644 index 0000000..d278458 --- /dev/null +++ b/testvectors/trivium-80.80.test-vectors @@ -0,0 +1,2046 @@ + +Primitive Name: TRIVIUM +======================= +Profile: ___H3 +Key size: 80 bits +IV size: 80 bits + +Test vectors -- set 1 +===================== + +(stream is generated by encrypting 512 zero bytes) + +Set 1, vector# 0: + key = 80000000000000000000 + IV = 00000000000000000000 + stream[0..63] = 38EB86FF730D7A9CAF8DF13A4420540D + BB7B651464C87501552041C249F29A64 + D2FBF515610921EBE06C8F92CECF7F80 + 98FF20CCCC6A62B97BE8EF7454FC80F9 + stream[192..255] = EAF2625D411F61E41F6BAEEDDD5FE202 + 600BD472F6C9CD1E9134A745D900EF6C + 023E4486538F09930CFD37157C0EB57C + 3EF6C954C42E707D52B743AD83CFF297 + stream[256..319] = 9A203CF7B2F3F09C43D188AA13A5A202 + 1EE998C42F777E9B67C3FA221A0AA1B0 + 41AA9E86BC2F5C52AFF11F7D9EE480CB + 1187B20EB46D582743A52D7CD080A24A + stream[448..511] = EBF14772061C210843C18CEA2D2A275A + E02FCB18E5D7942455FF77524E8A4CA5 + 1E369A847D1AEEFB9002FCD02342983C + EAFA9D487CC2032B10192CD416310FA4 + xor-digest = 7AE3A4B53355061766122E04391EA1E6 + 699B51C21A1F8058D3CF74A209D7E4CB + 571ED771525CA492552565C10A05E81B + 945DE28AAC043DEB349FD438784904D2 + +Set 1, vector# 9: + key = 00400000000000000000 + IV = 00000000000000000000 + stream[0..63] = 61208D286BC1DC431171EDA5CAF79D95 + 60B18ACEF26484417B651A47A3F7A803 + 53F79AF8656DA4301A5E5A02E04265B1 + 82C67F5891220349F8CD1CD06597B77E + stream[192..255] = 242608D58B23D480E65A8957F3FA794F + 53802938517E00F63ACFB5EB6BD9EF46 + 8BBF3E25280DBA37FD0B0FDA76680A55 + 96FF5271210EAFB170F3517238132C6F + stream[256..319] = 61ABC3A8B08C692F171CD714D9D15E88 + 88F71F744EE561D289CD3180AE617FA4 + 3C81C882D7A946B0DDE1F00A6790E83F + 8641FB4573F75836F8E8397EF4A99F92 + stream[448..511] = 178B25236ED340462A30E65B5AEC541A + 314B9D7D053106DA3E6E7D9AD15911A2 + DAE813763536B17B689113F870DC8EA1 + D1C455B4883DCB30227422946513157E + xor-digest = CE6253BA30B97EBB0CA8FA894138D4E1 + 35CA9C2EA1011D8CE3DEE1248B66B8B3 + B6AE334A2218D855F0E716B812FD91C2 + 56184EAA3CA28E547D9531DF9F7BF6E7 + +Set 1, vector# 18: + key = 00002000000000000000 + IV = 00000000000000000000 + stream[0..63] = C8F9031DABF8DB03FF120D05512B5F24 + EAEA1BAB43201A5E93BF17F628E5B216 + D58577112F581A67DD5F962484ED4AC5 + 9202BA3509A73E119680B562F86DF0DC + stream[192..255] = C26A443E26697FA16C0FF3D9152075BA + 1E81B900D609087F773FF30F4271F96E + 1BBABB533108766074D2C601E2C27219 + 4B64F775327F7C2250F7FCC0E377761F + stream[256..319] = D0ECE1B05F3199C4AA3CE4BC21A912BC + 4488CC64EAA183C46AFAC7E3C07E459F + CB08A75F1739D9AE1C489AAF307591D7 + 2E4E97339CC711FAA91AD16CB2D830B6 + stream[448..511] = DA6B9F7AD2563E7D14693343FCBBF5D5 + 9F85D5343A3DEA66CF2A81820881703A + 2F37D81A42F8A51B1977CECE86E477EB + 63E932B79F99B1241657B49953588760 + xor-digest = 5D38C5BF8AE69D544AD7280BE74C6E0C + BE6A420BCB2D39A2DAA9D3D63385CCD5 + EE19A18C0C587B57A83CA1ECCD01C8EF + C43F3F367BC5FA0FE7FA7D8631A19AB6 + +Set 1, vector# 27: + key = 00000010000000000000 + IV = 00000000000000000000 + stream[0..63] = F7E523040E86EA2C46A2BE705BFC6259 + 7F77E4649C0E71D51B288EDD4FC169BC + D681F4603E192A7971E73290133E1E32 + F916D98B0D77F37927E1215C1D6AE037 + stream[192..255] = 2128A7909071468084923FE0ECF981C9 + 67E59F15740C9A477EA468B81D0D8295 + 7ABD743AD921F9C106BEBC3A0092D491 + 1BC68FAEE7BD0D72B9268640E040B643 + stream[256..319] = 6BB914FF05BA243BC9030BA267C00AF5 + 2A0B7087AA05A5CAE114F89F0B0F8D92 + 6DAB38297B24360A8E9E77BA0C5F5D71 + 0AD1B28F2556874546C973A3A07FF094 + stream[448..511] = 72948944739208A65AC2D1B05DA2CBE5 + 999C536C06331D91081AF737BE28D6AA + FCB4D7EDE955290D1E21038E1737E9E3 + 0A7681180BA89C746B77C2097D3CFD24 + xor-digest = F3B31EF416B68E94DDEF0EE68039AE40 + 476018580ABEB18EEB5FB27019358E0C + A16D0A6E0F93E4B2637CC85236B9245C + 60885178E6F2B4ECA5184840AC88B4E4 + +Set 1, vector# 36: + key = 00000000080000000000 + IV = 00000000000000000000 + stream[0..63] = 4B430BDE0F574C7DE06E6A1918BFB4DE + C0E2836071EB446C593EE1F259453327 + 2E720E2A27992730E67D509EDF7BB0E6 + 2AEA85ED87B998FA6F53A0B77D26BBA2 + stream[192..255] = F2422BB51A6EDC8B05CB5C4A86C0FA2A + 8A631A6CA762075121400682E6D4198F + 33C021AF3F6EBA20C6CA1B7055948062 + 28788A3AC73641081FACD4EFF39FCEA5 + stream[256..319] = 087CD26F0DB13D0ABE7946C81C6F1230 + DA00E6120E894143D63E01C76B4DE15B + 0128870032B23995F47A3C8421551E9F + 9DCB326394BEC319DAF4AF828F5A1086 + stream[448..511] = 1075D79B7886F8683D8126203AAB97DF + CAA776F2F2B9D34F19EB09AE82F1193E + 38C6483D5C5A2F3B4F0FEF9559FE491E + 42995B6C9C0544D0EE71B45199257C2C + xor-digest = 6C474C19C540A41CBEC90B9C06740501 + D334D1C7A0321D43D4A2BD114DF64C06 + F924F821FB0BCDA3815AA1C3206BAE93 + 8AE6E4902ECFE86581D915131046707E + +Set 1, vector# 45: + key = 00000000000400000000 + IV = 00000000000000000000 + stream[0..63] = 4EAC0C5C7AD327084CFED7EAF72F6EB7 + FF20E11C65DFC1470C1D2EFAFCE2B1FA + 3ED6AFBE7CBEB677DB1189CB6892E810 + 93B16FDC34199D0A26B89F06C86AC9D7 + stream[192..255] = 8E16BFC093187AA1F846233A522292CC + 2C1F829FE186613ACEBE8BBEF0047080 + 7A086475CD3A9F7A024DF5192B2A2C5E + 3599EA4BCFC4424C97F4848AAEE3CE62 + stream[256..319] = 0440260D186A7F351C3BA39ED04F7D38 + 85EEB80873D8A7E0DB3EC9A85D157A64 + 75FFEA67617555A9D1EC8C860C3F5632 + EB09543087C66E40061721F56E443304 + stream[448..511] = 74CCF961E4D4508382AAFB7AC7246A1A + 4FAE1A2722404ED45A173C60E2785F06 + 669914085078DDFF696B1EC62C314952 + 519F59D3F83B6E304FDCA2BE1377DCB9 + xor-digest = 4FCFF4A0D4B751B1CEEA6E867AA2A450 + 52BBCAE2EF464105705FBB25DBA8A46A + 1874A6AD5A4EB2C6D8A0CC99F089ACD6 + 01248AB9CBFFC14902A5E977241723F8 + +Set 1, vector# 54: + key = 00000000000002000000 + IV = 00000000000000000000 + stream[0..63] = 2D97F227F2463F271F853BA10806888F + 8BA5733564557D5174A16172BD89D7E3 + 2ADF9C5B257DCC1693AB7CA6248F7A33 + D311FAD4D89D1C6EB7FCF8896D94E79C + stream[192..255] = 9C38E5671BBFF1255B0E0507AEA04A53 + 4CB9DF58FBFBEDF35A8D3E9ABF2D3575 + CFA09D25F4B65958F6335F2EFD5B6B26 + BD32854D2DCFE3BB9B8E45662E82B755 + stream[256..319] = 2241EE8EF8C8E1D5F92660D4308EF4A2 + E049E8BC39C3E97009872036DADD6FC0 + 11236F68D2E53955353EF0BDF8C38AE5 + 89113090AC7B2668FF6D6430E3D86A80 + stream[448..511] = 25D0F4B24C08E64008B664324A487BE9 + 5330E380025E1688B7E094120CB4EAA4 + 66C32BAC66FE0EB407FB61B2EF1D5EAC + 2D2CF69EB18D0CB218304BFB765A710B + xor-digest = D289038D30972F0D331BA98C9B3985B8 + A0ABC29875574729E85DA5D86EF6D8F3 + 564D2106EBD5B01AB1239FFD8E7D9AD9 + CE24F40D38F774B51DED044843E8DC08 + +Set 1, vector# 63: + key = 00000000000000010000 + IV = 00000000000000000000 + stream[0..63] = 9EB8F6BD37474B5C2AC01BA1B3EEA5E1 + FBD4D4D1AE63EAFD81A4D2C900B59312 + 73B37820BC68FCD69ED18F1ED4EC9334 + F39FEB330BAAEDEF2A1E51B218B385C8 + stream[192..255] = BF9DEDA5A5E009286220755F2C900A1F + 7FCD3B8C694FA76D82E19A4E598145AD + 064E7F863A6E7477E626D5736FEA8CEF + 48F0B8C6646C2CA76F14EC6864E9AD8A + stream[256..319] = 4137E7D79FC2569ABAC57B2740AB3172 + 97A07F2AD06CEC87C30BB474D86FC64E + 9E9149F5A9135DBF5F55D7811BD50611 + B11F92049D496D498353A1D60F676517 + stream[448..511] = A45AC8C930B8F3A12A1F742E06950A30 + 5F1DB8F4AE9EC0EC2821337843D25CCD + 3CFB3592FA440424F89A5CA600A1DD60 + 3A22C8913E34457D721B93A07D006BB0 + xor-digest = F1C4BB2AF77BB600FB2F785CEE1BE8A2 + 5D47F48E32E6774EA0D8237228A00CE1 + D5A700EBB06D6BF6FE9DA1C01EDA833E + BA80541AA2B62AE65998483C6FDAEEE3 + +Set 1, vector# 72: + key = 00000000000000000080 + IV = 00000000000000000000 + stream[0..63] = 5D492E77F8FE62D769C6A142056BE936 + 1FA0ADD8A54601DE615EBC04C4F8B2C1 + 2A8ED2DC9AB286A0F6C49C7AB319BA6A + AFAAF0CD42D0A44C7DACBC90791855D8 + stream[192..255] = DF1884141AB121E7459DE30B2A0C85CD + A0016453D350EF6220526CE33C1806E3 + 831BEE5BF226E560F165FFC3585F2E54 + F4845419893265CD88BE8CB302B20345 + stream[256..319] = FEEF3646A5600D104A2DE2ABAF9B41A9 + 97FEC3EAF10C2F50EBF04D12CE139F6E + BF7544F9BC85FA776E266C368C249D27 + 4DF3ECA2CE43F7A611AF0047D22E8601 + stream[448..511] = 2932E68122A3BD81A5EE6922FA11067F + 5DA90D30B775F752831AE09527B72DBE + FC4DDA52DA28143720A31DFE662CDB73 + DED478E8541E3472AB4F80712250FE41 + xor-digest = 4B2CFA502DE806DF648335D2FE74E83F + 0B9346BB6AF0F0D1371EB9360F2638C7 + 856A9E715D44E5ACD551478FCC0C0AAB + C29DF306EF4B4A3BFD3534434EE26928 + +Test vectors -- set 2 +===================== + +Set 2, vector# 0: + key = 00000000000000000000 + IV = 00000000000000000000 + stream[0..63] = FBE0BF265859051B517A2E4E239FC97F + 563203161907CF2DE7A8790FA1B2E9CD + F75292030268B7382B4C1A759AA2599A + 285549986E74805903801A4CB5A5D4F2 + stream[192..255] = 0F1BE95091B8EA857B062AD52BADF477 + 84AC6D9B2E3F85A9D79995043302F0FD + F8B76E5BC8B7B4F0AA46CD20DDA04FDD + 197BC5E1635496828F2DBFB23F6BD5D0 + stream[256..319] = 80F9075437BAC73F696D0ABE3972F5FC + E2192E5FCC13C0CB77D0ABA09126838D + 31A2D38A2087C46304C8A63B54109F67 + 9B0B1BC71E72A58D6DD3E0A3FF890D4A + stream[448..511] = 68450EB0910A98EF1853E0FC1BED8AB6 + BB08DF5F167D34008C2A85284D4B886D + D56883EE92BF18E69121670B4C81A568 + 9C9B0538373D22EB923A28A2DB44C0EB + xor-digest = 106E884DA4E38669DDEBA948CCF69D09 + 7624FA9131B60DF0C8F41C7FDC29B46F + DFED222B48781CF7D6B566AC7518E518 + D74F11A16F8171C1C26FAFBB1E632934 + +Set 2, vector# 9: + key = 09090909090909090909 + IV = 00000000000000000000 + stream[0..63] = AB97616E7BAF0921F424B2573BFA15BD + CA01898ABBE6AB77279AB1D732ABD105 + 12769CC69FAB34E03B807F92C96627C1 + 7656BCC9BD9D377240A2B6FDBD784453 + stream[192..255] = 8B6043B0C76E991D352361045F1B0724 + 56C04D7972CEE60F8727798497D4D3AC + 69CE6781D09795DDCD16A48236785201 + AF1884E69825977D4988B6C45409E187 + stream[256..319] = EDF6242C03842CAC95579088A4B6C604 + 96FC3C80A17BB01FD25F647D1998DE1E + B70FB1D5FE3754DD7C8801576C7CB6E0 + 6CBEE317B091C542BA91B83B1389CE50 + stream[448..511] = EC087DE06F92F49E8B0C69BCE33276CC + 3EC0B0472494E4DE3F8EBE37A9599EC8 + B6F46FCB72459FE7C273B3EB5188A6FC + 42B7733D74F7D2462B14D34EC0E24971 + xor-digest = ACCD41AA0780F62208176BDDC3E752DB + 1C228A5F99B2904CEE22946F46F8013A + 40B797D54FD1C289510FAF21940AFB7C + 0587174163E4D61295B3302C2E30C58F + +Set 2, vector# 18: + key = 12121212121212121212 + IV = 00000000000000000000 + stream[0..63] = AD35E17B1971AF6B5B3E365FA64EB4CF + 7EBF023D520889AD71F1A07AA2E0FF44 + CEE32D09CF77360C52434D462B53A405 + EF5A60D82A0F5E3CF3321B3727A3D61E + stream[192..255] = 850E4A9D5D6CE76AB58B97B6BD3F9654 + 19FA993BCE0C618B0200A0B024B6EF30 + 1BD3E32B173F8D63D2077887DE45D2EE + 842B71B407CCD7629EB5185732F048B0 + stream[256..319] = 360B6895BCDBBB111156A9F9892850F0 + F059EF19E4EB265896AB3FD71017E156 + D80071542C5EB8843294053EEF33E6C0 + E62C640182BD26D0CB0677422964E23B + stream[448..511] = 3889B97439DBBAF76E480EEDA6EB3871 + 01DD97679826677500297211E7BC7121 + 8E4CC353596562C17E1B7BB4228B9869 + 149CE108339442C16EE2A4E6A20EC1EA + xor-digest = 5451383945D449593499E2DCFDB7441F + 03106D84C1F1058E1FA5FDED446D3ADB + 4AFF88C3B0A1CCEBF493481BDBA77B84 + AD798C93D1C132BDB5250293A69834C6 + +Set 2, vector# 27: + key = 1B1B1B1B1B1B1B1B1B1B + IV = 00000000000000000000 + stream[0..63] = 575AC77DCD54E7F48D837ADE0A88C70D + 777839B310C297835F5BB88C1A5FFD15 + 69A4C4676E7D7CEA864FA1AD2F78E3E0 + 44E7D145827DD6E4095CB308111F5C72 + stream[192..255] = 0961EB35FD322EAE8011052513323CC5 + 1B0F4EBFBC25104A2E947B98B545D00D + AE223FFF25AAAE27A6AD25CC7CBAD627 + 559664E720CFB9061DD15F8C6BAE45F8 + stream[256..319] = ED7100988973CC712992DB2C42BA0FDF + 3F0A5B49B41398E96214F1C2F4F1C0EF + EC17C6A8E80875D3EB40E973710614E5 + 72233CC2D88AABBA1B67D40365A10641 + stream[448..511] = EBA754FCAC87029BD9D475FB79FBD6FD + 1ADE18D75DF85CDF875C517862855665 + C6DD45F3999032410D7B71EFDE3E4FDA + A923E9346121C8EA2EC999575870E043 + xor-digest = 397DB0E5B8C4A77CFD9CED0DD47E7F2A + A3A0890C5AF816C18B8006E7363F2E81 + D60F24B438A5DD41EE24A787FBB1406F + 3F9270CB9FCDD19D651EB12204BE68DB + +Set 2, vector# 36: + key = 24242424242424242424 + IV = 00000000000000000000 + stream[0..63] = 5502DF8070387D1237EF5213B5F19EB7 + 9B9CC30810DB966DD2B25C9249C0378B + 17423F4E788BC3E82FBFC7FA3FED4A57 + 04BA35CF9CBD12DCFD56CB6DD431A4D5 + stream[192..255] = A68899B41A40E33776B5F06905D41726 + 7698EB1306923997588459F83620CFEE + C503FB9299F7640B67554079E04A404F + F84966D5838D35D639065CE9B63BCE00 + stream[256..319] = 1D0DF339EEB936F041748F00AD035065 + 51E81724ECCC589A0848C24962EF1766 + 008B90259738515712B2F23EE6C81E39 + 85439A1D6E9E2DBD6CE0207DA4ACFAE4 + stream[448..511] = D3D23D51D0786C1724E9043C2FAF83E6 + 32292A3640B2CE6C129B509EFC9641B6 + 2BED08E57E2E3FF6F19B335B49468CB5 + D49DD8CA4575617BEE7A3A2B12DFF7D4 + xor-digest = 3174B207516E0629865B094F2C1FD668 + C583DE7A6C781AA8F66FA6A831A1DE81 + F5CB1E105F4879E3C54D97628420E175 + 37B2B4E5F2B762B2BE0958D6E5E39094 + +Set 2, vector# 45: + key = 2D2D2D2D2D2D2D2D2D2D + IV = 00000000000000000000 + stream[0..63] = FC87849624217531385850ABE1CA16D5 + 792A45F8FC40638B0BDFB7A32D5B53CC + 6751FE1CBE1BA673D2113AB900CFC9C3 + 095CA85EAAF17DC617249FEB362A3F43 + stream[192..255] = 9DFDFB4E65756A17EB25E7780B76A5E3 + 8387FD2E6680F1C95E43168890626763 + 86883BFCB70CF7D3B996ADE723A640F0 + 6F4FB89998DC89836BE5DE6867AB009F + stream[256..319] = E994EA686CD3B38CBAE1623243671723 + E73659DB9E9AE918738B9178EEFB9165 + A63359C35F56DA951C50C8507CB75922 + 3AB159C8330DCDC1E96B59840B4A7F87 + stream[448..511] = 4A1497F3FF052FD845DA746EA324C700 + A10BD0C4E66F5E542542571EF612FABF + C71F6CB099F615D0D5A09BDBD566337E + 40A25B7F2665C28CE0DC8ACCBB13F76E + xor-digest = F66B5DA82D74918496B50BCC58AB2198 + A7023908D0AC9BC6F993800ED66BA4D3 + 90574B418F9313ABCF6D1B2E5A5690BA + 21349FF7B4A0FAB8D6918600225B7ACD + +Set 2, vector# 54: + key = 36363636363636363636 + IV = 00000000000000000000 + stream[0..63] = 1F9A14B98CB448D4002A3770361447F8 + D0FCA7B2BCFA40D618AB1833FF19DF6F + B9BE5D7A47B692FE64C7CA520D60DA1C + 35AC0B9E608C5E459037F8E9E68B8CD8 + stream[192..255] = 1FEDA2908F13CDD9173BBCD4768E7A20 + 3654C47A559AA91242AE6EED90581772 + A11CA7E7AB5E9044C10FE91C9FA48B81 + A213D4B43357E95B318E28CE1FA8C045 + stream[256..319] = 520BC403381964A1674226905F75DAC0 + 5D2B760BDE414D8494ADCC53973527B4 + 6B73FF86C6DCFF0781DDB346B784FD25 + A04DD0919BAB0307A11902AED883DC48 + stream[448..511] = FB9DAA7CAC309E70D9DF5EFED29401B8 + 32B2DEC6A4DD4C249ED2CAE2CED7052D + 4C73FABCFA489E56D4A78C30ACC7CD3F + 31C3C10D6B1B6BEB94E5829663AE53E0 + xor-digest = 575F46D572322875F036A716A5A987C2 + 72999B1E1A7AD2958DBC687530B2735A + CC60763507474BC76A7E980F120F2132 + 186CB7F3654EAC410B52E1C6C74642D6 + +Set 2, vector# 63: + key = 3F3F3F3F3F3F3F3F3F3F + IV = 00000000000000000000 + stream[0..63] = F2D9792B78C2D3EC67D8C80A710D19EA + DB163199C6D9A1CB8F30624D4B30D916 + E4C201E013EF6F4E0BA58296BAB2C561 + E737EDABD055F517CD546B2B22F27C66 + stream[192..255] = FDFB348C58892CDFAD20A7D2D4BA83D9 + 75862EAC35593F154B9B4323D487A762 + 802AEE46A3FAF0074A815FBEC00FB104 + 395E02E3BA0EFD60616670D800BE8641 + stream[256..319] = 37BD3FD4A5AD0BD7990B94E6AF98213C + BDFB54EE18918A73751BBA9F8D2B28C5 + BE5796166B740D10B3F6408C86707925 + 9D39965E95740C49D2FB156C319493C5 + stream[448..511] = A2F204C5985690B2BFEEC7DEFBD7CBA3 + 6C765676A61731647C6DFEAF90215DBA + 36A2168BC89542BAB3E8D404CE989E86 + 03899007F2656DF6A17A6516F725375A + xor-digest = 7BF9C7EE0A793EE956E78BB7590247E3 + 69244299304920548624C760D7537372 + 14464E3918E10D797247BF4B10883B87 + 19E15E0BE512115C4AC86DFD9F1E12AB + +Set 2, vector# 72: + key = 48484848484848484848 + IV = 00000000000000000000 + stream[0..63] = 435E4729820B9EF9670DACC074442115 + 00C1F4A18134B8FA1B08067050698D2F + A18B3827F5BE7DD06B75AF49CA442788 + 0B47FA46E74D48F424ED5C981BE1B9BF + stream[192..255] = 6D13EE06E76DB7837348016FFECEE7BE + 3F3D812A5FCDCCFC2A9AE5DDAAA776A8 + 44745A2A0442A8E0CE97A30CDF933229 + 84DC45C43FAAE7E15B31870F37C4A9AD + stream[256..319] = 48D6B3800D2C3775B13D0E0927FD81CF + 35E6F9662D5AED68D0E22BBE37B222C1 + 5FB8DA5D73768AD44AF8E48FB3336556 + 5571CECD079E42BA5F86B669C48F0A7D + stream[448..511] = 9CBBB687D06CE1D01D3D3D894AC66FF3 + 89BD9CBEB6DFC6988FF39DF4B11C0296 + AE09F99AC63D0ECFC39E2D0B28825630 + 26DA86D1E0EDA3C4B1A3A4E4C28C2040 + xor-digest = 6D37BF8CBB9581A71106DD3170D61926 + EBEBD9BA6469FBF06BA15EDEC9F00811 + 9E65D2BC3370B345F53E545345E40DF7 + 2E8A524E826437AD3DD5CD814CE1CB1E + +Set 2, vector# 81: + key = 51515151515151515151 + IV = 00000000000000000000 + stream[0..63] = 0FC805C2829B79F15F34AC308018C3E7 + 34B14005BE0473B19378CE115146A094 + 0DAE4DA349905637C3981F68E430047A + A3056EEF32174120D9DA49B2CF8C0EA7 + stream[192..255] = 9388BA6B4D10E0B2F33A092273052300 + 9E6211FEECDEDFF5ACA9438E2C3CB37B + 6A49F57B5E6C73B9107AA6D120005964 + BCDE4DD6766AC98D6395BC3232AF35FB + stream[256..319] = 75D8595E76693C32B0795F61BE77DEFB + 3ED354FAAD29242D99F3BFC0484A51B0 + AF5CBC3B07E7C5659D4AB716371F0D64 + A88B0763A9B1CA33BCBFA75B430161D0 + stream[448..511] = 689AD47E7ADBB2F7867C01811427ECD1 + 2122DA2C9D41D474B2FCE5FAC6606AE7 + 761FFA11B1F790AFF5173FDFAA84085C + DC49B0A93B46CE8D3395A44742810CF8 + xor-digest = E132E58124DB7F70C5CA326EC41855FD + 2FAA6326F7F54301B2F485ADDBEC3D3F + 6498E19AA308BB585569DAAB5D39D46A + E529603A5955ADDDD79C3C2FD002825C + +Set 2, vector# 90: + key = 5A5A5A5A5A5A5A5A5A5A + IV = 00000000000000000000 + stream[0..63] = 2C7F53F2FD7CC9342EBDB26E8245BB9F + 298D54B74A7E7C608E4EE6FD7A6608B6 + 9EE71B83D9635C457DD9D05FE9090FBA + 05E249D44218E97D1B905E4F0810A912 + stream[192..255] = FCF3B19A6355A85830A068339E297391 + F79486B659F4BA98E3015D9BAA13A2E8 + 7F069CD5FED504F466A92B92107C4B21 + 792E690467C7E2094055F48540F024CE + stream[256..319] = 794471E527052FEF0FB797E288032D7D + A3BF1D4C0955E6E1FFAC1D78A5936CCC + 894D498C9D6AB826E8D8DCD58022CA0D + 610CA0733281A87E34D25FECD0E2508E + stream[448..511] = 1537EFC35B24460E0C96D1ABEA7EC9C4 + C0567222ADC0181ED68D12F695FB3A2B + 65760A00CC353F2675819225E574EB9B + 9FCF37F90D6351F5F89E98BB5B4D23DD + xor-digest = 991125CF01E862459F3A3CF3130E6409 + 4F267BCB6DB6F545315A137068D3B754 + 458800513EB758545A99956FBB14F791 + 9583F158A67274A5FB9AFFFD1863C2B3 + +Set 2, vector# 99: + key = 63636363636363636363 + IV = 00000000000000000000 + stream[0..63] = F6652E27AC1B2705B90EAAC51D79FE00 + 093FD0FA2DC60E743768B47477E0129A + 2FD23E0FF656F56A39BA260FA2D45BB3 + 5BA106507CF6A0027F86C92E0174DB1A + stream[192..255] = E59768F3627BE1541F803B1523212F26 + 9524E7257FAFC3121EB9D6C30B9E651F + 5BBB507CBE63620007FAA8109BA340CB + 4D9132EC5A18F9E322F7D0BF5E8D7F4F + stream[256..319] = 2F7B8AEAF185ADA971FBBA7C716DF689 + 3FFC24C22F7F576E60B28C08FC7C00B4 + 0FDAFDA95CAAAF970C2B5537AF4BB436 + 93D45D20D56EF92B5EDC1F6C29F12906 + stream[448..511] = 5C7878A24D338E6C732536B48B14C6B4 + 2EC62E7220CCFB2D997A167B34343787 + F0C03328AF85401A9A4AA22926901ACB + 9079525D256D74DF3CA958541D364010 + xor-digest = EEA65C2D1B122A93E50A2AC4D3239C59 + 0365FD42FB54FBD80914C677F4ACB2BF + CEFF6C596C03617140340A79E06C649C + 0F6C9351358B6CC396E11CC2F3EFFFC5 + +Set 2, vector#108: + key = 6C6C6C6C6C6C6C6C6C6C + IV = 00000000000000000000 + stream[0..63] = 7E1A2E71199A17B0BB9A8B9B8102A9AD + DA23AB4642AA1922B334D0A6B5D62F37 + 100055CCCC7D4D5694DE2745221B6BDF + 02ED1F56B81BDDA070C0E09643FB31DE + stream[192..255] = CB3ED9DF81EF89063DF118A6C08C36E4 + 750A999E452328DE398A5581D6ABB6FC + B739D189773D19C7073FD54EBFB07A26 + BBC737196073036049DEF546DBDE6FB6 + stream[256..319] = 0C31B4C18EF8863E1F891B13B08967EF + 2D2026926D5D508FFE5D6AD06A664E64 + BA675C5D2081C3033664B5C2A5C10670 + 1BE4893152F8BF00DCB334470423A21B + stream[448..511] = 809D6CC7F3E5303927B47948A68AA2AF + 2113C9B5D969898F27E30E24D148EBFC + DFDA0DD27E7E7C269E1B774260125800 + E40C9785FD24E9AFD64942180F2E5C75 + xor-digest = 7DDD82137D58DCF886F8BCBA29798269 + 7CF9A0F384492CB0E31FCA3A456D54BD + 10BC808208DD5A90E083EEEC5F3145E2 + 888E98162158B3ACC523798667A24CE8 + +Set 2, vector#117: + key = 75757575757575757575 + IV = 00000000000000000000 + stream[0..63] = EAD8FBE63C182904DD66EDB353791503 + 8DDEE8EEAAE44F9DB87DEF80D9DCFAA7 + 1017333258A8CADA82D35292A48CB49B + 4838D84E0C95A12BD5B9805FE726A804 + stream[192..255] = 208FA6B0309284BFBD185AF987B4CFB6 + 65CF191D57C45ECD869DDCA329EBAB7E + 9D7003BC227C5A0D278B64357F5B31E7 + 4A83DA5BADF99DAED902F804CF0BC7F1 + stream[256..319] = D2F07231788112C5096C74FFAC36E765 + 4D4E79FD02E545B33BD4FB2EE35150E1 + CAD8A5BA225230FE57955866927DB0DF + 0610E3462F425411D257E4BD5D52E6D8 + stream[448..511] = 7ED0A3B04B194D6141AEF29D626272B8 + 869ADC25F7158FDBFAD036A15D633C3F + 2161243F66EE3EF3D35FEA9E2E1F8095 + 3B5F5C1AD9FEB50CC20A30C7A33079D9 + xor-digest = F64ABDFC5061BE3904DD56DA047711A3 + 35413C8B20E8100F2A681D3CE3FD55EA + 12181C69DAACEC69D27B9ABDEBA4F591 + BA2E4CBAA9C840F8B21A086F45572DFF + +Set 2, vector#126: + key = 7E7E7E7E7E7E7E7E7E7E + IV = 00000000000000000000 + stream[0..63] = 7CC89FF6F0DF4C88343622535F876688 + 4FB2A27760EC4EA0ACA75CC5907DB254 + EE37DF12E5C89CB0A78A569279BBCDB1 + 21C34EFBBAC3311006A6DD01DC2836C3 + stream[192..255] = 179FE09EA2E5598C870E88089E4EE1B1 + FF235CEDC6EC6AF26D0291BF8C93524D + 61AB1A4B05E6F42CCDB876C47AD4BADD + 0A24985E732F6776334FB5526D89BFDE + stream[256..319] = 5ABE9B8F5C71853905A911E1CBC4438C + 9B3D4DD3AA8A38C433597C163BD2C7D6 + 6155466AB5D15ADDA22F959940E3833F + 822326EC9DC284D7210FD39D21485C62 + stream[448..511] = 1C29C24BD3423A43C4FE454E7E6788CB + 7EAE84A1AF400D412DC1F4C4D6732271 + 6F095F7A51D26C80BEA656107CAE9A6C + F997963EA4C4B9596FF091BDBAD2DD41 + xor-digest = FBD314825DFECC8C127EF9F61F680EC5 + 90AD16AB53D335530CC70195D42227A5 + DE01D77D93CC4B6B340655C06A43047A + 270F22477EE0E43DDBBF431AC6DD36E7 + +Set 2, vector#135: + key = 87878787878787878787 + IV = 00000000000000000000 + stream[0..63] = 01DA3DC2C02DF6FF26DBAEFA1A6C2780 + A66ECF539527B0FDC73D4468798F7D80 + E15E0633C9B71A8A5A33EBA9E29F9035 + E6BF125417BE003D4DD5048C8DC64BD8 + stream[192..255] = 0EC0EA759FD67F2357836A9CEBE58FBA + 7064A368F36A0CC785B89DB0C8FBF6A7 + AD400C21FE7AFCFD382B140EC2E7CA44 + B315FDF79FFF9E0652802577AE8343AE + stream[256..319] = 91022C2D328706843E6F201B4A29E2B1 + B3B4D9E66C313264E14C5B017A89AC94 + 1179E4BDB99171263B628BEB92FC4FFE + DCA064715E9E3DAF96CDE8EEC377301A + stream[448..511] = EF49F76F7E9CAFE273B45C50785C2C53 + AA0177BB9F91CCD10E74CE4AF926BF9C + 767AB065F36019FB6755569ED1B40AC8 + 20D00FE052BE8DF23BC472D8F9AAF68F + xor-digest = D8C3912C25C656F81E417B5F94898EB3 + B0D60C47B9F3EF62E11C23E4F31E327D + CC65EA914584DCE5F659D768112C478B + 7786002CFDBEBFF86BE39F0B2FEC53A2 + +Set 2, vector#144: + key = 90909090909090909090 + IV = 00000000000000000000 + stream[0..63] = 6AB0802657876C8F7211B14CE05E7802 + 4AA6D1E5F974815D398D7BB9E16855C3 + 2FB8896F57C43828D1AE034BAE3F42D6 + 1D006022C71103EDD1125CC5EBFDBCE0 + stream[192..255] = 88214677293AB58CE7741E6620E7E494 + 87BE9C2AC25E1BD86D9790CC30925DD9 + BAEA934BF1B66DFC6ED59F277FB73AE7 + F061A9A755732AD409793E71DAF33D2F + stream[256..319] = F56466340AD5F9652852C4A6C5419788 + 41055E5F6101880C742DE820DA34EA22 + EED5F9F25BA1654407469BCAB70D33B4 + F5061CBE97A915A78B6E8A915CD34343 + stream[448..511] = 301B4C0D28CE2A00996031B076FBB20B + E3646E80760E163D22A2600D77F63AA2 + 3F48FB42AF20BE33B5C2CC0E0BBD40C1 + 5375578FA8A3005571C9B3F58381B250 + xor-digest = F9F2779B49CD6E88D70188E3A30B0269 + D7B548DF0546B4692D293833EF7BBFBC + 10E1EE87A00F498249C21845F86DB25D + 6EF844DAA40E0B8756C607E442C33956 + +Set 2, vector#153: + key = 99999999999999999999 + IV = 00000000000000000000 + stream[0..63] = D6D25A2BE87898CE1FECAFCE8770B121 + 4C7193240939F29545F76278FCB196D5 + B7D9CD12FC253C495BE60E0E3707438E + 2CB54214899BFAC8F5895AC439D29F25 + stream[192..255] = 69E26B3E0B2514D7FE1F39A4B81E4C8B + AC55B40D200795C94936C8E2BA2E2E7F + AF46865F3A9E4883AB2A4D698BB8D817 + EF62F41E660FBE5F070320C46260AA6F + stream[256..319] = A8322CD98D7D93A02A8E18360DEEBEBB + 1A01E77457DC39B1C204FF96E553E2BC + FF1DF66F6E733DDC73C54A71B377D9E7 + 27E8EF96BDF34D1184112CC7481F167B + stream[448..511] = 10A4BF8ECFB25198C1BB5D3EA5461818 + 4729D59EA85315C4F04138D7C9943112 + 8EDD8736B77EFE977236796FD19240A0 + BF71B2391E90BB4AFB530A6B80D8794C + xor-digest = 9EA0AB5474C153C83DE6860C9D9B4B31 + B245327E28E99CA5EF581831B4EB1CD9 + 61B215AFC665231AF59C3E2462D8ED1B + 618D754F4A2F2F2C8DB8667439D5A152 + +Set 2, vector#162: + key = A2A2A2A2A2A2A2A2A2A2 + IV = 00000000000000000000 + stream[0..63] = EA8BD0720E569161E9BD399691518E7A + 54830A6B8EA55FA00C651B00B1F1EA2E + C68741910B8F0367B7987024D807DB8E + C7015462E6B53578EF129EE67417BF01 + stream[192..255] = D6057F137D1FC24E7F0A34C51D9C0A0E + 823C26339BCDBDA90FC219F582B15D1C + 42B0E41BCCB2643731EA7386A3D51E88 + 56155010EF82099D8EABD5206357A3CF + stream[256..319] = 0E46D1C2F449616A27005A3EAC76A4AD + B274B9D20BF963ECD159BF1ECEDD8E92 + 8196D33CF6B95116F783BA68C3964B61 + 049BEBDA36A15F4AEC8549A20D7E0AFF + stream[448..511] = F7C97CD9198EDE554A0C10EB6A699831 + 7626FCC74E0F0EBAFCDA93BBF1029505 + 2C10C5AF8C7C805E698FEED1474E59FF + F7CA36B22BC3B76719A87B69042536FA + xor-digest = 066BC24CFB6B12FF98BCB14A03F6FB96 + C5A842181B57E5AC64B13905FBDFDFA7 + 6A69995D10FDDE6136F71421C94F9261 + 123A7AB94A618B53F5B9B2B9499D32C4 + +Set 2, vector#171: + key = ABABABABABABABABABAB + IV = 00000000000000000000 + stream[0..63] = E2ED9461B719158E3F48D2D8CDACA1A1 + 3626A0BF92ECC9AB9272DA04C284A649 + A228B32C4607C6D0FDA518ECD5D9548C + 8044DCE2236F0B9415BEF8BB0E414EB6 + stream[192..255] = 033454A28BE92FCBE564CAA7F89FE923 + C4806D4FBA287536DA74F29B4F359C81 + 2A7F7038A675E1139B0510E4181AE169 + 3A412C55DC8D2B106FB690DD7B1B0998 + stream[256..319] = EA4C80A27131E734D426AB240DBCBD05 + 0158D3D1F2865CB2C029BDF5D0A914E4 + 5BDD3DC8F28FFEBE3AD98090A6754625 + DBB84D9C2F36EDE755967B649EE37075 + stream[448..511] = 48AE58F9CF8D2522E7E6541F36FF0720 + 50E5F8FDD173807BE42A2D0B0B859D5D + B1570B180F6D9F861A7CA19A535858B2 + EDD7FA939C0B442DE3B8A5D74776C0B0 + xor-digest = 5D164B4F8E2911D9D192FD8C6B837869 + 2401EDD92ED0A4463D61A8134C3346EC + 7DD224CD632FF2BD8AABAE5CB869A6E9 + 8C58FFCD372FF9E9216BB2951F77DAD3 + +Set 2, vector#180: + key = B4B4B4B4B4B4B4B4B4B4 + IV = 00000000000000000000 + stream[0..63] = 736640C555214B9D30C268B8B651F614 + C8724314624A4FDBA75D6DC8C15DF93B + EB80E8325218EA489128BBFDA19A6413 + 9510DE9B6AC006DF3B29CF7A673016BF + stream[192..255] = B6F45E71ACB33ABDF77ABEADABF50B19 + 3448ECEDA50CD70E9AC05F3F3860C9E3 + 47DF93AAC79CF2F69A9E675BC99F3990 + 822DEA02B57333F63B79D92A06D23FE5 + stream[256..319] = DFD0B42211250AE2645006864CECD6DA + 89A57B978F57D79E50DF883A49B88D8E + 211CA69518B487C22A96B010CB92901B + 2B8A4196EA1086C8BF306F8BFCDFEAC4 + stream[448..511] = 0CC9D87CFDCF2F5094BB0BC7959FD20E + C5A86D0B4F1BB6E7E46B91697300CF34 + 87C5C2CFC651079C3DFBB2B17CF98FA9 + 423EAD13D975B9D69D5A919B7F59AEF6 + xor-digest = 6359A47FECD0A662A367B233C012F1F9 + 1F0C0FB5642151BACB3251E4E26E75A7 + 755B6184C98ECD10F90D03C817F6E427 + 63FCC7E807CCFACC4CF120E0496077DD + +Set 2, vector#189: + key = BDBDBDBDBDBDBDBDBDBD + IV = 00000000000000000000 + stream[0..63] = 7FE26D4ED762AC9D9C1D45DC116A393C + 1C98F3F7181A8109475C97AE3D5FAA38 + 1F8286A55A7A9A7EAD349EB0354E8914 + 90F7EE0C5496E3FCF217D1E71A28638A + stream[192..255] = 06045815FB8B880DCCE9A0FE286F7467 + B80290BAB8389E7CC6EB828DB1CF1CA2 + B471CFCDCB7924172FDB6213E77A2155 + 537F79224E3C340C78C5B9E4BD6C2803 + stream[256..319] = C4BD39FE0A1E4E531420AC6BA1217298 + EFA81FAD06881179219470B1FF1F4966 + AC09CD84ED67A3014C988639C5ED7E8F + C7C42651545D2946C476E79096DF676C + stream[448..511] = A1872E9DD2355AE77A36987FEF290CF2 + 8F5403ADE6867B7A658C156302AB4C63 + 18BFEE598F33D8AAE877AD773ED3D78A + 82E534F17A8866DABE26B227B3B2098A + xor-digest = AFEE3A56B281A6CE4E9C54E80BA36EA6 + 0B1CDADB185DB72EC83D2E67A9197236 + 842758D71794F88E40B1C7F31DC12C5D + 49B00912BF5708FE2EC812DA46E4C6F4 + +Set 2, vector#198: + key = C6C6C6C6C6C6C6C6C6C6 + IV = 00000000000000000000 + stream[0..63] = CACCB9A2E28AA22B80634BBA8572F27E + 8BBF72F76F54FDF93F6692824AEB1D35 + 965AD35ED01571125E6EA8DEECC21290 + F530748CB2B43DF34081A93C8BA9F652 + stream[192..255] = 443A382587AF7B5DA460EAC09595CFA6 + 2917D25E1F298C739D23ABE74C3DFD6D + CE8F32DD208439BF04E1694098BD8C66 + AD5E683F008588ECC6CE51B376DF172A + stream[256..319] = 7C6762465EF13B387C5E6893A601F723 + A80C5881B0E909EF3A87A427A368F6A4 + 0B4CEFA0645846419F640B20BF1916D5 + 8E9932F55E71831F84EEF6ABCFE8162F + stream[448..511] = 417C31FFDA7823EE7F99C19E6340DA3D + 72AA1D95FBCBF9426F77D4E09C88FDFF + 44A2F55B62458E7C713A7845FD8E4D8E + 9581E9AA9089567926F7A8941680BF17 + xor-digest = AC912E896C6FBC0C6CD151955D703A08 + 74579E135D2F9F499F33A0E6D6236B43 + 3EFB6BE44EC2EEDB06DABB503ACA120B + 7AB1D3224C06C8394E4BCBB27CC7E777 + +Set 2, vector#207: + key = CFCFCFCFCFCFCFCFCFCF + IV = 00000000000000000000 + stream[0..63] = 91146F1605C9F8B0B1BAA71E77C660BB + 77846361F43250C1F7AA9B5613E3928F + 4D3AFEDF6A489CC471D337549134FCCB + B560A99F275BCF8604E039A338566E32 + stream[192..255] = 955C6ED81E1925E3C777AB942D6DD36B + CF81DF2DDDFEFB0BFB2DAB4159B3170F + 523A40C626BC22CA4CE7C332810521FF + 7ACB370CA30007AB1B85602427BE348E + stream[256..319] = A0934F52AF3E20D4082D734CD4D5BC3C + 223F0B6ECC90C89FAADC6DE32FE30429 + DB10CB61045116CE0F5B2582C3B12643 + FC9A13F592C0516A503EE56B7B848A5A + stream[448..511] = 7AA95A6CD6470FEDD8EDC44B6410A532 + 4FD294F369263CA729F52DFFF4C004D1 + 5A8B57647A48B6B237EBACB1F150AF1E + 837FB9E11161D3C2E2042C2C7DBFF922 + xor-digest = 4BE3FA3BACB68C2D04F4CFB7FFAFBE9F + 51DCF564AF201D8FA801C4728A419213 + 9446CB68D8F1C5091B2AF4C32A0CC4A4 + 623D39AD9979E89F9C317B2D65200F7D + +Set 2, vector#216: + key = D8D8D8D8D8D8D8D8D8D8 + IV = 00000000000000000000 + stream[0..63] = 9B452E88539B47CFE4ACC7713C3CCB76 + D15BBBF36A8280917D701A9A516204FF + 0D0A21A38E6221E7E64F416A381FE6E0 + 48FADF96ED9E5599F5C01D97D3E2C8FD + stream[192..255] = AD8FFABE68DA9F61CE7B67D11A873B03 + 988F6B6C385F61455F2CB45DC3CC0893 + CC7484491D0AF1C470E8CFF58F70FE70 + 173E85EE2D67B73DCC9E7CB6550E42E1 + stream[256..319] = 00A2E750AF680E6A61920D9BA674EE92 + 664FB5282BF44C0009A0F9FA0BC51793 + 6AB0295A54E22EBEB9432D9CE5D518C6 + 3F2919EA615BB76853205DA3FE61C011 + stream[448..511] = BC3AF274262DF0838D3CF9F6DC4B825D + C6DC120BE17E930FED17C4AD18C7E98E + A129CAB3AD036DB2E2B059C402F728C8 + 5B219F77A8FB74B54FBD7D145DF4547E + xor-digest = 6963342177EEC9B691B5C82B480FED89 + 81868AFC788E3573DE62F2AE9A9557A1 + 0C5F39B20DC9BE62B60AB3DED4C3603A + A956729A3890232836D1E995D34580A8 + +Set 2, vector#225: + key = E1E1E1E1E1E1E1E1E1E1 + IV = 00000000000000000000 + stream[0..63] = 1D34750D13D4C28BE03D95688A98FB00 + 0AE065F9289E5F48E070113A1FD2A7E5 + 7FDBE7410C40F4D3924032496F069BD0 + FA9ED7241632AB07F312D8FAEAC31C59 + stream[192..255] = F1DD677F3711E26C4A276874C73726C3 + D356AA8E6DD34951B6D5EC504B054DFE + 29114CA15F214775D56BB7B75200D152 + E6E9E44A18CB00B4FB940D6C0AC041B6 + stream[256..319] = F8E17AA6EE31FCA075CDF92478059A99 + 93614CFCBF793B0B93577A635752C419 + E709CB07913C3AC179C693A5C225849B + 7A40CA448D9373861A32EDDB2033F45E + stream[448..511] = D3149B0B62D2B9C5CAF5080CEE9FBFA8 + A3B7E593097D44735D7671A1F473388F + 3F27A13487064E90B9DB7E698E699237 + 22E16D2AF78C84F8FDE961B5DB0DE08B + xor-digest = 89CEDC5963E7BFB2781AC34616F83D65 + C2E8D306FBDA58ED2023D21034723439 + CA85D73675549E97DEA371D3DA14D725 + A5B1E15C93DF72F783F3FE17A7DBE455 + +Set 2, vector#234: + key = EAEAEAEAEAEAEAEAEAEA + IV = 00000000000000000000 + stream[0..63] = 14B1062591D38C06D50B0BDF05BA594B + 8ADF2598145594FC06AEBBC3C1803A9F + 72B6D3A9BA549B35E01DC52A8B14EC66 + DC70DCA3BDD9728DFA030EB1BC8C3EB8 + stream[192..255] = 04E59AEF8C0D71199BAB3BF84FA0672B + 515BF4C2CFBA0A718DAA99B1255FA660 + A5C57BEFF43EDBC769B8B23662E07C22 + 29E1202F1713301A076888B606CA8610 + stream[256..319] = 51D545B727FE63FB47D00584411D7496 + B8FD1057017D35C180EA732443D8FB0F + 714ABFB8C8AEC4085F461C323F43F631 + 1B3110ABD2951F12BBC702AEAE7D6353 + stream[448..511] = 1319E7BDE46BA59746EAEAB2A4AF6D05 + 647DBC990C5081F0480A473DAEA3C915 + 3FBA464811527D04BF8073C0B07D6D99 + 9D6E8B8637710DB4D9A7019D4303E7D0 + xor-digest = 073D2DCC504C8C939C479AF52E183E71 + 0C8271D497A589F0B8130872B0F65F1B + 652141D6C22E2539B3212EA0B67782D1 + 87E757CB71C1C41C271E09B3A8B8F061 + +Set 2, vector#243: + key = F3F3F3F3F3F3F3F3F3F3 + IV = 00000000000000000000 + stream[0..63] = 6F91E50A1812C42C60711F10644DF00B + C2C6D0EE78B1C0D81E7FFD6AB4E2C61F + AC4A3ECF2C6765693CF412E704355118 + 6982F0051DD1820BF9A8E58511B4F1B1 + stream[192..255] = 9506812219BC74DBEED7DC5044D6D6E4 + 0A8A95A0296365A4A726912178A3F6F1 + 64DCEA5E2A6758CF792955D08BCE4ABC + AA7D26C446E71FF5D329309FC4D83D66 + stream[256..319] = 547034A7BB80E5FCF2B7D6CB42D434C2 + E30658A7A2059F3F0A3AC85219DA3D53 + E98EEE123A10B1577B3CF39A624AD525 + 62130A32DDABBA9ADC7B43C8A9C3E052 + stream[448..511] = 4CD2E16C57CB5D4D308A0CEE5789CF93 + 03B966C0507BF124B892AEDFBE452A8D + F50D4F0328BD61093F05395813B8EFFC + AADF15A66ED5403A2AF9260F5AAB50D0 + xor-digest = 57F92994DA4233DC5AAF5A83E0A45BB6 + FDCF501D2E0C29D42BA013FA25C06F7C + 10E2C59AACA7FB7C68F6D13C452F328B + 96A5FCDD11ADF60805E977E2DA4168C1 + +Set 2, vector#252: + key = FCFCFCFCFCFCFCFCFCFC + IV = 00000000000000000000 + stream[0..63] = 0F5E42876722C200404CCFB421C0FC7A + B78CA298FFA9243FD76181FEE0C806EC + DB28BB296EEAACA1AAAD27BC5BC52A25 + 7779E10A1FB2F6D1D62DC8D91BA67FEA + stream[192..255] = C9A3CC437DDE342EB811CC732E069C0C + 711DCA252A71101FB5575A9157612B65 + D9FEF435CC7314956319A97AE66879EF + 01A56BB7DFAD6D4049A3F85A28E946AE + stream[256..319] = 6B4513126AF0707F802642D11468AA17 + 600EE7D57C5B9607F101AFAC255FBC81 + C669375BD839CAB0F59C47A0E64A0ACB + FAD35CD75C896157B51AEAD47EEE8508 + stream[448..511] = 035C46D2F3214D41CB87CE305CB20B24 + 433C41F9EA4A4BA0B8BB2A5575100DFF + 5741E3F58BDDD5C80283D9A2E35B956D + 77E412C5CD7E647D634E1B1AB6D92172 + xor-digest = ADFA83A0BD89255AFA375692F6FF4060 + F2E4F6A9519CC4ABA1B4F1955D016115 + 7A93FD624EAE206A4E8F4299F7EAD78F + 24DA856DCB1E94BF94FC11B55C4A3667 + +Test vectors -- set 3 +===================== + +Set 3, vector# 0: + key = 00010203040506070809 + IV = 00000000000000000000 + stream[0..63] = D2A8740BBA6FD9067077F9AFC0C27D40 + 32B6AEAE50C42ECEFF255C584C0143E7 + 8CFA4E3EBE03074F23D762D0A7563521 + BE755B2166CD920EECBB5DB84737FA01 + stream[192..255] = 3F6A4CDDA613CE64B1F9C9AC662E4AB2 + EF2751400CD6A0A119CF0BE7B287E727 + 536D18D953327B2D971EF9F34EA28762 + CD062B7AEA83C1AC4363333219F767F8 + stream[256..319] = 44D06CB5157B2A8EE1CEEBC6DD5B500D + E7FBF83F189DFBE822042F85D814427F + F03F108FDB0989E7693257C863947712 + 8BF371CAA422D3306F6CDC1E03645BFE + stream[448..511] = 30CD0B54E741F4CDD6E9B5CCAB184D7A + 3453C03D4158FE7CB8BC92ECB66811C6 + E560C62CF1ADE69BAE308ADC0602667C + CADEE71244968844376FBEB113E73345 + xor-digest = 44DFE4D6F43708EC245C7EACA3B1B20F + BFA9436C7B2DC676457C932CC11F3960 + E5D9852D2F9FDC77AEA2DDEC91CC2E1B + DE326CF4E21ED9380983C897CDC005A6 + +Set 3, vector# 9: + key = 090A0B0C0D0E0F101112 + IV = 00000000000000000000 + stream[0..63] = 1849D8F8D00D4FD49CA825C40654B49A + CD75DD143661F099A12911E14AFB9A35 + E6A19303809DE3B5956178A9CC6E29A8 + CC97F1A3C47AA3360B4819ADDF4FFF7D + stream[192..255] = A58AE7EF31280AB14224B25C1BEDEB0E + 08BA7CE89BDBFCF3EAE875C248C3203F + BAD73B2239719F7392EB156EB2CD2E67 + 3D36D15B6FE94D92D39B941A9993E91F + stream[256..319] = 76FD514B6E02C3EF97203D3C65109BF9 + B65CC60F5301F125FD13A88C3EB2FB7D + 92472AC82FA0D41B1C24588FB58B6FBB + C48F549F8DA556AB5050A40892AA2150 + stream[448..511] = 70D9531FAED799F560491757220DC8A9 + 92EEC0D6C745661A04D0AAEEC515CC3F + EB318E80E18BCF55D5EF9C22EA9EF195 + D82E4BA17E676BDBD6F22C0C5747FE7D + xor-digest = A40AD16354D565E7E7D4009B0A40DAB1 + 08C5E95E3DB2680D0B4E865257C474CD + 599DC5A6C9907A1DE6C2678AC94228EF + 71BD924EEDFFDA8BCF914E8791525B4D + +Set 3, vector# 18: + key = 12131415161718191A1B + IV = 00000000000000000000 + stream[0..63] = D24D36A07F26A03280CE4C2A671FC7B6 + 17E92D231F649128EB4D17070003C8D3 + 65DA16662EFFA87679E6C4E557F84E12 + E69FB65A496394D35DECBC9714C16BB1 + stream[192..255] = C7129A32FE9B6A2E29BCE6903D101085 + 3F39E0D7F9CF7AA5EFDD0A6A7F1AD32F + ADB3072BC10E7695EBF35AD3D462153A + 00448FC7DB068978A7FE75394756AC3F + stream[256..319] = EE85884D8FF9E1D1906222BAB49CC989 + E8CB6FF872760A17C7186F25ADBCFF01 + 849E960625D6B21B6789CA1AB6F676E5 + 944C17F3BEDE9EBACA5336883ABD4FF6 + stream[448..511] = B2A5884F10B45AB018EE03DBD6775753 + 87DA3180D1E12BEC63615A89C200B698 + 057F09C60C21737AA68B9599451150CD + 72C0E09BB2025E7F803C76A34AE46276 + xor-digest = 78A29D158AD7EC31EE3BA621687FAA02 + A60A1EDDFB1058BE462C337321E5978A + CE98C374C2BE605728EBCDF2B98C14C0 + FF3578D624F7B8B2BA1241741E4ADB36 + +Set 3, vector# 27: + key = 1B1C1D1E1F2021222324 + IV = 00000000000000000000 + stream[0..63] = CC84F164802715C020425A7FF64C1A0B + 033D52B940AC2CC91F0737592951826A + 76D190B92661E4FAD4750451D6E365CE + FF041FAB358A09B5DDDAD4AAD6FA460E + stream[192..255] = 94CD4537F903E8DC7EA41438271E46AE + C274FB1B0E406F023681EE4364DC2663 + 5BECCCEB361FB71D64B8EF76B3525F12 + 9401990C1189B5B9A703C05CA8ABF4D3 + stream[256..319] = FA997F3C1723AAECE7E77009F2E3D4F2 + B272EE894C93CE45B923A25EA70C282E + 0F5A18AB1FF34F8D408BFBA1DD1851FD + F09BDF0F6F511DEFC40A0F59C8EE51D0 + stream[448..511] = 63DD4AD292C8E24E662CBE2BE342805F + 7968F4032C4C0E7B1A105802D9A204E0 + C71194EFD4227539BAE677DF3B8A00DC + 36170F3416955FE116B33AA83BC0B8D9 + xor-digest = C8F949292D545C92443F5D27BA0E94BF + F14EB962F43C8401389FA9B7D627F1C3 + 8BD100295AFC5DB3415FB5B2C86505C1 + F459E40F39A2B26EB2436F8826B6F73B + +Set 3, vector# 36: + key = 2425262728292A2B2C2D + IV = 00000000000000000000 + stream[0..63] = 2DE8D0F2BC8176D633CA1052E1554C4D + 54A2118E4776445251193CE6C1A43959 + 4DAE1126EF6A78E62AA19B843BF60DEC + 261D6DA1EA64C1449D83E83D29267747 + stream[192..255] = 567DAC9BAD7DFC04610BE6142B5EE022 + 9CECE20AFC83FF3BADBF85D814B17E6E + 3A41075146E1FBF757F76F525EC99378 + 6ED6A1A3C5F686421A4BEB17CD6F4C77 + stream[256..319] = 4B947774271656982FDECE58AC358B2D + B23F9DD07AFBD98D4F8A4F25653EB767 + 30BF17FAAB9EDB1305AC31E1A707DD50 + C4DB6DE759A73133507F026C6FE83945 + stream[448..511] = 8712F7AFF67E07781B7350862A1C7005 + 64C65A6C5DA5B586B42DFA75FE14DB9C + A4A882F17238AF574D9E2EEDCCB57D61 + BC1591CD1A4D103F69657E3AAB251CD3 + xor-digest = 95D8769D02F8B788841A22C78687F950 + 9771EAA7B8CAA248629798B6DEE49B7A + D3C124C0B1F71970FD1770E86D58A78F + A04FA8D87DCE49BD1138E606D6C507D4 + +Set 3, vector# 45: + key = 2D2E2F30313233343536 + IV = 00000000000000000000 + stream[0..63] = 0B4A173B35C6705A4DB98C4D0FC70B8F + 4C1EB77A823B550C296770F2C0CEED87 + B47B66E828CD39723663D60578C676AB + 39AD5F3BE5D2676E685C1143BFF19A52 + stream[192..255] = B85128088D97766345A23642655DA385 + 683ACF6A99100268871673EE280C7468 + 9FC6A165179FC774DBA28436C472A736 + 7487228D5606BE4864A2A185AB58540F + stream[256..319] = 6CDF8223648D818C84A98FA3869D769F + E46E60A0C5809309F4604CD3EC28453A + 84F9373C788397701C5573EBCD6E3F2F + E9A89E037328D9BD3B38512346E09FE0 + stream[448..511] = 833DE70D31769D4A8A0D626A88A7EE03 + 480E74ABB8AD2CEA6C01FA994278B01D + 109D1DA4B58352EB98749B5CA064A62E + 92AF98DF4B65AD83855E90C4455F88A6 + xor-digest = FD84F65088C9A9E12C05E8044F70D7FA + 941B8CBA46FA563DBAB51AE4509BB50F + 69768BF5E9D5103037D7DF53C748FDAF + 9E49DED381751E6F99A18DFA4F0B9F2F + +Set 3, vector# 54: + key = 363738393A3B3C3D3E3F + IV = 00000000000000000000 + stream[0..63] = BE006EB16B3554B2F3B44E22F6FA657A + 3567A9B62F96133F300ED2843AE6E524 + 7BABD8521C2099DF4080A51B022BC53D + 881BB63766150D26EA5258A1B4412FBC + stream[192..255] = CD44882646F62EBB42037D4D3895CC56 + C010DE5A0A21E233E520FFD9BA579CE7 + 27A5E631D94678D1CD84E069A9B64A63 + 50C6CFD042BBB924E02F118324019ECB + stream[256..319] = 84FF2789A1DEE20DD3BA5BE9255DFDD2 + 9CEA78155F7DE266AE4BEE5C1004D947 + 31B44B415997B3289F57D330E8147AF6 + 51AFE60CD2C68C4EA0EBA6BF174BCD47 + stream[448..511] = 22127164A78995D7EF9E6E1BC9C7E64F + 7B2CCD2819C165DF422BF33954D48F6D + 6310F63C073F45D7AC60F56D8C947802 + 2D2FA529A214E73DFCB8692DCF4D278F + xor-digest = DCC5243EF25FD1385CD9AF2C6C9267B5 + 86B33BBC4B7ADB45FF2C1496A87D8D7A + 38233E5B8C466D89EB7A46A2527FA2CF + 816A1C658487FDE0558989B994DA7D3E + +Set 3, vector# 63: + key = 3F404142434445464748 + IV = 00000000000000000000 + stream[0..63] = 6A3E215FD1A2A55AEC4C84BB216494FD + 81C17279D131527A9FD4F3B04350B0C7 + 365B375827950AD45EE8388E00F8A8FC + F021B3D63FE031A7CF4E8D0EB46B0155 + stream[192..255] = B38EA20CC97B8B4F8EA02ECE132370E4 + 677B0E486997CE6E33CC65A8AA26DDCE + EA495B5D56EA9907962FEFDA57D010DC + C93F9482966578762E460C8B72624E2E + stream[256..319] = 06FC1D28F9F5BE1D23E1F706F20C748C + 8B459FFC5B2DE4D49FD57E2BBCE4D57B + B3BB70F078CB0458C76307E8843D1A4F + BF6F08C8D766885AF0015B6C7EE7FA36 + stream[448..511] = 64D70BFB3004946C465646B4961B0D22 + 80B8EB7D7CB2572B68DCF6CDEE211498 + 4420DC18C2CC85A3C7688BB01DA172E5 + 00E856EF4C27F27FF0E504DCD702DDC9 + xor-digest = 1F5A96CCC25A478BAA3AB2EDF5E592D2 + E46F4E2A5572585624F4EF8DD1243423 + 9E5C4671A819B6701BC1FFBCFA7990DA + 4B9D29252D9AD51138F3313A0A879282 + +Set 3, vector# 72: + key = 48494A4B4C4D4E4F5051 + IV = 00000000000000000000 + stream[0..63] = 863AFB906F2A73DFCADFBC47EEEE2031 + CEE0AF8847777825AFD141D8897A9E96 + C5F9284A391CCEC34A199EE8228B0B98 + 1ADCC859B9008754D3D0B99F136EF4E9 + stream[192..255] = F0089C174791826D8F6E9454192AB235 + B3C906C6A065741E9B9B04C3B280CC4D + 2B835445A64AE2B5668E6EB2AB050D49 + 9E24090DC475A775AAFB10CE16F18E67 + stream[256..319] = F256EF10D39C854849A529238AE82E6B + 1F3D0C2E66E0553DF9375BF8CA4B2F04 + 45B4765CE670B954C956EDE71D3B04F7 + AB2AD54520A6CBD16A0B0D9505FE9652 + stream[448..511] = 52957523B15EB5E069302CD5EA577EB4 + 9BEF63C3EC73D90688F3EBA77267E8FD + 4120A2C8A3901B8F24928C78BFD88434 + F415C828F39BA1ACA07BFCB3C22DFC5E + xor-digest = FE5CAB87CB43CEAC72CCB5D75F0294E5 + DD9A90B1443B3CDABFF1E3F914685D82 + 169EC54FECA2EEE40F19BA042637DA98 + 6055034B173D0D66E2A08069B8376389 + +Set 3, vector# 81: + key = 5152535455565758595A + IV = 00000000000000000000 + stream[0..63] = 252C4021B2FE2C6176376D4D905DCC59 + C502884E87E2E27F54AC46F37B62234B + 46C7863F75438884DB124A3AAC258D50 + 611275FFC8F20FB94E8FC45306A7A86E + stream[192..255] = BE4435F219F43CE50EC4F24CFDC0D22A + C7D9CD7B02EDA38281D2DAC2752E7D56 + AA8BA4370C94312F409954DF4A0E13A3 + 5D766614DC7DCC9EE273213FB659BD0E + stream[256..319] = 21B9B862E703935C5D4BF1F7A7FE24E3 + F27B6A405DB9C5E8C1A0B5175F3B48A4 + D86E3D06F7A04B02A2FA1BF4F471C106 + 19DB8E2B39A21147B9D4A6931DF0F609 + stream[448..511] = 6DEAF9542B247878DCEFB592A6DDED27 + 26B7B4C3E9023F69D6ED180E9F3F612C + 955560AFAAB0065DE12A004F22424F3C + 43D134BB159234D1F1484E2F6B9A308B + xor-digest = BD0ED4E81169F8F8D9036A07CCF3ACC5 + 5FC831A94F407F4688584802B92542F9 + 3315EFEA6F6653BA21DFBF4C729FAA86 + 37A85689BE7C44EFCFEA37AA2DAAB365 + +Set 3, vector# 90: + key = 5A5B5C5D5E5F60616263 + IV = 00000000000000000000 + stream[0..63] = 34E30006E62AF394ADF5042EAF6F8598 + 39F13ED4519AB0CEE2590F93D802011E + 1C1F257839054060A55B28BF157ED8B5 + DD8E54E92415AB12844CAF90498C2023 + stream[192..255] = 4DADB796C029D1728E2298AB5D01D636 + 5CB309D128B052B6484C933889183454 + 19161CEDA3C443DC9E3D5CEEF0D59505 + 06E057D209B38513E8FFD6584B4ECF27 + stream[256..319] = 725E71B657E6D0FCB72E3185AA375286 + E1CAC4A33B91C07EC2E61DC32C7CB017 + D2CD9560BD3E62BFB84CCDBDA83E3DE0 + C5E725CB19B13FFA86C273EC00DE65BD + stream[448..511] = C0F2C3F808BDAF9E456044167CCD617F + BEB57759C1E01A57F8F0DFC23DF5E695 + 48BB33C72C0C3F9323003B536CE221B7 + 7A57D28265820E936649AF56859E1BF4 + xor-digest = 961BBB2E186D03D6486AA6163EDACF93 + 29657AE5B919ED5FB975188E17E49974 + 6638D98112C1D3512E4C5550DE9BE5BF + A0CC30D33C8AE7E412601AA89D19FA82 + +Set 3, vector# 99: + key = 636465666768696A6B6C + IV = 00000000000000000000 + stream[0..63] = 41DF606120C6447801EF9BCE34C659FB + 1855A59BF575379C34CA364D029C722B + DA107F619295D212B7E23F9CA0788F85 + EBA749FD9DAC94902943AC65C768B579 + stream[192..255] = 8C117EA9A699440FACF0716184416E22 + 55DF5B643DB317988B2036906D62B8B2 + 666ADBF2A439FDC21616B3BF654BAD13 + A811102FA193C516B62010E95B696CAD + stream[256..319] = AF9C7E9B24E455D5FA9C4B8B2089E32F + C63B2D5DADB5B8F84A4A565F4C69F2DD + E230FA99D9CEBB1891FE2AC1009A638A + 4B4283DAF7ED89F7C7E9D1C59E06F3A8 + stream[448..511] = 6D42E41BF7E783BA3E48FF0C66B42A52 + 06AC8979A03C7E3A006A3A942577FB7A + 293B1BFE797AABEDC4FDCDB808EDA005 + E26C4B8E76E3A8ACC234F47CFE0215A1 + xor-digest = 6A4BBA179543769E680C1B24A25CC4F8 + 2906BF1639D83A3078B78C950007D822 + 0B5F7719E5503F3DE1A089A3281AEBF2 + 792C9B65DEDA02F44374519DCECD0E7E + +Set 3, vector#108: + key = 6C6D6E6F707172737475 + IV = 00000000000000000000 + stream[0..63] = 4D0E814EBBC40E61B330C8A4678DEBF9 + FCED0C71298E1159CB903DEE6EBDC294 + D9AC00441438441D61F61FE421C4F8A8 + 39C715B0A9082FE8921DB51E14B188DA + stream[192..255] = A2FF3C7294691E2EED33BAB8C3D0809F + A3BB406D92AE8FA7C4611C7C7CF9EE85 + 4DE8EBE85CA4E90AA9EC493226D379AC + FFFA3ED8BC638BE7F08451A1A1CDC7F5 + stream[256..319] = BADCE4DFE3550ECB8667BF9CCEBBA2A4 + BBECA954E7E60315CC548CAC138CE550 + 46991C8D86F1FF1D92E65F4F7544FF7E + 0AA529D2303392BC2A3D1241297D1309 + stream[448..511] = 91509BAA92BF2E7487831A72B17815A0 + AC6D0FFB3C5A1EF6E39B5AC6338E63C5 + E9D6BC870191305B1EBC331948B46E42 + 8350709663EFFDB55CD8B578551BA8F7 + xor-digest = DDA5B99D08365FA6A95DF31BC8A3037B + 462CFA1B9DCD3421F0655EB422CE07A0 + C1B1951E008C991CECF2F3393E75EF0F + 1575845BFF9B260DCC4D6AE1B1764C6D + +Set 3, vector#117: + key = 75767778797A7B7C7D7E + IV = 00000000000000000000 + stream[0..63] = 8958E8ACAC755678CE2D4F5C482AD71A + C7AFE4CF8E5062555906EF8DEBBA30A6 + EBF09D9FDFD2ACBDC4619199BA95C6B6 + B145D084E61B4EDF02693DFC3DE76A54 + stream[192..255] = 9C421B6673A40204EEF6C6D998E4C40A + 9062073BA16927370811B89137B43755 + 3543BC1A1720AA9E2973991713B4FCD8 + 9B5CBB26DF6D93823C897AE1D4B5824C + stream[256..319] = FC9A521C3559AF8DBC2EEBD02692107A + 78F4CA24474C6BF9B9EF351B4654EAF9 + 98BB5002A254264D12406A3CB1BEBB41 + 1B93597A0CA794B5DA083913DDF68F54 + stream[448..511] = 59A00ADDA629C11AB94AAAD8DD4D667C + F6311EE5CD7F7440C01AFD7B2EED64D6 + AB5213D6DEF41170C38806B310C03C19 + E28B5564DFD5CEA7848ADA2F5C18929C + xor-digest = B41B2457EDFF5226D583447FCAC4C778 + 4EEBAEBECB87C4FF9133FBB3DCA0FA91 + 2AC857B210311C99C7B7847962811936 + 1E98EB073446DA2750EF26ECE3E09546 + +Set 3, vector#126: + key = 7E7F8081828384858687 + IV = 00000000000000000000 + stream[0..63] = CAE3F9794BE605739E8B133E4DD97AE0 + 6D00780A66F1BDC3B856D178D263EC28 + 2EC6775E89B15A429307643BAD6042CF + FC248E8D082475FB5FFFF84EC5E2F5C7 + stream[192..255] = 7E18337A5FDF151F1D92328932710836 + A385763F62DA9D3B48470C6064474B62 + EBED8B32A9917D43C9D4C8F0061F9F93 + AC078A91F049258961C1708BE5436D58 + stream[256..319] = 8C78186BAE492BB5A3A8D23FB2763A5C + 5B01CF40C8944CD0ECBF028197D32BF9 + D58B39C2B658B2B23585A289B7C01485 + 95076422183E1A64CA977485F1056929 + stream[448..511] = 87FDD673045CF74D1134C1DBABE00E8E + C0D054835559CBD686409B6FA2A9EBB1 + 82ECF22B98ADD4DC17549669EC7E5AE5 + F8132D8F4951229849EEA7C5C5034478 + xor-digest = D67196035DD5E6660084F0E7A647B67B + 80C568186F52F11EF1C444699C89C863 + 7307526FCDE03DA470DFA78FF1B6E2C9 + 11316EDCB63BBA36D788AFB56B318BB6 + +Set 3, vector#135: + key = 8788898A8B8C8D8E8F90 + IV = 00000000000000000000 + stream[0..63] = C204861394C3B27301D2B216AF74F01B + 36CD63EACC07A6FB8FB60971F3C4160C + 72E009D795B74B9F826B264DFC1FFB9D + 334CC9CA88C03009B6AC5ED59F70A259 + stream[192..255] = 387C70F9B484A4679C770431C27E7A74 + D78BF8F3DCB1E1F45826792FB1990836 + A217A25DD2D6394EE3D01FFF75F986A1 + 872A095C1C3A60487C40BF00CA6388EB + stream[256..319] = CB97C4F1F47DEB8BC114B6DFEFE05F09 + 4AD8FD77CF782D8724A0A4D65664B4E4 + 0BB39D48A5A5B39B059200E99F114BC6 + 1DD2F3C892FC7F3CC5C413E529B4DA28 + stream[448..511] = 5F112D2015F4A59C401A61F562895985 + F692A9DBAEE0BA83B2724CCD25FDB60C + 0E7A4044FAD51EE6F697961B75633ECE + E73A165DF380F24AA5268E50C7F63ABD + xor-digest = 5AB8AB90E211C14BF5ADB98030AA5F50 + 8934B463260BE7D66421643037A93538 + 4F0365301D3370F248A7D8E72F9DDD77 + 0EF33BED740826CCB3EE7B248EFD7F5D + +Set 3, vector#144: + key = 90919293949596979899 + IV = 00000000000000000000 + stream[0..63] = 0972B6F8B7CEC540EAF230E2465AC6A3 + 05D78A9E5CCBB38A013F6674A36DFF22 + 7E292760C637629C3BEC82E56AB55090 + 3E3D559D1648462B8E2535E2B2132E3A + stream[192..255] = 8C58A4F1FE80260B3D7651063AA9D114 + B4BCA933C7741A5BECC190104A14CD14 + 725BAC8BAB1AA87A5F5927BFD8F0B5DE + 76622EEAB1096D1F6BC9C047A4C50483 + stream[256..319] = 2E8A6ACA920F0AEF25AAC1F0F1DEDFA3 + 1086BBF6B0F802215614901478D7DD0F + 81477279FDF2800ED67D42A75F06BFB6 + 8A994D87B726C887577A3869AD29F672 + stream[448..511] = 6E252987CCC7C791B21DF690599F401E + 087B415FFBAF1F9F91C091C7FB3637FC + FCAC355B186240FD569C50DC2AC313C2 + EA095622D41F708914199BF4693F27F9 + xor-digest = B6FCE84C517517514574EF3AA62FFEC2 + B21C6936D3DF9C5FB9A32468AEB16705 + 3B469F8EB2B55F7D7F7CB236B5810C58 + 1297DF3D601254160AD9C67ABCFC33F7 + +Set 3, vector#153: + key = 999A9B9C9D9E9FA0A1A2 + IV = 00000000000000000000 + stream[0..63] = 1C35DA8526E84D18F9F319DBC6488548 + FFB3A460DE4C70E8CD95EF7C0A342620 + D76119F17C4E56B17239FC1785469A07 + 0AE68D917931F73E190936D0B918EE5B + stream[192..255] = 79718B710030C50910162D57FAC34235 + CE813E22E6D7629CE9215E0989B0EED5 + D9D87A7CEE2D03B5D02BC7B056D089AD + 292D192619B86F311E6708FE253D038F + stream[256..319] = F3F46BB2F3635213096AB29EF395F301 + BF8FDDF5418A97329E161D2B9952D24F + D6A95E518B524DD70F1D0736DD3E7F35 + 3766925D2E1887CABE494A0196C8922A + stream[448..511] = AD0C76547F1A1D3C3B38F2659F25C590 + BC8FF2C9FCF46EEE43FB83ED5174025F + 5437B093248629CBBA191AE19B4A0E64 + A7C71CACCE9A3B4F857648C630CB839F + xor-digest = F1F52CDC085FA57BB62C04945B48046B + AC5753ECCF4079C69D5C24D125DEEFA0 + D2D0BFEC24B5625D93E64CFD8BE45249 + B702DD45FB86A73FA375C598125DAE9C + +Set 3, vector#162: + key = A2A3A4A5A6A7A8A9AAAB + IV = 00000000000000000000 + stream[0..63] = 412AB1D18E675AE9626553235CB4EB93 + 90694F9E1B793EA64EE1EBB9CA315292 + EE9AFE32827FA7993F355F026C874EEB + 6B89EF05D0EBE2BC0D8CC7CCDF04A177 + stream[192..255] = C04842F0FC1253A70192FD435A22A1BF + C658B54C448795ABDA5F1111435C85C2 + F988600D1CC56D1798132265D1C47555 + 502D8774CC4E808BE3009B6AF2E86FF4 + stream[256..319] = 162FC4E34488452A7596A36C12711A18 + F3BAF40A66873A7832817E963EF72655 + 2F39CF5AEF8973CBDFF3C505C77E5144 + FC85B40AD160D7C49842D5A16425E90B + stream[448..511] = 7770B56AA68C0F3978D88C5E33EB161C + AAA41977195180713055699FCB18430A + 4509C636DA2D3374A0E9206C4EF71E20 + 998C805B2CDDB3F5884E957587835CF8 + xor-digest = E99E2D6CB63B26E7018A4A8B01AF260E + 7E0007931F0B286D99A08B61C8C88E64 + 71094630888E0BF0673BEA78C727AC3A + 1954B31315E009DA2BAFFD337DB03858 + +Set 3, vector#171: + key = ABACADAEAFB0B1B2B3B4 + IV = 00000000000000000000 + stream[0..63] = 01E759B71C1EB69C81580610006BBA1A + E6962D7ED9FB6F804611D20DFBBE47F6 + 2527B3F8102876C5467CB4844723C979 + CA4A91FDCFEC8637578F7E46B8301F10 + stream[192..255] = 25E2411C0901731651D5CD30916D595E + 2F56FBCDD249799AD1A464A3A26C2A59 + 6EDAC0D356CCD12C102263765C1B3C8D + 3FF3FF0ADA141200AD39811097AD2253 + stream[256..319] = 2596358B166C08186D23118EBCBCC92D + 8740884796D7699510F9DF45D1A99C24 + A78407410EB834D3CB3BCB68827F74B7 + ED55824F613A7B158B24FB027AC01286 + stream[448..511] = ABFBF454EAD08D9BF2FA964E92488204 + DC89B8F9F8BB6D6F5473696D29259FE0 + 10366A157F0E5486F25BFF7F8259BBE1 + B2CB05A1AF1FD305F1611F5C4E41B042 + xor-digest = A63750A1C1B9974DAD21022828296905 + D044E89E42BF9E1B691E2791D196125D + 94C374958F12949178198AAC02B8DF4E + E83B57B030D364E53FC76B0838391FBC + +Set 3, vector#180: + key = B4B5B6B7B8B9BABBBCBD + IV = 00000000000000000000 + stream[0..63] = A1C1EE5C63AB5C0655EB6957C4B6C846 + 585A432D6EE6F42661B4EBDEA363CA1E + CB9950BD1C59B8D75C1362E0768958CE + 0047715335DE0ACC4228B8EBE4017036 + stream[192..255] = 98BF3045F88AEDE0E1FB1399EEE583C4 + 5514A15856156465FC00FFA468108F7F + 831A2E91AC1CE4172A3846572FB8A10F + 94DF6626E04058743883A723989CEFC8 + stream[256..319] = 7838BE9626C649F52D31A615312D41BC + 2193A76F0E3A5877F907F1D352A7BE6E + D3E7405F8219A738CE5D50A51DC794C3 + 1D838C6BED79739DAA45011DBAFD950B + stream[448..511] = DA5602BAF84EA74FE4E1D5143E43E6C4 + B15135B839C82AC85A4C79D3E2B7705A + FCEC707E1E1E7DEABBCD50F8794DD328 + 9FFC20E277FB9C75B8785C534D904BC5 + xor-digest = 76D8016BE212209DAEE4784D145CEB9B + 4C8D477E2E1BD6A2789A29DA9F5992A9 + A723D5A54BB072DE3325345E30B3583F + BDA863B3E8B389C08255D9D95FFD748B + +Set 3, vector#189: + key = BDBEBFC0C1C2C3C4C5C6 + IV = 00000000000000000000 + stream[0..63] = B7BE8BF5D02E37871E6257092232E6B4 + 7DB4026F9F5227F1096731FC3CD66AFA + 9B3D04520BA87785C43F401F40302758 + 194BE49CA8CF00A58D991F40B9662F56 + stream[192..255] = 2A86CC644422B5CF4788BDA9A146730C + 8F35E3A6F516AE98E0BD660B5260763E + 1C2540CDA27188C9DBFA70A75FFEFF36 + F0E7F7CE3804F18D734255C3978DC3EA + stream[256..319] = ECBF7B6BA3BBDFC008FEAAD039C9E939 + 7DFCCF1CC5B4DB927DA9110BE6CDA33F + 8B36356F87642C25C5A7E91232632EB4 + 025DAB487291097F1BE0F35FCCBBF40A + stream[448..511] = C647143F922F0F94F9C6E0B784E71523 + 8740E4781A39C7B793D2D5C31769AA79 + 5C3999D019AD40ABBD7FB6566FDEA342 + 6668E00D50E3767917FF8A356E2D8545 + xor-digest = D729267A90098B72089EA753264A38AD + 9F9FEAC27336CBD3C627ED54F0E95A23 + B93A0B15FAB3035090EE9A74C8AFCA40 + B9B3F3766B327C3542F622ECFFD517EC + +Set 3, vector#198: + key = C6C7C8C9CACBCCCDCECF + IV = 00000000000000000000 + stream[0..63] = 10FBD1336E81B0D149A9FD88CCA7DAA9 + 17CCFF08B8B1D3675C27FD6270130134 + C24847ECF7EE5C1DC02E6E6634FF1EE2 + F0889F607F2AB072DC81799B8B861D4E + stream[192..255] = 6B118BD4A0BAE716C08E84318F60CDD1 + 618AA6B0AB0464B6EE2CBA009BAF60C8 + DDD59B28AE94EE94889897333F319C3C + ED8B05827F9A8A08124B9A81DAA93D77 + stream[256..319] = B31739639D6D06C0793A72EA265D0D69 + F5E1FC4859BD18132BC418EA0E587A87 + 572B22E21D3F91E30B17E92CE55B7184 + 89D50315AE2BAD0FA24CDA5EFF944253 + stream[448..511] = B19713A228073EC54D2C51645554F66D + 26C1306376446E9F472A65682029C2D0 + 8C1DBD84E56181208C6C1EA9C8654718 + C7FFE4B3DDC8DF9D3538429461E31C53 + xor-digest = 9A9913BE55B9A61B86FA248CD0040D41 + FC3549D46F8BCF01F3EA9D6F12FE2A00 + 4F5681F3BD1F2AECA63E3FF0F1B3016D + E53F381000FA7E3E701A59AFBFEC9CD8 + +Set 3, vector#207: + key = CFD0D1D2D3D4D5D6D7D8 + IV = 00000000000000000000 + stream[0..63] = 90B147BB4CE3844664E75678B78F02C2 + 925687A91C4481918E8784EA4C51A698 + D52B2D16C6C2A8B58C61A7786E4A3BE7 + 15689BFE8E251A46EBEEE2E422056F9C + stream[192..255] = A956C4190F0871542222B43BF4C7786E + A82D67F04E9823DAD659510CE555C578 + BEFABF8386E9AA020787E1D9DC6949C1 + 3F79F96446E77CE5604056BEF7E9A910 + stream[256..319] = EB0B9CFC3E92BAAA7FCCC46911D8BE3B + ECF71B6012C8EF7942EE0C8BAEAB8443 + ACEDAD3C2F1D25A68CB9B5423D8F9996 + ED07BF2A5B11DE993A5939533B8BA1A3 + stream[448..511] = 3071BB5D6124DC1C1D0A4ECF863B88EF + 4FA5AD8EC3B56F20FD1D25E0B4806478 + 1C27027DB494E5D36C044BB691265384 + 41AC3C6BA0EDD17F5EEE94B4A61AC20F + xor-digest = DB413BFF59A5A2CDF144DBFDEF3EDD64 + 0D23CFBB8277F7C9CEA46A2E3935371A + C2DFF9065E61796C0B2BACC353BBD4FE + 29A1C5D160930530D89FB13428D5CBFB + +Set 3, vector#216: + key = D8D9DADBDCDDDEDFE0E1 + IV = 00000000000000000000 + stream[0..63] = 1ADB5D07C885936394FDD08666830F5E + 3F30CDD1B94D9B1804108B79E594D391 + 1E0D195B8099E6766277DE88A7C2B810 + 6094B64359DDAD8B77E199167CFA1343 + stream[192..255] = 2D6BD46317835C2C217F55F1BE537082 + A318CEB7A4F9B6970D0A05AD6682717F + 9936F684F6EC35F7D2EC4A88F525ED48 + D54C4F39CBDE9A94F9FD4F9B47035979 + stream[256..319] = 41BF5768BA098B7C61771F9D13B18C0B + 9212923AF23358246D5AE3089425A7FA + A63596E8CEF7B08CC4BD7675137B2D08 + 28DAADCFF51F5F5FD63FB6EFC2F0CF04 + stream[448..511] = BA8C52932C3CC5B31A5799F0BA1E73AB + A40A72670CCA295CB857F0FE0D02DD85 + AEE1E558EC9475DD3E996D3DB0A8CC90 + 722BAFE2BBB4A366F7A91E7DC363739C + xor-digest = 5DB47A6DDA5C4F3BC03465228020F15F + AC681C27A57FF2C999EBB6A487DBD21F + 2C3342A22E6B579C11EBCEA10C7CD1C2 + 87E5B4055BB582D775F49F83A30B75D0 + +Set 3, vector#225: + key = E1E2E3E4E5E6E7E8E9EA + IV = 00000000000000000000 + stream[0..63] = B620614F87449DFE64BE90AE86F61216 + E342838490C10838ACFE1BDDF6481763 + 936DA9E1FEB6DCB635605C94CCB0E167 + 962B84037CC274EE964DEEE41CAF0F85 + stream[192..255] = 4649ABC6F91EC897EDA8EBAA32FAE32B + 8D2C59190B883080663255C04F691403 + 5CB01C73CD292B483DB271AD0D30A3C4 + 1184D773359ED0B35BEBF36C02F0B857 + stream[256..319] = 943B9AD515DEE60EF7DB62861C1CBC0E + 7C768C5F1BF999940968FF56DEE52332 + 625F13AF36CFDF6EFE9849F3178CDACD + 344405792AFDBAC17C9D6029BBCDE049 + stream[448..511] = 262179FDCAD88AA362503E03D5A5F64D + 4EF60647B5719B74C902E164E886EEC0 + F1B0C3721748E81BB02661F7EE1709D3 + F03FB5EBCBB8E3E9728F0B20E3C69F7B + xor-digest = 70079F7FFF05F29CC64FDD1E06044BAB + C7584C81A6F18568C4464273D688CA64 + DBC9F0E06EFAF213F8B6CDEB3F3A0D08 + 57CCB485F4E6D6136C7EB5EBF61327D9 + +Set 3, vector#234: + key = EAEBECEDEEEFF0F1F2F3 + IV = 00000000000000000000 + stream[0..63] = 8E9E13AE97E14098B9DF8672AE245286 + CE437159905F026515498ECA6F9122B5 + EED90AF2330DF448D18EE4D638D8BEA3 + CBE93497319CFC8E5DD387B6129121C9 + stream[192..255] = 8C7E9F45348BBA511B2E0A9FB6C87E17 + 98AD4F2B6FDCD31D89A913BEA8CD3F8A + CC20E7F4503BCECE20C8B61CC0FD6B7F + 0703A88BA2C5A1AF378EE31BF90CA4DC + stream[256..319] = E28DB5BC51E48EA5A92443ECCF96BF9E + 6D4744357EDCA5071EF8685D7A70EBEE + C306ADC94E610979B9B75688215C0A59 + 420241E776D475B007413B939AACF3E3 + stream[448..511] = BBED8437ECC72ECADBC496F0E0568D04 + DE9DABDAFABFA8F621E477878F4AA17F + 4BD5BC59784852FED306C9274F2AFA19 + 5199BA5128CD8999EF06A7BE02226B90 + xor-digest = F378D169AD75D334D68426E3D213417D + 5E2DB9B2FBF89FAE478B0C86824BDEC0 + BB9E3C4FF9451CBFC0739DBA8D4AE81E + C21F529E5A50E8C1B191953D63ED2DBE + +Set 3, vector#243: + key = F3F4F5F6F7F8F9FAFBFC + IV = 00000000000000000000 + stream[0..63] = AEF73417AE8120FE8B785E0C6671C689 + C58892D394E8AB8EF6B926558DCA31D0 + F974E26B13EAA417D932AA9A7BE270FA + F8ACCB4C0CBD396040DDE6C912490643 + stream[192..255] = D5A2B3A7647E39F152413B73F21042EE + 11919C5A08B57B5E192ACD2F1A99AFF8 + 5ED990B06A01C4A1CDAC456B766C8283 + D6D5992BB4F083A72E0859654B06A958 + stream[256..319] = E5ADB0B29575FEAEC4255E60206DB79E + E553A7025F26E9D099B47DEF8C8F72BF + 846E8A72EE3C0AA906A422C850DEE335 + 5C7D899228192B2DD8B04E62BD5BAD02 + stream[448..511] = BD4CDF9CE7F1B75C7DCC7A240BECE494 + 04AC5DFE7BF0168F8F0BE8916E7BBA4E + 95E7B2B7C85D001EEE2EF7DBB9DC26AA + E5C6B983D11E080FADA196D8C32C3773 + xor-digest = 38776182D2BEBD98307A67A80E2B458A + 9D6F2AADE56D4226ECC5598750A91C19 + 8F48FFDB2F3205DCFB3416245ECF22D3 + 7129E7D9E86094C565D3C236B8AACBD4 + +Set 3, vector#252: + key = FCFDFEFF000102030405 + IV = 00000000000000000000 + stream[0..63] = 496191DC1EDC22DE848E61CA625E3A7A + AA407E459DA413BD1D19401DC13160AB + F74F384A9DC921157213373E268479B5 + 709A132C11C4798C5B1D285D95308EAC + stream[192..255] = E7E9305490D4FDCA39D5C211E8837B4B + A5AC6270156E397F52802EAC62E4C763 + 7E03EDBC7B7DEBF6B4D00CBEE03E1069 + 60BA27C4ECF169486D40C32C00C603A4 + stream[256..319] = 1A5F0D5EA4FB00CC19E91E2F1C8B4A2E + 2471A5D7C317088AF549F35C357FB613 + 0786F1EA8BF56E1F3D02B4A8F8901D9B + A525584983747FB1B0E529165C628E64 + stream[448..511] = 10B9F29BE5AB0DBF8AAE16B98460000F + 414221D4048CCF8A8923D4ABEEEA286C + B00CC99BD9155F8758BCE098333E8BAB + 4DDEEC9317A791077AA605874B069516 + xor-digest = 1344C0AC589EE96008E7B5FEC7D91817 + F321F5E51C757DC1B3CAD494B6649EDB + ADACDB74445F3682EAAA15B8FAD60042 + 178BBAFE05E6801510ED943F925D8B64 + +Test vectors -- set 4 +===================== + +Set 4, vector# 0: + key = 0053A6F94C9FF24598EB + IV = 00000000000000000000 + stream[0..63] = A1809640CE79C540802F49D32023B2EA + 8A398428F4A5EFDB0A124FDDF39D23CE + FE5257EE1BCADC0954049102826E144C + A96E65D4A169823FFF20E832880B7B8E + stream[65472..65535] = 94CFCB48311A41D96101DD49862B0937 + 7C60CB9866045A7277170038F65844E0 + 9FFEA5496E1BC4FBEDB13922942FFAF2 + 6F69829174FD62032940E16A33532D41 + stream[65536..65599] = 00BC07F6F216BBD156129698840FC4DA + 9703ADD18A0AA9CB59E4DDADA0BBA168 + A4CB10A93620726E24D507CC106203A9 + A2D5ED7C81A2D5EFC243FF78F8BE9647 + stream[131008..131071] = 10D80B17A6730D965DBC946F45B1D582 + 2D957F997F1C56467ADE565E6E69CA9F + CEC68D6950E22313661FE82210D694FB + 921A3C3D69EADDBA952547BF7B846D81 + xor-digest = 78DF2A6D134908490632289B3066D669 + 0686E604DC3A1FBE133CBF8704B29703 + 41BD03C3B4C2841A5F89BD9D1F80366E + 9CEE68D6A1D45C1BF5E17D5D38EBE57F + +Set 4, vector# 1: + key = 0558ABFE51A4F74A9DF0 + IV = 00000000000000000000 + stream[0..63] = 203612E1D1F22BD47314E9C03DDA5BB7 + 579F5C499983A481F8FE21C9490093D5 + EC7C63FDAC95AD9537DC9E87CD143988 + D97BBCCDB9E348519D07DB0C43E4A069 + stream[65472..65535] = 29FECC94F77015CB1CA10129DEE39D86 + 2FB0B553D1A44CB5E7ABD4FB92B23274 + D9284F437E9D918CD821AEAB95E53421 + 3186AEA0074F95A2B8717185F5E56A3D + stream[65536..65599] = 197A3FCFD4B565D3546F8C6CFCADA23A + 033576E189DB5FC47C873A1A64B429BD + A4B3F83BA7ADC177335B8D5EFC698F39 + ACE5ED3C542510E38AF35ECDFC3252A5 + stream[131008..131071] = 1A3E75C176596E8D5D35A3F68CED704F + 8C3B0F22BA41BF029A86CF0FB72AD50B + 7EF6A1CFF5A4273FAA9501675AFEB32C + A78D2B80174756522B84D8F16773B5AB + xor-digest = 03BF24619159664680F552C21CC95325 + A2C661DAF2AB7EDC3272BD88DA409351 + BE7367531999C6AF7C748429CBBDB7F4 + 5D91C08658A6471472D13F4FAA7B93C2 + +Set 4, vector# 2: + key = 0A5DB00356A9FC4FA2F5 + IV = 00000000000000000000 + stream[0..63] = 22E1C692C76EE198113F84A3D73B6C5A + 2EC7CB8B775AA68759471EFC86B3FA32 + 03BBED11817CDFCC82FFDE2EA2FDE7D1 + 4666369636C6958C896BBAE5EB0C51C1 + stream[65472..65535] = 94B33DF87803BFFA34D060162939FDC2 + 271495487785B040AB9672DEC1722009 + 0B5AE71C372F2C9381AE345129D505EF + 61DDB872A500992E045A961E121C7626 + stream[65536..65599] = 377C3BDEF19B2659FD1FC3E9758CCE44 + CFDAF6E44E9D9EEA13CE156EF2503565 + 2E3422776903C2994564EA5D3BA69714 + A8FCFA5644428F0DE4F04D94F200881C + stream[131008..131071] = F9EE55C93B29479799F5D57D5D7EBF66 + 1AF839CC998636C02A9670BB89B5A1F3 + CE78098D7FC67379CF7A9241E26375C2 + 6FD07E1970ECD5A2B6A92387684C24E3 + xor-digest = B7DA2BC8B69EA14D357102476FDF871A + F6AE598E30975844E93940617AA4A077 + A916DDC8932B210BF5741893B0619BC9 + 90542DFBA20F942A7E681B7DD668A374 + +Set 4, vector# 3: + key = 0F62B5085BAE0154A7FA + IV = 00000000000000000000 + stream[0..63] = 124B35E1F161A9FFE3D65A9041D5235F + A3659DC9BE659A47C16A0C2E6A7519CE + 8892744E88FDD4032395C02A07B7BBD6 + CF780FCFAB6B179E608EC9B07B9AE61F + stream[65472..65535] = 3C910BFC6300809C113E4CC118F2C8F6 + ACEFDDC2F04F7EA7C89BE5AA76C665E4 + 206584187ABD28F8EA92D91F8C4E6B03 + 0FA4E2A5168886F5F20E6521D51DE9F0 + stream[65536..65599] = 095BA5E4B2AB09ACC5C27B380F1D6240 + ADC913868298381FACF9AF9939D94F68 + 99016E4EF342BAFD0C2756F4F629F167 + FC4C09C9197D9CFC50FF9AD8B8C33524 + stream[131008..131071] = 5B477BBC0C8491BD085F9A9CD1EAD535 + F43FD125CB83E6464533E8D4DB73DFAD + B6E96D4661BB11A7DF031096FC6B1F68 + 653898D50405A15E07639291E6E320E5 + xor-digest = E91229D7189352E779A9B0DEA4FB5EB8 + BFA1ADF511ACB3427E720915ECF180BE + 64200A5F829A597F4E0D560ACE8CF8CA + 96FD591A077B9C863D335B09A78BD9B8 + +Test vectors -- set 5 +===================== + +Set 5, vector# 0: + key = 00000000000000000000 + IV = 80000000000000000000 + stream[0..63] = F8901736640549E3BA7D42EA2D07B9F4 + 9233C18D773008BD755585B1A8CBAB86 + C1E9A9B91F1AD33483FD6EE3696D659C + 9374260456A36AAE11F033A519CBD5D7 + stream[192..255] = 87423582AF64475C3A9C092E32A53C5F + E07D35B4C9CA288A89A43DEF3913EA92 + 37CA43342F3F8E83AD3A5C38D463516F + 94E3724455656A36279E3E924D442F06 + stream[256..319] = D94389A90E6F3BF2BB4C8B057339AAD8 + AA2FEA238C29FCAC0D1FF1CB2535A070 + 58BA995DD44CFC54CCEC54A5405B944C + 532D74E50EA370CDF1BA1CBAE93FC0B5 + stream[448..511] = 4844151714E56A3A2BBFBA426A1D60F9 + A4F265210A91EC29259AE2035234091C + 49FFB1893FA102D425C57C39EB4916F6 + D148DC83EBF7DE51EEB9ABFE045FB282 + xor-digest = 76772EBDE1D3A73DBF3BB7E1A5BCC049 + 1419FF354D32F42E4D17F999E3B19DA1 + 989D6A1051EB0BBB9F880252F71E16B3 + 15324198AB34162DFEA981CF566F25AD + +Set 5, vector# 9: + key = 00000000000000000000 + IV = 00400000000000000000 + stream[0..63] = ACBB386876653D15010DEFA7C65B36D7 + 01CFAF927B417550BE32D0444A24DEB5 + 89159B965C6740823F6BDFC378174AE2 + F664DCA0B68C621D2775BD13E6A788DF + stream[192..255] = A322DB3314E80834F573DE2CF1AD6344 + D39AECB3FD0D35FE0CD5379ADA39A753 + 1BB8C0B0B2C54DD1567C9AD9714D6719 + B1678401845620A86E79304946162C55 + stream[256..319] = B2799DD9D2DBEDEF0892A7A11BDFAE77 + B8F0E08BF83FB779653A190C295DB320 + C1BA5DC9BA40ADF8535F6C761F5E4D33 + 93655B871116C22D14894C1A503361FE + stream[448..511] = D613722688EF02F23DE38710FBD2DCB8 + 0322A0C5ED64A34B7FFB1474B11D6407 + 6326F16FEAA3AB57401625E5C1614E9C + 162E69003033948566F527E732BEBD2B + xor-digest = BB3411F67A1ED7601CBA3A94F5839E1A + 1CC0ACA9FD2549872A2C6ADB9F5D3DE9 + 26CD36DD72C7B6BB4B63709C854CBD9E + F6767BB7496BC0389FD743E8C8B295A3 + +Set 5, vector# 18: + key = 00000000000000000000 + IV = 00002000000000000000 + stream[0..63] = 88BD48945DEA0BEB94D1F13FC589D61F + 4961046D4054B2EC274709DB1D8CC547 + 2D1CD07D3CEBFC31E56DFED58029E598 + FB45D1954B6C86C9CC5EF422FFADFE32 + stream[192..255] = 4E127B792FE08EB7D40FC4AF45DF47E7 + D9C95265A45B30E9C49924A357CE34F6 + 21E7011BDFC11A1A4562F7329C90DE97 + 2BCCE296E347AD60F3167232A0664A8F + stream[256..319] = A5ED498A0B8074D6E074135FABF441E0 + 0F7E8254A3D36DEBFFCFB257093BCC4E + 4CA597CF909A2CF207B7D34B8AAE3360 + 8BFAD0F9C3B66E9888356B981453A568 + stream[448..511] = 26CE6C8180F9A29D278AE64B2C1219E3 + AB6337DEA7E488C50F6E5A7A29437716 + D0B918AAC8F3B07271977A6AAC0A7630 + 6C8B741EE7AB6B937AE7F0A834E4494F + xor-digest = E9998E4C27EAE667E9902B40A3C7866F + 1A0B4884C2ECF830B9A72624D7663F6A + 41116AF15D7D97B5E1DA18EA7EFDBE32 + 9FC317E9CC3C44BFD8A2FA2DD42A9EF7 + +Set 5, vector# 27: + key = 00000000000000000000 + IV = 00000010000000000000 + stream[0..63] = 890782471E32E042C14767285A9BBD89 + 605FEE5E38B9E78E3D750821AC7B4864 + A28DA27EB2EBBD6413CC6A5066E52405 + 06E3F37C22876A7E9557C6B1BE1CE300 + stream[192..255] = F3679559680368D142E786B64F72D83C + 61F621532E8C4DE06A4934F643F38EC8 + 6B3524495D4682ABE7AFBC58BE5CA435 + 4FC41C551D23DCD71FCE134A34B859FC + stream[256..319] = B557DFB21905F9DB8430D1DF5089DF09 + 1B8B9C12C43B7A73E749EC87E88EBB42 + E562835D87C84E8B70652B0EEB6408E8 + 3F5673197C4786E1F2BBE65FB1CA3D9C + stream[448..511] = 190270788FC618E279E2B3EB94360F4F + F1D8D15A2608D868AEE21E3DF72439D2 + B6B032EBAFA3F6513708506452B93C9C + 045678BF7C4853721FB41016B3362F9B + xor-digest = 654C6F15C3F9DF99DA8C62F054E11AE3 + 4C337242CE18E1ABEB049A07645658EE + B596F8E1FACEEDF109966B0B88B0DD69 + 48A855CBACC40BA0AB2DDAA5E63B0EA8 + +Set 5, vector# 36: + key = 00000000000000000000 + IV = 00000000080000000000 + stream[0..63] = 33394D41641D0D8E5778CB722C143630 + 0923F40194B951216FAA8BBE0A6EC7FC + 23724F8DD4E4E922F9D9B99579C5765D + FC5A8C268C1CAF0C114CF814DB2239D8 + stream[192..255] = D0E1C2182B95AFF81C942D501E0318F7 + 8AF2F96EBF0B241AC4C08F74AD95D7A2 + 58CC3B5E9A4B552B0DEFBFDDC50E2B2F + E9E9BDE655557A19475A0094A8D12506 + stream[256..319] = 8F4AF81FD29567EB46A32EE3C95562A6 + E976B2CF95ACBEE94BF4F0AA1101B4E4 + 511F7CDBD1F6C3A14BC02ABEE5347E03 + BA55122AD7277219B40B859562700413 + stream[448..511] = 8C55DF7879C38F923BCBBC30037BDE64 + 788F6AFCDC5900E7EA8CD41FC1AB11A6 + 0E74DA4B032730DDD6FD9259F0632F0E + AC5432D5D7DC5EB0F1F61DBBD5BCA557 + xor-digest = BE93C8BC4AA26B8E9F8B1FF2C092FA56 + BA1ABE71271CD20B0C996332C9488227 + 47A3F7328509DA53F4C06AD13B7DEDAD + 558DE7D6D695CA1F76BE1F3D87F6CAF7 + +Set 5, vector# 45: + key = 00000000000000000000 + IV = 00000000000400000000 + stream[0..63] = 27882DB265B89E59AD89611880FE6D12 + 5A4E98744C91CBFE1706E65A0A00A1EE + 3C020004AA287ECC209EA77650459840 + D73BB289482C732A024941E72E3244F0 + stream[192..255] = 152FE0F80B054F3095C897D934FDA17A + 2230A4EC72C94C4C7D056DA5296E9F40 + DC42D74BF2CA2005EF38058A7904B855 + 5BED47C01F81C94EFF7F77A9CE60C716 + stream[256..319] = 9A785C9D3600F86DECAAAAEDEAAA2E0E + 34EF24ACA194C7E972C4AC2B8FED1F52 + 89C6E4DC658259C497B240CCEBC9F8E5 + EC981A64BA731252431655F9B3E863EE + stream[448..511] = 63CFADD85A742D79880BFA8BBF5399AC + FD683834092A2C9C64063F11BE89B541 + EC396ADEC8632F7AFA35B58F5FFCEB05 + 29D4E5A388075CB97FA383001B7D4746 + xor-digest = 1447877DFC0FA03CA528485C9AD967CD + E58A43DE64BB84435CE1A1DCDA2508A0 + DAF7E13EBBAAEE05BB9A4A68E033E463 + 90745DB3D6E6945AA33A7E2739D42374 + +Set 5, vector# 54: + key = 00000000000000000000 + IV = 00000000000002000000 + stream[0..63] = FDF27A99D3144024D2363B9882D36D82 + C505DA7B7134C0D93EA0C35BC909D90E + FB59B3E631F717297C7EBD7FE4F20FC2 + 4E838C3651B5B6AC38648C4B79228B3A + stream[192..255] = 0CEE4DD813D50BC44DFE75C44C7688CD + 529D8256229233CCEBD8C2EDA9D71991 + 373851047D1A7F5B90CD84C051033935 + 49632CF28F5473772AFECF560EE0815D + stream[256..319] = E3495813F42F26F6A1417FF535713D9E + D0CB248C1524599A03D6EA8421078EB4 + 2B15D49FE8218045C1B5C3A5FF374F50 + 63162523B702E8017528E1B5A259D554 + stream[448..511] = 70CA2D395EEDE1EC00830B486E776D4A + D26E7CEC671002FA7D456D444F83F67C + EB7387496387F8C707B3888620D61BAF + 566E69511A9BCE3D2736124664442758 + xor-digest = CD44584AA0A094E9872916ADD43DCA5B + 7E60FEBC3DFEE9E66040C7713091EB07 + EDFFA6F72FD1807ADF3F92C80EC3DA91 + 6C748E6621DA62415315EA869849C405 + +Set 5, vector# 63: + key = 00000000000000000000 + IV = 00000000000000010000 + stream[0..63] = AE7F060AC8B0051C1ACBCBB2E7F10E6F + AD4C980FB86F62FEAFCD7345D624485E + C4D7773C1FA45FFA5234D2114BD4C48B + C257D77BC524519BF00E1E9347B19858 + stream[192..255] = 827449CF0932DB4965A5B5AB39B481F8 + 9AB20180D88C1E3021B8C608DFFF5139 + 71F48819B8560C07A9226E866E54174A + 84B41CDB87E92B597B411751554885FD + stream[256..319] = 7781E1EC66875AC5B34982A18E9F1FF7 + 715A0240454BFE996E40B0F1460746A9 + 56C2D326D6AFBB530F2CDD2460D12D23 + 2D95E67BD6AC1DA31F724DE0E0D32DCB + stream[448..511] = 0FE401897FDC956A1648DC2C5D82ACD1 + BACDE2B7AD7D674ADA1705B9CF5FDA86 + DB5BF91C463196BC076E9371E1310335 + 546C19F82E1A4DE63FBE543B72C175AD + xor-digest = 9676E8606FF8AF06F3742356869B97A3 + CC7FC69658218C26DDF51A845DB8EFCD + 616FDFF59067C4B6FC44C9E749B35075 + 85C0ACEE04F6A7A191D0DBF61296D602 + +Set 5, vector# 72: + key = 00000000000000000000 + IV = 00000000000000000080 + stream[0..63] = 82E7FCB2193DD7CCBDFB30E4A1BC740E + 2756EF94676A6D4B01B1DD2F2A335BB6 + BCB85B1086D6A36BBA4F98488F2A74B8 + F85EFBFC8082347BB8C71B1BD8682D1D + stream[192..255] = 2EDAB9140207A474FC8A5395C699A066 + 08F61A03E2B2C4C666F3BF6258DA06A6 + 419DAEDA9CC459C05E84D8DD34DB977C + F226688CC6D9CCDDB9AD193AEF07290E + stream[256..319] = 045AF99ACF841865E3092D0D1E93BBA9 + 9383D8404BA0A4127A1C30520E3B2CE7 + 204C83B2F11E23992ED1DA196C62356E + C0D437B00CCA26BE0C12CF3BE457FE27 + stream[448..511] = A860F00761399B7ADCBF5629B3BD1028 + CD21B330FD0D6FF04E1B6D5ECCE6CCDA + FD373C8F7A331B8F716DA4ED37AFC61B + 772EBBD9E91D81376F56663CB0D6B5A0 + xor-digest = 01DAFD609FEE18C09A7279D7B5C1A183 + E89C7A56C788C94A701ECCBEF1796100 + D060376BA823781816402F0DD342AF03 + 3CBE7B9A4FD0675559B2E8737F599280 + +Test vectors -- set 6 +===================== + +Set 6, vector# 0: + key = 0053A6F94C9FF24598EB + IV = 0D74DB42A91077DE45AC + stream[0..63] = F4CD954A717F26A7D6930830C4E7CF08 + 19F80E03F25F342C64ADC66ABA7F8A8E + 6EAA49F23632AE3CD41A7BD290A0132F + 81C6D4043B6E397D7388F3A03B5FE358 + stream[65472..65535] = C04C24A6938C8AF8A491D5E481271E0E + 601338F01067A86A795CA493AA4FF265 + 619B8D448B706B7C88EE8395FC79E5B5 + 1AB40245BBF7773AE67DF86FCFB71F30 + stream[65536..65599] = 011A0D7EC32FA102C66C164CFCB189AE + D9F6982E8C7370A6A37414781192CEB1 + 55C534C1C8C9E53FDEADF2D3D0577DAD + 3A8EB2F6E5265F1E831C86844670BC69 + stream[131008..131071] = 48107374A9CE3AAF78221AE77789247C + F6896A249ED75DCE0CF2D30EB9D889A0 + C61C9F480E5C07381DED9FAB2AD54333 + E82C89BA92E6E47FD828F1A66A8656E0 + xor-digest = F47702F2C8002944966D7C1BEF9BA5EB + 9B6D4BD318EACFEDAD25A41E3EF23ABB + 11CB33BF998995458359B394B399193A + FB28EED0AE735F7C1E38CDFE39FE92BF + +Set 6, vector# 1: + key = 0558ABFE51A4F74A9DF0 + IV = 167DE44BB21980E74EB5 + stream[0..63] = A850A970ABCF5F73BCC5DB76F6B5E856 + 362F1B36AC498D05C20FBE7763598DE1 + FD98B03CC54060E8C9C19B16490C665C + 3636A03BAB46656A695ED75F0E659F04 + stream[65472..65535] = D5F687A689F19C4F2258E212C3FAD8BA + 68625155CC92A43F282BB0F2F6851D4B + 6E748CE6E0774590F9A6F38DD1DA63BB + B1C977697A5CE4BABE127A1201AE7520 + stream[65536..65599] = FE6E274131503C78178A5678020DC3E2 + E151B621C9DFC0DE065EADB396A149CD + FB92E0009ECFC50237C81B0067B07E0E + 794AF78468E88B9E472E723ABC73C21A + stream[131008..131071] = 85E6891E2A605CF81224112E596B40A6 + 8C9D971AFC4376220B8160DCB36D55C0 + 4B0C21AF68A2EC38B4145F32BEDCE260 + 12CF2151D6768E4CD025114C5E3149A5 + xor-digest = C0C15B3731633BC6D8F315336124917E + 67CA2618CE5BE074116DF24A706905F5 + 766EB031C471A91F2642320D4694A3BD + 9AC8EAE278DCABB586F8D2717F34136D + +Set 6, vector# 2: + key = 0A5DB00356A9FC4FA2F5 + IV = 1F86ED54BB2289F057BE + stream[0..63] = DE9410C5134BCBADD0D2D95684E83818 + 3B91B0E8C1FA173C38F5B75103ABF0B8 + 546EDDE22D6BFB3BF1C0754C6C42982F + AEA5A3BD03DAFC0D1586E389B78C5872 + stream[65472..65535] = 36A54BF14629F0AE515610B8A3CC4A03 + 2490073054049502F63B1FCAA162ADA2 + 36D0A478721FDF31AB756FAA89B037D9 + 921C2D3425F497B601906DA210ED28D5 + stream[65536..65599] = C282E166344A3F9950C174BD17091FA3 + BBA2A033F9111F4CF9B9462C45B6F422 + C51B24E7DF00D74C7229A8FDCF2AF428 + 1A6BF656A228674643E3BED94A6AB8CD + stream[131008..131071] = 87545070DC5A80929893998A3CEE1703 + 6E9B7C13B14009C863E26BFCA5512254 + B1BCCF52498CEFEA7E4FD4435124F33A + 674B3A358318720F1F86CA84FF157D04 + xor-digest = 20703CD23D523408FF94606A98DE989E + 484C3EF717D73710E2C7661FDD84A0A7 + C62280C53537C042D8C083FF5BD514BF + 2B022A863E906BB2D0B752F2F6A03CCA + +Set 6, vector# 3: + key = 0F62B5085BAE0154A7FA + IV = 288FF65DC42B92F960C7 + stream[0..63] = A4386C6D7624983FEA8DBE7314E5FE1F + 9D102004C2CEC99AC3BFBF003A66433F + 3089A98FAD8512C49D7AABC0639F90C5 + FFED06F9D35AA8C86630E76A838E26D7 + stream[65472..65535] = 04BB52CDF852E04B178FE3B07AF57EC1 + 06F3180B9B0D59B2192D42BCC35CEF68 + 96555D57316FF9153C359A8C43EF14CF + 7BE1F94D57A52669181D183DD5A4137F + stream[65536..65599] = 613009063D291C419D0194D59ADED624 + 9D9365DAE8D6A62864CF649F5842A214 + 57BFAD03153DB891E63AC9A859BB9151 + 1C475A8BD44756480FFBF14AA766B443 + stream[131008..131071] = CB18518E27F7F95A5207AE008C760F33 + C26947E5231847AD32A5ADC1AC74DF45 + 9526B62A2CD6956D14D3F48677AC338B + 13CD7B7A1B3A0C834E64AC03307F8830 + xor-digest = 88353FC92945C5AF3C04CBF04D467981 + 3A4E87D9239097CA8CB22CE02C2BF352 + DFB5134F17A1AD32684F35C6ADCC560F + AA7AE9BB19F8D8DA96D89C648C2E48C8 + + + +End of test vectors diff --git a/testvectors/trivium__unverified.test-vectors b/testvectors/trivium-unverified.test-vectors similarity index 100% rename from testvectors/trivium__unverified.test-vectors rename to testvectors/trivium-unverified.test-vectors diff --git a/trivium/trivium.c b/trivium/trivium.c index 15f2b93..cbad461 100644 --- a/trivium/trivium.c +++ b/trivium/trivium.c @@ -28,9 +28,10 @@ #include #include #include "trivium.h" +#include #define G(i) ((((*ctx)[(i)/8])>>(((i)%8)))&1) -#define S(i,v) ((*ctx)[(i)/8] = ((*ctx)[(i)/8] & ~(1<<((i)%8))) | ((v)<<((i)%8))) +#define S(i,v) ((*ctx)[(i)/8] = (((*ctx)[(i)/8]) & (uint8_t)~(1<<((i)%8))) | ((v)<<((i)%8))) uint8_t trivium_enc(trivium_ctx_t* ctx){ uint8_t t1,t2,t3,z; @@ -57,25 +58,55 @@ uint8_t trivium_enc(trivium_ctx_t* ctx){ return z?0x080:0x00; } +uint8_t trivium_getbyte(trivium_ctx_t *ctx){ + uint8_t r=0, i=0; + do{ + r>>=1; + r |= trivium_enc(ctx); + }while(++i<8); + return r; +} + #define KEYSIZE_B ((keysize_b+7)/8) #define IVSIZE_B ((ivsize_b +7)/8) +static const uint8_t rev_table[16] PROGMEM = { + 0x00, 0x08, 0x04, 0x0C, /* 0000 1000 0100 1100 */ + 0x02, 0x0A, 0x06, 0x0E, /* 0010 1010 0110 1110 */ + 0x01, 0x09, 0x05, 0x0D, /* 0001 1001 0101 1101 */ + 0x03, 0x0B, 0x07, 0x0F /* 0011 1011 0111 1111 */ +}; + void trivium_init(const void* key, uint16_t keysize_b, const void* iv, uint16_t ivsize_b, trivium_ctx_t* ctx){ uint16_t i; - uint8_t c1=0,c2; - + uint8_t c1,c2; + uint8_t t1,t2; memset((*ctx)+KEYSIZE_B, 0, 35-KEYSIZE_B); - memcpy((*ctx), key, KEYSIZE_B); - memcpy((*ctx)+12, iv, IVSIZE_B); /* iv0 is at s96, must shift to s93 */ + c2=0; + c1=KEYSIZE_B; + do{ + t1 = ((uint8_t*)key)[--c1]; + t2 = (pgm_read_byte(&(rev_table[t1&0x0f]))<<4)|(pgm_read_byte(&(rev_table[t1>>4]))); + (*ctx)[c2++] = t2; + }while(c1!=0); + + c2=12; + c1=IVSIZE_B; + do{ + t1 = ((uint8_t*)iv)[--c1]; + t2 = (pgm_read_byte(&(rev_table[t1&0x0f]))<<4)|(pgm_read_byte(&(rev_table[t1>>4]))); + (*ctx)[c2++] = t2; + }while(c1!=0); for(i=12+IVSIZE_B; i>10; --i){ c2=(((*ctx)[i])<<5); (*ctx)[i] = (((*ctx)[i])>>3)|c1; c1=c2; } - (*ctx)[35] |= 0xE0; + + (*ctx)[35] = 0xE0; for(i=0; i<4*288; ++i){ trivium_enc(ctx); diff --git a/trivium/trivium.h b/trivium/trivium.h index a5692dc..ced7784 100644 --- a/trivium/trivium.h +++ b/trivium/trivium.h @@ -22,6 +22,7 @@ typedef uint8_t trivium_ctx_t[36]; /* 288bit */ uint8_t trivium_enc(trivium_ctx_t* ctx); +uint8_t trivium_getbyte(trivium_ctx_t* ctx); void trivium_init(const void* key, uint16_t keysize_b, const void* iv, uint16_t ivsize_b, trivium_ctx_t* ctx);