Apply %restore_fcommon macro for Address Sanitizer
[platform/upstream/nettle.git] / testsuite / eax-test.c
1 #include "testutils.h"
2 #include "nettle-internal.h"
3
4 void
5 test_main(void)
6 {
7   /* From the EAX specification,
8      http://www.cs.ucdavis.edu/~rogaway/papers/eax.pdf */
9   test_aead(&nettle_eax_aes128, NULL,
10             SHEX("233952DEE4D5ED5F9B9C6D6FF80FF478"),   /* key */
11             SHEX("6BFB914FD07EAE6B"),                   /* auth data */
12             SHEX(""),                                   /* plaintext */
13             SHEX(""),                                   /* ciphertext */
14             SHEX("62EC67F9C3A4A407FCB2A8C49031A8B3"),   /* nonce */
15             SHEX("E037830E8389F27B025A2D6527E79D01"));  /* tag */
16
17   test_aead(&nettle_eax_aes128, NULL,
18             SHEX("91945D3F4DCBEE0BF45EF52255F095A4"),
19             SHEX("FA3BFD4806EB53FA"),
20             SHEX("F7FB"),
21             SHEX("19DD"),
22             SHEX("BECAF043B0A23D843194BA972C66DEBD"),
23             SHEX("5C4C9331049D0BDAB0277408F67967E5"));
24   
25   test_aead(&nettle_eax_aes128, NULL,
26             SHEX("01F74AD64077F2E704C0F60ADA3DD523"),
27             SHEX("234A3463C1264AC6"),
28             SHEX("1A47CB4933"),
29             SHEX("D851D5BAE0"),
30             SHEX("70C3DB4F0D26368400A10ED05D2BFF5E"),
31             SHEX("3A59F238A23E39199DC9266626C40F80"));
32
33   test_aead(&nettle_eax_aes128, NULL,
34             SHEX("D07CF6CBB7F313BDDE66B727AFD3C5E8"),
35             SHEX("33CCE2EABFF5A79D"),
36             SHEX("481C9E39B1"),
37             SHEX("632A9D131A"),
38             SHEX("8408DFFF3C1A2B1292DC199E46B7D617"),
39             SHEX("D4C168A4225D8E1FF755939974A7BEDE"));
40
41   test_aead(&nettle_eax_aes128, NULL,
42             SHEX("35B6D0580005BBC12B0587124557D2C2"),
43             SHEX("AEB96EAEBE2970E9"),
44             SHEX("40D0C07DA5E4"),
45             SHEX("071DFE16C675"),
46             SHEX("FDB6B06676EEDC5C61D74276E1F8E816"),
47             SHEX("CB0677E536F73AFE6A14B74EE49844DD"));
48
49   test_aead(&nettle_eax_aes128, NULL,
50             SHEX("BD8E6E11475E60B268784C38C62FEB22"),
51             SHEX("D4482D1CA78DCE0F"),
52             SHEX("4DE3B35C3FC039245BD1FB7D"),
53             SHEX("835BB4F15D743E350E728414"),
54             SHEX("6EAC5C93072D8E8513F750935E46DA1B"),
55             SHEX("ABB8644FD6CCB86947C5E10590210A4F"));
56
57   test_aead(&nettle_eax_aes128, NULL,
58             SHEX("7C77D6E813BED5AC98BAA417477A2E7D"),
59             SHEX("65D2017990D62528"),
60             SHEX("8B0A79306C9CE7ED99DAE4F87F8DD61636"),
61             SHEX("02083E3979DA014812F59F11D52630DA30"),
62             SHEX("1A8C98DCD73D38393B2BF1569DEEFC19"),
63             SHEX("137327D10649B0AA6E1C181DB617D7F2"));
64   
65   test_aead(&nettle_eax_aes128, NULL,
66             SHEX("5FFF20CAFAB119CA2FC73549E20F5B0D"),
67             SHEX("54B9F04E6A09189A"),
68             SHEX("1BDA122BCE8A8DBAF1877D962B8592DD2D56"),
69             SHEX("2EC47B2C4954A489AFC7BA4897EDCDAE8CC3"),
70             SHEX("DDE59B97D722156D4D9AFF2BC7559826"),
71             SHEX("3B60450599BD02C96382902AEF7F832A"));
72   
73   test_aead(&nettle_eax_aes128, NULL,
74             SHEX("A4A4782BCFFD3EC5E7EF6D8C34A56123"),
75             SHEX("899A175897561D7E"),
76             SHEX("6CF36720872B8513F6EAB1A8A44438D5EF11"),
77             SHEX("0DE18FD0FDD91E7AF19F1D8EE8733938B1E8"),
78             SHEX("B781FCF2F75FA5A8DE97A9CA48E522EC"),
79             SHEX("E7F6D2231618102FDB7FE55FF1991700"));
80   
81   test_aead(&nettle_eax_aes128, NULL,
82             SHEX("8395FCF1E95BEBD697BD010BC766AAC3"),
83             SHEX("126735FCC320D25A"),
84             SHEX("CA40D7446E545FFAED3BD12A740A659FFBBB3CEAB7"),
85             SHEX("CB8920F87A6C75CFF39627B56E3ED197C552D295A7"),
86             SHEX("22E7ADD93CFC6393C57EC0B3C17D6B44"),
87             SHEX("CFC46AFC253B4652B1AF3795B124AB6E"));
88 }