aboutsummaryrefslogtreecommitdiff
path: root/src/util/crypto_abe.c
diff options
context:
space:
mode:
authorSchanzenbach, Martin <mschanzenbach@posteo.de>2017-07-08 20:14:49 +0200
committerSchanzenbach, Martin <mschanzenbach@posteo.de>2017-07-08 20:14:49 +0200
commitf3a84ebcd657b369792667bb1c1bd5ca2e53ee35 (patch)
tree59352860e877fdca8c5bf8032ea5492e86231d31 /src/util/crypto_abe.c
parent9d601af559af4e7ad7ed818da499fa22ebfa5ae6 (diff)
downloadgnunet-f3a84ebcd657b369792667bb1c1bd5ca2e53ee35.tar.gz
gnunet-f3a84ebcd657b369792667bb1c1bd5ca2e53ee35.zip
-add serialization
Diffstat (limited to 'src/util/crypto_abe.c')
-rw-r--r--src/util/crypto_abe.c48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/util/crypto_abe.c b/src/util/crypto_abe.c
index d004220d1..62b9b7108 100644
--- a/src/util/crypto_abe.c
+++ b/src/util/crypto_abe.c
@@ -303,3 +303,51 @@ GNUNET_CRYPTO_cpabe_decrypt (const void *block,
303 303
304 return pt_size; 304 return pt_size;
305} 305}
306
307ssize_t
308GNUNET_CRYPTO_cpabe_serialize_key (struct GNUNET_CRYPTO_AbeKey *key,
309 void **result)
310{
311 ssize_t len;
312
313 len = key->pub->len + key->prv->len + 12;
314 write_cpabe (result, key->pub, len, key->prv);
315
316 return len;
317}
318
319struct GNUNET_CRYPTO_AbeKey*
320GNUNET_CRYPTO_cpabe_deserialize_key (void *data,
321 size_t len)
322{
323 struct GNUNET_CRYPTO_AbeKey *key;
324
325 key = GNUNET_new (struct GNUNET_CRYPTO_AbeKey);
326 read_cpabe (data, &key->pub, &key->prv);
327
328 return key;
329}
330
331ssize_t
332GNUNET_CRYPTO_cpabe_serialize_master_key (struct GNUNET_CRYPTO_AbeMasterKey *key,
333 void **result)
334{
335 ssize_t len;
336
337 len = key->pub->len + key->msk->len + 12;
338 write_cpabe (result, key->pub, len, key->msk);
339
340 return len;
341}
342
343struct GNUNET_CRYPTO_AbeMasterKey*
344GNUNET_CRYPTO_cpabe_deserialize_master_key (void *data,
345 size_t len)
346{
347 struct GNUNET_CRYPTO_AbeMasterKey *key;
348
349 key = GNUNET_new (struct GNUNET_CRYPTO_AbeMasterKey);
350 read_cpabe (data, &key->pub, &key->msk);
351
352 return key;
353}