Abstract
Two efficient approaches have been recently proposed to make random points on elliptic curves representable as uniform random strings (a useful property for anonymity and censorship circumvention applications): the “Elligator” technique due to Bernstein et al. (ACM CCS 2013), which is simple but supports a somewhat limited set of elliptic curves, and its variant “Elligator Squared” suggested by Tibouchi (FC 2014), which is slightly more complex but supports arbitrary curves. Despite that complexity, it was speculated that Elligator Squared could have an efficiency edge in some contexts, as it avoids a rejection sampling step necessary for Elligator, and can be used with a larger class of point encoding functions, some of them very efficient. In this paper, we show that Elligator Squared can indeed be implemented very efficiently with a suitable choice of point encoding function. More precisely, we consider the binary curve setting, and implement the Elligator Squared bit string representation algorithm based on a suitably optimized version of the Shallue-van de Woestijne characteristic 2 encoding. On the fast binary curve of Oliveira et al. (CHES 2013), our implementation runs in an average of only 22850 Haswell cycles. We also compare implementations of Elligator and Elligator Squared on a curve supported by Elligator, namely Curve25519, and find that generating a random point and its uniform bitstring representation is around 35-40% faster with Elligator for protocols using a fixed base point, but 30-35% faster with Elligator Squared in the case of a variable base point. Both are significantly slower than our binary curve implementation.
Author supplied keywords
Cite
CITATION STYLE
Aranha, D. F., Fouque, P. A., Qian, C., Tibouchi, M., & Zapalowicz, J. C. (2014). Binary elligator squared. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 8781, pp. 20–37). Springer Verlag. https://doi.org/10.1007/978-3-319-13051-4_2
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.