OLD | NEW |
(Empty) | |
| 1 [ |
| 2 // From https://www.rfc-editor.org/rfc/rfc3686.txt |
| 3 // Test Vector #3: Encrypting 36 octets using AES-CTR with 128-bit key |
| 4 { |
| 5 "key": "7691BE035E5020A8AC6E618529F9A0DC", |
| 6 "plain_text": "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1
E1F20212223", |
| 7 "counter": "00E0017B27777F3F4A1786F000000001", |
| 8 "length": 32, |
| 9 "cipher_text": "C1CF48A89F2FFDD9CF4652E9EFDB72D74540A42BDE6D7836D59A5CEAAEF3
105325B2072F" |
| 10 }, |
| 11 |
| 12 // From https://www.rfc-editor.org/rfc/rfc3686.txt |
| 13 // Test Vector #8: Encrypting 32 octets using AES-CTR with 256-bit key |
| 14 { |
| 15 "key": "F6D66D6BD52D59BB0796365879EFF886C66DD51A5B6A99744B50590C87A23884", |
| 16 "plain_text": "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1
E1F", |
| 17 "counter": "00FAAC24C1585EF15A43D87500000001", |
| 18 "length": 32, |
| 19 "cipher_text": "F05E231B3894612C49EE000B804EB2A9B8306B508F839D6A5530831D9344
AF1C" |
| 20 }, |
| 21 |
| 22 // Empty plaintext, using a 256-bit key. |
| 23 { |
| 24 "key": "F6D66D6BD52D59BB0796365879EFF886C66DD51A5B6A99744B50590C87A23884", |
| 25 "plain_text": "", |
| 26 "counter": "00FAAC24C1585EF15A43D87500000001", |
| 27 "length": 32, |
| 28 "cipher_text": "" |
| 29 }, |
| 30 |
| 31 // 32-bit counter wrap-around (manually constructed). |
| 32 // |
| 33 // Starts a 32-bit counter at 0xFFFFFFFF and encrypts 3 blocks worth of data. |
| 34 // The counter will wrap around and take on values of 0 and 1. |
| 35 { |
| 36 "key": "F6D66D6BD52D59BB0796365879EFF886C66DD51A5B6A99744B50590C87A23884", |
| 37 "plain_text": "F05E231B3894612C49EE000B804EB2A9B8306B508F839D6A5530831D9344A
F1CC1CF48A89F2FFDD9CF4652E9EFDB72D7", |
| 38 "counter": "00FAAC24C1585EF15A43D875FFFFFFFF", |
| 39 "length": 32, |
| 40 "cipher_text": "2E32E02FF9E69A1D6B78AC4308A67592C5DD5505589B79183D4189619A14
67E4319069B0A3BE9AF28EA158E96398CE71" |
| 41 }, |
| 42 |
| 43 // 1-bit counter wrap-around (manually constructed). |
| 44 // |
| 45 // Starts a 1-bit counter at 1 and encrypts 2 blocks worth of data. |
| 46 { |
| 47 "key": "7691BE035E5020A8AC6E618529F9A0DC", |
| 48 "plain_text": "C05E231B3894612C49EE000B804EB2A6B8306B508F839D6A5530831D9344A
F1C", |
| 49 "counter": "00FAAC24C1585EF15A43D875000000FF", |
| 50 "length": 1, |
| 51 "cipher_text": "52334727723A84F4278FB319386CD7B5587DD8B2D9AA394D83EF8A826C47
61AA" |
| 52 }, |
| 53 |
| 54 // 4-bit counter wrap-around (manually constructed). |
| 55 // |
| 56 // Starts a 4-bit counter at 14 and encrypts 3 blocks worth of data. |
| 57 { |
| 58 "key": "7691BE035E5020A8AC6E618529F9A0DC", |
| 59 "plain_text": "C05E231B3894612C49EE000B804EB2A6B8306B508F839D6A5530831D9344A
F1C1415161718191A1B1C1D1E1F20212223", |
| 60 "counter": "00FAAC24C1585EF15A43D8750000111E", |
| 61 "length": 4, |
| 62 "cipher_text": "5573894046DEF46162ED54966A22D8F0517B61A0CE7E657A5A5124A7F62A
AE149A3C7856711C59D67F34F31374CF7A72" |
| 63 }, |
| 64 |
| 65 // Same test as above, however the plaintext/ciphertext is not a multiple of b
lock size. |
| 66 { |
| 67 "key": "7691BE035E5020A8AC6E618529F9A0DC", |
| 68 "plain_text": "C05E231B3894612C49EE000B804EB2A6B8306B508F839D6A5530831D9344A
F1C1415161718191A1B1C1D1E1F20", |
| 69 "counter": "00FAAC24C1585EF15A43D8750000111E", |
| 70 "length": 4, |
| 71 "cipher_text": "5573894046DEF46162ED54966A22D8F0517B61A0CE7E657A5A5124A7F62A
AE149A3C7856711C59D67F34F31374" |
| 72 }, |
| 73 |
| 74 // 128-bit counter wrap-around (manually constructed). |
| 75 { |
| 76 "key": "7691BE035E5020A8AC6E618529F9A0DC", |
| 77 "plain_text": "C05E231B3894612C49EE000B804EB2A6B8306B508F839D6A5530831D9344A
F1C1415161718191A1B1C1D1E1F20212223", |
| 78 "counter": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE", |
| 79 "length": 128, |
| 80 "cipher_text": "D2C49B275BC73814DC90ECE98959041C9A3481F2247E08B0AF5D8DE3F521
C9DAF535B0A8156DF9D2370EE7328103C8AD" |
| 81 } |
| 82 ] |
OLD | NEW |