aboutsummaryrefslogtreecommitdiff
path: root/libcmix-crypto/ed25519/ed25519.c
diff options
context:
space:
mode:
authorDennis Brentjes <d.brentjes@gmail.com>2017-02-11 14:48:52 +0100
committerDennis Brentjes <d.brentjes@gmail.com>2017-02-11 17:54:40 +0100
commit623dffe2c054d1639dbf9c8f21ddfb088c7950fb (patch)
treef8159c5b3cf9872f9b271d03ad5a4b65ecec19b8 /libcmix-crypto/ed25519/ed25519.c
parentb229dc91d8825689c5e66264b462ce01398e621e (diff)
downloadcmix-623dffe2c054d1639dbf9c8f21ddfb088c7950fb.tar.gz
cmix-623dffe2c054d1639dbf9c8f21ddfb088c7950fb.tar.bz2
cmix-623dffe2c054d1639dbf9c8f21ddfb088c7950fb.zip
Working Ed25519 Implementation of libcmix.
Diffstat (limited to 'libcmix-crypto/ed25519/ed25519.c')
-rw-r--r--libcmix-crypto/ed25519/ed25519.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/libcmix-crypto/ed25519/ed25519.c b/libcmix-crypto/ed25519/ed25519.c
new file mode 100644
index 0000000..835edfa
--- /dev/null
+++ b/libcmix-crypto/ed25519/ed25519.c
@@ -0,0 +1,36 @@
+
+#include "ed25519.h"
+
+struct Api get_ed25519_implementation()
+{
+ ed25519_initialize();
+ return (struct Api) {
+ .initialize = ed25519_initialize,
+ .create_keypair = ed25519_create_keypair,
+ .free_keypair = ed25519_delete_keypair,
+ .element_to_array = ed25519_element_to_array,
+ .free_buffer = ed25519_free_buffer,
+ .array_to_element = ed25519_array_to_element,
+ .message_to_element = ed25519_message_to_element,
+ .element_to_message = ed25519_element_to_message,
+ .get_pub_key_hash = ed25519_get_pub_key_hash,
+ .get_pub_key_hash_length = ed25519_get_pub_key_hash_length,
+ .get_group_element = ed25519_get_group_element,
+ .get_group_element_array_size = ed25519_get_group_element_array_size,
+ .get_message_size = ed25519_get_message_size,
+ .free_group_element = ed25519_delete_group_element,
+ .get_key_exchange_value = ed25519_get_key_exchange_value,
+ .combine = ed25519_combine,
+ .uncombine = ed25519_uncombine,
+ .get_decryption_share = ed25519_get_decryption_share,
+ .add_public_share = ed25519_add_public_share,
+ .derive_shared_key = ed25519_derive_shared_key,
+ .free_shared_key = ed25519_delete_shared_key,
+ .encrypt = ed25519_encrypt,
+ .invert = ed25519_invert,
+ .get_uniform_int = ed25519_get_uniform_int,
+ .deinitialize = ed25519_deinitialize
+ };
+}
+
+ImplementationGetter get_implementation = &get_ed25519_implementation;