summaryrefslogtreecommitdiff
path: root/auto_tests/encryptsave_test.c
diff options
context:
space:
mode:
authorDubslow <bunslow@gmail.com>2015-03-31 21:16:04 -0500
committerDubslow <bunslow@gmail.com>2015-03-31 21:16:04 -0500
commitf7beee495e9c3199ecbae91fde2e92f1698f48b2 (patch)
tree0ca72da3664401a854180bd976e943e4bfc5ea1b /auto_tests/encryptsave_test.c
parent9b66c57bd0ec8d7e89b7fa751d83ffabd1ce2e75 (diff)
Make keys into a struct for more programmer safety
Diffstat (limited to 'auto_tests/encryptsave_test.c')
-rw-r--r--auto_tests/encryptsave_test.c24
1 files changed, 12 insertions, 12 deletions
diff --git a/auto_tests/encryptsave_test.c b/auto_tests/encryptsave_test.c
index 07b0c4d4..a239bcee 100644
--- a/auto_tests/encryptsave_test.c
+++ b/auto_tests/encryptsave_test.c
@@ -93,19 +93,19 @@ START_TEST(test_save_friend)
93 size = tox_get_savedata_size(tox3); 93 size = tox_get_savedata_size(tox3);
94 uint8_t data2[size]; 94 uint8_t data2[size];
95 tox_get_savedata(tox3, data2); 95 tox_get_savedata(tox3, data2);
96 uint8_t key[32 + crypto_box_BEFORENMBYTES]; 96 TOX_PASS_KEY key;
97 memcpy(key, salt, 32); 97 memcpy(key.salt, salt, 32);
98 memcpy(key + 32, known_key2, crypto_box_BEFORENMBYTES); 98 memcpy(key.key, known_key2, crypto_box_BEFORENMBYTES);
99 size2 = size + TOX_PASS_ENCRYPTION_EXTRA_LENGTH; 99 size2 = size + TOX_PASS_ENCRYPTION_EXTRA_LENGTH;
100 uint8_t encdata2[size2]; 100 uint8_t encdata2[size2];
101 ret = tox_pass_key_encrypt(data2, size, key, encdata2, &error1); 101 ret = tox_pass_key_encrypt(data2, size, &key, encdata2, &error1);
102 ck_assert_msg(ret, "failed to key encrypt %u", error1); 102 ck_assert_msg(ret, "failed to key encrypt %u", error1);
103 ck_assert_msg(tox_is_data_encrypted(encdata2), "magic number the second missing"); 103 ck_assert_msg(tox_is_data_encrypted(encdata2), "magic number the second missing");
104 104
105 uint8_t out1[size], out2[size]; 105 uint8_t out1[size], out2[size];
106 ret = tox_pass_decrypt(encdata2, size2, pw, pwlen, out1, &err3); 106 ret = tox_pass_decrypt(encdata2, size2, pw, pwlen, out1, &err3);
107 ck_assert_msg(ret, "failed to pw decrypt %u", err3); 107 ck_assert_msg(ret, "failed to pw decrypt %u", err3);
108 ret = tox_pass_key_decrypt(encdata2, size2, key, out2, &err3); 108 ret = tox_pass_key_decrypt(encdata2, size2, &key, out2, &err3);
109 ck_assert_msg(ret, "failed to key decrypt %u", err3); 109 ck_assert_msg(ret, "failed to key decrypt %u", err3);
110 ck_assert_msg(memcmp(out1, out2, size) == 0, "differing output data"); 110 ck_assert_msg(memcmp(out1, out2, size) == 0, "differing output data");
111 111
@@ -130,13 +130,13 @@ START_TEST(test_keys)
130 TOX_ERR_ENCRYPTION encerr; 130 TOX_ERR_ENCRYPTION encerr;
131 TOX_ERR_DECRYPTION decerr; 131 TOX_ERR_DECRYPTION decerr;
132 TOX_ERR_KEY_DERIVATION keyerr; 132 TOX_ERR_KEY_DERIVATION keyerr;
133 uint8_t key[TOX_PASS_KEY_LENGTH]; 133 TOX_PASS_KEY key;
134 bool ret = tox_derive_key_from_pass("123qweasdzxc", 12, key, &keyerr); 134 bool ret = tox_derive_key_from_pass("123qweasdzxc", 12, &key, &keyerr);
135 ck_assert_msg(ret, "generic failure 1: %u", keyerr); 135 ck_assert_msg(ret, "generic failure 1: %u", keyerr);
136 uint8_t *string = "No Patrick, mayonnaise is not an instrument."; // 44 136 uint8_t *string = "No Patrick, mayonnaise is not an instrument."; // 44
137 137
138 uint8_t encrypted[44 + TOX_PASS_ENCRYPTION_EXTRA_LENGTH]; 138 uint8_t encrypted[44 + TOX_PASS_ENCRYPTION_EXTRA_LENGTH];
139 ret = tox_pass_key_encrypt(string, 44, key, encrypted, &encerr); 139 ret = tox_pass_key_encrypt(string, 44, &key, encrypted, &encerr);
140 ck_assert_msg(ret, "generic failure 2: %u", encerr); 140 ck_assert_msg(ret, "generic failure 2: %u", encerr);
141 141
142 uint8_t encrypted2[44 + TOX_PASS_ENCRYPTION_EXTRA_LENGTH]; 142 uint8_t encrypted2[44 + TOX_PASS_ENCRYPTION_EXTRA_LENGTH];
@@ -146,7 +146,7 @@ START_TEST(test_keys)
146 uint8_t out1[44 + TOX_PASS_ENCRYPTION_EXTRA_LENGTH]; 146 uint8_t out1[44 + TOX_PASS_ENCRYPTION_EXTRA_LENGTH];
147 uint8_t out2[44 + TOX_PASS_ENCRYPTION_EXTRA_LENGTH]; 147 uint8_t out2[44 + TOX_PASS_ENCRYPTION_EXTRA_LENGTH];
148 148
149 ret = tox_pass_key_decrypt(encrypted, 44 + TOX_PASS_ENCRYPTION_EXTRA_LENGTH, key, out1, &decerr); 149 ret = tox_pass_key_decrypt(encrypted, 44 + TOX_PASS_ENCRYPTION_EXTRA_LENGTH, &key, out1, &decerr);
150 ck_assert_msg(ret, "generic failure 4: %u", decerr); 150 ck_assert_msg(ret, "generic failure 4: %u", decerr);
151 ck_assert_msg(memcmp(out1, string, 44) == 0, "decryption 1 failed"); 151 ck_assert_msg(memcmp(out1, string, 44) == 0, "decryption 1 failed");
152 152
@@ -161,10 +161,10 @@ START_TEST(test_keys)
161 161
162 uint8_t salt[TOX_PASS_SALT_LENGTH]; 162 uint8_t salt[TOX_PASS_SALT_LENGTH];
163 ck_assert_msg(tox_get_salt(encrypted, salt), "couldn't get salt"); 163 ck_assert_msg(tox_get_salt(encrypted, salt), "couldn't get salt");
164 uint8_t key2[TOX_PASS_KEY_LENGTH]; 164 TOX_PASS_KEY key2;
165 ret = tox_derive_key_with_salt("123qweasdzxc", 12, salt, key2, &keyerr); 165 ret = tox_derive_key_with_salt("123qweasdzxc", 12, salt, &key2, &keyerr);
166 ck_assert_msg(ret, "generic failure 7: %u", keyerr); 166 ck_assert_msg(ret, "generic failure 7: %u", keyerr);
167 ck_assert_msg(0 == memcmp(key, key2, TOX_PASS_KEY_LENGTH), "salt comparison failed"); 167 ck_assert_msg(0 == memcmp(&key, &key2, sizeof(TOX_PASS_KEY)), "salt comparison failed");
168} 168}
169END_TEST 169END_TEST
170 170