From b5a3bbba669ce321c1301ee850e7f9d03d857ede Mon Sep 17 00:00:00 2001 From: Gorachya Date: Sun, 10 Feb 2019 00:36:49 -0800 Subject: [PATCH] simplified --- crypto/sm9/sm9_rate.c | 40 +++++++--------------------------------- 1 file changed, 7 insertions(+), 33 deletions(-) diff --git a/crypto/sm9/sm9_rate.c b/crypto/sm9/sm9_rate.c index 913026f2..7f9ded50 100755 --- a/crypto/sm9/sm9_rate.c +++ b/crypto/sm9/sm9_rate.c @@ -2455,42 +2455,16 @@ static int fast_final_expo(fp12_t r, const fp12_t a, const BIGNUM *k, const BIGN fp12_t t; fp12_t t0; - fp12_init(t, ctx); - fp12_init(t0, ctx); + if (!fp12_inv(t0, a, p, ctx) + || !fp12_fast_expo_p1(t, a, p, ctx) + || !fp12_mul(t, t0, t, p, ctx) + || !fp12_copy(t0, t) + || !fp12_fast_expo_p2(t, t, p, ctx) + || !fp12_mul(t, t0, t, p, ctx) + || !fp12_copy(t0, t)) { - if (!fp12_copy(t, a)) { return 0; } - if (!fp12_copy(t0, a)) { - return 0; - } - - if (!fp12_inv(t0, t, p, ctx)) { - return 0; - } - if (!fp12_fast_expo_p1(t, t, p, ctx)) { - return 0; - } - if (!fp12_mul(t, t0, t, p, ctx)) { - return 0; - } - - if (!fp12_copy(t0, t)) { - return 0; - } - - if(!fp12_fast_expo_p2(t, t, p, ctx)){ - return 0; - } - - if (!fp12_mul(t, t0, t, p, ctx)) { - return 0; - } - - if (!fp12_copy(t0, t)) { - return 0; - } - n = BN_num_bits(k); for (i = n - 2; i >= 0; i--) { if (!fp12_sqr(t, t, p, ctx)) {