ebc208a3160a773b7693a559b5069549ace9d37f
[trex.git] /
1 #include "api.h"
2 #include "utils.h"
3
4 int crypto_box(
5   unsigned char *c,
6   const unsigned char *m,unsigned long long mlen,
7   const unsigned char *n,
8   const unsigned char *pk,
9   const unsigned char *sk
10 )
11 {
12   unsigned char k[crypto_box_BEFORENMBYTES];
13   int           ret;
14
15   crypto_box_beforenm(k,pk,sk);
16   ret = crypto_box_afternm(c,m,mlen,n,k);
17   sodium_memzero(k, sizeof k);
18
19   return ret;
20 }
21
22 int crypto_box_open(
23   unsigned char *m,
24   const unsigned char *c,unsigned long long clen,
25   const unsigned char *n,
26   const unsigned char *pk,
27   const unsigned char *sk
28 )
29 {
30   unsigned char k[crypto_box_BEFORENMBYTES];
31   int           ret;
32
33   crypto_box_beforenm(k,pk,sk);
34   ret = crypto_box_open_afternm(m,c,clen,n,k);
35   sodium_memzero(k, sizeof k);
36
37   return ret;
38 }