1
+ Rebol [
2
+ Title: "Rebol3 AES test script"
3
+ Author: "Oldes, Peter W A Wood"
4
+ File: %aes-test.r3
5
+ Tabs: 4
6
+ Needs: [%../quick-test-module.r3 ]
7
+ ]
8
+
9
+ ~~~start-file~~~ "AES"
10
+
11
+ ===start-group=== "The Advanced Encryption Standard (AES) test vectors"
12
+
13
+ --test-- "AES-128"
14
+
15
+ foreach [key iv plain cipher] [
16
+ #{ 2b7e151628aed2a6abf7158809cf4f3c }
17
+ #{ 000102030405060708090A0B0C0D0E0F }
18
+ #{ 6bc1bee22e409f96e93d7e117393172a }
19
+ #{ 7649abac8119b246cee98e9b12e9197d }
20
+
21
+ #{ 2b7e151628aed2a6abf7158809cf4f3c }
22
+ #{ 7649ABAC8119B246CEE98E9B12E9197D }
23
+ #{ ae2d8a571e03ac9c9eb76fac45af8e51 }
24
+ #{ 5086cb9b507219ee95db113a917678b2 }
25
+
26
+
27
+ #{ 2b7e151628aed2a6abf7158809cf4f3c }
28
+ #{ 5086CB9B507219EE95DB113A917678B2 }
29
+ #{ 30c81c46a35ce411e5fbc1191a0a52ef }
30
+ #{ 73bed6b8e3c1743b7116e69e22229516 }
31
+
32
+ #{ 2b7e151628aed2a6abf7158809cf4f3c }
33
+ #{ 73BED6B8E3C1743B7116E69E22229516 }
34
+ #{ f69f2445df4f9b17ad2b417be66c3710 }
35
+ #{ 3ff1caa1681fac09120eca307586e1a7 }
36
+
37
+ ; #{8e73b0f7da0e6452c810f32b809079e562f8ead2522c6b7b}
38
+ ; #{000102030405060708090A0B0C0D0E0F}
39
+ ; #{6bc1bee22e409f96e93d7e117393172a}
40
+ ; #{4f021db243bc633d7178183a9fa071e8}
41
+ ;
42
+ ; #{8e73b0f7da0e6452c810f32b809079e562f8ead2522c6b7b}
43
+ ; #{4F021DB243BC633D7178183A9FA071E8}
44
+ ; #{ae2d8a571e03ac9c9eb76fac45af8e51}
45
+ ; #{b4d9ada9ad7dedf4e5e738763f69145a}
46
+ ;
47
+ ; #{8e73b0f7da0e6452c810f32b809079e562f8ead2522c6b7b}
48
+ ; #{B4D9ADA9AD7DEDF4E5E738763F69145A}
49
+ ; #{30c81c46a35ce411e5fbc1191a0a52ef}
50
+ ; #{571b242012fb7ae07fa9baac3df102e0}
51
+ ;
52
+ ; #{8e73b0f7da0e6452c810f32b809079e562f8ead2522c6b7b}
53
+ ; #{571B242012FB7AE07FA9BAAC3DF102E0}
54
+ ; #{f69f2445df4f9b17ad2b417be66c3710}
55
+ ; #{08b0e27988598881d920a9e64f5615cd}
56
+
57
+ #{ 603deb1015ca71be2b73aef0857d77811f352c073b6108d72d9810a30914dff4 }
58
+ #{ 000102030405060708090A0B0C0D0E0F }
59
+ #{ 6bc1bee22e409f96e93d7e117393172a }
60
+ #{ f58c4c04d6e5f1ba779eabfb5f7bfbd6 }
61
+
62
+ #{ 603deb1015ca71be2b73aef0857d77811f352c073b6108d72d9810a30914dff4 }
63
+ #{ F58C4C04D6E5F1BA779EABFB5F7BFBD6 }
64
+ #{ ae2d8a571e03ac9c9eb76fac45af8e51 }
65
+ #{ 9cfc4e967edb808d679f777bc6702c7d }
66
+
67
+ #{ 603deb1015ca71be2b73aef0857d77811f352c073b6108d72d9810a30914dff4 }
68
+ #{ 9CFC4E967EDB808D679F777BC6702C7D }
69
+ #{ 30c81c46a35ce411e5fbc1191a0a52ef }
70
+ #{ 39f23369a9d9bacfa530e26304231461 }
71
+
72
+ #{ 603deb1015ca71be2b73aef0857d77811f352c073b6108d72d9810a30914dff4 }
73
+ #{ 39F23369A9D9BACFA530E26304231461 }
74
+ #{ f69f2445df4f9b17ad2b417be66c3710 }
75
+ #{ b2eb05e2c39be9fcda6c19078c6a9d1b }
76
+ ][
77
+ --assert handle? k: aes/key key iv
78
+ --assert cipher = aes/stream k plain
79
+ --assert aes/stream k none ;release resources
80
+
81
+ ]
82
+
83
+ ===end-group===
84
+
85
+ ~~~end-file~~~
0 commit comments