A Faster Variant of CGL Hash Function via Efficient Backtracking Checks
摘要
CGL hash function is an isogeny-based hash function that computes non-backtracking paths on a supersingular isogeny graph. Since one of the problems of CGL hash function is its relatively slow computational time, many acceleration methods have been studied, including the use of Legendre form, radical isogenies. An algorithm for computing CGL hash functions proposed at SAC’22 has achieved acceleration of several orders of magnitude, by using \(2^n\) -isogeny for an integer \(n = \varTheta (\log p)\) , where p is characteristic of the underlying field. In the algorithm, the backtracking 2-isogeny between two consecutive \(2^n\) -isogenies must be prevented to assure the security of the hash function. In this paper, we propose a faster algorithm for CGL hash function by reducing the overhead of the backtracking check in the method at SAC’22. Moreover, as no explicit implementation of the aforementioned algorithm exists to the best of our knowledge, we implement the algorithm with our proposed backtracking check. We conduct a detailed and precise complexity analysis of the algorithm and other previously proposed ones, by programmatically counting the actual number of operations over the underlying finite field. We demonstrate that the proposed algorithm reduces the cost by \(7.6\%\) compared to the original algorithm with 256-bit prime, achieving the fastest computation of CGL hash functions.