Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1897)

Unified Diff: content/test/data/webcrypto/aes_ctr.json

Issue 491763002: [webcrypto] Implement AES-CTR using BoringSSL. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase onto master (moves unittest to its own file) Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/content_tests.gypi ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/test/data/webcrypto/aes_ctr.json
diff --git a/content/test/data/webcrypto/aes_ctr.json b/content/test/data/webcrypto/aes_ctr.json
new file mode 100644
index 0000000000000000000000000000000000000000..62c0b5a9e212e7bd66ee7cb766cedb5216195b4a
--- /dev/null
+++ b/content/test/data/webcrypto/aes_ctr.json
@@ -0,0 +1,82 @@
+[
+ // From https://www.rfc-editor.org/rfc/rfc3686.txt
+ // Test Vector #3: Encrypting 36 octets using AES-CTR with 128-bit key
+ {
+ "key": "7691BE035E5020A8AC6E618529F9A0DC",
+ "plain_text": "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20212223",
+ "counter": "00E0017B27777F3F4A1786F000000001",
+ "length": 32,
+ "cipher_text": "C1CF48A89F2FFDD9CF4652E9EFDB72D74540A42BDE6D7836D59A5CEAAEF3105325B2072F"
+ },
+
+ // From https://www.rfc-editor.org/rfc/rfc3686.txt
+ // Test Vector #8: Encrypting 32 octets using AES-CTR with 256-bit key
+ {
+ "key": "F6D66D6BD52D59BB0796365879EFF886C66DD51A5B6A99744B50590C87A23884",
+ "plain_text": "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F",
+ "counter": "00FAAC24C1585EF15A43D87500000001",
+ "length": 32,
+ "cipher_text": "F05E231B3894612C49EE000B804EB2A9B8306B508F839D6A5530831D9344AF1C"
+ },
+
+ // Empty plaintext, using a 256-bit key.
+ {
+ "key": "F6D66D6BD52D59BB0796365879EFF886C66DD51A5B6A99744B50590C87A23884",
+ "plain_text": "",
+ "counter": "00FAAC24C1585EF15A43D87500000001",
+ "length": 32,
+ "cipher_text": ""
+ },
+
+ // 32-bit counter wrap-around (manually constructed).
+ //
+ // Starts a 32-bit counter at 0xFFFFFFFF and encrypts 3 blocks worth of data.
+ // The counter will wrap around and take on values of 0 and 1.
+ {
+ "key": "F6D66D6BD52D59BB0796365879EFF886C66DD51A5B6A99744B50590C87A23884",
+ "plain_text": "F05E231B3894612C49EE000B804EB2A9B8306B508F839D6A5530831D9344AF1CC1CF48A89F2FFDD9CF4652E9EFDB72D7",
+ "counter": "00FAAC24C1585EF15A43D875FFFFFFFF",
+ "length": 32,
+ "cipher_text": "2E32E02FF9E69A1D6B78AC4308A67592C5DD5505589B79183D4189619A1467E4319069B0A3BE9AF28EA158E96398CE71"
+ },
+
+ // 1-bit counter wrap-around (manually constructed).
+ //
+ // Starts a 1-bit counter at 1 and encrypts 2 blocks worth of data.
+ {
+ "key": "7691BE035E5020A8AC6E618529F9A0DC",
+ "plain_text": "C05E231B3894612C49EE000B804EB2A6B8306B508F839D6A5530831D9344AF1C",
+ "counter": "00FAAC24C1585EF15A43D875000000FF",
+ "length": 1,
+ "cipher_text": "52334727723A84F4278FB319386CD7B5587DD8B2D9AA394D83EF8A826C4761AA"
+ },
+
+ // 4-bit counter wrap-around (manually constructed).
+ //
+ // Starts a 4-bit counter at 14 and encrypts 3 blocks worth of data.
+ {
+ "key": "7691BE035E5020A8AC6E618529F9A0DC",
+ "plain_text": "C05E231B3894612C49EE000B804EB2A6B8306B508F839D6A5530831D9344AF1C1415161718191A1B1C1D1E1F20212223",
+ "counter": "00FAAC24C1585EF15A43D8750000111E",
+ "length": 4,
+ "cipher_text": "5573894046DEF46162ED54966A22D8F0517B61A0CE7E657A5A5124A7F62AAE149A3C7856711C59D67F34F31374CF7A72"
+ },
+
+ // Same test as above, however the plaintext/ciphertext is not a multiple of block size.
+ {
+ "key": "7691BE035E5020A8AC6E618529F9A0DC",
+ "plain_text": "C05E231B3894612C49EE000B804EB2A6B8306B508F839D6A5530831D9344AF1C1415161718191A1B1C1D1E1F20",
+ "counter": "00FAAC24C1585EF15A43D8750000111E",
+ "length": 4,
+ "cipher_text": "5573894046DEF46162ED54966A22D8F0517B61A0CE7E657A5A5124A7F62AAE149A3C7856711C59D67F34F31374"
+ },
+
+ // 128-bit counter wrap-around (manually constructed).
+ {
+ "key": "7691BE035E5020A8AC6E618529F9A0DC",
+ "plain_text": "C05E231B3894612C49EE000B804EB2A6B8306B508F839D6A5530831D9344AF1C1415161718191A1B1C1D1E1F20212223",
+ "counter": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE",
+ "length": 128,
+ "cipher_text": "D2C49B275BC73814DC90ECE98959041C9A3481F2247E08B0AF5D8DE3F521C9DAF535B0A8156DF9D2370EE7328103C8AD"
+ }
+]
« no previous file with comments | « content/content_tests.gypi ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698