aboutsummaryrefslogtreecommitdiff
path: root/test_crypto.c
diff options
context:
space:
mode:
Diffstat (limited to 'test_crypto.c')
-rw-r--r--test_crypto.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/test_crypto.c b/test_crypto.c
index a9acdde..5f72c71 100644
--- a/test_crypto.c
+++ b/test_crypto.c
@@ -68,6 +68,34 @@ test_smc_3d_array ()
int
+test_serialization ()
+{
+ gcry_mpi_point_t oldp = gcry_mpi_point_new (0);
+ gcry_mpi_point_t newp = gcry_mpi_point_new (0);
+ gcry_mpi_t oldi = gcry_mpi_new (0);
+ gcry_mpi_t newi = gcry_mpi_new (0);
+ struct ec_mpi serp;
+ struct ec_mpi seri;
+
+ ec_keypair_create (oldp, oldi);
+
+ ec_point_serialize (&serp, oldp);
+ mpi_serialize (&seri, oldi);
+
+ ec_point_parse (newp, &serp);
+ mpi_parse (newi, &seri);
+
+ check (!ec_point_cmp (oldp, newp), "serialization changed point");
+ check (!gcry_mpi_cmp (oldi, newi), "serialization changed mpi");
+
+ gcry_mpi_point_release (oldp);
+ gcry_mpi_point_release (newp);
+ gcry_mpi_release (oldi);
+ gcry_mpi_release (newi);
+}
+
+
+int
test_smc_zkp_dl ()
{
gcry_mpi_t c = gcry_mpi_new (0);
@@ -210,6 +238,7 @@ main (int argc, char *argv[])
for (tests_run = 0; tests_run < repeat; tests_run++)
{
+ run (test_serialization);
run (test_smc_zkp_dl);
run (test_smc_zkp_2dle);
run (test_smc_zkp_0og);