summaryrefslogtreecommitdiff
path: root/toxencryptsave
diff options
context:
space:
mode:
authoriphydf <iphydf@users.noreply.github.com>2016-12-19 02:47:42 +0000
committeriphydf <iphydf@users.noreply.github.com>2016-12-22 10:26:59 +0000
commitce29c8e7ec91d95167b2dea3aee9fd1ae1aac254 (patch)
treea288df55c44e8edf816e6abbde19a70faef73394 /toxencryptsave
parent7122d2e862e028a730478d88cd61557fbed16ebf (diff)
Wrap all sodium/nacl functions in crypto_core.c.
Diffstat (limited to 'toxencryptsave')
-rw-r--r--toxencryptsave/toxencryptsave.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/toxencryptsave/toxencryptsave.c b/toxencryptsave/toxencryptsave.c
index 8d4cf6fa..360952ad 100644
--- a/toxencryptsave/toxencryptsave.c
+++ b/toxencryptsave/toxencryptsave.c
@@ -34,13 +34,14 @@
34#include <crypto_hash_sha256.h> 34#include <crypto_hash_sha256.h>
35#include "crypto_pwhash_scryptsalsa208sha256/crypto_pwhash_scryptsalsa208sha256.h" 35#include "crypto_pwhash_scryptsalsa208sha256/crypto_pwhash_scryptsalsa208sha256.h"
36#endif 36#endif
37#include <sodium.h>
37 38
38#if TOX_PASS_SALT_LENGTH != crypto_pwhash_scryptsalsa208sha256_SALTBYTES 39#if TOX_PASS_SALT_LENGTH != crypto_pwhash_scryptsalsa208sha256_SALTBYTES
39#error TOX_PASS_SALT_LENGTH is assumed to be equal to crypto_pwhash_scryptsalsa208sha256_SALTBYTES 40#error TOX_PASS_SALT_LENGTH is assumed to be equal to crypto_pwhash_scryptsalsa208sha256_SALTBYTES
40#endif 41#endif
41 42
42#if TOX_PASS_KEY_LENGTH != crypto_box_KEYBYTES 43#if TOX_PASS_KEY_LENGTH != CRYPTO_SHARED_KEY_SIZE
43#error TOX_PASS_KEY_LENGTH is assumed to be equal to crypto_box_KEYBYTES 44#error TOX_PASS_KEY_LENGTH is assumed to be equal to CRYPTO_SHARED_KEY_SIZE
44#endif 45#endif
45 46
46#if TOX_PASS_ENCRYPTION_EXTRA_LENGTH != (crypto_box_MACBYTES + crypto_box_NONCEBYTES + crypto_pwhash_scryptsalsa208sha256_SALTBYTES + TOX_ENC_SAVE_MAGIC_LENGTH) 47#if TOX_PASS_ENCRYPTION_EXTRA_LENGTH != (crypto_box_MACBYTES + crypto_box_NONCEBYTES + crypto_pwhash_scryptsalsa208sha256_SALTBYTES + TOX_ENC_SAVE_MAGIC_LENGTH)
@@ -126,7 +127,7 @@ bool tox_pass_key_derive_with_salt(Tox_Pass_Key *out_key, const uint8_t *passphr
126 uint8_t passkey[crypto_hash_sha256_BYTES]; 127 uint8_t passkey[crypto_hash_sha256_BYTES];
127 crypto_hash_sha256(passkey, passphrase, pplength); 128 crypto_hash_sha256(passkey, passphrase, pplength);
128 129
129 uint8_t key[crypto_box_KEYBYTES]; 130 uint8_t key[CRYPTO_SHARED_KEY_SIZE];
130 131
131 /* Derive a key from the password */ 132 /* Derive a key from the password */
132 /* http://doc.libsodium.org/key_derivation/README.html */ 133 /* http://doc.libsodium.org/key_derivation/README.html */
@@ -143,7 +144,7 @@ bool tox_pass_key_derive_with_salt(Tox_Pass_Key *out_key, const uint8_t *passphr
143 144
144 sodium_memzero(passkey, crypto_hash_sha256_BYTES); /* wipe plaintext pw */ 145 sodium_memzero(passkey, crypto_hash_sha256_BYTES); /* wipe plaintext pw */
145 memcpy(out_key->salt, salt, crypto_pwhash_scryptsalsa208sha256_SALTBYTES); 146 memcpy(out_key->salt, salt, crypto_pwhash_scryptsalsa208sha256_SALTBYTES);
146 memcpy(out_key->key, key, crypto_box_KEYBYTES); 147 memcpy(out_key->key, key, CRYPTO_SHARED_KEY_SIZE);
147 SET_ERROR_PARAMETER(error, TOX_ERR_KEY_DERIVATION_OK); 148 SET_ERROR_PARAMETER(error, TOX_ERR_KEY_DERIVATION_OK);
148 return 1; 149 return 1;
149} 150}