~ubuntu-branches/ubuntu/utopic/nettle/utopic

« back to all changes in this revision

Viewing changes to testsuite/ctr-test.c

  • Committer: Package Import Robot
  • Author(s): Magnus Holmgren
  • Date: 2013-05-07 22:57:14 UTC
  • mfrom: (8.1.8 sid)
  • Revision ID: package-import@ubuntu.com-20130507225714-s331yr8ov53dtt17
Tags: 2.7-2
Tag some (ECC related) symbols that only exist on some architectures.

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
#include "aes.h"
3
3
#include "ctr.h"
4
4
 
5
 
int
 
5
void
6
6
test_main(void)
7
7
{
8
8
  /* From NIST spec 800-38a on AES modes,
12
12
   * F.5  CTR Example Vectors
13
13
   */
14
14
 
 
15
  /* Zero-length data. Exposes bug reported by Tim Kosse, where
 
16
     ctr_crypt increment the ctr when it shouldn't. */
 
17
  test_cipher_ctr(&nettle_aes128,
 
18
                  SHEX("2b7e151628aed2a6abf7158809cf4f3c"),
 
19
                  SHEX(""), SHEX(""),
 
20
                  SHEX("f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff"));
 
21
  
15
22
  /* F.5.1  CTR-AES128.Encrypt */
16
23
  test_cipher_ctr(&nettle_aes128,
17
 
                  HL("2b7e151628aed2a6abf7158809cf4f3c"),
18
 
                  HL("6bc1bee22e409f96e93d7e117393172a"
19
 
                     "ae2d8a571e03ac9c9eb76fac45af8e51"
20
 
                     "30c81c46a35ce411e5fbc1191a0a52ef"
21
 
                     "f69f2445df4f9b17ad2b417be66c3710"),
22
 
                  H("874d6191b620e3261bef6864990db6ce"
23
 
                    "9806f66b7970fdff8617187bb9fffdff"
24
 
                    "5ae4df3edbd5d35e5b4f09020db03eab"
25
 
                    "1e031dda2fbe03d1792170a0f3009cee"),
26
 
                  H("f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff"));
 
24
                  SHEX("2b7e151628aed2a6abf7158809cf4f3c"),
 
25
                  SHEX("6bc1bee22e409f96e93d7e117393172a"
 
26
                       "ae2d8a571e03ac9c9eb76fac45af8e51"
 
27
                       "30c81c46a35ce411e5fbc1191a0a52ef"
 
28
                       "f69f2445df4f9b17ad2b417be66c3710"),
 
29
                  SHEX("874d6191b620e3261bef6864990db6ce"
 
30
                       "9806f66b7970fdff8617187bb9fffdff"
 
31
                       "5ae4df3edbd5d35e5b4f09020db03eab"
 
32
                       "1e031dda2fbe03d1792170a0f3009cee"),
 
33
                  SHEX("f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff"));
27
34
 
28
35
  /* F.5.3  CTR-AES192.Encrypt */
29
36
  test_cipher_ctr(&nettle_aes192,
30
 
                  HL("8e73b0f7da0e6452c810f32b809079e562f8ead2522c6b7b"),
31
 
                  HL("6bc1bee22e409f96e93d7e117393172a"
32
 
                     "ae2d8a571e03ac9c9eb76fac45af8e51"
33
 
                     "30c81c46a35ce411e5fbc1191a0a52ef"
34
 
                     "f69f2445df4f9b17ad2b417be66c3710"),
35
 
                  H("1abc932417521ca24f2b0459fe7e6e0b"
36
 
                     "090339ec0aa6faefd5ccc2c6f4ce8e94"
37
 
                     "1e36b26bd1ebc670d1bd1d665620abf7"
38
 
                     "4f78a7f6d29809585a97daec58c6b050"),
39
 
                  H("f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff"));
 
37
                  SHEX("8e73b0f7da0e6452c810f32b809079e562f8ead2522c6b7b"),
 
38
                  SHEX("6bc1bee22e409f96e93d7e117393172a"
 
39
                       "ae2d8a571e03ac9c9eb76fac45af8e51"
 
40
                       "30c81c46a35ce411e5fbc1191a0a52ef"
 
41
                       "f69f2445df4f9b17ad2b417be66c3710"),
 
42
                  SHEX("1abc932417521ca24f2b0459fe7e6e0b"
 
43
                       "090339ec0aa6faefd5ccc2c6f4ce8e94"
 
44
                       "1e36b26bd1ebc670d1bd1d665620abf7"
 
45
                       "4f78a7f6d29809585a97daec58c6b050"),
 
46
                  SHEX("f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff"));
40
47
 
41
48
  /* F.5.5  CTR-AES256.Encrypt */
42
49
  test_cipher_ctr(&nettle_aes256,
43
 
                  HL("603deb1015ca71be2b73aef0857d7781"
44
 
                     "1f352c073b6108d72d9810a30914dff4"),
45
 
                  HL("6bc1bee22e409f96e93d7e117393172a"
46
 
                     "ae2d8a571e03ac9c9eb76fac45af8e51"
47
 
                     "30c81c46a35ce411e5fbc1191a0a52ef"
48
 
                     "f69f2445df4f9b17ad2b417be66c3710"),
49
 
                  H("601ec313775789a5b7a7f504bbf3d228"
50
 
                     "f443e3ca4d62b59aca84e990cacaf5c5"
51
 
                     "2b0930daa23de94ce87017ba2d84988d"
52
 
                     "dfc9c58db67aada613c2dd08457941a6"),
53
 
                  H("f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff"));
54
 
 
55
 
  SUCCESS();
 
50
                  SHEX("603deb1015ca71be2b73aef0857d7781"
 
51
                       "1f352c073b6108d72d9810a30914dff4"),
 
52
                  SHEX("6bc1bee22e409f96e93d7e117393172a"
 
53
                       "ae2d8a571e03ac9c9eb76fac45af8e51"
 
54
                       "30c81c46a35ce411e5fbc1191a0a52ef"
 
55
                       "f69f2445df4f9b17ad2b417be66c3710"),
 
56
                  SHEX("601ec313775789a5b7a7f504bbf3d228"
 
57
                       "f443e3ca4d62b59aca84e990cacaf5c5"
 
58
                       "2b0930daa23de94ce87017ba2d84988d"
 
59
                       "dfc9c58db67aada613c2dd08457941a6"),
 
60
                  SHEX("f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff"));
56
61
}
57
62
 
58
63
/*