cfb8: Fix decrypt path
[gd/nettle] / testsuite / pss-mgf1-test.c
1 #include "testutils.h"
2 #include "pss-mgf1.h"
3
4 void
5 test_main(void)
6 {
7   struct sha1_ctx sha1ctx;
8   struct sha256_ctx sha256ctx;
9   const struct tstring *seed, *expected;
10   uint8_t mask[120];
11
12   /* From ftp://ftp.rsasecurity.com/pub/pkcs/pkcs-1/pkcs-1v2-1d2-vec.zip */
13   seed = SHEX("df1a896f9d8bc816d97cd7a2c43bad54"
14               "6fbe8cfe");
15   expected = SHEX("66e4672e836ad121ba244bed6576b867d9a447c28a6e66a5b87dee"
16                   "7fbc7e65af5057f86fae8984d9ba7f969ad6fe02a4d75f7445fefd"
17                   "d85b6d3a477c28d24ba1e3756f792dd1dce8ca94440ecb5279ecd3"
18                   "183a311fc89739a96643136e8b0f465e87a4535cd4c59b10028d");
19   sha1_init(&sha1ctx);
20   sha1_update(&sha1ctx, seed->length, seed->data);
21   pss_mgf1(&sha1ctx, &nettle_sha1, expected->length, mask);
22   ASSERT(MEMEQ (expected->length, mask, expected->data));
23
24   /* Test with our own data.  */
25   seed = SDATA("abc");
26   expected = SHEX("cf2db1ac9867debdf8ce91f99f141e5544bf26ca36b3fd4f8e4035"
27                   "eec42cab0d46c386ebccef82ba0bb0b095aaa5548b03cdff695187"
28                   "1c6fb505af68af688332f885d324a47d2145a3d8392c37978d7dc9"
29                   "84c95728950c4cf3de6becc59e60ea506951bd40e6de3863095064"
30                   "3ab2edbb47dc66cb54beb2d1");
31
32   sha256_init(&sha256ctx);
33   sha256_update(&sha256ctx, seed->length, seed->data);
34   pss_mgf1(&sha256ctx, &nettle_sha256, expected->length, mask);
35   ASSERT(MEMEQ (expected->length, mask, expected->data));
36 }