aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMITSUNARI Shigeo <herumi@nifty.com>2017-02-13 11:56:34 +0800
committerMITSUNARI Shigeo <herumi@nifty.com>2017-02-13 11:56:34 +0800
commit1bca88116a26acd05506f255b1d5a7cfd608dbf3 (patch)
treed489094e6de5b2397f046590a257fa12c1ce57d1
parent75064eb706e10995b5e4f6228e40cbecb294708b (diff)
downloaddexon-mcl-1bca88116a26acd05506f255b1d5a7cfd608dbf3.tar.gz
dexon-mcl-1bca88116a26acd05506f255b1d5a7cfd608dbf3.tar.zst
dexon-mcl-1bca88116a26acd05506f255b1d5a7cfd608dbf3.zip
add wrapper functions ; BN::mapToGi
-rw-r--r--include/mcl/bn.hpp2
-rw-r--r--test/bn_test.cpp16
2 files changed, 8 insertions, 10 deletions
diff --git a/include/mcl/bn.hpp b/include/mcl/bn.hpp
index 9da4b67..edd56da 100644
--- a/include/mcl/bn.hpp
+++ b/include/mcl/bn.hpp
@@ -1205,6 +1205,8 @@ struct BNT {
f *= f1;
f *= f2;
}
+ static void mapToG1(G1& P, const Fp& x) { param.mapTo.calcG1(P, x); }
+ static void mapToG2(G2& P, const Fp2& x) { param.mapTo.calcG2(P, x); }
#if 1 // duplicated later
// old order of P and Q
static void millerLoop(Fp12& f, const G2& Q, const G1& P)
diff --git a/test/bn_test.cpp b/test/bn_test.cpp
index 740ba38..01e4a33 100644
--- a/test/bn_test.cpp
+++ b/test/bn_test.cpp
@@ -99,37 +99,33 @@ void testSetStr(const G2& Q0)
void testMapToG1()
{
- const mcl::bn::MapToT<Fp>& mapTo = BN::param.mapTo;
-
G1 g;
for (int i = 1; i < 10; i++) {
- mapTo.calcG1(g, i);
+ BN::mapToG1(g, i);
CYBOZU_TEST_ASSERT(!g.isZero());
G1 gr;
G1::mul(gr, g, BN::param.r);
CYBOZU_TEST_ASSERT(gr.isZero());
}
if (BN::param.b == 2) {
- CYBOZU_TEST_EXCEPTION(mapTo.calcG1(g, 0), cybozu::Exception);
- CYBOZU_TEST_EXCEPTION(mapTo.calcG1(g, mapTo.c1), cybozu::Exception);
- CYBOZU_TEST_EXCEPTION(mapTo.calcG1(g, -mapTo.c1), cybozu::Exception);
+ CYBOZU_TEST_EXCEPTION(BN::mapToG1(g, 0), cybozu::Exception);
+ CYBOZU_TEST_EXCEPTION(BN::mapToG1(g, BN::param.mapTo.c1), cybozu::Exception);
+ CYBOZU_TEST_EXCEPTION(BN::mapToG1(g, -BN::param.mapTo.c1), cybozu::Exception);
}
}
void testMapToG2()
{
- const mcl::bn::MapToT<Fp>& mapTo = BN::param.mapTo;
-
G2 g;
for (int i = 1; i < 10; i++) {
- mapTo.calcG2(g, i);
+ BN::mapToG2(g, i);
CYBOZU_TEST_ASSERT(!g.isZero());
G2 gr;
G2::mul(gr, g, BN::param.r);
CYBOZU_TEST_ASSERT(gr.isZero());
}
if (BN::param.b == 2) {
- CYBOZU_TEST_EXCEPTION(mapTo.calcG2(g, 0), cybozu::Exception);
+ CYBOZU_TEST_EXCEPTION(BN::mapToG2(g, 0), cybozu::Exception);
}
}