]> git.codecow.com Git - Monocypher.git/commitdiff
Elligator script: removed unnecessary temporary
authorLoup Vaillant <loup@loup-vaillant.fr>
Mon, 9 Mar 2020 12:16:15 +0000 (13:16 +0100)
committerLoup Vaillant <loup@loup-vaillant.fr>
Mon, 9 Mar 2020 12:16:15 +0000 (13:16 +0100)
tests/gen/elligator.py

index 50ad19b3cb9e83bcbe796e0367f118fddc273fca..2794588378b67ba9a29b9b45ed7addc275e5bc67 100755 (executable)
@@ -394,19 +394,19 @@ ufactor = -non_square * sqrtm1
 vfactor = sqrt(ufactor)
 
 def fast_hash_to_curve(r):
-    t1  = r**2 * non_square   # r1
-    t2  = t1 + fe(1)          # r2
-    t3  = t2**2
-    t4 = (A**2 * t1 - t3) * A # numerator
-    t1 = t3 * t2              # denominator
-    t1, is_square = invsqrt(t4 * t1)
+    t1 = r**2 * non_square    # r1
+    u  = t1 + fe(1)           # r2
+    t2 = u**2
+    t3 = (A**2 * t1 - t2) * A # numerator
+    t1 = t2 * u               # denominator
+    t1, is_square = invsqrt(t3 * t1)
     u  = r**2 * ufactor
     v  = r    * vfactor
     if is_square: u = fe(1)
     if is_square: v = fe(1)
-    v   = v * t4 * t1
+    v  = v * t3 * t1
     t1 = t1**2
-    u   = u * -A * t4 * t3 * t1
+    u  = u * -A * t3 * t2 * t1
     if is_square != v.is_negative(): # XOR
         v = -v
     return (u, v)