From fd22948666621983bec78f8d0c317eadf280f2bd Mon Sep 17 00:00:00 2001 From: Dan <14043624+delivrance@users.noreply.github.com> Date: Wed, 12 Jun 2019 16:06:13 +0200 Subject: [PATCH 01/17] Add tests --- README.md | 9 +++++ tests/__init__.py | 0 tests/test_ctr.py | 89 +++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 98 insertions(+) create mode 100644 tests/__init__.py create mode 100644 tests/test_ctr.py diff --git a/README.md b/README.md index 5d9d9f6..a984f70 100644 --- a/README.md +++ b/README.md @@ -116,6 +116,15 @@ while True: print(data.getvalue() == decrypted_data.getvalue()) # True ``` +## Testing + +1. Install the package: `pip3 install -U tgcrypto`. +2. Clone this repository: `git clone https://github.com/pyrogram/tgcrypto`. +3. Enter the directory: `cd tgcrypto`. +4. Run tests: `python3 -m unittest`. + +**Note**: I haven't found any public test vectors for AES-IGE 256 bit, yet. + ## License [LGPLv3+](COPYING.lesser) © 2017-2019 [Dan](https://github.com/delivrance) diff --git a/tests/__init__.py b/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/tests/test_ctr.py b/tests/test_ctr.py new file mode 100644 index 0000000..9fc6c8a --- /dev/null +++ b/tests/test_ctr.py @@ -0,0 +1,89 @@ +import unittest + +import tgcrypto + + +# https://csrc.nist.gov/CSRC/media/Projects/Cryptographic-Standards-and-Guidelines/documents/examples/AES_CTR.pdf + +class TestCTR256(unittest.TestCase): + def test_encrypt(self): + key = bytes.fromhex(""" + 603DEB10 15CA71BE 2B73AEF0 857D7781 + 1F352C07 3B6108D7 2D9810A3 0914DFF4 + """.replace(" ", "").replace("\n", "")) + + iv = bytes.fromhex(""" + F0F1F2F3 F4F5F6F7 F8F9FAFB FCFDFEFF + """.replace(" ", "").replace("\n", "")) + + plaintext = bytes.fromhex(""" + 6BC1BEE2 2E409F96 E93D7E11 7393172A + AE2D8A57 1E03AC9C 9EB76FAC 45AF8E51 + 30C81C46 A35CE411 E5FBC119 1A0A52EF + F69F2445 DF4F9B17 AD2B417B E66C3710 + """.replace(" ", "").replace("\n", "")) + + ciphertext = bytes.fromhex(""" + 601EC313 775789A5 B7A7F504 BBF3D228 + F443E3CA 4D62B59A CA84E990 CACAF5C5 + 2B0930DA A23DE94C E87017BA 2D84988D + DFC9C58D B67AADA6 13C2DD08 457941A6 + """.replace(" ", "").replace("\n", "")) + + self.assertEqual(tgcrypto.ctr256_encrypt(plaintext, key, iv, bytes(1)), ciphertext) + + def test_decrypt(self): + key = bytes.fromhex(""" + 603DEB10 15CA71BE 2B73AEF0 857D7781 + 1F352C07 3B6108D7 2D9810A3 0914DFF4 + """.replace(" ", "").replace("\n", "")) + + iv = bytes.fromhex(""" + F0F1F2F3 F4F5F6F7 F8F9FAFB FCFDFEFF + """.replace(" ", "").replace("\n", "")) + + ciphertext = bytes.fromhex(""" + 601EC313 775789A5 B7A7F504 BBF3D228 + F443E3CA 4D62B59A CA84E990 CACAF5C5 + 2B0930DA A23DE94C E87017BA 2D84988D + DFC9C58D B67AADA6 13C2DD08 457941A6 + """.replace(" ", "").replace("\n", "")) + + plaintext = bytes.fromhex(""" + 6BC1BEE2 2E409F96 E93D7E11 7393172A + AE2D8A57 1E03AC9C 9EB76FAC 45AF8E51 + 30C81C46 A35CE411 E5FBC119 1A0A52EF + F69F2445 DF4F9B17 AD2B417B E66C3710 + """.replace(" ", "").replace("\n", "")) + + self.assertEqual(tgcrypto.ctr256_decrypt(ciphertext, key, iv, bytes(1)), plaintext) + + # https://github.com/pyca/cryptography/blob/cd4de3ce6dc2a0dd4171b869e187857e4125853b/vectors/cryptography_vectors/ciphers/AES/CTR/aes-256-ctr.txt + + def test_encrypt_extra1(self): + key = bytes.fromhex("776BEFF2851DB06F4C8A0542C8696F6C6A81AF1EEC96B4D37FC1D689E6C1C104") + iv = bytes.fromhex("00000060DB5672C97AA8F0B200000001") + plaintext = bytes.fromhex("53696E676C6520626C6F636B206D7367") + ciphertext = bytes.fromhex("145AD01DBF824EC7560863DC71E3E0C0") + + self.assertEqual(tgcrypto.ctr256_encrypt(plaintext, key, iv, bytes(1)), ciphertext) + + def test_encrypt_extra2(self): + key = bytes.fromhex("F6D66D6BD52D59BB0796365879EFF886C66DD51A5B6A99744B50590C87A23884") + iv = bytes.fromhex("00FAAC24C1585EF15A43D87500000001") + plaintext = bytes.fromhex("000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F") + ciphertext = bytes.fromhex("F05E231B3894612C49EE000B804EB2A9B8306B508F839D6A5530831D9344AF1C") + + self.assertEqual(tgcrypto.ctr256_encrypt(plaintext, key, iv, bytes(1)), ciphertext) + + def test_encrypt_extra3(self): + key = bytes.fromhex("FF7A617CE69148E4F1726E2F43581DE2AA62D9F805532EDFF1EED687FB54153D") + iv = bytes.fromhex("001CC5B751A51D70A1C1114800000001") + plaintext = bytes.fromhex("000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20212223") + ciphertext = bytes.fromhex("EB6C52821D0BBBF7CE7594462ACA4FAAB407DF866569FD07F48CC0B583D6071F1EC0E6B8") + + self.assertEqual(tgcrypto.ctr256_encrypt(plaintext, key, iv, bytes(1)), ciphertext) + + +if __name__ == "__main__": + unittest.main() From 1a40d7df85db7a4fc62b4ca6a81e4f93f006e942 Mon Sep 17 00:00:00 2001 From: Dan <14043624+delivrance@users.noreply.github.com> Date: Thu, 13 Jun 2019 00:27:11 +0200 Subject: [PATCH 02/17] Reformat code --- tgcrypto/ige256.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tgcrypto/ige256.c b/tgcrypto/ige256.c index a8eb301..dc2f484 100644 --- a/tgcrypto/ige256.c +++ b/tgcrypto/ige256.c @@ -35,7 +35,7 @@ uint8_t *ige256(const uint8_t in[], uint32_t length, const uint8_t key[32], cons for (j = 0; j < AES_BLOCK_SIZE; ++j) buffer[j] = in[i + j] ^ iv1[j]; - (encrypt ? aes256_encrypt : aes256_decrypt)((uint8_t *) &buffer, &out[i], expandedKey); + (encrypt ? aes256_encrypt : aes256_decrypt)((uint8_t * ) & buffer, &out[i], expandedKey); for (j = 0; j < AES_BLOCK_SIZE; ++j) out[i + j] ^= iv2[j]; From 8a7d067062d9ed229499a1fe083a11071a5e1610 Mon Sep 17 00:00:00 2001 From: Dan <14043624+delivrance@users.noreply.github.com> Date: Thu, 13 Jun 2019 00:31:25 +0200 Subject: [PATCH 03/17] Implement AES-CBC 256 bit --- setup.py | 3 ++- tgcrypto/cbc256.c | 54 +++++++++++++++++++++++++++++++++++++++++++++ tgcrypto/cbc256.h | 24 ++++++++++++++++++++ tgcrypto/tgcrypto.c | 42 ++++++++++++++++++++++++++++++----- 4 files changed, 116 insertions(+), 7 deletions(-) create mode 100644 tgcrypto/cbc256.c create mode 100644 tgcrypto/cbc256.h diff --git a/setup.py b/setup.py index df05665..c08683a 100644 --- a/setup.py +++ b/setup.py @@ -72,7 +72,8 @@ setup( "tgcrypto/tgcrypto.c", "tgcrypto/aes256.c", "tgcrypto/ige256.c", - "tgcrypto/ctr256.c" + "tgcrypto/ctr256.c", + "tgcrypto/cbc256.c" ] ) ] diff --git a/tgcrypto/cbc256.c b/tgcrypto/cbc256.c new file mode 100644 index 0000000..3cb0630 --- /dev/null +++ b/tgcrypto/cbc256.c @@ -0,0 +1,54 @@ +// Pyrogram - Telegram MTProto API Client Library for Python +// Copyright (C) 2017-2019 Dan +// +// This file is part of Pyrogram. +// +// Pyrogram is free software: you can redistribute it and/or modify +// it under the terms of the GNU Lesser General Public License as published +// by the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// Pyrogram 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 Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public License +// along with Pyrogram. If not, see . + +#include "aes256.h" + +uint8_t *cbc256(const uint8_t in[], uint32_t length, const uint8_t key[32], uint8_t iv[16], uint8_t encrypt) { + uint8_t *out = (uint8_t *) malloc(length * sizeof(uint8_t)); + uint8_t nextIv[AES_BLOCK_SIZE]; + uint32_t expandedKey[EXPANDED_KEY_SIZE]; + uint32_t i, j; + + memcpy(out, in, length); + + if (encrypt) { + aes256_set_encryption_key(key, expandedKey); + + for (i = 0; i < length; i += AES_BLOCK_SIZE) { + for (j = 0; j < AES_BLOCK_SIZE; ++j) + out[i + j] ^= iv[j]; + + aes256_encrypt(&out[i], &out[i], expandedKey); + memcpy(iv, &out[i], AES_BLOCK_SIZE); + } + } else { + aes256_set_decryption_key(key, expandedKey); + + for (i = 0; i < length; i += AES_BLOCK_SIZE) { + memcpy(nextIv, &out[i], AES_BLOCK_SIZE); + aes256_decrypt(&out[i], &out[i], expandedKey); + + for (j = 0; j < AES_BLOCK_SIZE; ++j) + out[i + j] ^= iv[j]; + + memcpy(iv, nextIv, AES_BLOCK_SIZE); + } + } + + return out; +} diff --git a/tgcrypto/cbc256.h b/tgcrypto/cbc256.h new file mode 100644 index 0000000..f145a74 --- /dev/null +++ b/tgcrypto/cbc256.h @@ -0,0 +1,24 @@ +// Pyrogram - Telegram MTProto API Client Library for Python +// Copyright (C) 2017-2019 Dan +// +// This file is part of Pyrogram. +// +// Pyrogram is free software: you can redistribute it and/or modify +// it under the terms of the GNU Lesser General Public License as published +// by the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// Pyrogram 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 Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public License +// along with Pyrogram. If not, see . + +#ifndef CBC256_H +#define CBC256_H + +uint8_t *cbc256(const uint8_t in[], uint32_t length, const uint8_t key[32], const uint8_t iv[16], uint8_t encrypt); + +#endif // CBC256_H diff --git a/tgcrypto/tgcrypto.c b/tgcrypto/tgcrypto.c index 8a9047d..58ad3b6 100644 --- a/tgcrypto/tgcrypto.c +++ b/tgcrypto/tgcrypto.c @@ -21,8 +21,9 @@ #include "aes256.h" #include "ige256.h" #include "ctr256.h" +#include "cbc256.h" -static PyObject* ige(PyObject *args, uint8_t encrypt) { +static PyObject *ige(PyObject *args, uint8_t encrypt) { Py_buffer data, key, iv; uint8_t *buf; PyObject *out; @@ -68,12 +69,41 @@ static PyObject *ctr256_encrypt(PyObject *self, PyObject *args) { return out; } +static PyObject *cbc(PyObject *args, uint8_t encrypt) { + Py_buffer data, key, iv; + uint8_t *buf; + PyObject *out; + + PyArg_ParseTuple(args, "y*y*y*", &data, &key, &iv); + + buf = cbc256(data.buf, data.len, key.buf, iv.buf, encrypt); + + PyBuffer_Release(&data); + PyBuffer_Release(&key); + PyBuffer_Release(&iv); + + out = Py_BuildValue("y#", buf, data.len); + free(buf); + + return out; +} + +static PyObject *cbc256_encrypt(PyObject *self, PyObject *args) { + return cbc(args, 1); +} + +static PyObject *cbc256_decrypt(PyObject *self, PyObject *args) { + return cbc(args, 0); +} + static PyMethodDef methods[] = { - {"ige256_encrypt", (PyCFunction) ige256_encrypt, METH_VARARGS, "AES-256-IGE Encryption"}, - {"ige256_decrypt", (PyCFunction) ige256_decrypt, METH_VARARGS, "AES-256-IGE Decryption"}, - {"ctr256_encrypt", (PyCFunction) ctr256_encrypt, METH_VARARGS, "AES-256-CTR Encryption"}, - {"ctr256_decrypt", (PyCFunction) ctr256_encrypt, METH_VARARGS, "AES-256-CTR Decryption"}, - {NULL, NULL, 0, NULL} + {"ige256_encrypt", (PyCFunction) ige256_encrypt, METH_VARARGS, "AES-IGE 256 bit Encryption"}, + {"ige256_decrypt", (PyCFunction) ige256_decrypt, METH_VARARGS, "AES-IGE 256 bit Decryption"}, + {"ctr256_encrypt", (PyCFunction) ctr256_encrypt, METH_VARARGS, "AES-CTR 256 bit Encryption"}, + {"ctr256_decrypt", (PyCFunction) ctr256_encrypt, METH_VARARGS, "AES-CTR 256 bit Decryption"}, + {"cbc256_encrypt", (PyCFunction) cbc256_encrypt, METH_VARARGS, "AES-CBC 256 bit Encryption"}, + {"cbc256_decrypt", (PyCFunction) cbc256_decrypt, METH_VARARGS, "AES-CBC 256 bit Decryption"}, + {NULL, NULL, 0, NULL} }; static struct PyModuleDef module = { From b4d58f4a5cbcb09a83f9a6f03fdb90ae50640d49 Mon Sep 17 00:00:00 2001 From: Dan <14043624+delivrance@users.noreply.github.com> Date: Thu, 13 Jun 2019 00:33:31 +0200 Subject: [PATCH 04/17] Move tests for AES-CTR 256 bit into a dedicated folder --- tests/ctr/__init__.py | 0 tests/{ => ctr}/test_ctr.py | 14 +++++++------- 2 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 tests/ctr/__init__.py rename tests/{ => ctr}/test_ctr.py (91%) diff --git a/tests/ctr/__init__.py b/tests/ctr/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/tests/test_ctr.py b/tests/ctr/test_ctr.py similarity index 91% rename from tests/test_ctr.py rename to tests/ctr/test_ctr.py index 9fc6c8a..abf0bac 100644 --- a/tests/test_ctr.py +++ b/tests/ctr/test_ctr.py @@ -3,10 +3,10 @@ import unittest import tgcrypto -# https://csrc.nist.gov/CSRC/media/Projects/Cryptographic-Standards-and-Guidelines/documents/examples/AES_CTR.pdf - class TestCTR256(unittest.TestCase): - def test_encrypt(self): + # https://csrc.nist.gov/CSRC/media/Projects/Cryptographic-Standards-and-Guidelines/documents/examples/AES_CTR.pdf + + def test_ctr256_encrypt(self): key = bytes.fromhex(""" 603DEB10 15CA71BE 2B73AEF0 857D7781 1F352C07 3B6108D7 2D9810A3 0914DFF4 @@ -32,7 +32,7 @@ class TestCTR256(unittest.TestCase): self.assertEqual(tgcrypto.ctr256_encrypt(plaintext, key, iv, bytes(1)), ciphertext) - def test_decrypt(self): + def test_ctr256_decrypt(self): key = bytes.fromhex(""" 603DEB10 15CA71BE 2B73AEF0 857D7781 1F352C07 3B6108D7 2D9810A3 0914DFF4 @@ -60,7 +60,7 @@ class TestCTR256(unittest.TestCase): # https://github.com/pyca/cryptography/blob/cd4de3ce6dc2a0dd4171b869e187857e4125853b/vectors/cryptography_vectors/ciphers/AES/CTR/aes-256-ctr.txt - def test_encrypt_extra1(self): + def test_ctr256_encrypt_extra1(self): key = bytes.fromhex("776BEFF2851DB06F4C8A0542C8696F6C6A81AF1EEC96B4D37FC1D689E6C1C104") iv = bytes.fromhex("00000060DB5672C97AA8F0B200000001") plaintext = bytes.fromhex("53696E676C6520626C6F636B206D7367") @@ -68,7 +68,7 @@ class TestCTR256(unittest.TestCase): self.assertEqual(tgcrypto.ctr256_encrypt(plaintext, key, iv, bytes(1)), ciphertext) - def test_encrypt_extra2(self): + def test_ctr256_encrypt_extra2(self): key = bytes.fromhex("F6D66D6BD52D59BB0796365879EFF886C66DD51A5B6A99744B50590C87A23884") iv = bytes.fromhex("00FAAC24C1585EF15A43D87500000001") plaintext = bytes.fromhex("000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F") @@ -76,7 +76,7 @@ class TestCTR256(unittest.TestCase): self.assertEqual(tgcrypto.ctr256_encrypt(plaintext, key, iv, bytes(1)), ciphertext) - def test_encrypt_extra3(self): + def test_ctr256_encrypt_extra3(self): key = bytes.fromhex("FF7A617CE69148E4F1726E2F43581DE2AA62D9F805532EDFF1EED687FB54153D") iv = bytes.fromhex("001CC5B751A51D70A1C1114800000001") plaintext = bytes.fromhex("000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20212223") From 9e33d805ae1ad14fcbdc96053e5f4f9b4cb4d481 Mon Sep 17 00:00:00 2001 From: Dan <14043624+delivrance@users.noreply.github.com> Date: Thu, 13 Jun 2019 00:34:00 +0200 Subject: [PATCH 05/17] Add tests for AES-CBC 256 bit --- tests/cbc/__init__.py | 0 tests/cbc/test_cbc.py | 114 + tests/cbc/vectors/CBCGFSbox256.rsp | 71 + tests/cbc/vectors/CBCKeySbox256.rsp | 203 ++ tests/cbc/vectors/CBCMMT256.rsp | 131 ++ tests/cbc/vectors/CBCVarKey256.rsp | 3083 +++++++++++++++++++++++++++ tests/cbc/vectors/CBCVarTxt256.rsp | 1547 ++++++++++++++ 7 files changed, 5149 insertions(+) create mode 100644 tests/cbc/__init__.py create mode 100644 tests/cbc/test_cbc.py create mode 100644 tests/cbc/vectors/CBCGFSbox256.rsp create mode 100644 tests/cbc/vectors/CBCKeySbox256.rsp create mode 100644 tests/cbc/vectors/CBCMMT256.rsp create mode 100644 tests/cbc/vectors/CBCVarKey256.rsp create mode 100644 tests/cbc/vectors/CBCVarTxt256.rsp diff --git a/tests/cbc/__init__.py b/tests/cbc/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/tests/cbc/test_cbc.py b/tests/cbc/test_cbc.py new file mode 100644 index 0000000..a4dc9ac --- /dev/null +++ b/tests/cbc/test_cbc.py @@ -0,0 +1,114 @@ +import os +import re +import unittest +from pathlib import Path + +import tgcrypto + + +class TestCBC256NIST(unittest.TestCase): + # https://csrc.nist.gov/CSRC/media/Projects/Cryptographic-Standards-and-Guidelines/documents/examples/AES_CBC.pdf + + def test_cbc256_encrypt(self): + key = bytes.fromhex(""" + 603DEB10 15CA71BE 2B73AEF0 857D7781 + 1F352C07 3B6108D7 2D9810A3 0914DFF4 + """.replace(" ", "").replace("\n", "")) + + iv = bytes.fromhex(""" + 00010203 04050607 08090A0B 0C0D0E0F + """.replace(" ", "").replace("\n", "")) + + plaintext = bytes.fromhex(""" + 6BC1BEE2 2E409F96 E93D7E11 7393172A + AE2D8A57 1E03AC9C 9EB76FAC 45AF8E51 + 30C81C46 A35CE411 E5FBC119 1A0A52EF + F69F2445 DF4F9B17 AD2B417B E66C3710 + """.replace(" ", "").replace("\n", "")) + + ciphertext = bytes.fromhex(""" + F58C4C04 D6E5F1BA 779EABFB 5F7BFBD6 + 9CFC4E96 7EDB808D 679F777B C6702C7D + 39F23369 A9D9BACF A530E263 04231461 + B2EB05E2 C39BE9FC DA6C1907 8C6A9D1B + """.replace(" ", "").replace("\n", "")) + + self.assertEqual(tgcrypto.cbc256_encrypt(plaintext, key, iv), ciphertext) + + def test_cbc256_decrypt(self): + key = bytes.fromhex(""" + 603DEB10 15CA71BE 2B73AEF0 857D7781 + 1F352C07 3B6108D7 2D9810A3 0914DFF4 + """.replace(" ", "").replace("\n", "")) + + iv = bytes.fromhex(""" + 00010203 04050607 08090A0B 0C0D0E0F + """.replace(" ", "").replace("\n", "")) + + ciphertext = bytes.fromhex(""" + F58C4C04 D6E5F1BA 779EABFB 5F7BFBD6 + 9CFC4E96 7EDB808D 679F777B C6702C7D + 39F23369 A9D9BACF A530E263 04231461 + B2EB05E2 C39BE9FC DA6C1907 8C6A9D1B + """.replace(" ", "").replace("\n", "")) + + plaintext = bytes.fromhex(""" + 6BC1BEE2 2E409F96 E93D7E11 7393172A + AE2D8A57 1E03AC9C 9EB76FAC 45AF8E51 + 30C81C46 A35CE411 E5FBC119 1A0A52EF + F69F2445 DF4F9B17 AD2B417B E66C3710 + """.replace(" ", "").replace("\n", "")) + + self.assertEqual(tgcrypto.cbc256_decrypt(ciphertext, key, iv), plaintext) + + +class TestCBC256Cryptography(unittest.TestCase): + # https://github.com/pyca/cryptography/blob/cd4de3ce6dc2a0dd4171b869e187857e4125853b/vectors/cryptography_vectors/ciphers/AES/CBC + + TEMPLATE = """ + def test_cbc256_{mode}_{name}_{count}(self): + key = bytes.fromhex("{key}") + iv = bytes.fromhex("{iv}") + plaintext = bytes.fromhex("{plaintext}") + ciphertext = bytes.fromhex("{ciphertext}") + + self.assertEqual(tgcrypto.cbc256_{mode}({input}, key, iv), {output}) + """.replace("\n ", "\n") + + PATTERN = r"COUNT = (\d+)\nKEY = (\w+)\nIV = (\w+)\n(PLAINTEXT|CIPHERTEXT) = (\w+)\n(PLAINTEXT|CIPHERTEXT) = (\w+)" + + for path in (Path(__file__).parent / "vectors").rglob("*.rsp"): + with open(path, "r", encoding="utf-8") as f: + for match in re.finditer(PATTERN, f.read()): + count, key, iv, plain_or_cipher, bytes1, _, bytes2 = match.groups() + + if plain_or_cipher == "PLAINTEXT": + mode = "encrypt" + plaintext = bytes1 + ciphertext = bytes2 + input = "plaintext" + output = "ciphertext" + else: + mode = "decrypt" + plaintext = bytes2 + ciphertext = bytes1 + input = "ciphertext" + output = "plaintext" + + exec( + TEMPLATE.format( + mode=mode, + name=os.path.split(path)[-1].split(".")[0], + count=count, + key=key, + iv=iv, + plaintext=plaintext, + ciphertext=ciphertext, + input=input, + output=output + ) + ) + + +if __name__ == "__main__": + unittest.main() diff --git a/tests/cbc/vectors/CBCGFSbox256.rsp b/tests/cbc/vectors/CBCGFSbox256.rsp new file mode 100644 index 0000000..ad81143 --- /dev/null +++ b/tests/cbc/vectors/CBCGFSbox256.rsp @@ -0,0 +1,71 @@ +# CAVS 11.1 +# Config info for aes_values +# AESVS GFSbox test data for CBC +# State : Encrypt and Decrypt +# Key Length : 256 +# Generated on Fri Apr 22 15:11:38 2011 + +[ENCRYPT] + +COUNT = 0 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 014730f80ac625fe84f026c60bfd547d +CIPHERTEXT = 5c9d844ed46f9885085e5d6a4f94c7d7 + +COUNT = 1 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 0b24af36193ce4665f2825d7b4749c98 +CIPHERTEXT = a9ff75bd7cf6613d3731c77c3b6d0c04 + +COUNT = 2 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 761c1fe41a18acf20d241650611d90f1 +CIPHERTEXT = 623a52fcea5d443e48d9181ab32c7421 + +COUNT = 3 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 8a560769d605868ad80d819bdba03771 +CIPHERTEXT = 38f2c7ae10612415d27ca190d27da8b4 + +COUNT = 4 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 91fbef2d15a97816060bee1feaa49afe +CIPHERTEXT = 1bc704f1bce135ceb810341b216d7abe + +[DECRYPT] + +COUNT = 0 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 5c9d844ed46f9885085e5d6a4f94c7d7 +PLAINTEXT = 014730f80ac625fe84f026c60bfd547d + +COUNT = 1 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = a9ff75bd7cf6613d3731c77c3b6d0c04 +PLAINTEXT = 0b24af36193ce4665f2825d7b4749c98 + +COUNT = 2 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 623a52fcea5d443e48d9181ab32c7421 +PLAINTEXT = 761c1fe41a18acf20d241650611d90f1 + +COUNT = 3 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 38f2c7ae10612415d27ca190d27da8b4 +PLAINTEXT = 8a560769d605868ad80d819bdba03771 + +COUNT = 4 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 1bc704f1bce135ceb810341b216d7abe +PLAINTEXT = 91fbef2d15a97816060bee1feaa49afe + diff --git a/tests/cbc/vectors/CBCKeySbox256.rsp b/tests/cbc/vectors/CBCKeySbox256.rsp new file mode 100644 index 0000000..696c330 --- /dev/null +++ b/tests/cbc/vectors/CBCKeySbox256.rsp @@ -0,0 +1,203 @@ +# CAVS 11.1 +# Config info for aes_values +# AESVS KeySbox test data for CBC +# State : Encrypt and Decrypt +# Key Length : 256 +# Generated on Fri Apr 22 15:11:38 2011 + +[ENCRYPT] + +COUNT = 0 +KEY = c47b0294dbbbee0fec4757f22ffeee3587ca4730c3d33b691df38bab076bc558 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 46f2fb342d6f0ab477476fc501242c5f + +COUNT = 1 +KEY = 28d46cffa158533194214a91e712fc2b45b518076675affd910edeca5f41ac64 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 4bf3b0a69aeb6657794f2901b1440ad4 + +COUNT = 2 +KEY = c1cc358b449909a19436cfbb3f852ef8bcb5ed12ac7058325f56e6099aab1a1c +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 352065272169abf9856843927d0674fd + +COUNT = 3 +KEY = 984ca75f4ee8d706f46c2d98c0bf4a45f5b00d791c2dfeb191b5ed8e420fd627 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 4307456a9e67813b452e15fa8fffe398 + +COUNT = 4 +KEY = b43d08a447ac8609baadae4ff12918b9f68fc1653f1269222f123981ded7a92f +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 4663446607354989477a5c6f0f007ef4 + +COUNT = 5 +KEY = 1d85a181b54cde51f0e098095b2962fdc93b51fe9b88602b3f54130bf76a5bd9 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 531c2c38344578b84d50b3c917bbb6e1 + +COUNT = 6 +KEY = dc0eba1f2232a7879ded34ed8428eeb8769b056bbaf8ad77cb65c3541430b4cf +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = fc6aec906323480005c58e7e1ab004ad + +COUNT = 7 +KEY = f8be9ba615c5a952cabbca24f68f8593039624d524c816acda2c9183bd917cb9 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = a3944b95ca0b52043584ef02151926a8 + +COUNT = 8 +KEY = 797f8b3d176dac5b7e34a2d539c4ef367a16f8635f6264737591c5c07bf57a3e +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = a74289fe73a4c123ca189ea1e1b49ad5 + +COUNT = 9 +KEY = 6838d40caf927749c13f0329d331f448e202c73ef52c5f73a37ca635d4c47707 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = b91d4ea4488644b56cf0812fa7fcf5fc + +COUNT = 10 +KEY = ccd1bc3c659cd3c59bc437484e3c5c724441da8d6e90ce556cd57d0752663bbc +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 304f81ab61a80c2e743b94d5002a126b + +COUNT = 11 +KEY = 13428b5e4c005e0636dd338405d173ab135dec2a25c22c5df0722d69dcc43887 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 649a71545378c783e368c9ade7114f6c + +COUNT = 12 +KEY = 07eb03a08d291d1b07408bf3512ab40c91097ac77461aad4bb859647f74f00ee +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 47cb030da2ab051dfc6c4bf6910d12bb + +COUNT = 13 +KEY = 90143ae20cd78c5d8ebdd6cb9dc1762427a96c78c639bccc41a61424564eafe1 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 798c7c005dee432b2c8ea5dfa381ecc3 + +COUNT = 14 +KEY = b7a5794d52737475d53d5a377200849be0260a67a2b22ced8bbef12882270d07 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 637c31dc2591a07636f646b72daabbe7 + +COUNT = 15 +KEY = fca02f3d5011cfc5c1e23165d413a049d4526a991827424d896fe3435e0bf68e +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 179a49c712154bbffbe6e7a84a18e220 + +[DECRYPT] + +COUNT = 0 +KEY = c47b0294dbbbee0fec4757f22ffeee3587ca4730c3d33b691df38bab076bc558 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 46f2fb342d6f0ab477476fc501242c5f +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 1 +KEY = 28d46cffa158533194214a91e712fc2b45b518076675affd910edeca5f41ac64 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 4bf3b0a69aeb6657794f2901b1440ad4 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 2 +KEY = c1cc358b449909a19436cfbb3f852ef8bcb5ed12ac7058325f56e6099aab1a1c +IV = 00000000000000000000000000000000 +CIPHERTEXT = 352065272169abf9856843927d0674fd +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 3 +KEY = 984ca75f4ee8d706f46c2d98c0bf4a45f5b00d791c2dfeb191b5ed8e420fd627 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 4307456a9e67813b452e15fa8fffe398 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 4 +KEY = b43d08a447ac8609baadae4ff12918b9f68fc1653f1269222f123981ded7a92f +IV = 00000000000000000000000000000000 +CIPHERTEXT = 4663446607354989477a5c6f0f007ef4 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 5 +KEY = 1d85a181b54cde51f0e098095b2962fdc93b51fe9b88602b3f54130bf76a5bd9 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 531c2c38344578b84d50b3c917bbb6e1 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 6 +KEY = dc0eba1f2232a7879ded34ed8428eeb8769b056bbaf8ad77cb65c3541430b4cf +IV = 00000000000000000000000000000000 +CIPHERTEXT = fc6aec906323480005c58e7e1ab004ad +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 7 +KEY = f8be9ba615c5a952cabbca24f68f8593039624d524c816acda2c9183bd917cb9 +IV = 00000000000000000000000000000000 +CIPHERTEXT = a3944b95ca0b52043584ef02151926a8 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 8 +KEY = 797f8b3d176dac5b7e34a2d539c4ef367a16f8635f6264737591c5c07bf57a3e +IV = 00000000000000000000000000000000 +CIPHERTEXT = a74289fe73a4c123ca189ea1e1b49ad5 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 9 +KEY = 6838d40caf927749c13f0329d331f448e202c73ef52c5f73a37ca635d4c47707 +IV = 00000000000000000000000000000000 +CIPHERTEXT = b91d4ea4488644b56cf0812fa7fcf5fc +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 10 +KEY = ccd1bc3c659cd3c59bc437484e3c5c724441da8d6e90ce556cd57d0752663bbc +IV = 00000000000000000000000000000000 +CIPHERTEXT = 304f81ab61a80c2e743b94d5002a126b +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 11 +KEY = 13428b5e4c005e0636dd338405d173ab135dec2a25c22c5df0722d69dcc43887 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 649a71545378c783e368c9ade7114f6c +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 12 +KEY = 07eb03a08d291d1b07408bf3512ab40c91097ac77461aad4bb859647f74f00ee +IV = 00000000000000000000000000000000 +CIPHERTEXT = 47cb030da2ab051dfc6c4bf6910d12bb +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 13 +KEY = 90143ae20cd78c5d8ebdd6cb9dc1762427a96c78c639bccc41a61424564eafe1 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 798c7c005dee432b2c8ea5dfa381ecc3 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 14 +KEY = b7a5794d52737475d53d5a377200849be0260a67a2b22ced8bbef12882270d07 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 637c31dc2591a07636f646b72daabbe7 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 15 +KEY = fca02f3d5011cfc5c1e23165d413a049d4526a991827424d896fe3435e0bf68e +IV = 00000000000000000000000000000000 +CIPHERTEXT = 179a49c712154bbffbe6e7a84a18e220 +PLAINTEXT = 00000000000000000000000000000000 + diff --git a/tests/cbc/vectors/CBCMMT256.rsp b/tests/cbc/vectors/CBCMMT256.rsp new file mode 100644 index 0000000..8f15f1a --- /dev/null +++ b/tests/cbc/vectors/CBCMMT256.rsp @@ -0,0 +1,131 @@ +# CAVS 11.1 +# Config info for aes_values +# AESVS MMT test data for CBC +# State : Encrypt and Decrypt +# Key Length : 256 +# Generated on Fri Apr 22 15:11:38 2011 + +[ENCRYPT] + +COUNT = 0 +KEY = 6ed76d2d97c69fd1339589523931f2a6cff554b15f738f21ec72dd97a7330907 +IV = 851e8764776e6796aab722dbb644ace8 +PLAINTEXT = 6282b8c05c5c1530b97d4816ca434762 +CIPHERTEXT = 6acc04142e100a65f51b97adf5172c41 + +COUNT = 1 +KEY = dce26c6b4cfb286510da4eecd2cffe6cdf430f33db9b5f77b460679bd49d13ae +IV = fdeaa134c8d7379d457175fd1a57d3fc +PLAINTEXT = 50e9eee1ac528009e8cbcd356975881f957254b13f91d7c6662d10312052eb00 +CIPHERTEXT = 2fa0df722a9fd3b64cb18fb2b3db55ff2267422757289413f8f657507412a64c + +COUNT = 2 +KEY = fe8901fecd3ccd2ec5fdc7c7a0b50519c245b42d611a5ef9e90268d59f3edf33 +IV = bd416cb3b9892228d8f1df575692e4d0 +PLAINTEXT = 8d3aa196ec3d7c9b5bb122e7fe77fb1295a6da75abe5d3a510194d3a8a4157d5c89d40619716619859da3ec9b247ced9 +CIPHERTEXT = 608e82c7ab04007adb22e389a44797fed7de090c8c03ca8a2c5acd9e84df37fbc58ce8edb293e98f02b640d6d1d72464 + +COUNT = 3 +KEY = 0493ff637108af6a5b8e90ac1fdf035a3d4bafd1afb573be7ade9e8682e663e5 +IV = c0cd2bebccbb6c49920bd5482ac756e8 +PLAINTEXT = 8b37f9148df4bb25956be6310c73c8dc58ea9714ff49b643107b34c9bff096a94fedd6823526abc27a8e0b16616eee254ab4567dd68e8ccd4c38ac563b13639c +CIPHERTEXT = 05d5c77729421b08b737e41119fa4438d1f570cc772a4d6c3df7ffeda0384ef84288ce37fc4c4c7d1125a499b051364c389fd639bdda647daa3bdadab2eb5594 + +COUNT = 4 +KEY = 9adc8fbd506e032af7fa20cf5343719de6d1288c158c63d6878aaf64ce26ca85 +IV = 11958dc6ab81e1c7f01631e9944e620f +PLAINTEXT = c7917f84f747cd8c4b4fedc2219bdbc5f4d07588389d8248854cf2c2f89667a2d7bcf53e73d32684535f42318e24cd45793950b3825e5d5c5c8fcd3e5dda4ce9246d18337ef3052d8b21c5561c8b660e +CIPHERTEXT = 9c99e68236bb2e929db1089c7750f1b356d39ab9d0c40c3e2f05108ae9d0c30b04832ccdbdc08ebfa426b7f5efde986ed05784ce368193bb3699bc691065ac62e258b9aa4cc557e2b45b49ce05511e65 + +COUNT = 5 +KEY = 73b8faf00b3302ac99855cf6f9e9e48518690a5906a4869d4dcf48d282faae2a +IV = b3cb97a80a539912b8c21f450d3b9395 +PLAINTEXT = 3adea6e06e42c4f041021491f2775ef6378cb08824165edc4f6448e232175b60d0345b9f9c78df6596ec9d22b7b9e76e8f3c76b32d5d67273f1d83fe7a6fc3dd3c49139170fa5701b3beac61b490f0a9e13f844640c4500f9ad3087adfb0ae10 +CIPHERTEXT = ac3d6dbafe2e0f740632fd9e820bf6044cd5b1551cbb9cc03c0b25c39ccb7f33b83aacfca40a3265f2bbff879153448acacb88fcfb3bb7b10fe463a68c0109f028382e3e557b1adf02ed648ab6bb895df0205d26ebbfa9a5fd8cebd8e4bee3dc + +COUNT = 6 +KEY = 9ddf3745896504ff360a51a3eb49c01b79fccebc71c3abcb94a949408b05b2c9 +IV = e79026639d4aa230b5ccffb0b29d79bc +PLAINTEXT = cf52e5c3954c51b94c9e38acb8c9a7c76aebdaa9943eae0a1ce155a2efdb4d46985d935511471452d9ee64d2461cb2991d59fc0060697f9a671672163230f367fed1422316e52d29eceacb8768f56d9b80f6d278093c9a8acd3cfd7edd8ebd5c293859f64d2f8486ae1bd593c65bc014 +CIPHERTEXT = 34df561bd2cfebbcb7af3b4b8d21ca5258312e7e2e4e538e35ad2490b6112f0d7f148f6aa8d522a7f3c61d785bd667db0e1dc4606c318ea4f26af4fe7d11d4dcff0456511b4aed1a0d91ba4a1fd6cd9029187bc5881a5a07fe02049d39368e83139b12825bae2c7be81e6f12c61bb5c5 + +COUNT = 7 +KEY = 458b67bf212d20f3a57fce392065582dcefbf381aa22949f8338ab9052260e1d +IV = 4c12effc5963d40459602675153e9649 +PLAINTEXT = 256fd73ce35ae3ea9c25dd2a9454493e96d8633fe633b56176dce8785ce5dbbb84dbf2c8a2eeb1e96b51899605e4f13bbc11b93bf6f39b3469be14858b5b720d4a522d36feed7a329c9b1e852c9280c47db8039c17c4921571a07d1864128330e09c308ddea1694e95c84500f1a61e614197e86a30ecc28df64ccb3ccf5437aa +CIPHERTEXT = 90b7b9630a2378f53f501ab7beff039155008071bc8438e789932cfd3eb1299195465e6633849463fdb44375278e2fdb1310821e6492cf80ff15cb772509fb426f3aeee27bd4938882fd2ae6b5bd9d91fa4a43b17bb439ebbe59c042310163a82a5fe5388796eee35a181a1271f00be29b852d8fa759bad01ff4678f010594cd + +COUNT = 8 +KEY = d2412db0845d84e5732b8bbd642957473b81fb99ca8bff70e7920d16c1dbec89 +IV = 51c619fcf0b23f0c7925f400a6cacb6d +PLAINTEXT = 026006c4a71a180c9929824d9d095b8faaa86fc4fa25ecac61d85ff6de92dfa8702688c02a282c1b8af4449707f22d75e91991015db22374c95f8f195d5bb0afeb03040ff8965e0e1339dba5653e174f8aa5a1b39fe3ac839ce307a4e44b4f8f1b0063f738ec18acdbff2ebfe07383e734558723e741f0a1836dafdf9de82210a9248bc113b3c1bc8b4e252ca01bd803 +CIPHERTEXT = 0254b23463bcabec5a395eb74c8fb0eb137a07bc6f5e9f61ec0b057de305714f8fa294221c91a159c315939b81e300ee902192ec5f15254428d8772f79324ec43298ca21c00b370273ee5e5ed90e43efa1e05a5d171209fe34f9f29237dba2a6726650fd3b1321747d1208863c6c3c6b3e2d879ab5f25782f08ba8f2abbe63e0bedb4a227e81afb36bb6645508356d34 + +COUNT = 9 +KEY = 48be597e632c16772324c8d3fa1d9c5a9ecd010f14ec5d110d3bfec376c5532b +IV = d6d581b8cf04ebd3b6eaa1b53f047ee1 +PLAINTEXT = 0c63d413d3864570e70bb6618bf8a4b9585586688c32bba0a5ecc1362fada74ada32c52acfd1aa7444ba567b4e7daaecf7cc1cb29182af164ae5232b002868695635599807a9a7f07a1f137e97b1e1c9dabc89b6a5e4afa9db5855edaa575056a8f4f8242216242bb0c256310d9d329826ac353d715fa39f80cec144d6424558f9f70b98c920096e0f2c855d594885a00625880e9dfb734163cecef72cf030b8 +CIPHERTEXT = fc5873e50de8faf4c6b84ba707b0854e9db9ab2e9f7d707fbba338c6843a18fc6facebaf663d26296fb329b4d26f18494c79e09e779647f9bafa87489630d79f4301610c2300c19dbf3148b7cac8c4f4944102754f332e92b6f7c5e75bc6179eb877a078d4719009021744c14f13fd2a55a2b9c44d18000685a845a4f632c7c56a77306efa66a24d05d088dcd7c13fe24fc447275965db9e4d37fbc9304448cd + +[DECRYPT] + +COUNT = 0 +KEY = 43e953b2aea08a3ad52d182f58c72b9c60fbe4a9ca46a3cb89e3863845e22c9e +IV = ddbbb0173f1e2deb2394a62aa2a0240e +CIPHERTEXT = d51d19ded5ca4ae14b2b20b027ffb020 +PLAINTEXT = 07270d0e63aa36daed8c6ade13ac1af1 + +COUNT = 1 +KEY = addf88c1ab997eb58c0455288c3a4fa320ada8c18a69cc90aa99c73b174dfde6 +IV = 60cc50e0887532e0d4f3d2f20c3c5d58 +CIPHERTEXT = 6cb4e2f4ddf79a8e08c96c7f4040e8a83266c07fc88dd0074ee25b00d445985a +PLAINTEXT = 98a8a9d84356bf403a9ccc384a06fe043dfeecb89e59ce0cb8bd0a495ef76cf0 + +COUNT = 2 +KEY = 54682728db5035eb04b79645c64a95606abb6ba392b6633d79173c027c5acf77 +IV = 2eb94297772851963dd39a1eb95d438f +CIPHERTEXT = e4046d05385ab789c6a72866e08350f93f583e2a005ca0faecc32b5cfc323d461c76c107307654db5566a5bd693e227c +PLAINTEXT = 0faa5d01b9afad3bb519575daaf4c60a5ed4ca2ba20c625bc4f08799addcf89d19796d1eff0bd790c622dc22c1094ec7 + +COUNT = 3 +KEY = 7482c47004aef406115ca5fd499788d582efc0b29dc9e951b1f959406693a54f +IV = 485ebf2215d20b816ea53944829717ce +CIPHERTEXT = 6c24f19b9c0b18d7126bf68090cb8ae72db3ca7eabb594f506aae7a2493e5326a5afae4ec4d109375b56e2b6ff4c9cf639e72c63dc8114c796df95b3c6b62021 +PLAINTEXT = 82fec664466d585023821c2e39a0c43345669a41244d05018a23d7159515f8ff4d88b01cd0eb83070d0077e065d74d7373816b61505718f8d4f270286a59d45e + +COUNT = 4 +KEY = 3ae38d4ebf7e7f6dc0a1e31e5efa7ca123fdc321e533e79fedd5132c5999ef5b +IV = 36d55dc9edf8669beecd9a2a029092b9 +CIPHERTEXT = d50ea48c8962962f7c3d301fa9f877245026c204a7771292cddca1e7ffebbef00e86d72910b7d8a756dfb45c9f1040978bb748ca537edd90b670ecee375e15d98582b9f93b6355adc9f80f4fb2108fb9 +PLAINTEXT = 8d22db30c4253c3e3add9685c14d55b05f7cf7626c52cccfcbe9b99fd8913663b8b1f22e277a4cc3d0e7e978a34782eb876867556ad4728486d5e890ea738243e3700a696d6eb58cd81c0e60eb121c50 + +COUNT = 5 +KEY = d30bfc0b2a19d5b8b6f8f46ab7f444ee136a7fa3fbdaf530cc3e8976339afcc4 +IV = 80be76a7f885d2c06b37d6a528fae0cd +CIPHERTEXT = 31e4677a17aed120bd3af69fbb0e4b645b9e8c104e280b799ddd49f1e241c3ccb7d40e1c6ff226bf04f8049c51a86e2981cf1331c824d7d451746ccf77fc22fd3717001ee51913d81f7a06fb0037f309957579f695670f2c4c7397d2d990374e +PLAINTEXT = 0b6e2a8213169b3b78db6de324e286f0366044e035c6970afbf0a1a5c32a05b24ba706cd9c6609737651a81b2bcf4c681dc0861983a5aec76e6c8b244112d64d489e84328974737394b83a39459011727162652b7aa793bfb1b71488b7dec96b + +COUNT = 6 +KEY = 64a256a663527ebea71f8d770990b4cee4a2d3afbfd33fb12c7ac300ef59e49a +IV = 18cce9147f295c5c00dbe0424089d3b4 +CIPHERTEXT = d99771963b7ae5202e382ff8c06e035367909cd24fe5ada7f3d39bfaeb5de98b04eaf4989648e00112f0d2aadb8c5f2157b64581450359965140c141e5fb631e43469d65d1b7370eb3b396399fec32cced294a5eee46d6547f7bbd49dee148b4bc31d6c493cfd28f3908e36cb698629d +PLAINTEXT = f7e0f79cfddd15ed3600ab2d29c56ba3c8e96d1a896aff6dec773e6ea4710a77f2f4ec646b76efda6428c175d007c84aa9f4b18c5e1bac5f27f7307b737655eee813f7e1f5880a37ac63ad1666e7883083b648454d45786f53ea3db1b5129291138abe40c79fcb7ab7c6f6b9ea133b5f + +COUNT = 7 +KEY = 31358e8af34d6ac31c958bbd5c8fb33c334714bffb41700d28b07f11cfe891e7 +IV = 144516246a752c329056d884daf3c89d +CIPHERTEXT = b32e2b171b63827034ebb0d1909f7ef1d51c5f82c1bb9bc26bc4ac4dccdee8357dca6154c2510ae1c87b1b422b02b621bb06cac280023894fcff3406af08ee9be1dd72419beccddff77c722d992cdcc87e9c7486f56ab406ea608d8c6aeb060c64cf2785ad1a159147567e39e303370da445247526d95942bf4d7e88057178b0 +PLAINTEXT = cfc155a3967de347f58fa2e8bbeb4183d6d32f7427155e6ab39cddf2e627c572acae02f1f243f3b784e73e21e7e520eacd3befafbee814867334c6ee8c2f0ee7376d3c72728cde7813173dbdfe3357deac41d3ae2a04229c0262f2d109d01f5d03e7f848fb50c28849146c02a2f4ebf7d7ffe3c9d40e31970bf151873672ef2b + +COUNT = 8 +KEY = 5b4b69339891db4e3337c3486f439dfbd0fb2a782ca71ef0059819d51669d93c +IV = 2b28a2d19ba9ecd149dae96622c21769 +CIPHERTEXT = ba21db8ec170fa4d73cfc381687f3fa188dd2d012bef48007f3dc88329e22ba32fe235a315be362546468b9db6af6705c6e5d4d36822f42883c08d4a994cc454a7db292c4ca1f4b62ebf8e479a5d545d6af9978d2cfee7bc80999192c2c8662ce9b4be11af40bd68f3e2d5685bb28c0f3dc08017c0aba8263e6fdc45ed7f9893bf14fd3a86c418a35c5667e642d59985 +PLAINTEXT = a0bb1d2fdeb7e6bf34c690fe7b72a5e9d65796aa57982fe340c286d6923dbddb426566ff58e9c0b3af52e4db446f6cc5daa5bfcf4e3c85db5a5638e670c370cce128db22c97542a64a63846f18a228d3462a11376dcb71f66ec52ebda474f7b6752915b0801797974bc51eb1218127fed60f1009430eb5089fb3ba5f28fad24c518ccddc2501393ceb6dffc46a159421 + +COUNT = 9 +KEY = 87725bd43a45608814180773f0e7ab95a3c859d83a2130e884190e44d14c6996 +IV = e49651988ebbb72eb8bb80bb9abbca34 +CIPHERTEXT = 5b97a9d423f4b97413f388d9a341e727bb339f8e18a3fac2f2fb85abdc8f135deb30054a1afdc9b6ed7da16c55eba6b0d4d10c74e1d9a7cf8edfaeaa684ac0bd9f9d24ba674955c79dc6be32aee1c260b558ff07e3a4d49d24162011ff254db8be078e8ad07e648e6bf5679376cb4321a5ef01afe6ad8816fcc7634669c8c4389295c9241e45fff39f3225f7745032daeebe99d4b19bcb215d1bfdb36eda2c24 +PLAINTEXT = bfe5c6354b7a3ff3e192e05775b9b75807de12e38a626b8bf0e12d5fff78e4f1775aa7d792d885162e66d88930f9c3b2cdf8654f56972504803190386270f0aa43645db187af41fcea639b1f8026ccdd0c23e0de37094a8b941ecb7602998a4b2604e69fc04219585d854600e0ad6f99a53b2504043c08b1c3e214d17cde053cbdf91daa999ed5b47c37983ba3ee254bc5c793837daaa8c85cfc12f7f54f699f + diff --git a/tests/cbc/vectors/CBCVarKey256.rsp b/tests/cbc/vectors/CBCVarKey256.rsp new file mode 100644 index 0000000..d0e02bd --- /dev/null +++ b/tests/cbc/vectors/CBCVarKey256.rsp @@ -0,0 +1,3083 @@ +# CAVS 11.1 +# Config info for aes_values +# AESVS VarKey test data for CBC +# State : Encrypt and Decrypt +# Key Length : 256 +# Generated on Fri Apr 22 15:11:38 2011 + +[ENCRYPT] + +COUNT = 0 +KEY = 8000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = e35a6dcb19b201a01ebcfa8aa22b5759 + +COUNT = 1 +KEY = c000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = b29169cdcf2d83e838125a12ee6aa400 + +COUNT = 2 +KEY = e000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = d8f3a72fc3cdf74dfaf6c3e6b97b2fa6 + +COUNT = 3 +KEY = f000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 1c777679d50037c79491a94da76a9a35 + +COUNT = 4 +KEY = f800000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 9cf4893ecafa0a0247a898e040691559 + +COUNT = 5 +KEY = fc00000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 8fbb413703735326310a269bd3aa94b2 + +COUNT = 6 +KEY = fe00000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 60e32246bed2b0e859e55c1cc6b26502 + +COUNT = 7 +KEY = ff00000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ec52a212f80a09df6317021bc2a9819e + +COUNT = 8 +KEY = ff80000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = f23e5b600eb70dbccf6c0b1d9a68182c + +COUNT = 9 +KEY = ffc0000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = a3f599d63a82a968c33fe26590745970 + +COUNT = 10 +KEY = ffe0000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = d1ccb9b1337002cbac42c520b5d67722 + +COUNT = 11 +KEY = fff0000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = cc111f6c37cf40a1159d00fb59fb0488 + +COUNT = 12 +KEY = fff8000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = dc43b51ab609052372989a26e9cdd714 + +COUNT = 13 +KEY = fffc000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 4dcede8da9e2578f39703d4433dc6459 + +COUNT = 14 +KEY = fffe000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 1a4c1c263bbccfafc11782894685e3a8 + +COUNT = 15 +KEY = ffff000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 937ad84880db50613423d6d527a2823d + +COUNT = 16 +KEY = ffff800000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 610b71dfc688e150d8152c5b35ebc14d + +COUNT = 17 +KEY = ffffc00000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 27ef2495dabf323885aab39c80f18d8b + +COUNT = 18 +KEY = ffffe00000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 633cafea395bc03adae3a1e2068e4b4e + +COUNT = 19 +KEY = fffff00000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 6e1b482b53761cf631819b749a6f3724 + +COUNT = 20 +KEY = fffff80000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 976e6f851ab52c771998dbb2d71c75a9 + +COUNT = 21 +KEY = fffffc0000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 85f2ba84f8c307cf525e124c3e22e6cc + +COUNT = 22 +KEY = fffffe0000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 6bcca98bf6a835fa64955f72de4115fe + +COUNT = 23 +KEY = ffffff0000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 2c75e2d36eebd65411f14fd0eb1d2a06 + +COUNT = 24 +KEY = ffffff8000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = bd49295006250ffca5100b6007a0eade + +COUNT = 25 +KEY = ffffffc000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = a190527d0ef7c70f459cd3940df316ec + +COUNT = 26 +KEY = ffffffe000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = bbd1097a62433f79449fa97d4ee80dbf + +COUNT = 27 +KEY = fffffff000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 07058e408f5b99b0e0f061a1761b5b3b + +COUNT = 28 +KEY = fffffff800000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 5fd1f13fa0f31e37fabde328f894eac2 + +COUNT = 29 +KEY = fffffffc00000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = fc4af7c948df26e2ef3e01c1ee5b8f6f + +COUNT = 30 +KEY = fffffffe00000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 829fd7208fb92d44a074a677ee9861ac + +COUNT = 31 +KEY = ffffffff00000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ad9fc613a703251b54c64a0e76431711 + +COUNT = 32 +KEY = ffffffff80000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 33ac9eccc4cc75e2711618f80b1548e8 + +COUNT = 33 +KEY = ffffffffc0000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 2025c74b8ad8f4cda17ee2049c4c902d + +COUNT = 34 +KEY = ffffffffe0000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = f85ca05fe528f1ce9b790166e8d551e7 + +COUNT = 35 +KEY = fffffffff0000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 6f6238d8966048d4967154e0dad5a6c9 + +COUNT = 36 +KEY = fffffffff8000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = f2b21b4e7640a9b3346de8b82fb41e49 + +COUNT = 37 +KEY = fffffffffc000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = f836f251ad1d11d49dc344628b1884e1 + +COUNT = 38 +KEY = fffffffffe000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 077e9470ae7abea5a9769d49182628c3 + +COUNT = 39 +KEY = ffffffffff000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = e0dcc2d27fc9865633f85223cf0d611f + +COUNT = 40 +KEY = ffffffffff800000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = be66cfea2fecd6bf0ec7b4352c99bcaa + +COUNT = 41 +KEY = ffffffffffc00000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = df31144f87a2ef523facdcf21a427804 + +COUNT = 42 +KEY = ffffffffffe00000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = b5bb0f5629fb6aae5e1839a3c3625d63 + +COUNT = 43 +KEY = fffffffffff00000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 3c9db3335306fe1ec612bdbfae6b6028 + +COUNT = 44 +KEY = fffffffffff80000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 3dd5c34634a79d3cfcc8339760e6f5f4 + +COUNT = 45 +KEY = fffffffffffc0000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 82bda118a3ed7af314fa2ccc5c07b761 + +COUNT = 46 +KEY = fffffffffffe0000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 2937a64f7d4f46fe6fea3b349ec78e38 + +COUNT = 47 +KEY = ffffffffffff0000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 225f068c28476605735ad671bb8f39f3 + +COUNT = 48 +KEY = ffffffffffff8000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ae682c5ecd71898e08942ac9aa89875c + +COUNT = 49 +KEY = ffffffffffffc000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 5e031cb9d676c3022d7f26227e85c38f + +COUNT = 50 +KEY = ffffffffffffe000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = a78463fb064db5d52bb64bfef64f2dda + +COUNT = 51 +KEY = fffffffffffff000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 8aa9b75e784593876c53a00eae5af52b + +COUNT = 52 +KEY = fffffffffffff800000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 3f84566df23da48af692722fe980573a + +COUNT = 53 +KEY = fffffffffffffc00000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 31690b5ed41c7eb42a1e83270a7ff0e6 + +COUNT = 54 +KEY = fffffffffffffe00000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 77dd7702646d55f08365e477d3590eda + +COUNT = 55 +KEY = ffffffffffffff00000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 4c022ac62b3cb78d739cc67b3e20bb7e + +COUNT = 56 +KEY = ffffffffffffff80000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 092fa137ce18b5dfe7906f550bb13370 + +COUNT = 57 +KEY = ffffffffffffffc0000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 3e0cdadf2e68353c0027672c97144dd3 + +COUNT = 58 +KEY = ffffffffffffffe0000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = d8c4b200b383fc1f2b2ea677618a1d27 + +COUNT = 59 +KEY = fffffffffffffff0000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 11825f99b0e9bb3477c1c0713b015aac + +COUNT = 60 +KEY = fffffffffffffff8000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = f8b9fffb5c187f7ddc7ab10f4fb77576 + +COUNT = 61 +KEY = fffffffffffffffc000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ffb4e87a32b37d6f2c8328d3b5377802 + +COUNT = 62 +KEY = fffffffffffffffe000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = d276c13a5d220f4da9224e74896391ce + +COUNT = 63 +KEY = ffffffffffffffff000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 94efe7a0e2e031e2536da01df799c927 + +COUNT = 64 +KEY = ffffffffffffffff800000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 8f8fd822680a85974e53a5a8eb9d38de + +COUNT = 65 +KEY = ffffffffffffffffc00000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = e0f0a91b2e45f8cc37b7805a3042588d + +COUNT = 66 +KEY = ffffffffffffffffe00000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 597a6252255e46d6364dbeeda31e279c + +COUNT = 67 +KEY = fffffffffffffffff00000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = f51a0f694442b8f05571797fec7ee8bf + +COUNT = 68 +KEY = fffffffffffffffff80000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 9ff071b165b5198a93dddeebc54d09b5 + +COUNT = 69 +KEY = fffffffffffffffffc0000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = c20a19fd5758b0c4bc1a5df89cf73877 + +COUNT = 70 +KEY = fffffffffffffffffe0000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 97120166307119ca2280e9315668e96f + +COUNT = 71 +KEY = ffffffffffffffffff0000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 4b3b9f1e099c2a09dc091e90e4f18f0a + +COUNT = 72 +KEY = ffffffffffffffffff8000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = eb040b891d4b37f6851f7ec219cd3f6d + +COUNT = 73 +KEY = ffffffffffffffffffc000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 9f0fdec08b7fd79aa39535bea42db92a + +COUNT = 74 +KEY = ffffffffffffffffffe000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 2e70f168fc74bf911df240bcd2cef236 + +COUNT = 75 +KEY = fffffffffffffffffff000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 462ccd7f5fd1108dbc152f3cacad328b + +COUNT = 76 +KEY = fffffffffffffffffff800000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = a4af534a7d0b643a01868785d86dfb95 + +COUNT = 77 +KEY = fffffffffffffffffffc00000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ab980296197e1a5022326c31da4bf6f3 + +COUNT = 78 +KEY = fffffffffffffffffffe00000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = f97d57b3333b6281b07d486db2d4e20c + +COUNT = 79 +KEY = ffffffffffffffffffff00000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = f33fa36720231afe4c759ade6bd62eb6 + +COUNT = 80 +KEY = ffffffffffffffffffff80000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = fdcfac0c02ca538343c68117e0a15938 + +COUNT = 81 +KEY = ffffffffffffffffffffc0000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ad4916f5ee5772be764fc027b8a6e539 + +COUNT = 82 +KEY = ffffffffffffffffffffe0000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 2e16873e1678610d7e14c02d002ea845 + +COUNT = 83 +KEY = fffffffffffffffffffff0000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 4e6e627c1acc51340053a8236d579576 + +COUNT = 84 +KEY = fffffffffffffffffffff8000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ab0c8410aeeead92feec1eb430d652cb + +COUNT = 85 +KEY = fffffffffffffffffffffc000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = e86f7e23e835e114977f60e1a592202e + +COUNT = 86 +KEY = fffffffffffffffffffffe000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = e68ad5055a367041fade09d9a70a794b + +COUNT = 87 +KEY = ffffffffffffffffffffff000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 0791823a3c666bb6162825e78606a7fe + +COUNT = 88 +KEY = ffffffffffffffffffffff800000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = dcca366a9bf47b7b868b77e25c18a364 + +COUNT = 89 +KEY = ffffffffffffffffffffffc00000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 684c9efc237e4a442965f84bce20247a + +COUNT = 90 +KEY = ffffffffffffffffffffffe00000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = a858411ffbe63fdb9c8aa1bfaed67b52 + +COUNT = 91 +KEY = fffffffffffffffffffffff00000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 04bc3da2179c3015498b0e03910db5b8 + +COUNT = 92 +KEY = fffffffffffffffffffffff80000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 40071eeab3f935dbc25d00841460260f + +COUNT = 93 +KEY = fffffffffffffffffffffffc0000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 0ebd7c30ed2016e08ba806ddb008bcc8 + +COUNT = 94 +KEY = fffffffffffffffffffffffe0000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 15c6becf0f4cec7129cbd22d1a79b1b8 + +COUNT = 95 +KEY = ffffffffffffffffffffffff0000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 0aeede5b91f721700e9e62edbf60b781 + +COUNT = 96 +KEY = ffffffffffffffffffffffff8000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 266581af0dcfbed1585e0a242c64b8df + +COUNT = 97 +KEY = ffffffffffffffffffffffffc000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 6693dc911662ae473216ba22189a511a + +COUNT = 98 +KEY = ffffffffffffffffffffffffe000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 7606fa36d86473e6fb3a1bb0e2c0adf5 + +COUNT = 99 +KEY = fffffffffffffffffffffffff000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 112078e9e11fbb78e26ffb8899e96b9a + +COUNT = 100 +KEY = fffffffffffffffffffffffff800000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 40b264e921e9e4a82694589ef3798262 + +COUNT = 101 +KEY = fffffffffffffffffffffffffc00000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 8d4595cb4fa7026715f55bd68e2882f9 + +COUNT = 102 +KEY = fffffffffffffffffffffffffe00000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = b588a302bdbc09197df1edae68926ed9 + +COUNT = 103 +KEY = ffffffffffffffffffffffffff00000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 33f7502390b8a4a221cfecd0666624ba + +COUNT = 104 +KEY = ffffffffffffffffffffffffff80000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 3d20253adbce3be2373767c4d822c566 + +COUNT = 105 +KEY = ffffffffffffffffffffffffffc0000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = a42734a3929bf84cf0116c9856a3c18c + +COUNT = 106 +KEY = ffffffffffffffffffffffffffe0000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = e3abc4939457422bb957da3c56938c6d + +COUNT = 107 +KEY = fffffffffffffffffffffffffff0000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 972bdd2e7c525130fadc8f76fc6f4b3f + +COUNT = 108 +KEY = fffffffffffffffffffffffffff8000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 84a83d7b94c699cbcb8a7d9b61f64093 + +COUNT = 109 +KEY = fffffffffffffffffffffffffffc000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ce61d63514aded03d43e6ebfc3a9001f + +COUNT = 110 +KEY = fffffffffffffffffffffffffffe000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 6c839dd58eeae6b8a36af48ed63d2dc9 + +COUNT = 111 +KEY = ffffffffffffffffffffffffffff000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = cd5ece55b8da3bf622c4100df5de46f9 + +COUNT = 112 +KEY = ffffffffffffffffffffffffffff800000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 3b6f46f40e0ac5fc0a9c1105f800f48d + +COUNT = 113 +KEY = ffffffffffffffffffffffffffffc00000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ba26d47da3aeb028de4fb5b3a854a24b + +COUNT = 114 +KEY = ffffffffffffffffffffffffffffe00000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 87f53bf620d3677268445212904389d5 + +COUNT = 115 +KEY = fffffffffffffffffffffffffffff00000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 10617d28b5e0f4605492b182a5d7f9f6 + +COUNT = 116 +KEY = fffffffffffffffffffffffffffff80000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 9aaec4fabbf6fae2a71feff02e372b39 + +COUNT = 117 +KEY = fffffffffffffffffffffffffffffc0000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 3a90c62d88b5c42809abf782488ed130 + +COUNT = 118 +KEY = fffffffffffffffffffffffffffffe0000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = f1f1c5a40899e15772857ccb65c7a09a + +COUNT = 119 +KEY = ffffffffffffffffffffffffffffff0000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 190843d29b25a3897c692ce1dd81ee52 + +COUNT = 120 +KEY = ffffffffffffffffffffffffffffff8000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = a866bc65b6941d86e8420a7ffb0964db + +COUNT = 121 +KEY = ffffffffffffffffffffffffffffffc000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 8193c6ff85225ced4255e92f6e078a14 + +COUNT = 122 +KEY = ffffffffffffffffffffffffffffffe000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 9661cb2424d7d4a380d547f9e7ec1cb9 + +COUNT = 123 +KEY = fffffffffffffffffffffffffffffff000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 86f93d9ec08453a071e2e2877877a9c8 + +COUNT = 124 +KEY = fffffffffffffffffffffffffffffff800000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 27eefa80ce6a4a9d598e3fec365434d2 + +COUNT = 125 +KEY = fffffffffffffffffffffffffffffffc00000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = d62068444578e3ab39ce7ec95dd045dc + +COUNT = 126 +KEY = fffffffffffffffffffffffffffffffe00000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = b5f71d4dd9a71fe5d8bc8ba7e6ea3048 + +COUNT = 127 +KEY = ffffffffffffffffffffffffffffffff00000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 6825a347ac479d4f9d95c5cb8d3fd7e9 + +COUNT = 128 +KEY = ffffffffffffffffffffffffffffffff80000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = e3714e94a5778955cc0346358e94783a + +COUNT = 129 +KEY = ffffffffffffffffffffffffffffffffc0000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = d836b44bb29e0c7d89fa4b2d4b677d2a + +COUNT = 130 +KEY = ffffffffffffffffffffffffffffffffe0000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 5d454b75021d76d4b84f873a8f877b92 + +COUNT = 131 +KEY = fffffffffffffffffffffffffffffffff0000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = c3498f7eced2095314fc28115885b33f + +COUNT = 132 +KEY = fffffffffffffffffffffffffffffffff8000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 6e668856539ad8e405bd123fe6c88530 + +COUNT = 133 +KEY = fffffffffffffffffffffffffffffffffc000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 8680db7f3a87b8605543cfdbe6754076 + +COUNT = 134 +KEY = fffffffffffffffffffffffffffffffffe000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 6c5d03b13069c3658b3179be91b0800c + +COUNT = 135 +KEY = ffffffffffffffffffffffffffffffffff000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ef1b384ac4d93eda00c92add0995ea5f + +COUNT = 136 +KEY = ffffffffffffffffffffffffffffffffff800000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = bf8115805471741bd5ad20a03944790f + +COUNT = 137 +KEY = ffffffffffffffffffffffffffffffffffc00000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = c64c24b6894b038b3c0d09b1df068b0b + +COUNT = 138 +KEY = ffffffffffffffffffffffffffffffffffe00000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 3967a10cffe27d0178545fbf6a40544b + +COUNT = 139 +KEY = fffffffffffffffffffffffffffffffffff00000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 7c85e9c95de1a9ec5a5363a8a053472d + +COUNT = 140 +KEY = fffffffffffffffffffffffffffffffffff80000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = a9eec03c8abec7ba68315c2c8c2316e0 + +COUNT = 141 +KEY = fffffffffffffffffffffffffffffffffffc0000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = cac8e414c2f388227ae14986fc983524 + +COUNT = 142 +KEY = fffffffffffffffffffffffffffffffffffe0000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 5d942b7f4622ce056c3ce3ce5f1dd9d6 + +COUNT = 143 +KEY = ffffffffffffffffffffffffffffffffffff0000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = d240d648ce21a3020282c3f1b528a0b6 + +COUNT = 144 +KEY = ffffffffffffffffffffffffffffffffffff8000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 45d089c36d5c5a4efc689e3b0de10dd5 + +COUNT = 145 +KEY = ffffffffffffffffffffffffffffffffffffc000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = b4da5df4becb5462e03a0ed00d295629 + +COUNT = 146 +KEY = ffffffffffffffffffffffffffffffffffffe000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = dcf4e129136c1a4b7a0f38935cc34b2b + +COUNT = 147 +KEY = fffffffffffffffffffffffffffffffffffff000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = d9a4c7618b0ce48a3d5aee1a1c0114c4 + +COUNT = 148 +KEY = fffffffffffffffffffffffffffffffffffff800000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ca352df025c65c7b0bf306fbee0f36ba + +COUNT = 149 +KEY = fffffffffffffffffffffffffffffffffffffc00000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 238aca23fd3409f38af63378ed2f5473 + +COUNT = 150 +KEY = fffffffffffffffffffffffffffffffffffffe00000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 59836a0e06a79691b36667d5380d8188 + +COUNT = 151 +KEY = ffffffffffffffffffffffffffffffffffffff00000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 33905080f7acf1cdae0a91fc3e85aee4 + +COUNT = 152 +KEY = ffffffffffffffffffffffffffffffffffffff80000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 72c9e4646dbc3d6320fc6689d93e8833 + +COUNT = 153 +KEY = ffffffffffffffffffffffffffffffffffffffc0000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ba77413dea5925b7f5417ea47ff19f59 + +COUNT = 154 +KEY = ffffffffffffffffffffffffffffffffffffffe0000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 6cae8129f843d86dc786a0fb1a184970 + +COUNT = 155 +KEY = fffffffffffffffffffffffffffffffffffffff0000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = fcfefb534100796eebbd990206754e19 + +COUNT = 156 +KEY = fffffffffffffffffffffffffffffffffffffff8000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 8c791d5fdddf470da04f3e6dc4a5b5b5 + +COUNT = 157 +KEY = fffffffffffffffffffffffffffffffffffffffc000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = c93bbdc07a4611ae4bb266ea5034a387 + +COUNT = 158 +KEY = fffffffffffffffffffffffffffffffffffffffe000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = c102e38e489aa74762f3efc5bb23205a + +COUNT = 159 +KEY = ffffffffffffffffffffffffffffffffffffffff000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 93201481665cbafc1fcc220bc545fb3d + +COUNT = 160 +KEY = ffffffffffffffffffffffffffffffffffffffff800000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 4960757ec6ce68cf195e454cfd0f32ca + +COUNT = 161 +KEY = ffffffffffffffffffffffffffffffffffffffffc00000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = feec7ce6a6cbd07c043416737f1bbb33 + +COUNT = 162 +KEY = ffffffffffffffffffffffffffffffffffffffffe00000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 11c5413904487a805d70a8edd9c35527 + +COUNT = 163 +KEY = fffffffffffffffffffffffffffffffffffffffff00000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 347846b2b2e36f1f0324c86f7f1b98e2 + +COUNT = 164 +KEY = fffffffffffffffffffffffffffffffffffffffff80000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 332eee1a0cbd19ca2d69b426894044f0 + +COUNT = 165 +KEY = fffffffffffffffffffffffffffffffffffffffffc0000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 866b5b3977ba6efa5128efbda9ff03cd + +COUNT = 166 +KEY = fffffffffffffffffffffffffffffffffffffffffe0000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = cc1445ee94c0f08cdee5c344ecd1e233 + +COUNT = 167 +KEY = ffffffffffffffffffffffffffffffffffffffffff0000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = be288319029363c2622feba4b05dfdfe + +COUNT = 168 +KEY = ffffffffffffffffffffffffffffffffffffffffff8000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = cfd1875523f3cd21c395651e6ee15e56 + +COUNT = 169 +KEY = ffffffffffffffffffffffffffffffffffffffffffc000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = cb5a408657837c53bf16f9d8465dce19 + +COUNT = 170 +KEY = ffffffffffffffffffffffffffffffffffffffffffe000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ca0bf42cb107f55ccff2fc09ee08ca15 + +COUNT = 171 +KEY = fffffffffffffffffffffffffffffffffffffffffff000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = fdd9bbb4a7dc2e4a23536a5880a2db67 + +COUNT = 172 +KEY = fffffffffffffffffffffffffffffffffffffffffff800000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ede447b362c484993dec9442a3b46aef + +COUNT = 173 +KEY = fffffffffffffffffffffffffffffffffffffffffffc00000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 10dffb05904bff7c4781df780ad26837 + +COUNT = 174 +KEY = fffffffffffffffffffffffffffffffffffffffffffe00000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = c33bc13e8de88ac25232aa7496398783 + +COUNT = 175 +KEY = ffffffffffffffffffffffffffffffffffffffffffff00000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ca359c70803a3b2a3d542e8781dea975 + +COUNT = 176 +KEY = ffffffffffffffffffffffffffffffffffffffffffff80000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = bcc65b526f88d05b89ce8a52021fdb06 + +COUNT = 177 +KEY = ffffffffffffffffffffffffffffffffffffffffffffc0000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = db91a38855c8c4643851fbfb358b0109 + +COUNT = 178 +KEY = ffffffffffffffffffffffffffffffffffffffffffffe0000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ca6e8893a114ae8e27d5ab03a5499610 + +COUNT = 179 +KEY = fffffffffffffffffffffffffffffffffffffffffffff0000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 6629d2b8df97da728cdd8b1e7f945077 + +COUNT = 180 +KEY = fffffffffffffffffffffffffffffffffffffffffffff8000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 4570a5a18cfc0dd582f1d88d5c9a1720 + +COUNT = 181 +KEY = fffffffffffffffffffffffffffffffffffffffffffffc000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 72bc65aa8e89562e3f274d45af1cd10b + +COUNT = 182 +KEY = fffffffffffffffffffffffffffffffffffffffffffffe000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 98551da1a6503276ae1c77625f9ea615 + +COUNT = 183 +KEY = ffffffffffffffffffffffffffffffffffffffffffffff000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 0ddfe51ced7e3f4ae927daa3fe452cee + +COUNT = 184 +KEY = ffffffffffffffffffffffffffffffffffffffffffffff800000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = db826251e4ce384b80218b0e1da1dd4c + +COUNT = 185 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffc00000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 2cacf728b88abbad7011ed0e64a1680c + +COUNT = 186 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffe00000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 330d8ee7c5677e099ac74c9994ee4cfb + +COUNT = 187 +KEY = fffffffffffffffffffffffffffffffffffffffffffffff00000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = edf61ae362e882ddc0167474a7a77f3a + +COUNT = 188 +KEY = fffffffffffffffffffffffffffffffffffffffffffffff80000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 6168b00ba7859e0970ecfd757efecf7c + +COUNT = 189 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffc0000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = d1415447866230d28bb1ea18a4cdfd02 + +COUNT = 190 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffe0000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 516183392f7a8763afec68a060264141 + +COUNT = 191 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 77565c8d73cfd4130b4aa14d8911710f + +COUNT = 192 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffff8000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 37232a4ed21ccc27c19c9610078cabac + +COUNT = 193 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffc000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 804f32ea71828c7d329077e712231666 + +COUNT = 194 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = d64424f23cb97215e9c2c6f28d29eab7 + +COUNT = 195 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 023e82b533f68c75c238cebdb2ee89a2 + +COUNT = 196 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffff800000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 193a3d24157a51f1ee0893f6777417e7 + +COUNT = 197 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffc00000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 84ecacfcd400084d078612b1945f2ef5 + +COUNT = 198 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffe00000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 1dcd8bb173259eb33a5242b0de31a455 + +COUNT = 199 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 35e9eddbc375e792c19992c19165012b + +COUNT = 200 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffff80000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 8a772231c01dfdd7c98e4cfddcc0807a + +COUNT = 201 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffc0000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 6eda7ff6b8319180ff0d6e65629d01c3 + +COUNT = 202 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffe0000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = c267ef0e2d01a993944dd397101413cb + +COUNT = 203 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffff0000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = e9f80e9d845bcc0f62926af72eabca39 + +COUNT = 204 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffff8000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 6702990727aa0878637b45dcd3a3b074 + +COUNT = 205 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffc000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 2e2e647d5360e09230a5d738ca33471e + +COUNT = 206 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 1f56413c7add6f43d1d56e4f02190330 + +COUNT = 207 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 69cd0606e15af729d6bca143016d9842 + +COUNT = 208 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffff800000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = a085d7c1a500873a20099c4caa3c3f5b + +COUNT = 209 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffc00000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 4fc0d230f8891415b87b83f95f2e09d1 + +COUNT = 210 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffe00000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 4327d08c523d8eba697a4336507d1f42 + +COUNT = 211 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 7a15aab82701efa5ae36ab1d6b76290f + +COUNT = 212 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffff80000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 5bf0051893a18bb30e139a58fed0fa54 + +COUNT = 213 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffc0000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 97e8adf65638fd9cdf3bc22c17fe4dbd + +COUNT = 214 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffe0000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 1ee6ee326583a0586491c96418d1a35d + +COUNT = 215 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 26b549c2ec756f82ecc48008e529956b + +COUNT = 216 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffff8000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 70377b6da669b072129e057cc28e9ca5 + +COUNT = 217 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffc000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 9c94b8b0cb8bcc919072262b3fa05ad9 + +COUNT = 218 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 2fbb83dfd0d7abcb05cd28cad2dfb523 + +COUNT = 219 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffff000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 96877803de77744bb970d0a91f4debae + +COUNT = 220 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffff800000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 7379f3370cf6e5ce12ae5969c8eea312 + +COUNT = 221 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffc00000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 02dc99fa3d4f98ce80985e7233889313 + +COUNT = 222 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffe00000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 1e38e759075ba5cab6457da51844295a + +COUNT = 223 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 70bed8dbf615868a1f9d9b05d3e7a267 + +COUNT = 224 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 234b148b8cb1d8c32b287e896903d150 + +COUNT = 225 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 294b033df4da853f4be3e243f7e513f4 + +COUNT = 226 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 3f58c950f0367160adec45f2441e7411 + +COUNT = 227 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 37f655536a704e5ace182d742a820cf4 + +COUNT = 228 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ea7bd6bb63418731aeac790fe42d61e8 + +COUNT = 229 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffc000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = e74a4c999b4c064e48bb1e413f51e5ea + +COUNT = 230 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = ba9ebefdb4ccf30f296cecb3bc1943e8 + +COUNT = 231 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 3194367a4898c502c13bb7478640a72d + +COUNT = 232 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = da797713263d6f33a5478a65ef60d412 + +COUNT = 233 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = d1ac39bb1ef86b9c1344f214679aa376 + +COUNT = 234 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 2fdea9e650532be5bc0e7325337fd363 + +COUNT = 235 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = d3a204dbd9c2af158b6ca67a5156ce4a + +COUNT = 236 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 3a0a0e75a8da36735aee6684d965a778 + +COUNT = 237 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 52fc3e620492ea99641ea168da5b6d52 + +COUNT = 238 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = d2e0c7f15b4772467d2cfc873000b2ca + +COUNT = 239 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 563531135e0c4d70a38f8bdb190ba04e + +COUNT = 240 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = a8a39a0f5663f4c0fe5f2d3cafff421a + +COUNT = 241 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = d94b5e90db354c1e42f61fabe167b2c0 + +COUNT = 242 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 50e6d3c9b6698a7cd276f96b1473f35a + +COUNT = 243 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 9338f08e0ebee96905d8f2e825208f43 + +COUNT = 244 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 8b378c86672aa54a3a266ba19d2580ca + +COUNT = 245 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = cca7c3086f5f9511b31233da7cab9160 + +COUNT = 246 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 5b40ff4ec9be536ba23035fa4f06064c + +COUNT = 247 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 60eb5af8416b257149372194e8b88749 + +COUNT = 248 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 2f005a8aed8a361c92e440c15520cbd1 + +COUNT = 249 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 7b03627611678a997717578807a800e2 + +COUNT = 250 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = cf78618f74f6f3696e0a4779b90b5a77 + +COUNT = 251 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 03720371a04962eaea0a852e69972858 + +COUNT = 252 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8 +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 1f8a8133aa8ccf70e2bd3285831ca6b7 + +COUNT = 253 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 27936bd27fb1468fc8b48bc483321725 + +COUNT = 254 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = b07d4f3e2cd2ef2eb545980754dfea0f + +COUNT = 255 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +IV = 00000000000000000000000000000000 +PLAINTEXT = 00000000000000000000000000000000 +CIPHERTEXT = 4bf85f1b5d54adbc307b0a048389adcb + +[DECRYPT] + +COUNT = 0 +KEY = 8000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = e35a6dcb19b201a01ebcfa8aa22b5759 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 1 +KEY = c000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = b29169cdcf2d83e838125a12ee6aa400 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 2 +KEY = e000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = d8f3a72fc3cdf74dfaf6c3e6b97b2fa6 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 3 +KEY = f000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 1c777679d50037c79491a94da76a9a35 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 4 +KEY = f800000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 9cf4893ecafa0a0247a898e040691559 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 5 +KEY = fc00000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 8fbb413703735326310a269bd3aa94b2 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 6 +KEY = fe00000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 60e32246bed2b0e859e55c1cc6b26502 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 7 +KEY = ff00000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ec52a212f80a09df6317021bc2a9819e +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 8 +KEY = ff80000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = f23e5b600eb70dbccf6c0b1d9a68182c +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 9 +KEY = ffc0000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = a3f599d63a82a968c33fe26590745970 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 10 +KEY = ffe0000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = d1ccb9b1337002cbac42c520b5d67722 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 11 +KEY = fff0000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = cc111f6c37cf40a1159d00fb59fb0488 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 12 +KEY = fff8000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = dc43b51ab609052372989a26e9cdd714 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 13 +KEY = fffc000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 4dcede8da9e2578f39703d4433dc6459 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 14 +KEY = fffe000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 1a4c1c263bbccfafc11782894685e3a8 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 15 +KEY = ffff000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 937ad84880db50613423d6d527a2823d +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 16 +KEY = ffff800000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 610b71dfc688e150d8152c5b35ebc14d +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 17 +KEY = ffffc00000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 27ef2495dabf323885aab39c80f18d8b +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 18 +KEY = ffffe00000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 633cafea395bc03adae3a1e2068e4b4e +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 19 +KEY = fffff00000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 6e1b482b53761cf631819b749a6f3724 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 20 +KEY = fffff80000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 976e6f851ab52c771998dbb2d71c75a9 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 21 +KEY = fffffc0000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 85f2ba84f8c307cf525e124c3e22e6cc +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 22 +KEY = fffffe0000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 6bcca98bf6a835fa64955f72de4115fe +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 23 +KEY = ffffff0000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 2c75e2d36eebd65411f14fd0eb1d2a06 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 24 +KEY = ffffff8000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = bd49295006250ffca5100b6007a0eade +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 25 +KEY = ffffffc000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = a190527d0ef7c70f459cd3940df316ec +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 26 +KEY = ffffffe000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = bbd1097a62433f79449fa97d4ee80dbf +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 27 +KEY = fffffff000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 07058e408f5b99b0e0f061a1761b5b3b +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 28 +KEY = fffffff800000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 5fd1f13fa0f31e37fabde328f894eac2 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 29 +KEY = fffffffc00000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = fc4af7c948df26e2ef3e01c1ee5b8f6f +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 30 +KEY = fffffffe00000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 829fd7208fb92d44a074a677ee9861ac +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 31 +KEY = ffffffff00000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ad9fc613a703251b54c64a0e76431711 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 32 +KEY = ffffffff80000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 33ac9eccc4cc75e2711618f80b1548e8 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 33 +KEY = ffffffffc0000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 2025c74b8ad8f4cda17ee2049c4c902d +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 34 +KEY = ffffffffe0000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = f85ca05fe528f1ce9b790166e8d551e7 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 35 +KEY = fffffffff0000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 6f6238d8966048d4967154e0dad5a6c9 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 36 +KEY = fffffffff8000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = f2b21b4e7640a9b3346de8b82fb41e49 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 37 +KEY = fffffffffc000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = f836f251ad1d11d49dc344628b1884e1 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 38 +KEY = fffffffffe000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 077e9470ae7abea5a9769d49182628c3 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 39 +KEY = ffffffffff000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = e0dcc2d27fc9865633f85223cf0d611f +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 40 +KEY = ffffffffff800000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = be66cfea2fecd6bf0ec7b4352c99bcaa +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 41 +KEY = ffffffffffc00000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = df31144f87a2ef523facdcf21a427804 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 42 +KEY = ffffffffffe00000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = b5bb0f5629fb6aae5e1839a3c3625d63 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 43 +KEY = fffffffffff00000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 3c9db3335306fe1ec612bdbfae6b6028 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 44 +KEY = fffffffffff80000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 3dd5c34634a79d3cfcc8339760e6f5f4 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 45 +KEY = fffffffffffc0000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 82bda118a3ed7af314fa2ccc5c07b761 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 46 +KEY = fffffffffffe0000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 2937a64f7d4f46fe6fea3b349ec78e38 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 47 +KEY = ffffffffffff0000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 225f068c28476605735ad671bb8f39f3 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 48 +KEY = ffffffffffff8000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ae682c5ecd71898e08942ac9aa89875c +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 49 +KEY = ffffffffffffc000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 5e031cb9d676c3022d7f26227e85c38f +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 50 +KEY = ffffffffffffe000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = a78463fb064db5d52bb64bfef64f2dda +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 51 +KEY = fffffffffffff000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 8aa9b75e784593876c53a00eae5af52b +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 52 +KEY = fffffffffffff800000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 3f84566df23da48af692722fe980573a +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 53 +KEY = fffffffffffffc00000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 31690b5ed41c7eb42a1e83270a7ff0e6 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 54 +KEY = fffffffffffffe00000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 77dd7702646d55f08365e477d3590eda +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 55 +KEY = ffffffffffffff00000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 4c022ac62b3cb78d739cc67b3e20bb7e +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 56 +KEY = ffffffffffffff80000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 092fa137ce18b5dfe7906f550bb13370 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 57 +KEY = ffffffffffffffc0000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 3e0cdadf2e68353c0027672c97144dd3 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 58 +KEY = ffffffffffffffe0000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = d8c4b200b383fc1f2b2ea677618a1d27 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 59 +KEY = fffffffffffffff0000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 11825f99b0e9bb3477c1c0713b015aac +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 60 +KEY = fffffffffffffff8000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = f8b9fffb5c187f7ddc7ab10f4fb77576 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 61 +KEY = fffffffffffffffc000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ffb4e87a32b37d6f2c8328d3b5377802 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 62 +KEY = fffffffffffffffe000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = d276c13a5d220f4da9224e74896391ce +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 63 +KEY = ffffffffffffffff000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 94efe7a0e2e031e2536da01df799c927 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 64 +KEY = ffffffffffffffff800000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 8f8fd822680a85974e53a5a8eb9d38de +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 65 +KEY = ffffffffffffffffc00000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = e0f0a91b2e45f8cc37b7805a3042588d +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 66 +KEY = ffffffffffffffffe00000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 597a6252255e46d6364dbeeda31e279c +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 67 +KEY = fffffffffffffffff00000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = f51a0f694442b8f05571797fec7ee8bf +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 68 +KEY = fffffffffffffffff80000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 9ff071b165b5198a93dddeebc54d09b5 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 69 +KEY = fffffffffffffffffc0000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = c20a19fd5758b0c4bc1a5df89cf73877 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 70 +KEY = fffffffffffffffffe0000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 97120166307119ca2280e9315668e96f +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 71 +KEY = ffffffffffffffffff0000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 4b3b9f1e099c2a09dc091e90e4f18f0a +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 72 +KEY = ffffffffffffffffff8000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = eb040b891d4b37f6851f7ec219cd3f6d +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 73 +KEY = ffffffffffffffffffc000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 9f0fdec08b7fd79aa39535bea42db92a +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 74 +KEY = ffffffffffffffffffe000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 2e70f168fc74bf911df240bcd2cef236 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 75 +KEY = fffffffffffffffffff000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 462ccd7f5fd1108dbc152f3cacad328b +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 76 +KEY = fffffffffffffffffff800000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = a4af534a7d0b643a01868785d86dfb95 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 77 +KEY = fffffffffffffffffffc00000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ab980296197e1a5022326c31da4bf6f3 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 78 +KEY = fffffffffffffffffffe00000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = f97d57b3333b6281b07d486db2d4e20c +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 79 +KEY = ffffffffffffffffffff00000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = f33fa36720231afe4c759ade6bd62eb6 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 80 +KEY = ffffffffffffffffffff80000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = fdcfac0c02ca538343c68117e0a15938 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 81 +KEY = ffffffffffffffffffffc0000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ad4916f5ee5772be764fc027b8a6e539 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 82 +KEY = ffffffffffffffffffffe0000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 2e16873e1678610d7e14c02d002ea845 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 83 +KEY = fffffffffffffffffffff0000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 4e6e627c1acc51340053a8236d579576 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 84 +KEY = fffffffffffffffffffff8000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ab0c8410aeeead92feec1eb430d652cb +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 85 +KEY = fffffffffffffffffffffc000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = e86f7e23e835e114977f60e1a592202e +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 86 +KEY = fffffffffffffffffffffe000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = e68ad5055a367041fade09d9a70a794b +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 87 +KEY = ffffffffffffffffffffff000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 0791823a3c666bb6162825e78606a7fe +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 88 +KEY = ffffffffffffffffffffff800000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = dcca366a9bf47b7b868b77e25c18a364 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 89 +KEY = ffffffffffffffffffffffc00000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 684c9efc237e4a442965f84bce20247a +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 90 +KEY = ffffffffffffffffffffffe00000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = a858411ffbe63fdb9c8aa1bfaed67b52 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 91 +KEY = fffffffffffffffffffffff00000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 04bc3da2179c3015498b0e03910db5b8 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 92 +KEY = fffffffffffffffffffffff80000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 40071eeab3f935dbc25d00841460260f +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 93 +KEY = fffffffffffffffffffffffc0000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 0ebd7c30ed2016e08ba806ddb008bcc8 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 94 +KEY = fffffffffffffffffffffffe0000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 15c6becf0f4cec7129cbd22d1a79b1b8 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 95 +KEY = ffffffffffffffffffffffff0000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 0aeede5b91f721700e9e62edbf60b781 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 96 +KEY = ffffffffffffffffffffffff8000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 266581af0dcfbed1585e0a242c64b8df +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 97 +KEY = ffffffffffffffffffffffffc000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 6693dc911662ae473216ba22189a511a +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 98 +KEY = ffffffffffffffffffffffffe000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 7606fa36d86473e6fb3a1bb0e2c0adf5 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 99 +KEY = fffffffffffffffffffffffff000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 112078e9e11fbb78e26ffb8899e96b9a +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 100 +KEY = fffffffffffffffffffffffff800000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 40b264e921e9e4a82694589ef3798262 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 101 +KEY = fffffffffffffffffffffffffc00000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 8d4595cb4fa7026715f55bd68e2882f9 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 102 +KEY = fffffffffffffffffffffffffe00000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = b588a302bdbc09197df1edae68926ed9 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 103 +KEY = ffffffffffffffffffffffffff00000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 33f7502390b8a4a221cfecd0666624ba +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 104 +KEY = ffffffffffffffffffffffffff80000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 3d20253adbce3be2373767c4d822c566 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 105 +KEY = ffffffffffffffffffffffffffc0000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = a42734a3929bf84cf0116c9856a3c18c +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 106 +KEY = ffffffffffffffffffffffffffe0000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = e3abc4939457422bb957da3c56938c6d +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 107 +KEY = fffffffffffffffffffffffffff0000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 972bdd2e7c525130fadc8f76fc6f4b3f +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 108 +KEY = fffffffffffffffffffffffffff8000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 84a83d7b94c699cbcb8a7d9b61f64093 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 109 +KEY = fffffffffffffffffffffffffffc000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ce61d63514aded03d43e6ebfc3a9001f +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 110 +KEY = fffffffffffffffffffffffffffe000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 6c839dd58eeae6b8a36af48ed63d2dc9 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 111 +KEY = ffffffffffffffffffffffffffff000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = cd5ece55b8da3bf622c4100df5de46f9 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 112 +KEY = ffffffffffffffffffffffffffff800000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 3b6f46f40e0ac5fc0a9c1105f800f48d +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 113 +KEY = ffffffffffffffffffffffffffffc00000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ba26d47da3aeb028de4fb5b3a854a24b +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 114 +KEY = ffffffffffffffffffffffffffffe00000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 87f53bf620d3677268445212904389d5 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 115 +KEY = fffffffffffffffffffffffffffff00000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 10617d28b5e0f4605492b182a5d7f9f6 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 116 +KEY = fffffffffffffffffffffffffffff80000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 9aaec4fabbf6fae2a71feff02e372b39 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 117 +KEY = fffffffffffffffffffffffffffffc0000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 3a90c62d88b5c42809abf782488ed130 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 118 +KEY = fffffffffffffffffffffffffffffe0000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = f1f1c5a40899e15772857ccb65c7a09a +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 119 +KEY = ffffffffffffffffffffffffffffff0000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 190843d29b25a3897c692ce1dd81ee52 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 120 +KEY = ffffffffffffffffffffffffffffff8000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = a866bc65b6941d86e8420a7ffb0964db +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 121 +KEY = ffffffffffffffffffffffffffffffc000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 8193c6ff85225ced4255e92f6e078a14 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 122 +KEY = ffffffffffffffffffffffffffffffe000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 9661cb2424d7d4a380d547f9e7ec1cb9 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 123 +KEY = fffffffffffffffffffffffffffffff000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 86f93d9ec08453a071e2e2877877a9c8 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 124 +KEY = fffffffffffffffffffffffffffffff800000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 27eefa80ce6a4a9d598e3fec365434d2 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 125 +KEY = fffffffffffffffffffffffffffffffc00000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = d62068444578e3ab39ce7ec95dd045dc +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 126 +KEY = fffffffffffffffffffffffffffffffe00000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = b5f71d4dd9a71fe5d8bc8ba7e6ea3048 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 127 +KEY = ffffffffffffffffffffffffffffffff00000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 6825a347ac479d4f9d95c5cb8d3fd7e9 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 128 +KEY = ffffffffffffffffffffffffffffffff80000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = e3714e94a5778955cc0346358e94783a +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 129 +KEY = ffffffffffffffffffffffffffffffffc0000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = d836b44bb29e0c7d89fa4b2d4b677d2a +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 130 +KEY = ffffffffffffffffffffffffffffffffe0000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 5d454b75021d76d4b84f873a8f877b92 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 131 +KEY = fffffffffffffffffffffffffffffffff0000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = c3498f7eced2095314fc28115885b33f +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 132 +KEY = fffffffffffffffffffffffffffffffff8000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 6e668856539ad8e405bd123fe6c88530 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 133 +KEY = fffffffffffffffffffffffffffffffffc000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 8680db7f3a87b8605543cfdbe6754076 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 134 +KEY = fffffffffffffffffffffffffffffffffe000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 6c5d03b13069c3658b3179be91b0800c +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 135 +KEY = ffffffffffffffffffffffffffffffffff000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ef1b384ac4d93eda00c92add0995ea5f +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 136 +KEY = ffffffffffffffffffffffffffffffffff800000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = bf8115805471741bd5ad20a03944790f +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 137 +KEY = ffffffffffffffffffffffffffffffffffc00000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = c64c24b6894b038b3c0d09b1df068b0b +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 138 +KEY = ffffffffffffffffffffffffffffffffffe00000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 3967a10cffe27d0178545fbf6a40544b +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 139 +KEY = fffffffffffffffffffffffffffffffffff00000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 7c85e9c95de1a9ec5a5363a8a053472d +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 140 +KEY = fffffffffffffffffffffffffffffffffff80000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = a9eec03c8abec7ba68315c2c8c2316e0 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 141 +KEY = fffffffffffffffffffffffffffffffffffc0000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = cac8e414c2f388227ae14986fc983524 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 142 +KEY = fffffffffffffffffffffffffffffffffffe0000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 5d942b7f4622ce056c3ce3ce5f1dd9d6 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 143 +KEY = ffffffffffffffffffffffffffffffffffff0000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = d240d648ce21a3020282c3f1b528a0b6 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 144 +KEY = ffffffffffffffffffffffffffffffffffff8000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 45d089c36d5c5a4efc689e3b0de10dd5 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 145 +KEY = ffffffffffffffffffffffffffffffffffffc000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = b4da5df4becb5462e03a0ed00d295629 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 146 +KEY = ffffffffffffffffffffffffffffffffffffe000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = dcf4e129136c1a4b7a0f38935cc34b2b +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 147 +KEY = fffffffffffffffffffffffffffffffffffff000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = d9a4c7618b0ce48a3d5aee1a1c0114c4 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 148 +KEY = fffffffffffffffffffffffffffffffffffff800000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ca352df025c65c7b0bf306fbee0f36ba +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 149 +KEY = fffffffffffffffffffffffffffffffffffffc00000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 238aca23fd3409f38af63378ed2f5473 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 150 +KEY = fffffffffffffffffffffffffffffffffffffe00000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 59836a0e06a79691b36667d5380d8188 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 151 +KEY = ffffffffffffffffffffffffffffffffffffff00000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 33905080f7acf1cdae0a91fc3e85aee4 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 152 +KEY = ffffffffffffffffffffffffffffffffffffff80000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 72c9e4646dbc3d6320fc6689d93e8833 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 153 +KEY = ffffffffffffffffffffffffffffffffffffffc0000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ba77413dea5925b7f5417ea47ff19f59 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 154 +KEY = ffffffffffffffffffffffffffffffffffffffe0000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 6cae8129f843d86dc786a0fb1a184970 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 155 +KEY = fffffffffffffffffffffffffffffffffffffff0000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = fcfefb534100796eebbd990206754e19 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 156 +KEY = fffffffffffffffffffffffffffffffffffffff8000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 8c791d5fdddf470da04f3e6dc4a5b5b5 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 157 +KEY = fffffffffffffffffffffffffffffffffffffffc000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = c93bbdc07a4611ae4bb266ea5034a387 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 158 +KEY = fffffffffffffffffffffffffffffffffffffffe000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = c102e38e489aa74762f3efc5bb23205a +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 159 +KEY = ffffffffffffffffffffffffffffffffffffffff000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 93201481665cbafc1fcc220bc545fb3d +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 160 +KEY = ffffffffffffffffffffffffffffffffffffffff800000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 4960757ec6ce68cf195e454cfd0f32ca +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 161 +KEY = ffffffffffffffffffffffffffffffffffffffffc00000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = feec7ce6a6cbd07c043416737f1bbb33 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 162 +KEY = ffffffffffffffffffffffffffffffffffffffffe00000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 11c5413904487a805d70a8edd9c35527 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 163 +KEY = fffffffffffffffffffffffffffffffffffffffff00000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 347846b2b2e36f1f0324c86f7f1b98e2 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 164 +KEY = fffffffffffffffffffffffffffffffffffffffff80000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 332eee1a0cbd19ca2d69b426894044f0 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 165 +KEY = fffffffffffffffffffffffffffffffffffffffffc0000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 866b5b3977ba6efa5128efbda9ff03cd +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 166 +KEY = fffffffffffffffffffffffffffffffffffffffffe0000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = cc1445ee94c0f08cdee5c344ecd1e233 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 167 +KEY = ffffffffffffffffffffffffffffffffffffffffff0000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = be288319029363c2622feba4b05dfdfe +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 168 +KEY = ffffffffffffffffffffffffffffffffffffffffff8000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = cfd1875523f3cd21c395651e6ee15e56 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 169 +KEY = ffffffffffffffffffffffffffffffffffffffffffc000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = cb5a408657837c53bf16f9d8465dce19 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 170 +KEY = ffffffffffffffffffffffffffffffffffffffffffe000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ca0bf42cb107f55ccff2fc09ee08ca15 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 171 +KEY = fffffffffffffffffffffffffffffffffffffffffff000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = fdd9bbb4a7dc2e4a23536a5880a2db67 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 172 +KEY = fffffffffffffffffffffffffffffffffffffffffff800000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ede447b362c484993dec9442a3b46aef +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 173 +KEY = fffffffffffffffffffffffffffffffffffffffffffc00000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 10dffb05904bff7c4781df780ad26837 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 174 +KEY = fffffffffffffffffffffffffffffffffffffffffffe00000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = c33bc13e8de88ac25232aa7496398783 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 175 +KEY = ffffffffffffffffffffffffffffffffffffffffffff00000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ca359c70803a3b2a3d542e8781dea975 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 176 +KEY = ffffffffffffffffffffffffffffffffffffffffffff80000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = bcc65b526f88d05b89ce8a52021fdb06 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 177 +KEY = ffffffffffffffffffffffffffffffffffffffffffffc0000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = db91a38855c8c4643851fbfb358b0109 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 178 +KEY = ffffffffffffffffffffffffffffffffffffffffffffe0000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ca6e8893a114ae8e27d5ab03a5499610 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 179 +KEY = fffffffffffffffffffffffffffffffffffffffffffff0000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 6629d2b8df97da728cdd8b1e7f945077 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 180 +KEY = fffffffffffffffffffffffffffffffffffffffffffff8000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 4570a5a18cfc0dd582f1d88d5c9a1720 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 181 +KEY = fffffffffffffffffffffffffffffffffffffffffffffc000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 72bc65aa8e89562e3f274d45af1cd10b +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 182 +KEY = fffffffffffffffffffffffffffffffffffffffffffffe000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 98551da1a6503276ae1c77625f9ea615 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 183 +KEY = ffffffffffffffffffffffffffffffffffffffffffffff000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 0ddfe51ced7e3f4ae927daa3fe452cee +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 184 +KEY = ffffffffffffffffffffffffffffffffffffffffffffff800000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = db826251e4ce384b80218b0e1da1dd4c +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 185 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffc00000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 2cacf728b88abbad7011ed0e64a1680c +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 186 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffe00000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 330d8ee7c5677e099ac74c9994ee4cfb +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 187 +KEY = fffffffffffffffffffffffffffffffffffffffffffffff00000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = edf61ae362e882ddc0167474a7a77f3a +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 188 +KEY = fffffffffffffffffffffffffffffffffffffffffffffff80000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 6168b00ba7859e0970ecfd757efecf7c +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 189 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffc0000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = d1415447866230d28bb1ea18a4cdfd02 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 190 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffe0000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 516183392f7a8763afec68a060264141 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 191 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 77565c8d73cfd4130b4aa14d8911710f +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 192 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffff8000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 37232a4ed21ccc27c19c9610078cabac +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 193 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffc000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 804f32ea71828c7d329077e712231666 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 194 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffe000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = d64424f23cb97215e9c2c6f28d29eab7 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 195 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 023e82b533f68c75c238cebdb2ee89a2 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 196 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffff800000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 193a3d24157a51f1ee0893f6777417e7 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 197 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffc00000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 84ecacfcd400084d078612b1945f2ef5 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 198 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffe00000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 1dcd8bb173259eb33a5242b0de31a455 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 199 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 35e9eddbc375e792c19992c19165012b +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 200 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffff80000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 8a772231c01dfdd7c98e4cfddcc0807a +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 201 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffc0000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 6eda7ff6b8319180ff0d6e65629d01c3 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 202 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffe0000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = c267ef0e2d01a993944dd397101413cb +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 203 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffff0000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = e9f80e9d845bcc0f62926af72eabca39 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 204 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffff8000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 6702990727aa0878637b45dcd3a3b074 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 205 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffc000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 2e2e647d5360e09230a5d738ca33471e +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 206 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffe000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 1f56413c7add6f43d1d56e4f02190330 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 207 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 69cd0606e15af729d6bca143016d9842 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 208 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffff800000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = a085d7c1a500873a20099c4caa3c3f5b +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 209 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffc00000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 4fc0d230f8891415b87b83f95f2e09d1 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 210 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffe00000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 4327d08c523d8eba697a4336507d1f42 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 211 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 7a15aab82701efa5ae36ab1d6b76290f +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 212 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffff80000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 5bf0051893a18bb30e139a58fed0fa54 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 213 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffc0000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 97e8adf65638fd9cdf3bc22c17fe4dbd +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 214 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffe0000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 1ee6ee326583a0586491c96418d1a35d +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 215 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 26b549c2ec756f82ecc48008e529956b +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 216 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffff8000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 70377b6da669b072129e057cc28e9ca5 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 217 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffc000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 9c94b8b0cb8bcc919072262b3fa05ad9 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 218 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 2fbb83dfd0d7abcb05cd28cad2dfb523 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 219 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffff000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 96877803de77744bb970d0a91f4debae +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 220 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffff800000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 7379f3370cf6e5ce12ae5969c8eea312 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 221 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffc00000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 02dc99fa3d4f98ce80985e7233889313 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 222 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffe00000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 1e38e759075ba5cab6457da51844295a +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 223 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 70bed8dbf615868a1f9d9b05d3e7a267 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 224 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 234b148b8cb1d8c32b287e896903d150 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 225 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 294b033df4da853f4be3e243f7e513f4 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 226 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 3f58c950f0367160adec45f2441e7411 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 227 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 37f655536a704e5ace182d742a820cf4 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 228 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ea7bd6bb63418731aeac790fe42d61e8 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 229 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffc000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = e74a4c999b4c064e48bb1e413f51e5ea +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 230 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ba9ebefdb4ccf30f296cecb3bc1943e8 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 231 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 3194367a4898c502c13bb7478640a72d +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 232 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = da797713263d6f33a5478a65ef60d412 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 233 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = d1ac39bb1ef86b9c1344f214679aa376 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 234 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 2fdea9e650532be5bc0e7325337fd363 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 235 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = d3a204dbd9c2af158b6ca67a5156ce4a +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 236 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 3a0a0e75a8da36735aee6684d965a778 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 237 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 52fc3e620492ea99641ea168da5b6d52 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 238 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = d2e0c7f15b4772467d2cfc873000b2ca +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 239 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 563531135e0c4d70a38f8bdb190ba04e +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 240 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = a8a39a0f5663f4c0fe5f2d3cafff421a +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 241 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = d94b5e90db354c1e42f61fabe167b2c0 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 242 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 50e6d3c9b6698a7cd276f96b1473f35a +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 243 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 9338f08e0ebee96905d8f2e825208f43 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 244 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 8b378c86672aa54a3a266ba19d2580ca +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 245 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00 +IV = 00000000000000000000000000000000 +CIPHERTEXT = cca7c3086f5f9511b31233da7cab9160 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 246 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 5b40ff4ec9be536ba23035fa4f06064c +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 247 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 60eb5af8416b257149372194e8b88749 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 248 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 2f005a8aed8a361c92e440c15520cbd1 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 249 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 7b03627611678a997717578807a800e2 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 250 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0 +IV = 00000000000000000000000000000000 +CIPHERTEXT = cf78618f74f6f3696e0a4779b90b5a77 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 251 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 03720371a04962eaea0a852e69972858 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 252 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 1f8a8133aa8ccf70e2bd3285831ca6b7 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 253 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +IV = 00000000000000000000000000000000 +CIPHERTEXT = 27936bd27fb1468fc8b48bc483321725 +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 254 +KEY = fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe +IV = 00000000000000000000000000000000 +CIPHERTEXT = b07d4f3e2cd2ef2eb545980754dfea0f +PLAINTEXT = 00000000000000000000000000000000 + +COUNT = 255 +KEY = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +IV = 00000000000000000000000000000000 +CIPHERTEXT = 4bf85f1b5d54adbc307b0a048389adcb +PLAINTEXT = 00000000000000000000000000000000 + diff --git a/tests/cbc/vectors/CBCVarTxt256.rsp b/tests/cbc/vectors/CBCVarTxt256.rsp new file mode 100644 index 0000000..79d8050 --- /dev/null +++ b/tests/cbc/vectors/CBCVarTxt256.rsp @@ -0,0 +1,1547 @@ +# CAVS 11.1 +# Config info for aes_values +# AESVS VarTxt test data for CBC +# State : Encrypt and Decrypt +# Key Length : 256 +# Generated on Fri Apr 22 15:11:38 2011 + +[ENCRYPT] + +COUNT = 0 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = 80000000000000000000000000000000 +CIPHERTEXT = ddc6bf790c15760d8d9aeb6f9a75fd4e + +COUNT = 1 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = c0000000000000000000000000000000 +CIPHERTEXT = 0a6bdc6d4c1e6280301fd8e97ddbe601 + +COUNT = 2 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = e0000000000000000000000000000000 +CIPHERTEXT = 9b80eefb7ebe2d2b16247aa0efc72f5d + +COUNT = 3 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = f0000000000000000000000000000000 +CIPHERTEXT = 7f2c5ece07a98d8bee13c51177395ff7 + +COUNT = 4 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = f8000000000000000000000000000000 +CIPHERTEXT = 7818d800dcf6f4be1e0e94f403d1e4c2 + +COUNT = 5 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fc000000000000000000000000000000 +CIPHERTEXT = e74cd1c92f0919c35a0324123d6177d3 + +COUNT = 6 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fe000000000000000000000000000000 +CIPHERTEXT = 8092a4dcf2da7e77e93bdd371dfed82e + +COUNT = 7 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ff000000000000000000000000000000 +CIPHERTEXT = 49af6b372135acef10132e548f217b17 + +COUNT = 8 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ff800000000000000000000000000000 +CIPHERTEXT = 8bcd40f94ebb63b9f7909676e667f1e7 + +COUNT = 9 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffc00000000000000000000000000000 +CIPHERTEXT = fe1cffb83f45dcfb38b29be438dbd3ab + +COUNT = 10 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffe00000000000000000000000000000 +CIPHERTEXT = 0dc58a8d886623705aec15cb1e70dc0e + +COUNT = 11 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fff00000000000000000000000000000 +CIPHERTEXT = c218faa16056bd0774c3e8d79c35a5e4 + +COUNT = 12 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fff80000000000000000000000000000 +CIPHERTEXT = 047bba83f7aa841731504e012208fc9e + +COUNT = 13 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffc0000000000000000000000000000 +CIPHERTEXT = dc8f0e4915fd81ba70a331310882f6da + +COUNT = 14 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffe0000000000000000000000000000 +CIPHERTEXT = 1569859ea6b7206c30bf4fd0cbfac33c + +COUNT = 15 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffff0000000000000000000000000000 +CIPHERTEXT = 300ade92f88f48fa2df730ec16ef44cd + +COUNT = 16 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffff8000000000000000000000000000 +CIPHERTEXT = 1fe6cc3c05965dc08eb0590c95ac71d0 + +COUNT = 17 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffc000000000000000000000000000 +CIPHERTEXT = 59e858eaaa97fec38111275b6cf5abc0 + +COUNT = 18 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffe000000000000000000000000000 +CIPHERTEXT = 2239455e7afe3b0616100288cc5a723b + +COUNT = 19 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffff000000000000000000000000000 +CIPHERTEXT = 3ee500c5c8d63479717163e55c5c4522 + +COUNT = 20 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffff800000000000000000000000000 +CIPHERTEXT = d5e38bf15f16d90e3e214041d774daa8 + +COUNT = 21 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffc00000000000000000000000000 +CIPHERTEXT = b1f4066e6f4f187dfe5f2ad1b17819d0 + +COUNT = 22 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffe00000000000000000000000000 +CIPHERTEXT = 6ef4cc4de49b11065d7af2909854794a + +COUNT = 23 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffff00000000000000000000000000 +CIPHERTEXT = ac86bc606b6640c309e782f232bf367f + +COUNT = 24 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffff80000000000000000000000000 +CIPHERTEXT = 36aff0ef7bf3280772cf4cac80a0d2b2 + +COUNT = 25 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffc0000000000000000000000000 +CIPHERTEXT = 1f8eedea0f62a1406d58cfc3ecea72cf + +COUNT = 26 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffe0000000000000000000000000 +CIPHERTEXT = abf4154a3375a1d3e6b1d454438f95a6 + +COUNT = 27 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffff0000000000000000000000000 +CIPHERTEXT = 96f96e9d607f6615fc192061ee648b07 + +COUNT = 28 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffff8000000000000000000000000 +CIPHERTEXT = cf37cdaaa0d2d536c71857634c792064 + +COUNT = 29 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffc000000000000000000000000 +CIPHERTEXT = fbd6640c80245c2b805373f130703127 + +COUNT = 30 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffe000000000000000000000000 +CIPHERTEXT = 8d6a8afe55a6e481badae0d146f436db + +COUNT = 31 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffff000000000000000000000000 +CIPHERTEXT = 6a4981f2915e3e68af6c22385dd06756 + +COUNT = 32 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffff800000000000000000000000 +CIPHERTEXT = 42a1136e5f8d8d21d3101998642d573b + +COUNT = 33 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffc00000000000000000000000 +CIPHERTEXT = 9b471596dc69ae1586cee6158b0b0181 + +COUNT = 34 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffe00000000000000000000000 +CIPHERTEXT = 753665c4af1eff33aa8b628bf8741cfd + +COUNT = 35 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffff00000000000000000000000 +CIPHERTEXT = 9a682acf40be01f5b2a4193c9a82404d + +COUNT = 36 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffff80000000000000000000000 +CIPHERTEXT = 54fafe26e4287f17d1935f87eb9ade01 + +COUNT = 37 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffc0000000000000000000000 +CIPHERTEXT = 49d541b2e74cfe73e6a8e8225f7bd449 + +COUNT = 38 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffe0000000000000000000000 +CIPHERTEXT = 11a45530f624ff6f76a1b3826626ff7b + +COUNT = 39 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffff0000000000000000000000 +CIPHERTEXT = f96b0c4a8bc6c86130289f60b43b8fba + +COUNT = 40 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffff8000000000000000000000 +CIPHERTEXT = 48c7d0e80834ebdc35b6735f76b46c8b + +COUNT = 41 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffc000000000000000000000 +CIPHERTEXT = 2463531ab54d66955e73edc4cb8eaa45 + +COUNT = 42 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffe000000000000000000000 +CIPHERTEXT = ac9bd8e2530469134b9d5b065d4f565b + +COUNT = 43 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffff000000000000000000000 +CIPHERTEXT = 3f5f9106d0e52f973d4890e6f37e8a00 + +COUNT = 44 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffff800000000000000000000 +CIPHERTEXT = 20ebc86f1304d272e2e207e59db639f0 + +COUNT = 45 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffc00000000000000000000 +CIPHERTEXT = e67ae6426bf9526c972cff072b52252c + +COUNT = 46 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffe00000000000000000000 +CIPHERTEXT = 1a518dddaf9efa0d002cc58d107edfc8 + +COUNT = 47 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffff00000000000000000000 +CIPHERTEXT = ead731af4d3a2fe3b34bed047942a49f + +COUNT = 48 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffff80000000000000000000 +CIPHERTEXT = b1d4efe40242f83e93b6c8d7efb5eae9 + +COUNT = 49 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffc0000000000000000000 +CIPHERTEXT = cd2b1fec11fd906c5c7630099443610a + +COUNT = 50 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffe0000000000000000000 +CIPHERTEXT = a1853fe47fe29289d153161d06387d21 + +COUNT = 51 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffff0000000000000000000 +CIPHERTEXT = 4632154179a555c17ea604d0889fab14 + +COUNT = 52 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffff8000000000000000000 +CIPHERTEXT = dd27cac6401a022e8f38f9f93e774417 + +COUNT = 53 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffc000000000000000000 +CIPHERTEXT = c090313eb98674f35f3123385fb95d4d + +COUNT = 54 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffe000000000000000000 +CIPHERTEXT = cc3526262b92f02edce548f716b9f45c + +COUNT = 55 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffff000000000000000000 +CIPHERTEXT = c0838d1a2b16a7c7f0dfcc433c399c33 + +COUNT = 56 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffff800000000000000000 +CIPHERTEXT = 0d9ac756eb297695eed4d382eb126d26 + +COUNT = 57 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffc00000000000000000 +CIPHERTEXT = 56ede9dda3f6f141bff1757fa689c3e1 + +COUNT = 58 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffe00000000000000000 +CIPHERTEXT = 768f520efe0f23e61d3ec8ad9ce91774 + +COUNT = 59 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffff00000000000000000 +CIPHERTEXT = b1144ddfa75755213390e7c596660490 + +COUNT = 60 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffff80000000000000000 +CIPHERTEXT = 1d7c0c4040b355b9d107a99325e3b050 + +COUNT = 61 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffc0000000000000000 +CIPHERTEXT = d8e2bb1ae8ee3dcf5bf7d6c38da82a1a + +COUNT = 62 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffe0000000000000000 +CIPHERTEXT = faf82d178af25a9886a47e7f789b98d7 + +COUNT = 63 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffff0000000000000000 +CIPHERTEXT = 9b58dbfd77fe5aca9cfc190cd1b82d19 + +COUNT = 64 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffff8000000000000000 +CIPHERTEXT = 77f392089042e478ac16c0c86a0b5db5 + +COUNT = 65 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffc000000000000000 +CIPHERTEXT = 19f08e3420ee69b477ca1420281c4782 + +COUNT = 66 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffe000000000000000 +CIPHERTEXT = a1b19beee4e117139f74b3c53fdcb875 + +COUNT = 67 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffff000000000000000 +CIPHERTEXT = a37a5869b218a9f3a0868d19aea0ad6a + +COUNT = 68 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffff800000000000000 +CIPHERTEXT = bc3594e865bcd0261b13202731f33580 + +COUNT = 69 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffc00000000000000 +CIPHERTEXT = 811441ce1d309eee7185e8c752c07557 + +COUNT = 70 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffe00000000000000 +CIPHERTEXT = 959971ce4134190563518e700b9874d1 + +COUNT = 71 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffff00000000000000 +CIPHERTEXT = 76b5614a042707c98e2132e2e805fe63 + +COUNT = 72 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffff80000000000000 +CIPHERTEXT = 7d9fa6a57530d0f036fec31c230b0cc6 + +COUNT = 73 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffc0000000000000 +CIPHERTEXT = 964153a83bf6989a4ba80daa91c3e081 + +COUNT = 74 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffe0000000000000 +CIPHERTEXT = a013014d4ce8054cf2591d06f6f2f176 + +COUNT = 75 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffff0000000000000 +CIPHERTEXT = d1c5f6399bf382502e385eee1474a869 + +COUNT = 76 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffff8000000000000 +CIPHERTEXT = 0007e20b8298ec354f0f5fe7470f36bd + +COUNT = 77 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffc000000000000 +CIPHERTEXT = b95ba05b332da61ef63a2b31fcad9879 + +COUNT = 78 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffe000000000000 +CIPHERTEXT = 4620a49bd967491561669ab25dce45f4 + +COUNT = 79 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffff000000000000 +CIPHERTEXT = 12e71214ae8e04f0bb63d7425c6f14d5 + +COUNT = 80 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffff800000000000 +CIPHERTEXT = 4cc42fc1407b008fe350907c092e80ac + +COUNT = 81 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffc00000000000 +CIPHERTEXT = 08b244ce7cbc8ee97fbba808cb146fda + +COUNT = 82 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffe00000000000 +CIPHERTEXT = 39b333e8694f21546ad1edd9d87ed95b + +COUNT = 83 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffff00000000000 +CIPHERTEXT = 3b271f8ab2e6e4a20ba8090f43ba78f3 + +COUNT = 84 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffff80000000000 +CIPHERTEXT = 9ad983f3bf651cd0393f0a73cccdea50 + +COUNT = 85 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffc0000000000 +CIPHERTEXT = 8f476cbff75c1f725ce18e4bbcd19b32 + +COUNT = 86 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffe0000000000 +CIPHERTEXT = 905b6267f1d6ab5320835a133f096f2a + +COUNT = 87 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffff0000000000 +CIPHERTEXT = 145b60d6d0193c23f4221848a892d61a + +COUNT = 88 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffff8000000000 +CIPHERTEXT = 55cfb3fb6d75cad0445bbc8dafa25b0f + +COUNT = 89 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffc000000000 +CIPHERTEXT = 7b8e7098e357ef71237d46d8b075b0f5 + +COUNT = 90 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffe000000000 +CIPHERTEXT = 2bf27229901eb40f2df9d8398d1505ae + +COUNT = 91 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffff000000000 +CIPHERTEXT = 83a63402a77f9ad5c1e931a931ecd706 + +COUNT = 92 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffff800000000 +CIPHERTEXT = 6f8ba6521152d31f2bada1843e26b973 + +COUNT = 93 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffc00000000 +CIPHERTEXT = e5c3b8e30fd2d8e6239b17b44bd23bbd + +COUNT = 94 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffe00000000 +CIPHERTEXT = 1ac1f7102c59933e8b2ddc3f14e94baa + +COUNT = 95 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffff00000000 +CIPHERTEXT = 21d9ba49f276b45f11af8fc71a088e3d + +COUNT = 96 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffff80000000 +CIPHERTEXT = 649f1cddc3792b4638635a392bc9bade + +COUNT = 97 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffffc0000000 +CIPHERTEXT = e2775e4b59c1bc2e31a2078c11b5a08c + +COUNT = 98 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffffe0000000 +CIPHERTEXT = 2be1fae5048a25582a679ca10905eb80 + +COUNT = 99 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffff0000000 +CIPHERTEXT = da86f292c6f41ea34fb2068df75ecc29 + +COUNT = 100 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffff8000000 +CIPHERTEXT = 220df19f85d69b1b562fa69a3c5beca5 + +COUNT = 101 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffffc000000 +CIPHERTEXT = 1f11d5d0355e0b556ccdb6c7f5083b4d + +COUNT = 102 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffffe000000 +CIPHERTEXT = 62526b78be79cb384633c91f83b4151b + +COUNT = 103 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffffff000000 +CIPHERTEXT = 90ddbcb950843592dd47bbef00fdc876 + +COUNT = 104 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffffff800000 +CIPHERTEXT = 2fd0e41c5b8402277354a7391d2618e2 + +COUNT = 105 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffffffc00000 +CIPHERTEXT = 3cdf13e72dee4c581bafec70b85f9660 + +COUNT = 106 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffffffe00000 +CIPHERTEXT = afa2ffc137577092e2b654fa199d2c43 + +COUNT = 107 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffffff00000 +CIPHERTEXT = 8d683ee63e60d208e343ce48dbc44cac + +COUNT = 108 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffffff80000 +CIPHERTEXT = 705a4ef8ba2133729c20185c3d3a4763 + +COUNT = 109 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffffffc0000 +CIPHERTEXT = 0861a861c3db4e94194211b77ed761b9 + +COUNT = 110 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffffffe0000 +CIPHERTEXT = 4b00c27e8b26da7eab9d3a88dec8b031 + +COUNT = 111 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffffffff0000 +CIPHERTEXT = 5f397bf03084820cc8810d52e5b666e9 + +COUNT = 112 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffffffff8000 +CIPHERTEXT = 63fafabb72c07bfbd3ddc9b1203104b8 + +COUNT = 113 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffffffffc000 +CIPHERTEXT = 683e2140585b18452dd4ffbb93c95df9 + +COUNT = 114 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffffffffe000 +CIPHERTEXT = 286894e48e537f8763b56707d7d155c8 + +COUNT = 115 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffffffff000 +CIPHERTEXT = a423deabc173dcf7e2c4c53e77d37cd1 + +COUNT = 116 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffffffff800 +CIPHERTEXT = eb8168313e1cfdfdb5e986d5429cf172 + +COUNT = 117 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffffffffc00 +CIPHERTEXT = 27127daafc9accd2fb334ec3eba52323 + +COUNT = 118 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffffffffe00 +CIPHERTEXT = ee0715b96f72e3f7a22a5064fc592f4c + +COUNT = 119 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffffffffff00 +CIPHERTEXT = 29ee526770f2a11dcfa989d1ce88830f + +COUNT = 120 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffffffffff80 +CIPHERTEXT = 0493370e054b09871130fe49af730a5a + +COUNT = 121 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffffffffffc0 +CIPHERTEXT = 9b7b940f6c509f9e44a4ee140448ee46 + +COUNT = 122 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffffffffffe0 +CIPHERTEXT = 2915be4a1ecfdcbe3e023811a12bb6c7 + +COUNT = 123 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffffffffff0 +CIPHERTEXT = 7240e524bc51d8c4d440b1be55d1062c + +COUNT = 124 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffffffffff8 +CIPHERTEXT = da63039d38cb4612b2dc36ba26684b93 + +COUNT = 125 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffffffffffc +CIPHERTEXT = 0f59cb5a4b522e2ac56c1a64f558ad9a + +COUNT = 126 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = fffffffffffffffffffffffffffffffe +CIPHERTEXT = 7bfe9d876c6d63c1d035da8fe21c409d + +COUNT = 127 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +PLAINTEXT = ffffffffffffffffffffffffffffffff +CIPHERTEXT = acdace8078a32b1a182bfa4987ca1347 + +[DECRYPT] + +COUNT = 0 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ddc6bf790c15760d8d9aeb6f9a75fd4e +PLAINTEXT = 80000000000000000000000000000000 + +COUNT = 1 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 0a6bdc6d4c1e6280301fd8e97ddbe601 +PLAINTEXT = c0000000000000000000000000000000 + +COUNT = 2 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 9b80eefb7ebe2d2b16247aa0efc72f5d +PLAINTEXT = e0000000000000000000000000000000 + +COUNT = 3 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 7f2c5ece07a98d8bee13c51177395ff7 +PLAINTEXT = f0000000000000000000000000000000 + +COUNT = 4 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 7818d800dcf6f4be1e0e94f403d1e4c2 +PLAINTEXT = f8000000000000000000000000000000 + +COUNT = 5 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = e74cd1c92f0919c35a0324123d6177d3 +PLAINTEXT = fc000000000000000000000000000000 + +COUNT = 6 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 8092a4dcf2da7e77e93bdd371dfed82e +PLAINTEXT = fe000000000000000000000000000000 + +COUNT = 7 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 49af6b372135acef10132e548f217b17 +PLAINTEXT = ff000000000000000000000000000000 + +COUNT = 8 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 8bcd40f94ebb63b9f7909676e667f1e7 +PLAINTEXT = ff800000000000000000000000000000 + +COUNT = 9 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = fe1cffb83f45dcfb38b29be438dbd3ab +PLAINTEXT = ffc00000000000000000000000000000 + +COUNT = 10 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 0dc58a8d886623705aec15cb1e70dc0e +PLAINTEXT = ffe00000000000000000000000000000 + +COUNT = 11 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = c218faa16056bd0774c3e8d79c35a5e4 +PLAINTEXT = fff00000000000000000000000000000 + +COUNT = 12 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 047bba83f7aa841731504e012208fc9e +PLAINTEXT = fff80000000000000000000000000000 + +COUNT = 13 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = dc8f0e4915fd81ba70a331310882f6da +PLAINTEXT = fffc0000000000000000000000000000 + +COUNT = 14 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 1569859ea6b7206c30bf4fd0cbfac33c +PLAINTEXT = fffe0000000000000000000000000000 + +COUNT = 15 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 300ade92f88f48fa2df730ec16ef44cd +PLAINTEXT = ffff0000000000000000000000000000 + +COUNT = 16 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 1fe6cc3c05965dc08eb0590c95ac71d0 +PLAINTEXT = ffff8000000000000000000000000000 + +COUNT = 17 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 59e858eaaa97fec38111275b6cf5abc0 +PLAINTEXT = ffffc000000000000000000000000000 + +COUNT = 18 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 2239455e7afe3b0616100288cc5a723b +PLAINTEXT = ffffe000000000000000000000000000 + +COUNT = 19 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 3ee500c5c8d63479717163e55c5c4522 +PLAINTEXT = fffff000000000000000000000000000 + +COUNT = 20 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = d5e38bf15f16d90e3e214041d774daa8 +PLAINTEXT = fffff800000000000000000000000000 + +COUNT = 21 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = b1f4066e6f4f187dfe5f2ad1b17819d0 +PLAINTEXT = fffffc00000000000000000000000000 + +COUNT = 22 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 6ef4cc4de49b11065d7af2909854794a +PLAINTEXT = fffffe00000000000000000000000000 + +COUNT = 23 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ac86bc606b6640c309e782f232bf367f +PLAINTEXT = ffffff00000000000000000000000000 + +COUNT = 24 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 36aff0ef7bf3280772cf4cac80a0d2b2 +PLAINTEXT = ffffff80000000000000000000000000 + +COUNT = 25 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 1f8eedea0f62a1406d58cfc3ecea72cf +PLAINTEXT = ffffffc0000000000000000000000000 + +COUNT = 26 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = abf4154a3375a1d3e6b1d454438f95a6 +PLAINTEXT = ffffffe0000000000000000000000000 + +COUNT = 27 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 96f96e9d607f6615fc192061ee648b07 +PLAINTEXT = fffffff0000000000000000000000000 + +COUNT = 28 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = cf37cdaaa0d2d536c71857634c792064 +PLAINTEXT = fffffff8000000000000000000000000 + +COUNT = 29 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = fbd6640c80245c2b805373f130703127 +PLAINTEXT = fffffffc000000000000000000000000 + +COUNT = 30 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 8d6a8afe55a6e481badae0d146f436db +PLAINTEXT = fffffffe000000000000000000000000 + +COUNT = 31 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 6a4981f2915e3e68af6c22385dd06756 +PLAINTEXT = ffffffff000000000000000000000000 + +COUNT = 32 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 42a1136e5f8d8d21d3101998642d573b +PLAINTEXT = ffffffff800000000000000000000000 + +COUNT = 33 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 9b471596dc69ae1586cee6158b0b0181 +PLAINTEXT = ffffffffc00000000000000000000000 + +COUNT = 34 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 753665c4af1eff33aa8b628bf8741cfd +PLAINTEXT = ffffffffe00000000000000000000000 + +COUNT = 35 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 9a682acf40be01f5b2a4193c9a82404d +PLAINTEXT = fffffffff00000000000000000000000 + +COUNT = 36 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 54fafe26e4287f17d1935f87eb9ade01 +PLAINTEXT = fffffffff80000000000000000000000 + +COUNT = 37 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 49d541b2e74cfe73e6a8e8225f7bd449 +PLAINTEXT = fffffffffc0000000000000000000000 + +COUNT = 38 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 11a45530f624ff6f76a1b3826626ff7b +PLAINTEXT = fffffffffe0000000000000000000000 + +COUNT = 39 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = f96b0c4a8bc6c86130289f60b43b8fba +PLAINTEXT = ffffffffff0000000000000000000000 + +COUNT = 40 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 48c7d0e80834ebdc35b6735f76b46c8b +PLAINTEXT = ffffffffff8000000000000000000000 + +COUNT = 41 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 2463531ab54d66955e73edc4cb8eaa45 +PLAINTEXT = ffffffffffc000000000000000000000 + +COUNT = 42 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ac9bd8e2530469134b9d5b065d4f565b +PLAINTEXT = ffffffffffe000000000000000000000 + +COUNT = 43 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 3f5f9106d0e52f973d4890e6f37e8a00 +PLAINTEXT = fffffffffff000000000000000000000 + +COUNT = 44 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 20ebc86f1304d272e2e207e59db639f0 +PLAINTEXT = fffffffffff800000000000000000000 + +COUNT = 45 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = e67ae6426bf9526c972cff072b52252c +PLAINTEXT = fffffffffffc00000000000000000000 + +COUNT = 46 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 1a518dddaf9efa0d002cc58d107edfc8 +PLAINTEXT = fffffffffffe00000000000000000000 + +COUNT = 47 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ead731af4d3a2fe3b34bed047942a49f +PLAINTEXT = ffffffffffff00000000000000000000 + +COUNT = 48 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = b1d4efe40242f83e93b6c8d7efb5eae9 +PLAINTEXT = ffffffffffff80000000000000000000 + +COUNT = 49 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = cd2b1fec11fd906c5c7630099443610a +PLAINTEXT = ffffffffffffc0000000000000000000 + +COUNT = 50 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = a1853fe47fe29289d153161d06387d21 +PLAINTEXT = ffffffffffffe0000000000000000000 + +COUNT = 51 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 4632154179a555c17ea604d0889fab14 +PLAINTEXT = fffffffffffff0000000000000000000 + +COUNT = 52 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = dd27cac6401a022e8f38f9f93e774417 +PLAINTEXT = fffffffffffff8000000000000000000 + +COUNT = 53 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = c090313eb98674f35f3123385fb95d4d +PLAINTEXT = fffffffffffffc000000000000000000 + +COUNT = 54 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = cc3526262b92f02edce548f716b9f45c +PLAINTEXT = fffffffffffffe000000000000000000 + +COUNT = 55 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = c0838d1a2b16a7c7f0dfcc433c399c33 +PLAINTEXT = ffffffffffffff000000000000000000 + +COUNT = 56 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 0d9ac756eb297695eed4d382eb126d26 +PLAINTEXT = ffffffffffffff800000000000000000 + +COUNT = 57 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 56ede9dda3f6f141bff1757fa689c3e1 +PLAINTEXT = ffffffffffffffc00000000000000000 + +COUNT = 58 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 768f520efe0f23e61d3ec8ad9ce91774 +PLAINTEXT = ffffffffffffffe00000000000000000 + +COUNT = 59 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = b1144ddfa75755213390e7c596660490 +PLAINTEXT = fffffffffffffff00000000000000000 + +COUNT = 60 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 1d7c0c4040b355b9d107a99325e3b050 +PLAINTEXT = fffffffffffffff80000000000000000 + +COUNT = 61 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = d8e2bb1ae8ee3dcf5bf7d6c38da82a1a +PLAINTEXT = fffffffffffffffc0000000000000000 + +COUNT = 62 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = faf82d178af25a9886a47e7f789b98d7 +PLAINTEXT = fffffffffffffffe0000000000000000 + +COUNT = 63 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 9b58dbfd77fe5aca9cfc190cd1b82d19 +PLAINTEXT = ffffffffffffffff0000000000000000 + +COUNT = 64 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 77f392089042e478ac16c0c86a0b5db5 +PLAINTEXT = ffffffffffffffff8000000000000000 + +COUNT = 65 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 19f08e3420ee69b477ca1420281c4782 +PLAINTEXT = ffffffffffffffffc000000000000000 + +COUNT = 66 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = a1b19beee4e117139f74b3c53fdcb875 +PLAINTEXT = ffffffffffffffffe000000000000000 + +COUNT = 67 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = a37a5869b218a9f3a0868d19aea0ad6a +PLAINTEXT = fffffffffffffffff000000000000000 + +COUNT = 68 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = bc3594e865bcd0261b13202731f33580 +PLAINTEXT = fffffffffffffffff800000000000000 + +COUNT = 69 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 811441ce1d309eee7185e8c752c07557 +PLAINTEXT = fffffffffffffffffc00000000000000 + +COUNT = 70 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 959971ce4134190563518e700b9874d1 +PLAINTEXT = fffffffffffffffffe00000000000000 + +COUNT = 71 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 76b5614a042707c98e2132e2e805fe63 +PLAINTEXT = ffffffffffffffffff00000000000000 + +COUNT = 72 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 7d9fa6a57530d0f036fec31c230b0cc6 +PLAINTEXT = ffffffffffffffffff80000000000000 + +COUNT = 73 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 964153a83bf6989a4ba80daa91c3e081 +PLAINTEXT = ffffffffffffffffffc0000000000000 + +COUNT = 74 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = a013014d4ce8054cf2591d06f6f2f176 +PLAINTEXT = ffffffffffffffffffe0000000000000 + +COUNT = 75 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = d1c5f6399bf382502e385eee1474a869 +PLAINTEXT = fffffffffffffffffff0000000000000 + +COUNT = 76 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 0007e20b8298ec354f0f5fe7470f36bd +PLAINTEXT = fffffffffffffffffff8000000000000 + +COUNT = 77 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = b95ba05b332da61ef63a2b31fcad9879 +PLAINTEXT = fffffffffffffffffffc000000000000 + +COUNT = 78 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 4620a49bd967491561669ab25dce45f4 +PLAINTEXT = fffffffffffffffffffe000000000000 + +COUNT = 79 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 12e71214ae8e04f0bb63d7425c6f14d5 +PLAINTEXT = ffffffffffffffffffff000000000000 + +COUNT = 80 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 4cc42fc1407b008fe350907c092e80ac +PLAINTEXT = ffffffffffffffffffff800000000000 + +COUNT = 81 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 08b244ce7cbc8ee97fbba808cb146fda +PLAINTEXT = ffffffffffffffffffffc00000000000 + +COUNT = 82 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 39b333e8694f21546ad1edd9d87ed95b +PLAINTEXT = ffffffffffffffffffffe00000000000 + +COUNT = 83 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 3b271f8ab2e6e4a20ba8090f43ba78f3 +PLAINTEXT = fffffffffffffffffffff00000000000 + +COUNT = 84 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 9ad983f3bf651cd0393f0a73cccdea50 +PLAINTEXT = fffffffffffffffffffff80000000000 + +COUNT = 85 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 8f476cbff75c1f725ce18e4bbcd19b32 +PLAINTEXT = fffffffffffffffffffffc0000000000 + +COUNT = 86 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 905b6267f1d6ab5320835a133f096f2a +PLAINTEXT = fffffffffffffffffffffe0000000000 + +COUNT = 87 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 145b60d6d0193c23f4221848a892d61a +PLAINTEXT = ffffffffffffffffffffff0000000000 + +COUNT = 88 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 55cfb3fb6d75cad0445bbc8dafa25b0f +PLAINTEXT = ffffffffffffffffffffff8000000000 + +COUNT = 89 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 7b8e7098e357ef71237d46d8b075b0f5 +PLAINTEXT = ffffffffffffffffffffffc000000000 + +COUNT = 90 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 2bf27229901eb40f2df9d8398d1505ae +PLAINTEXT = ffffffffffffffffffffffe000000000 + +COUNT = 91 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 83a63402a77f9ad5c1e931a931ecd706 +PLAINTEXT = fffffffffffffffffffffff000000000 + +COUNT = 92 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 6f8ba6521152d31f2bada1843e26b973 +PLAINTEXT = fffffffffffffffffffffff800000000 + +COUNT = 93 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = e5c3b8e30fd2d8e6239b17b44bd23bbd +PLAINTEXT = fffffffffffffffffffffffc00000000 + +COUNT = 94 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 1ac1f7102c59933e8b2ddc3f14e94baa +PLAINTEXT = fffffffffffffffffffffffe00000000 + +COUNT = 95 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 21d9ba49f276b45f11af8fc71a088e3d +PLAINTEXT = ffffffffffffffffffffffff00000000 + +COUNT = 96 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 649f1cddc3792b4638635a392bc9bade +PLAINTEXT = ffffffffffffffffffffffff80000000 + +COUNT = 97 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = e2775e4b59c1bc2e31a2078c11b5a08c +PLAINTEXT = ffffffffffffffffffffffffc0000000 + +COUNT = 98 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 2be1fae5048a25582a679ca10905eb80 +PLAINTEXT = ffffffffffffffffffffffffe0000000 + +COUNT = 99 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = da86f292c6f41ea34fb2068df75ecc29 +PLAINTEXT = fffffffffffffffffffffffff0000000 + +COUNT = 100 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 220df19f85d69b1b562fa69a3c5beca5 +PLAINTEXT = fffffffffffffffffffffffff8000000 + +COUNT = 101 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 1f11d5d0355e0b556ccdb6c7f5083b4d +PLAINTEXT = fffffffffffffffffffffffffc000000 + +COUNT = 102 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 62526b78be79cb384633c91f83b4151b +PLAINTEXT = fffffffffffffffffffffffffe000000 + +COUNT = 103 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 90ddbcb950843592dd47bbef00fdc876 +PLAINTEXT = ffffffffffffffffffffffffff000000 + +COUNT = 104 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 2fd0e41c5b8402277354a7391d2618e2 +PLAINTEXT = ffffffffffffffffffffffffff800000 + +COUNT = 105 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 3cdf13e72dee4c581bafec70b85f9660 +PLAINTEXT = ffffffffffffffffffffffffffc00000 + +COUNT = 106 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = afa2ffc137577092e2b654fa199d2c43 +PLAINTEXT = ffffffffffffffffffffffffffe00000 + +COUNT = 107 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 8d683ee63e60d208e343ce48dbc44cac +PLAINTEXT = fffffffffffffffffffffffffff00000 + +COUNT = 108 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 705a4ef8ba2133729c20185c3d3a4763 +PLAINTEXT = fffffffffffffffffffffffffff80000 + +COUNT = 109 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 0861a861c3db4e94194211b77ed761b9 +PLAINTEXT = fffffffffffffffffffffffffffc0000 + +COUNT = 110 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 4b00c27e8b26da7eab9d3a88dec8b031 +PLAINTEXT = fffffffffffffffffffffffffffe0000 + +COUNT = 111 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 5f397bf03084820cc8810d52e5b666e9 +PLAINTEXT = ffffffffffffffffffffffffffff0000 + +COUNT = 112 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 63fafabb72c07bfbd3ddc9b1203104b8 +PLAINTEXT = ffffffffffffffffffffffffffff8000 + +COUNT = 113 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 683e2140585b18452dd4ffbb93c95df9 +PLAINTEXT = ffffffffffffffffffffffffffffc000 + +COUNT = 114 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 286894e48e537f8763b56707d7d155c8 +PLAINTEXT = ffffffffffffffffffffffffffffe000 + +COUNT = 115 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = a423deabc173dcf7e2c4c53e77d37cd1 +PLAINTEXT = fffffffffffffffffffffffffffff000 + +COUNT = 116 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = eb8168313e1cfdfdb5e986d5429cf172 +PLAINTEXT = fffffffffffffffffffffffffffff800 + +COUNT = 117 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 27127daafc9accd2fb334ec3eba52323 +PLAINTEXT = fffffffffffffffffffffffffffffc00 + +COUNT = 118 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = ee0715b96f72e3f7a22a5064fc592f4c +PLAINTEXT = fffffffffffffffffffffffffffffe00 + +COUNT = 119 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 29ee526770f2a11dcfa989d1ce88830f +PLAINTEXT = ffffffffffffffffffffffffffffff00 + +COUNT = 120 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 0493370e054b09871130fe49af730a5a +PLAINTEXT = ffffffffffffffffffffffffffffff80 + +COUNT = 121 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 9b7b940f6c509f9e44a4ee140448ee46 +PLAINTEXT = ffffffffffffffffffffffffffffffc0 + +COUNT = 122 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 2915be4a1ecfdcbe3e023811a12bb6c7 +PLAINTEXT = ffffffffffffffffffffffffffffffe0 + +COUNT = 123 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 7240e524bc51d8c4d440b1be55d1062c +PLAINTEXT = fffffffffffffffffffffffffffffff0 + +COUNT = 124 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = da63039d38cb4612b2dc36ba26684b93 +PLAINTEXT = fffffffffffffffffffffffffffffff8 + +COUNT = 125 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 0f59cb5a4b522e2ac56c1a64f558ad9a +PLAINTEXT = fffffffffffffffffffffffffffffffc + +COUNT = 126 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = 7bfe9d876c6d63c1d035da8fe21c409d +PLAINTEXT = fffffffffffffffffffffffffffffffe + +COUNT = 127 +KEY = 0000000000000000000000000000000000000000000000000000000000000000 +IV = 00000000000000000000000000000000 +CIPHERTEXT = acdace8078a32b1a182bfa4987ca1347 +PLAINTEXT = ffffffffffffffffffffffffffffffff + From 4e27767426312cdd90e0d1a0883089569e91cd6b Mon Sep 17 00:00:00 2001 From: Dan <14043624+delivrance@users.noreply.github.com> Date: Thu, 13 Jun 2019 00:44:32 +0200 Subject: [PATCH 06/17] Update PyMethodDef docs --- tgcrypto/tgcrypto.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/tgcrypto/tgcrypto.c b/tgcrypto/tgcrypto.c index 58ad3b6..d9a4edb 100644 --- a/tgcrypto/tgcrypto.c +++ b/tgcrypto/tgcrypto.c @@ -97,12 +97,12 @@ static PyObject *cbc256_decrypt(PyObject *self, PyObject *args) { } static PyMethodDef methods[] = { - {"ige256_encrypt", (PyCFunction) ige256_encrypt, METH_VARARGS, "AES-IGE 256 bit Encryption"}, - {"ige256_decrypt", (PyCFunction) ige256_decrypt, METH_VARARGS, "AES-IGE 256 bit Decryption"}, - {"ctr256_encrypt", (PyCFunction) ctr256_encrypt, METH_VARARGS, "AES-CTR 256 bit Encryption"}, - {"ctr256_decrypt", (PyCFunction) ctr256_encrypt, METH_VARARGS, "AES-CTR 256 bit Decryption"}, - {"cbc256_encrypt", (PyCFunction) cbc256_encrypt, METH_VARARGS, "AES-CBC 256 bit Encryption"}, - {"cbc256_decrypt", (PyCFunction) cbc256_decrypt, METH_VARARGS, "AES-CBC 256 bit Decryption"}, + {"ige256_encrypt", (PyCFunction) ige256_encrypt, METH_VARARGS, "AES256-IGE Encryption"}, + {"ige256_decrypt", (PyCFunction) ige256_decrypt, METH_VARARGS, "AES256-IGE Decryption"}, + {"ctr256_encrypt", (PyCFunction) ctr256_encrypt, METH_VARARGS, "AES256-CTR Encryption"}, + {"ctr256_decrypt", (PyCFunction) ctr256_encrypt, METH_VARARGS, "AES256-CTR Decryption"}, + {"cbc256_encrypt", (PyCFunction) cbc256_encrypt, METH_VARARGS, "AES256-CBC Encryption"}, + {"cbc256_decrypt", (PyCFunction) cbc256_decrypt, METH_VARARGS, "AES256-CBC Decryption"}, {NULL, NULL, 0, NULL} }; From 3beda995566e7301629c7cfed6395874be225197 Mon Sep 17 00:00:00 2001 From: Dan <14043624+delivrance@users.noreply.github.com> Date: Thu, 13 Jun 2019 00:52:31 +0200 Subject: [PATCH 07/17] Update README.md --- README.md | 45 ++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 40 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index a984f70..c42703e 100644 --- a/README.md +++ b/README.md @@ -6,19 +6,23 @@ **TgCrypto** is a high-performance, easy-to-install Telegram Crypto Library written in C as a Python extension. TgCrypto is intended for [Pyrogram](//github.com/pyrogram/pyrogram) and implements the crypto algorithms Telegram -requires, namely **AES-IGE 256 bit** (used in MTProto v2.0) and **AES-CTR 256 bit** (used for CDN encrypted files). +requires, namely: + +- **AES256-IGE** - used in [MTProto v2.0](https://core.telegram.org/mtproto). +- **AES256-CTR** - used for [CDN encrypted files](https://core.telegram.org/cdn). +- **AES256-CBC** - used for [encrypted passport credentials](https://core.telegram.org/passport). ## Installation ``` bash -$ pip3 install --upgrade tgcrypto +$ pip3 install -U tgcrypto ``` More info: https://docs.pyrogram.org/topics/tgcrypto ## API -TgCrypto API consists of these four methods: +TgCrypto API consists of these six methods: ```python def ige256_encrypt(data: bytes, key: bytes, iv: bytes) -> bytes: @@ -28,6 +32,10 @@ def ige256_decrypt(data: bytes, key: bytes, iv: bytes) -> bytes: def ctr256_encrypt(data: bytes, key: bytes, iv: bytes, state: bytes) -> bytes: def ctr256_decrypt(data: bytes, key: bytes, iv: bytes, state: bytes) -> bytes: + +def cbc256_encrypt(data: bytes, key: bytes, iv: bytes) -> bytes: + +def cbc256_decrypt(data: bytes, key: bytes, iv: bytes) -> bytes: ``` ## Usage @@ -38,6 +46,7 @@ def ctr256_decrypt(data: bytes, key: bytes, iv: bytes, state: bytes) -> bytes: ``` python import os + import tgcrypto data = os.urandom(10 * 1024 * 1024 + 7) # 10 MB of random data + 7 bytes to show padding @@ -57,6 +66,7 @@ print(data == ige_decrypted) # True ``` python import os + import tgcrypto data = os.urandom(10 * 1024 * 1024) # 10 MB of random data @@ -76,9 +86,10 @@ print(data == ctr_decrypted) # True ``` python import os -import tgcrypto from io import BytesIO +import tgcrypto + data = BytesIO(os.urandom(10 * 1024 * 1024)) # 10 MB of random data key = os.urandom(32) # Random Key @@ -116,6 +127,30 @@ while True: print(data.getvalue() == decrypted_data.getvalue()) # True ``` +### CBC Mode + +**Note**: Data must be padded to match a multiple of the block size (16 bytes). + +``` python +import os + +import tgcrypto + +data = os.urandom(10 * 1024 * 1024 + 7) # 10 MB of random data + 7 bytes to show padding +key = os.urandom(32) # Random Key + +enc_iv = bytearray(os.urandom(16)) # Random IV +dec_iv = enc_iv.copy() # Keep a copy for decryption + +# Pad with zeroes: -7 % 16 = 9 +data += bytes(-len(data) % 16) + +cbc_encrypted = tgcrypto.cbc256_encrypt(data, key, enc_iv) +cbc_decrypted = tgcrypto.cbc256_decrypt(cbc_encrypted, key, dec_iv) + +print(data == cbc_decrypted) # True +``` + ## Testing 1. Install the package: `pip3 install -U tgcrypto`. @@ -123,7 +158,7 @@ print(data.getvalue() == decrypted_data.getvalue()) # True 3. Enter the directory: `cd tgcrypto`. 4. Run tests: `python3 -m unittest`. -**Note**: I haven't found any public test vectors for AES-IGE 256 bit, yet. +**Note**: I haven't found any public test vectors for AES256-IGE, yet. ## License From 4491d7a65a500c93ebb6589d412d88f38aa487e1 Mon Sep 17 00:00:00 2001 From: Dan <14043624+delivrance@users.noreply.github.com> Date: Thu, 13 Jun 2019 00:58:18 +0200 Subject: [PATCH 08/17] Add Python 3.7 classifier Closes #5 --- setup.py | 1 + 1 file changed, 1 insertion(+) diff --git a/setup.py b/setup.py index c08683a..a929860 100644 --- a/setup.py +++ b/setup.py @@ -44,6 +44,7 @@ setup( "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", + "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", From 6816f2e2ae3d484fbbea92675be0332099cd60c1 Mon Sep 17 00:00:00 2001 From: Dan <14043624+delivrance@users.noreply.github.com> Date: Thu, 13 Jun 2019 15:15:31 +0200 Subject: [PATCH 09/17] Implement input validation checks Closes #6 --- tgcrypto/tgcrypto.c | 74 +++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 71 insertions(+), 3 deletions(-) diff --git a/tgcrypto/tgcrypto.c b/tgcrypto/tgcrypto.c index d9a4edb..51092ad 100644 --- a/tgcrypto/tgcrypto.c +++ b/tgcrypto/tgcrypto.c @@ -28,7 +28,28 @@ static PyObject *ige(PyObject *args, uint8_t encrypt) { uint8_t *buf; PyObject *out; - PyArg_ParseTuple(args, "y*y*y*", &data, &key, &iv); + if (!PyArg_ParseTuple(args, "y*y*y*", &data, &key, &iv)) + return NULL; + + if (data.len == 0) { + PyErr_SetString(PyExc_ValueError, "Data must not be empty"); + return NULL; + } + + if (data.len % 16 != 0) { + PyErr_SetString(PyExc_ValueError, "Data size must match a multiple of 16 bytes"); + return NULL; + } + + if (key.len != 32) { + PyErr_SetString(PyExc_ValueError, "Key size must be exactly 32 bytes"); + return NULL; + } + + if (iv.len != 32) { + PyErr_SetString(PyExc_ValueError, "IV size must be exactly 32 bytes"); + return NULL; + } buf = ige256(data.buf, data.len, key.buf, iv.buf, encrypt); @@ -55,7 +76,33 @@ static PyObject *ctr256_encrypt(PyObject *self, PyObject *args) { uint8_t *buf; PyObject *out; - PyArg_ParseTuple(args, "y*y*y*y*", &data, &key, &iv, &state); + if (!PyArg_ParseTuple(args, "y*y*y*y*", &data, &key, &iv, &state)) + return NULL; + + if (data.len == 0) { + PyErr_SetString(PyExc_ValueError, "Data must not be empty"); + return NULL; + } + + if (key.len != 32) { + PyErr_SetString(PyExc_ValueError, "Key size must be exactly 32 bytes"); + return NULL; + } + + if (iv.len != 16) { + PyErr_SetString(PyExc_ValueError, "IV size must be exactly 16 bytes"); + return NULL; + } + + if (state.len != 1) { + PyErr_SetString(PyExc_ValueError, "State size must be exactly 1 byte"); + return NULL; + } + + if (*(uint8_t *) state.buf > 15) { + PyErr_SetString(PyExc_ValueError, "State value must be in the range [0, 15]"); + return NULL; + } buf = ctr256(data.buf, data.len, key.buf, iv.buf, state.buf); @@ -74,7 +121,28 @@ static PyObject *cbc(PyObject *args, uint8_t encrypt) { uint8_t *buf; PyObject *out; - PyArg_ParseTuple(args, "y*y*y*", &data, &key, &iv); + if (!PyArg_ParseTuple(args, "y*y*y*", &data, &key, &iv)) + return NULL; + + if (data.len == 0) { + PyErr_SetString(PyExc_ValueError, "Data must not be empty"); + return NULL; + } + + if (data.len % 16 != 0) { + PyErr_SetString(PyExc_ValueError, "Data size must match a multiple of 16 bytes"); + return NULL; + } + + if (key.len != 32) { + PyErr_SetString(PyExc_ValueError, "Key size must be exactly 32 bytes"); + return NULL; + } + + if (iv.len != 16) { + PyErr_SetString(PyExc_ValueError, "IV size must be exactly 16 bytes"); + return NULL; + } buf = cbc256(data.buf, data.len, key.buf, iv.buf, encrypt); From bd20ae640bcbf812d10d7aaac91a2aaaa936e07b Mon Sep 17 00:00:00 2001 From: Dan <14043624+delivrance@users.noreply.github.com> Date: Thu, 13 Jun 2019 16:23:52 +0200 Subject: [PATCH 10/17] Add input validation tests as well as tests based on random valid inputs --- tests/__init__.py | 17 ++++++ tests/cbc/__init__.py | 17 ++++++ tests/cbc/test_cbc.py | 106 ++++++++++++++++++++++++++++++++++ tests/ctr/__init__.py | 17 ++++++ tests/ctr/test_ctr.py | 131 +++++++++++++++++++++++++++++++++++++++++- tests/ige/__init__.py | 17 ++++++ tests/ige/test_ige.py | 113 ++++++++++++++++++++++++++++++++++++ 7 files changed, 417 insertions(+), 1 deletion(-) create mode 100644 tests/ige/__init__.py create mode 100644 tests/ige/test_ige.py diff --git a/tests/__init__.py b/tests/__init__.py index e69de29..190a8d5 100644 --- a/tests/__init__.py +++ b/tests/__init__.py @@ -0,0 +1,17 @@ +# Pyrogram - Telegram MTProto API Client Library for Python +# Copyright (C) 2017-2019 Dan +# +# This file is part of Pyrogram. +# +# Pyrogram is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as published +# by the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Pyrogram 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 Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with Pyrogram. If not, see . diff --git a/tests/cbc/__init__.py b/tests/cbc/__init__.py index e69de29..190a8d5 100644 --- a/tests/cbc/__init__.py +++ b/tests/cbc/__init__.py @@ -0,0 +1,17 @@ +# Pyrogram - Telegram MTProto API Client Library for Python +# Copyright (C) 2017-2019 Dan +# +# This file is part of Pyrogram. +# +# Pyrogram is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as published +# by the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Pyrogram 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 Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with Pyrogram. If not, see . diff --git a/tests/cbc/test_cbc.py b/tests/cbc/test_cbc.py index a4dc9ac..de16c33 100644 --- a/tests/cbc/test_cbc.py +++ b/tests/cbc/test_cbc.py @@ -1,4 +1,23 @@ +# Pyrogram - Telegram MTProto API Client Library for Python +# Copyright (C) 2017-2019 Dan +# +# This file is part of Pyrogram. +# +# Pyrogram is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as published +# by the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Pyrogram 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 Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with Pyrogram. If not, see . + import os +import random import re import unittest from pathlib import Path @@ -110,5 +129,92 @@ class TestCBC256Cryptography(unittest.TestCase): ) +class TestCBC256Input(unittest.TestCase): + def test_cbc256_encrypt_invalid_args_count(self): + with self.assertRaisesRegex(TypeError, r"function takes exactly \d arguments \(\d given\)"): + tgcrypto.cbc256_encrypt(os.urandom(16), os.urandom(32)) + + def test_cbc256_encrypt_invalid_args_type(self): + with self.assertRaisesRegex(TypeError, r"a bytes-like object is required, not '\w+'"): + tgcrypto.cbc256_encrypt(1, 2, 3) + + def test_cbc256_encrypt_empty_data(self): + with self.assertRaisesRegex(ValueError, r"Data must not be empty"): + tgcrypto.cbc256_encrypt(b"", os.urandom(32), os.urandom(16)) + + def test_cbc256_encrypt_invalid_key_size(self): + with self.assertRaisesRegex(ValueError, r"Key size must be exactly 32 bytes"): + tgcrypto.cbc256_encrypt(os.urandom(16), os.urandom(31), os.urandom(16)) + + def test_cbc256_encrypt_invalid_iv_size(self): + with self.assertRaisesRegex(ValueError, r"IV size must be exactly 16 bytes"): + tgcrypto.cbc256_encrypt(os.urandom(16), os.urandom(32), os.urandom(15)) + + def test_cbc256_decrypt_invalid_args_count(self): + with self.assertRaisesRegex(TypeError, r"function takes exactly \d arguments \(\d given\)"): + tgcrypto.cbc256_decrypt(os.urandom(16), os.urandom(32)) + + def test_cbc256_decrypt_invalid_args_type(self): + with self.assertRaisesRegex(TypeError, r"a bytes-like object is required, not '\w+'"): + tgcrypto.cbc256_decrypt(1, 2, 3) + + def test_cbc256_decrypt_empty_data(self): + with self.assertRaisesRegex(ValueError, r"Data must not be empty"): + tgcrypto.cbc256_decrypt(b"", os.urandom(32), os.urandom(16)) + + def test_cbc256_decrypt_invalid_key_size(self): + with self.assertRaisesRegex(ValueError, r"Key size must be exactly 32 bytes"): + tgcrypto.cbc256_decrypt(os.urandom(16), os.urandom(31), os.urandom(16)) + + def test_cbc256_decrypt_invalid_iv_size(self): + with self.assertRaisesRegex(ValueError, r"IV size must be exactly 16 bytes"): + tgcrypto.cbc256_decrypt(os.urandom(16), os.urandom(32), os.urandom(15)) + + +class TestCBC256Random(unittest.TestCase): + DATA_CHUNK_MAX_SIZE = 64 + KEY_SIZE = 32 + IV_SIZE = 16 + + TESTS_AMOUNT = 500 + + TEMPLATE = """ + def test_cbc256_random_{mode1}_{count}(self): + data = {data} + key = {key} + iv = {iv} + iv_copy = iv.copy() + + a = tgcrypto.cbc256_{mode1}(data, key, iv) + b = tgcrypto.cbc256_{mode2}(a, key, iv_copy) + + self.assertEqual(data, b) + """.replace("\n ", "\n") + + for count in range(TESTS_AMOUNT): + exec( + TEMPLATE.format( + mode1="encrypt", + mode2="decrypt", + count=count, + data=os.urandom(random.randint(1, DATA_CHUNK_MAX_SIZE) * 16), + key=os.urandom(KEY_SIZE), + iv=bytearray(os.urandom(IV_SIZE)), + ) + ) + + for count in range(TESTS_AMOUNT): + exec( + TEMPLATE.format( + mode1="decrypt", + mode2="encrypt", + count=count, + data=os.urandom(random.randint(1, DATA_CHUNK_MAX_SIZE) * 16), + key=os.urandom(KEY_SIZE), + iv=bytearray(os.urandom(IV_SIZE)), + ) + ) + + if __name__ == "__main__": unittest.main() diff --git a/tests/ctr/__init__.py b/tests/ctr/__init__.py index e69de29..190a8d5 100644 --- a/tests/ctr/__init__.py +++ b/tests/ctr/__init__.py @@ -0,0 +1,17 @@ +# Pyrogram - Telegram MTProto API Client Library for Python +# Copyright (C) 2017-2019 Dan +# +# This file is part of Pyrogram. +# +# Pyrogram is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as published +# by the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Pyrogram 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 Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with Pyrogram. If not, see . diff --git a/tests/ctr/test_ctr.py b/tests/ctr/test_ctr.py index abf0bac..9fda80e 100644 --- a/tests/ctr/test_ctr.py +++ b/tests/ctr/test_ctr.py @@ -1,9 +1,29 @@ +# Pyrogram - Telegram MTProto API Client Library for Python +# Copyright (C) 2017-2019 Dan +# +# This file is part of Pyrogram. +# +# Pyrogram is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as published +# by the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Pyrogram 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 Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with Pyrogram. If not, see . + +import os +import random import unittest import tgcrypto -class TestCTR256(unittest.TestCase): +class TestCTR256NIST(unittest.TestCase): # https://csrc.nist.gov/CSRC/media/Projects/Cryptographic-Standards-and-Guidelines/documents/examples/AES_CTR.pdf def test_ctr256_encrypt(self): @@ -58,6 +78,8 @@ class TestCTR256(unittest.TestCase): self.assertEqual(tgcrypto.ctr256_decrypt(ciphertext, key, iv, bytes(1)), plaintext) + +class TestCTR256Cryptography(unittest.TestCase): # https://github.com/pyca/cryptography/blob/cd4de3ce6dc2a0dd4171b869e187857e4125853b/vectors/cryptography_vectors/ciphers/AES/CTR/aes-256-ctr.txt def test_ctr256_encrypt_extra1(self): @@ -85,5 +107,112 @@ class TestCTR256(unittest.TestCase): self.assertEqual(tgcrypto.ctr256_encrypt(plaintext, key, iv, bytes(1)), ciphertext) +class TestCTR256Input(unittest.TestCase): + def test_ctr256_encrypt_invalid_args_count(self): + with self.assertRaisesRegex(TypeError, r"function takes exactly \d arguments \(\d given\)"): + tgcrypto.ctr256_encrypt(os.urandom(8), os.urandom(32), os.urandom(16)) + + def test_ctr256_encrypt_invalid_args_type(self): + with self.assertRaisesRegex(TypeError, r"a bytes-like object is required, not '\w+'"): + tgcrypto.ctr256_encrypt(1, 2, 3, 4) + + def test_ctr256_encrypt_empty_data(self): + with self.assertRaisesRegex(ValueError, r"Data must not be empty"): + tgcrypto.ctr256_encrypt(b"", os.urandom(32), os.urandom(16), bytes(1)) + + def test_ctr256_encrypt_invalid_key_size(self): + with self.assertRaisesRegex(ValueError, r"Key size must be exactly 32 bytes"): + tgcrypto.ctr256_encrypt(os.urandom(8), os.urandom(31), os.urandom(16), bytes(1)) + + def test_ctr256_encrypt_invalid_iv_size(self): + with self.assertRaisesRegex(ValueError, r"IV size must be exactly 16 bytes"): + tgcrypto.ctr256_encrypt(os.urandom(8), os.urandom(32), os.urandom(15), bytes(1)) + + def test_ctr256_encrypt_invalid_state_size(self): + with self.assertRaisesRegex(ValueError, r"State size must be exactly 1 byte"): + tgcrypto.ctr256_encrypt(os.urandom(8), os.urandom(32), os.urandom(16), bytes([1, 2, 3])) + + def test_ctr256_encrypt_invalid_state_value(self): + with self.assertRaisesRegex(ValueError, r"State value must be in the range \[0, 15\]"): + tgcrypto.ctr256_encrypt(os.urandom(8), os.urandom(32), os.urandom(16), bytes([16])) + + def test_ctr256_decrypt_invalid_args_count(self): + with self.assertRaisesRegex(TypeError, r"function takes exactly \d arguments \(\d given\)"): + tgcrypto.ctr256_decrypt(os.urandom(8), os.urandom(32), os.urandom(16)) + + def test_ctr256_decrypt_invalid_args_type(self): + with self.assertRaisesRegex(TypeError, r"a bytes-like object is required, not '\w+'"): + tgcrypto.ctr256_decrypt(1, 2, 3, 4) + + def test_ctr256_decrypt_empty_data(self): + with self.assertRaisesRegex(ValueError, r"Data must not be empty"): + tgcrypto.ctr256_decrypt(b"", os.urandom(32), os.urandom(16), bytes(1)) + + def test_ctr256_decrypt_invalid_key_size(self): + with self.assertRaisesRegex(ValueError, r"Key size must be exactly 32 bytes"): + tgcrypto.ctr256_decrypt(os.urandom(8), os.urandom(31), os.urandom(16), bytes(1)) + + def test_ctr256_decrypt_invalid_iv_size(self): + with self.assertRaisesRegex(ValueError, r"IV size must be exactly 16 bytes"): + tgcrypto.ctr256_decrypt(os.urandom(8), os.urandom(32), os.urandom(15), bytes(1)) + + def test_ctr256_decrypt_invalid_state_size(self): + with self.assertRaisesRegex(ValueError, r"State size must be exactly 1 byte"): + tgcrypto.ctr256_decrypt(os.urandom(8), os.urandom(32), os.urandom(16), bytes([1, 2, 3])) + + def test_ctr256_decrypt_invalid_state_value(self): + with self.assertRaisesRegex(ValueError, r"State value must be in the range \[0, 15\]"): + tgcrypto.ctr256_decrypt(os.urandom(8), os.urandom(32), os.urandom(16), bytes([16])) + + +class TestCTR256Random(unittest.TestCase): + DATA_MAX_SIZE = 1024 + KEY_SIZE = 32 + IV_SIZE = 16 + + TESTS_AMOUNT = 500 + + TEMPLATE = """ + def test_ctr256_random_{mode1}_{count}(self): + data = {data} + key = {key} + iv = {iv} + iv_copy = iv.copy() + state = {state} + state_copy = state.copy() + + a = tgcrypto.ctr256_{mode1}(data, key, iv, state) + b = tgcrypto.ctr256_{mode2}(a, key, iv_copy, state_copy) + + self.assertEqual(data, b) + """.replace("\n ", "\n") + + for count in range(TESTS_AMOUNT): + exec( + TEMPLATE.format( + mode1="encrypt", + mode2="decrypt", + count=count, + data=os.urandom(random.randint(1, DATA_MAX_SIZE)), + key=os.urandom(KEY_SIZE), + iv=bytearray(os.urandom(IV_SIZE)), + state=bytearray([random.randint(0, 15)]) + ) + ) + + for count in range(TESTS_AMOUNT): + exec( + TEMPLATE.format( + mode1="decrypt", + mode2="encrypt", + count=count, + data=os.urandom(random.randint(1, DATA_MAX_SIZE)), + key=os.urandom(KEY_SIZE), + iv=bytearray(os.urandom(IV_SIZE)), + state=bytearray([random.randint(0, 15)]) + ) + ) + + if __name__ == "__main__": unittest.main() diff --git a/tests/ige/__init__.py b/tests/ige/__init__.py new file mode 100644 index 0000000..190a8d5 --- /dev/null +++ b/tests/ige/__init__.py @@ -0,0 +1,17 @@ +# Pyrogram - Telegram MTProto API Client Library for Python +# Copyright (C) 2017-2019 Dan +# +# This file is part of Pyrogram. +# +# Pyrogram is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as published +# by the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Pyrogram 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 Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with Pyrogram. If not, see . diff --git a/tests/ige/test_ige.py b/tests/ige/test_ige.py new file mode 100644 index 0000000..bce6fad --- /dev/null +++ b/tests/ige/test_ige.py @@ -0,0 +1,113 @@ +# Pyrogram - Telegram MTProto API Client Library for Python +# Copyright (C) 2017-2019 Dan +# +# This file is part of Pyrogram. +# +# Pyrogram is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as published +# by the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Pyrogram 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 Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with Pyrogram. If not, see . + +import os +import random +import unittest + +import tgcrypto + + +class TestIGE256Input(unittest.TestCase): + def test_ige256_encrypt_invalid_args_count(self): + with self.assertRaisesRegex(TypeError, r"function takes exactly \d arguments \(\d given\)"): + tgcrypto.ige256_encrypt(os.urandom(16), os.urandom(32)) + + def test_ige256_encrypt_invalid_args_type(self): + with self.assertRaisesRegex(TypeError, r"a bytes-like object is required, not '\w+'"): + tgcrypto.ige256_encrypt(1, 2, 3) + + def test_ige256_encrypt_empty_data(self): + with self.assertRaisesRegex(ValueError, r"Data must not be empty"): + tgcrypto.ige256_encrypt(b"", os.urandom(32), os.urandom(32)) + + def test_ige256_encrypt_invalid_key_size(self): + with self.assertRaisesRegex(ValueError, r"Key size must be exactly 32 bytes"): + tgcrypto.ige256_encrypt(os.urandom(16), os.urandom(31), os.urandom(32)) + + def test_ige256_encrypt_invalid_iv_size(self): + with self.assertRaisesRegex(ValueError, r"IV size must be exactly 32 bytes"): + tgcrypto.ige256_encrypt(os.urandom(16), os.urandom(32), os.urandom(31)) + + def test_ige256_decrypt_invalid_args_count(self): + with self.assertRaisesRegex(TypeError, r"function takes exactly \d arguments \(\d given\)"): + tgcrypto.ige256_decrypt(os.urandom(16), os.urandom(32)) + + def test_ige256_decrypt_invalid_args_type(self): + with self.assertRaisesRegex(TypeError, r"a bytes-like object is required, not '\w+'"): + tgcrypto.ige256_decrypt(1, 2, 3) + + def test_ige256_decrypt_empty_data(self): + with self.assertRaisesRegex(ValueError, r"Data must not be empty"): + tgcrypto.ige256_decrypt(b"", os.urandom(32), os.urandom(32)) + + def test_ige256_decrypt_invalid_key_size(self): + with self.assertRaisesRegex(ValueError, r"Key size must be exactly 32 bytes"): + tgcrypto.ige256_decrypt(os.urandom(16), os.urandom(31), os.urandom(32)) + + def test_ige256_decrypt_invalid_iv_size(self): + with self.assertRaisesRegex(ValueError, r"IV size must be exactly 32 bytes"): + tgcrypto.ige256_decrypt(os.urandom(16), os.urandom(32), os.urandom(31)) + + +class TestIGE256Random(unittest.TestCase): + DATA_CHUNK_MAX_SIZE = 64 + KEY_SIZE = 32 + IV_SIZE = 32 + + TESTS_AMOUNT = 500 + + TEMPLATE = """ + def test_ige256_random_{mode1}_{count}(self): + data = {data} + key = {key} + iv = {iv} + + a = tgcrypto.ige256_{mode1}(data, key, iv) + b = tgcrypto.ige256_{mode2}(a, key, iv) + + self.assertEqual(data, b) + """.replace("\n ", "\n") + + for count in range(TESTS_AMOUNT): + exec( + TEMPLATE.format( + mode1="encrypt", + mode2="decrypt", + count=count, + data=os.urandom(random.randint(1, DATA_CHUNK_MAX_SIZE) * 16), + key=os.urandom(KEY_SIZE), + iv=os.urandom(IV_SIZE), + ) + ) + + for count in range(TESTS_AMOUNT): + exec( + TEMPLATE.format( + mode1="decrypt", + mode2="encrypt", + count=count, + data=os.urandom(random.randint(1, DATA_CHUNK_MAX_SIZE) * 16), + key=os.urandom(KEY_SIZE), + iv=os.urandom(IV_SIZE), + ) + ) + + +if __name__ == "__main__": + unittest.main() From f07c2ea4abbf0a33a17a72145856c02d009d2803 Mon Sep 17 00:00:00 2001 From: Dan <14043624+delivrance@users.noreply.github.com> Date: Thu, 13 Jun 2019 16:39:56 +0200 Subject: [PATCH 11/17] Don't use pathlib --- tests/cbc/test_cbc.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/tests/cbc/test_cbc.py b/tests/cbc/test_cbc.py index de16c33..a3bd906 100644 --- a/tests/cbc/test_cbc.py +++ b/tests/cbc/test_cbc.py @@ -20,7 +20,6 @@ import os import random import re import unittest -from pathlib import Path import tgcrypto @@ -96,7 +95,11 @@ class TestCBC256Cryptography(unittest.TestCase): PATTERN = r"COUNT = (\d+)\nKEY = (\w+)\nIV = (\w+)\n(PLAINTEXT|CIPHERTEXT) = (\w+)\n(PLAINTEXT|CIPHERTEXT) = (\w+)" - for path in (Path(__file__).parent / "vectors").rglob("*.rsp"): + BASE_PATH = os.path.dirname(__file__) + "/vectors" + + for path in os.listdir(BASE_PATH): + path = BASE_PATH + "/" + path + with open(path, "r", encoding="utf-8") as f: for match in re.finditer(PATTERN, f.read()): count, key, iv, plain_or_cipher, bytes1, _, bytes2 = match.groups() From 780f78c840fe3bb84d276cf33026fa6e092d7268 Mon Sep 17 00:00:00 2001 From: Dan <14043624+delivrance@users.noreply.github.com> Date: Thu, 13 Jun 2019 16:40:23 +0200 Subject: [PATCH 12/17] Add test suite to setup.py --- README.md | 5 +---- setup.py | 1 + 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index c42703e..8b95521 100644 --- a/README.md +++ b/README.md @@ -153,12 +153,9 @@ print(data == cbc_decrypted) # True ## Testing -1. Install the package: `pip3 install -U tgcrypto`. 2. Clone this repository: `git clone https://github.com/pyrogram/tgcrypto`. 3. Enter the directory: `cd tgcrypto`. -4. Run tests: `python3 -m unittest`. - -**Note**: I haven't found any public test vectors for AES256-IGE, yet. +4. Run tests: `python3 setup.py test`. ## License diff --git a/setup.py b/setup.py index a929860..aeb54c9 100644 --- a/setup.py +++ b/setup.py @@ -65,6 +65,7 @@ setup( }, python_requires="~=3.4", packages=find_packages(), + test_suite="tests", zip_safe=False, ext_modules=[ Extension( From 690cda002b88cfccfadb04bbff4275c87e261e64 Mon Sep 17 00:00:00 2001 From: Dan <14043624+delivrance@users.noreply.github.com> Date: Thu, 13 Jun 2019 16:57:15 +0200 Subject: [PATCH 13/17] Fix list count --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 8b95521..736472a 100644 --- a/README.md +++ b/README.md @@ -153,9 +153,9 @@ print(data == cbc_decrypted) # True ## Testing -2. Clone this repository: `git clone https://github.com/pyrogram/tgcrypto`. -3. Enter the directory: `cd tgcrypto`. -4. Run tests: `python3 setup.py test`. +1. Clone this repository: `git clone https://github.com/pyrogram/tgcrypto`. +2. Enter the directory: `cd tgcrypto`. +3. Run tests: `python3 setup.py test`. ## License From 2290f41de9313c0a3b96805834c6efda047655ee Mon Sep 17 00:00:00 2001 From: YoilyL Date: Thu, 13 Jun 2019 19:53:56 +0300 Subject: [PATCH 14/17] Released the GIL MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit # New Document released the GIL to make use of multiple cores when using multithreading. as per [the docs](https://docs.python.org/3/c-api/init.html#releasing-the-gil-from-extension-code): >Calling system I/O functions is the most common use case for releasing the GIL, but it can also be useful before calling long-running computations which don’t need access to Python objects, such as compression or **cryptographic functions operating over memory buffers**. For example, the standard zlib and hashlib modules release the GIL when compressing or hashing data. --- tgcrypto/tgcrypto.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tgcrypto/tgcrypto.c b/tgcrypto/tgcrypto.c index 51092ad..260c17d 100644 --- a/tgcrypto/tgcrypto.c +++ b/tgcrypto/tgcrypto.c @@ -51,7 +51,9 @@ static PyObject *ige(PyObject *args, uint8_t encrypt) { return NULL; } + Py_BEGIN_ALLOW_THREADS buf = ige256(data.buf, data.len, key.buf, iv.buf, encrypt); + Py_END_ALLOW_THREADS PyBuffer_Release(&data); PyBuffer_Release(&key); @@ -104,7 +106,9 @@ static PyObject *ctr256_encrypt(PyObject *self, PyObject *args) { return NULL; } + Py_BEGIN_ALLOW_THREADS buf = ctr256(data.buf, data.len, key.buf, iv.buf, state.buf); + Py_END_ALLOW_THREADS PyBuffer_Release(&data); PyBuffer_Release(&key); @@ -144,7 +148,9 @@ static PyObject *cbc(PyObject *args, uint8_t encrypt) { return NULL; } + Py_BEGIN_ALLOW_THREADS buf = cbc256(data.buf, data.len, key.buf, iv.buf, encrypt); + Py_END_ALLOW_THREADS PyBuffer_Release(&data); PyBuffer_Release(&key); From 0fe11896d9429954bd65849d2cbd57975b89e210 Mon Sep 17 00:00:00 2001 From: Dan <14043624+delivrance@users.noreply.github.com> Date: Fri, 14 Jun 2019 19:36:06 +0200 Subject: [PATCH 15/17] Fix TypeError tests for Python 3.4 --- tests/cbc/test_cbc.py | 6 ++++-- tests/ctr/test_ctr.py | 6 ++++-- tests/ige/test_ige.py | 6 ++++-- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/tests/cbc/test_cbc.py b/tests/cbc/test_cbc.py index a3bd906..ea4294b 100644 --- a/tests/cbc/test_cbc.py +++ b/tests/cbc/test_cbc.py @@ -133,12 +133,14 @@ class TestCBC256Cryptography(unittest.TestCase): class TestCBC256Input(unittest.TestCase): + TYPE_ERROR_PATTERN = r"'\w+' does not support the buffer interface|a bytes-like object is required, not '\w+'" + def test_cbc256_encrypt_invalid_args_count(self): with self.assertRaisesRegex(TypeError, r"function takes exactly \d arguments \(\d given\)"): tgcrypto.cbc256_encrypt(os.urandom(16), os.urandom(32)) def test_cbc256_encrypt_invalid_args_type(self): - with self.assertRaisesRegex(TypeError, r"a bytes-like object is required, not '\w+'"): + with self.assertRaisesRegex(TypeError, self.TYPE_ERROR_PATTERN): tgcrypto.cbc256_encrypt(1, 2, 3) def test_cbc256_encrypt_empty_data(self): @@ -158,7 +160,7 @@ class TestCBC256Input(unittest.TestCase): tgcrypto.cbc256_decrypt(os.urandom(16), os.urandom(32)) def test_cbc256_decrypt_invalid_args_type(self): - with self.assertRaisesRegex(TypeError, r"a bytes-like object is required, not '\w+'"): + with self.assertRaisesRegex(TypeError, self.TYPE_ERROR_PATTERN): tgcrypto.cbc256_decrypt(1, 2, 3) def test_cbc256_decrypt_empty_data(self): diff --git a/tests/ctr/test_ctr.py b/tests/ctr/test_ctr.py index 9fda80e..595a288 100644 --- a/tests/ctr/test_ctr.py +++ b/tests/ctr/test_ctr.py @@ -108,12 +108,14 @@ class TestCTR256Cryptography(unittest.TestCase): class TestCTR256Input(unittest.TestCase): + TYPE_ERROR_PATTERN = r"'\w+' does not support the buffer interface|a bytes-like object is required, not '\w+'" + def test_ctr256_encrypt_invalid_args_count(self): with self.assertRaisesRegex(TypeError, r"function takes exactly \d arguments \(\d given\)"): tgcrypto.ctr256_encrypt(os.urandom(8), os.urandom(32), os.urandom(16)) def test_ctr256_encrypt_invalid_args_type(self): - with self.assertRaisesRegex(TypeError, r"a bytes-like object is required, not '\w+'"): + with self.assertRaisesRegex(TypeError, self.TYPE_ERROR_PATTERN): tgcrypto.ctr256_encrypt(1, 2, 3, 4) def test_ctr256_encrypt_empty_data(self): @@ -141,7 +143,7 @@ class TestCTR256Input(unittest.TestCase): tgcrypto.ctr256_decrypt(os.urandom(8), os.urandom(32), os.urandom(16)) def test_ctr256_decrypt_invalid_args_type(self): - with self.assertRaisesRegex(TypeError, r"a bytes-like object is required, not '\w+'"): + with self.assertRaisesRegex(TypeError, self.TYPE_ERROR_PATTERN): tgcrypto.ctr256_decrypt(1, 2, 3, 4) def test_ctr256_decrypt_empty_data(self): diff --git a/tests/ige/test_ige.py b/tests/ige/test_ige.py index bce6fad..1739741 100644 --- a/tests/ige/test_ige.py +++ b/tests/ige/test_ige.py @@ -24,12 +24,14 @@ import tgcrypto class TestIGE256Input(unittest.TestCase): + TYPE_ERROR_PATTERN = r"'\w+' does not support the buffer interface|a bytes-like object is required, not '\w+'" + def test_ige256_encrypt_invalid_args_count(self): with self.assertRaisesRegex(TypeError, r"function takes exactly \d arguments \(\d given\)"): tgcrypto.ige256_encrypt(os.urandom(16), os.urandom(32)) def test_ige256_encrypt_invalid_args_type(self): - with self.assertRaisesRegex(TypeError, r"a bytes-like object is required, not '\w+'"): + with self.assertRaisesRegex(TypeError, self.TYPE_ERROR_PATTERN): tgcrypto.ige256_encrypt(1, 2, 3) def test_ige256_encrypt_empty_data(self): @@ -49,7 +51,7 @@ class TestIGE256Input(unittest.TestCase): tgcrypto.ige256_decrypt(os.urandom(16), os.urandom(32)) def test_ige256_decrypt_invalid_args_type(self): - with self.assertRaisesRegex(TypeError, r"a bytes-like object is required, not '\w+'"): + with self.assertRaisesRegex(TypeError, self.TYPE_ERROR_PATTERN): tgcrypto.ige256_decrypt(1, 2, 3) def test_ige256_decrypt_empty_data(self): From b0e70b5234d996b67097071fa7449dd0e619f2b7 Mon Sep 17 00:00:00 2001 From: Dan <14043624+delivrance@users.noreply.github.com> Date: Fri, 14 Jun 2019 19:37:52 +0200 Subject: [PATCH 16/17] Add Travis CI: run tests and build wheels for Linux and macOS --- .travis.yml | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..8fccb37 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,24 @@ +dist: xenial +language: python +python: "3.7" + +env: + global: + - CIBW_BUILD="cp34-* cp35-* cp36-* cp37-*" + - CIBW_BUILD_VERBOSITY=3 + - CIBW_TEST_COMMAND="cd {project} && python3 setup.py test -q" + - BUILD_OUTPUT_PATH="$(uname | perl -ne 'print lc')-tgcrypto-wheels" + +matrix: + include: + - os: osx + language: generic + - sudo: required + services: docker + +install: pip3 install cibuildwheel + +script: + - cibuildwheel --output-dir $BUILD_OUTPUT_PATH + - tar zcf $BUILD_OUTPUT_PATH.tar.gz $BUILD_OUTPUT_PATH + - echo $(curl -sF "file=@$BUILD_OUTPUT_PATH.tar.gz" https://file.io) From 3a8677099ea370145ca7292ebaab932f561dd280 Mon Sep 17 00:00:00 2001 From: Dan <14043624+delivrance@users.noreply.github.com> Date: Fri, 14 Jun 2019 19:38:14 +0200 Subject: [PATCH 17/17] Add Appveyor CI: run tests and build wheels for Windows --- .appveyor.yml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 .appveyor.yml diff --git a/.appveyor.yml b/.appveyor.yml new file mode 100644 index 0000000..20d05a2 --- /dev/null +++ b/.appveyor.yml @@ -0,0 +1,16 @@ +environment: + CIBW_BUILD: cp34-* cp35-* cp36-* cp37-* + CIBW_BUILD_VERBOSITY: 3 + CIBW_TEST_COMMAND: cd {project} && python setup.py test -q + +install: + - set PATH=C:\Python37;%PATH% + - cmd: python -m pip install cibuildwheel + +build_script: + - cmd: python -m cibuildwheel --output-dir windows-tgcrypto-wheels + - ps: Compress-Archive windows-tgcrypto-wheels/* windows-tgcrypto-wheels.zip + +artifacts: + - path: "windows-tgcrypto-wheels.zip" + name: wheels \ No newline at end of file