aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/github.com/tangerine-network/mcl/test/paillier_test.cpp
diff options
context:
space:
mode:
authorWei-Ning Huang <w@byzantine-lab.io>2019-06-23 15:39:23 +0800
committerWei-Ning Huang <w@byzantine-lab.io>2019-09-17 16:57:30 +0800
commite6f5201b178f40b516ffe7b98757df25f8aee028 (patch)
tree982d6281ac9670d0ad451ca6bbd0677488b52344 /vendor/github.com/tangerine-network/mcl/test/paillier_test.cpp
parentf6e06ac35033f9e52b6b2e3ebfe623c23a39c338 (diff)
downloadgo-tangerine-e6f5201b178f40b516ffe7b98757df25f8aee028.tar.gz
go-tangerine-e6f5201b178f40b516ffe7b98757df25f8aee028.tar.zst
go-tangerine-e6f5201b178f40b516ffe7b98757df25f8aee028.zip
import: switch consensus core to gitlab.com/tangerine-network/tangerine-consensus
Diffstat (limited to 'vendor/github.com/tangerine-network/mcl/test/paillier_test.cpp')
-rw-r--r--vendor/github.com/tangerine-network/mcl/test/paillier_test.cpp24
1 files changed, 24 insertions, 0 deletions
diff --git a/vendor/github.com/tangerine-network/mcl/test/paillier_test.cpp b/vendor/github.com/tangerine-network/mcl/test/paillier_test.cpp
new file mode 100644
index 000000000..31d2b26fc
--- /dev/null
+++ b/vendor/github.com/tangerine-network/mcl/test/paillier_test.cpp
@@ -0,0 +1,24 @@
+#include <cybozu/test.hpp>
+#include <mcl/paillier.hpp>
+
+CYBOZU_TEST_AUTO(paillier)
+{
+ using namespace mcl::paillier;
+ SecretKey sec;
+ sec.init(2048);
+ PublicKey pub;
+ sec.getPublicKey(pub);
+ mpz_class m1("12342340928409"), m2("23049820498204");
+ mpz_class c1, c2, c3;
+ pub.enc(c1, m1);
+ pub.enc(c2, m2);
+ std::cout << std::hex << "c1=" << c1 << "\nc2=" << c2 << std::endl;
+ pub.add(c3, c1, c2);
+ mpz_class d1, d2, d3;
+ sec.dec(d1, c1);
+ sec.dec(d2, c2);
+ sec.dec(d3, c3);
+ CYBOZU_TEST_EQUAL(m1, d1);
+ CYBOZU_TEST_EQUAL(m2, d2);
+ CYBOZU_TEST_EQUAL(m1 + m2, d3);
+}