aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/pubkey/ec_group/ec_group.h
diff options
context:
space:
mode:
authorJack Lloyd <[email protected]>2018-03-08 18:00:11 -0500
committerJack Lloyd <[email protected]>2018-03-08 18:00:11 -0500
commitcc22c1e0a7c53bb4fb92e674c0b2b9ef6fe39c68 (patch)
treee7beeee4c5742393bc53ee1b30c18eeb170b5817 /src/lib/pubkey/ec_group/ec_group.h
parentb713706554b3b14226f11106d35aa7c564d387e5 (diff)
Add blinded_base_point_multiply_x
Often useful when the point is not needed
Diffstat (limited to 'src/lib/pubkey/ec_group/ec_group.h')
-rw-r--r--src/lib/pubkey/ec_group/ec_group.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/lib/pubkey/ec_group/ec_group.h b/src/lib/pubkey/ec_group/ec_group.h
index 8238c2902..47652e1b4 100644
--- a/src/lib/pubkey/ec_group/ec_group.h
+++ b/src/lib/pubkey/ec_group/ec_group.h
@@ -248,6 +248,19 @@ class BOTAN_PUBLIC_API(2,0) EC_Group final
/**
* Blinded point multiplication, attempts resistance to side channels
+ * Returns just the x coordinate of the point
+ *
+ * @param k the scalar
+ * @param rng a random number generator
+ * @param ws a temp workspace
+ * @return x coordinate of base_point*k
+ */
+ BigInt blinded_base_point_multiply_x(const BigInt& k,
+ RandomNumberGenerator& rng,
+ std::vector<BigInt>& ws) const;
+
+ /**
+ * Blinded point multiplication, attempts resistance to side channels
* @param point input point
* @param k the scalar
* @param rng a random number generator