ASIACRYPT 2017

ASIACRYPT 2017 took place in Hong Kong and had a large number of talks with elliptic curve and/or number-theoretical content.

The three invited talks were:

  • Dustin Moody The ship has sailed: the NIST Post-Quantum Cryptography “competition”. This talk gave a summary of the NIST post-quantum crypto standardisation process. The deadline for submissions was only 3 days before the conference so there had not been enough time yet for NIST to determine which submissions were “complete and proper” according to their criteria. Hence the talk did not list the actual submissions or give any details of particular submissions. However, it is known that there is one supersingular isogeny (SIDH) submission to the process.

    Mostly Dustin discussed the process up to this point, and the expectations of NIST for the coming stages of the process. Proposals were invited for either signature schemes or else public key encryption/key encapsulation schemes. Dustine emphasised that there is no single technology that provides all the desired features (“no silver bullet”) and that post-quantum crypto is a complex area that is still actively being researched. As a result, NIST is expecting to standardise several different schemes in each category.

    The slides of Dustin’s talk are here.

  • Huaxiong Wang Combinatorics in Information-Theoretic Cryptography surveyed how various areas of combinatorics have been used in various ways in crypto.
  • Pascal Paillier White-box Cryptomania explained the concept of white-box crypto and urged theoretical researchers to get involved in this area. He reported on the recent WhibOx challenge, all submissions to which were broken. It is fair to say that Pascal received vigorous questioning after his talk, and that several individuals in the audience were not convinced by his arguments.

    Two elliptic curve papers were highlighted in the “best paper” and “invited to Journal of Cryptology” category, and even the SNARKs paper (see below) uses pairings:

    • Steven D. Galbraith, Christophe Petit and Javier Silva Identification Protocols and Signature Schemes Based on Supersingular Isogeny Problems. I have a conflict of interest, so I won’t say too much about this paper. It is about post-quantum signatures from isogenies. The main contribution is to give a scheme based on the general endomorphism/isogeny problem, rather than the “special” isogeny problem used in SIDH key exchange. I should mention that the signature is not very efficient and is not recommended for practical use. The talk was presented by Javier.
    • Sabyasachi Karati and Palash Sarkar Kummer for Genus One over Prime Order Fields. This paper is about efficient “x-coordinate only” type arithmetic on elliptic curves. The performance results are excellent. The natural question is how this relates to Montogomery curves.
    • Behzad Abdolmaleki, Karim Baghery, Helger Lipmaa and Michal Zajac A Subversion-Resistant SNARK.

    Finally, there were many other contributed talks of interest to a mathematical audience.

    • Dominique Unruh Post-Quantum Security of Fiat-Shamir discussed the Fiat-Shamir transform in the quantum random oracle model. Previous work has given more complex transforms that turn an interactive sigma protocol (identification scheme) into a non-interactive signature scheme. Unruh’s result is that if the public key is “lossy” (he calls it “dual-mode hard instance generator”) then the basic Fiat-Shamir transform can be applied. For a similar result see Kiltz, Lyubashevsky and Schaffner eprint 2017/916.
    • There was a session on lattices, with several papers about algorithmic results and/or hardness. It comprised: Martin R. Albrecht and Amit Deo Large Modulus Ring-LWE >= Module-LWE; Martin R. Albrecht, Florian Göpfert, Fernando Virdia and Thomas Wunderer Revisiting the Expected Cost of Solving uSVP and Applications to LWE; Qian Guo, Thomas Johansson, Erik Mårtensson and Paul Stankovski
      Coded-BKW with Sieving; Thomas Prest Sharper Bounds in Lattice-Based Cryptography using the Rényi Divergence.

    • There was a whole session on Homomorphic Encryption and a whole session on Pairings. In particular, Jens Groth gave a lecture presenting two “uber assumptions” for pairing-based crypto which provide the “best” targets for cryptanalysis.
    • Martin Roetteler, Michael Naehrig, Krysta M. Svore and Kristin Lauter Quantum Resource Estimates for Computing Elliptic Curve Discrete Logarithms. This papers counts the number of Toffoli gates to perform elliptic curve arithmetic over a finite field of real-world size on a quantum computer. This therefore gives an estimate of the number of gates required to run Shor’s algorithm for ECDLP.

    • Joost Renes and Benjamin Smith qDSA: Small and Secure Digital Signatures with Curve-based Diffie-Hellman Key Pairs gives a signature scheme suitable for x-coordinate-only arithmetic. Signature verification in ECDSA requires computing [s]P + [c]Q and checking if this is equal to R. The new scheme computes x( [s]P ) and x( [c]Q ) using ladder algorithms and then cleverly checks if x(R) can be equal to either x( [s]P + [c]Q ) or x( [s]P - [c]Q ). The scheme can be used for elliptic curves or Kummer varieties of hyperelliptic curves. They note that FourQ is faster, but FourQ uses special curves.
    • Craig Costello and Hüseyin Hisil A simple and compact algorithm for SIDH with arbitrary degree isogenies discussed doing SIDH with isogenies of degree \ell > 3. Currently there is no application for this question, but the paper is nice anyway.
    • Christophe Petit Faster Algorithms for Isogeny Problems using Torsion Point Images introduces a very interesting and original idea to cryptanalyse the SIDH problem. In particular, his result uses the auxiliary points that are one of the concerning elements of the SIDH problem. The method does not succeed in breaking the current schemes, but would break variants of SIDH with “unbalanced” parameters.
    • Rex Fernando, Peter M.R. Rasmussen and Amit Sahai Preventing CLT Attacks on Obfuscation with Linear Overhead gave an approach to prevent an attack on the Coron-Lepoint-Tibouchi multilinear map. This seems to be a very interesting result.

    — Steven Galbraith

    Advertisements
Posted in Uncategorized | Leave a comment

CRYPTO 2017

Last week, Crypto 2017 took place at UC Santa Barbara. There were more than 425 attendees for this year’s 4-day conference, with 72 papers being presented.

Eclipse peeking through the cloudsMonday morning was interrupted by a very special coffee break: the ecliptic curve cryptography coffee break, a.k.a. viewing the solar eclipse. General Chair Steve Myers had very conveniently ordered solar eclipse glasses for everyone (from a legitimate vendor!). The sky was cloudy during the coffee break, but the eclipse occasionally peeked through, and the skies cleared afterward for a clearer view of the eclipse.

Later that morning, John Martinis, a physicist from UCSB, gave an invited lecture on the prospects of a quantum factoring (and, presumably, discrete logarithm-ing) machine.

On Monday afternoon, Yehuda Lindell gave a talk on his paper Fast Secure Two-Party ECDSA Signing. Fast protocols exist for many factoring-, discrete logarithm-, and elliptic curve-based signature and public key encryption schemes. DSA and ECDSA are tricky because signing involves operations both additive and multiplicative operations using $k$ and $k^{-1}$, but in a threshold scheme this must be done without knowing $k$. Past work by MacKenzie and Reiter (Crypto 2001) and Gennaro, Goldfeder, and Narayanan (ACNS 2016) gives two-party protocols for computing ECDSA using multiplicative sharing of the signing key $x$ and ephemeral secret $k$ and then Paillier encryption to combine their equations. Proving honest behaviour ends up being quite expensive, unfortunately. Lindell showed how to improve performance by simplifying the shared tasks that one of the party participates in while still using Paillier homomorphic encryption. The key idea is that the second party, before releasing the signature, can check whether the first party behaved honestly simply by checking the final signature, which is publicly checkable efficient by definition of a digital signature scheme. The paper reports experimental results that show that two-party signing for ECDSA (with the NIST P-256 curve) can be run in approximately 37 milliseconds. The techniques also apply to DSA.

Tuesday featured the three award papers. Sam Kim and David J. Wu won the best student paper award for Watermarking Cryptographic Functionalities from Standard Lattice Assumptions. Best paper awards went to Nico Döttling and Sanjam Garg for Identity-Based Encryption from the Diffie-Hellman Assumption and Marc Stevens, Elie Bursztein, Pierre Karpman, Ange Albertini, and Yarik Markov for The first collision for full SHA-1.

Döttling and Garg’s paper showed how to construct identity-based encryption from the computational Diffie–Hellman problem in any group, including elliptic curve groups. Previous results had shown it impossible to construct IBE in a black-box way from CDH, so this paper had to make non-black-box use of the underlying cryptographic primitives. While the scheme is polynomial-time, this non-black-box use ends up making the scheme quite inefficient. On Wednesday another paper expanded the set of assumptions from which one can construct identity-based encryption: Identity-based Encryption from Codes with Rank Metric.

R, S, and A on stage at the Crypto 2017 rump session Tuesday evening featured the annual rump session, including the program chair’s report, reminiscences, announcements, songs, joke talks, and, unfortunately, some serious talks too. Most poignant was the second talk, entitled “Forty years and still running”. Jean-Jacques Quisquater presented a list of cryptosystems still running after 40 years, including the DES/Triple-DES algorithm and the RSA cryptosystem. In fact, 2017 marks the 40th anniversary of the invention of RSA, and Quisquater had arranged a wonderful surprise: Ron Rivest, Adi Shamir, and Leonard Adleman were all present for the rump session, and they took the stage to commemorate this milestone.

Later in the rump session, Michael Naehrig, co-inventor of the Barreto–Naehrig (BN) family of elliptic curves, performed (via Youtube) his original song The Sound of Quantum.

On Wednesday, Cédric Fournet of Microsoft Research Cambridge gave the second invited talk on Project Everest, a massive multi-institution multi-year project to create a fully verified efficient implementation of the TLS protocol. One component of Everest is a verified implementation of Curve25519 in a language called HaCL*, which compiles down to verified C code. This invited lecture was a joint talk between Crypto 2017 and the 30th IEEE Computer Security Foundations Symposium (CSF), also taking place at UCSB last week.

The full proceedings of Crypto 2017 are available on SpringerLink:

Crypto 2018 will take place in August 2018 at—where else?—UC Santa Barbara.

— Douglas Stebila

Posted in Uncategorized | Leave a comment

Isogeny-based post-quantum crypto

I’ve been meaning to write about isogeny-based crypto for a long while. This area has steadily become more and more active and there are now many researchers working seriously on it. The main motivation is its potential to provide a key exchange primitive that is efficient enough for practical deployment, yet potentially secure against an adversary with a quantum computer.

The first suggestions to use isogenies in crypto were due to Couveignes (in a talk in 1997), Charles, Lauter and Goren (a hash function proposed in 2005) and Rostovtsev and Stolbunov (eprint, 2006). But the biggest impetus came from the paper by David Jao and Luca De Feo in PQCrypto 2011. This paper presents the supersingular isogeny Diffie-Hellman (SIDH) key exchange scheme that has potential to be post-quantum secure.

The first thing to note is that the Jao and De Feo scheme is based on supersingular elliptic curves. Readers might think: Supersingular curves are weak for classical crypto, and ECDLP is broken by Shor’s algorithm, so how can this be a good idea? The point is that we are no longer basing security on discrete logarithms, or any “algebraic” property of a specific elliptic curve. Instead, the basic structure is group homomorphisms between curves.

There are several reasons to be interested in supersingular isogeny crypto.

  • The pool of potential post-quantum assumptions is very small, and so all avenues need to be fully explored and tested.
  • There has been a huge body of knowledge and experience developed over the last 20 years in support of elliptic curve crypto, and so it is natural to try to continue using elliptic curves if possible.
  • Some of the underlying computational problems have already been considered by researchers in classical elliptic curve crypto and computational number theory, and so there is some good evidence that the assumptions are reasonable, at least against classical computers.
  • It is straightforward to choose parameters to achieve a given security level. In contrast, selecting parameters for lattice crypto that achieve a given security level is still problematic. For example, different models of how the BKZ algorithm performs lead to quite different results (although it is possible to make conservative choices that still lead to a practical scheme).

However, there are also several serious concerns about supersingular isogeny crypto.

  • One of the most serious concerns is that the systems have not been sufficiently scrutinised by researchers in quantum algorithms. A contributing factor is that there are significant mathematical preliminaries needed to fully understand isogeny crypto, and so it is not an easy field for non-experts to work in.
  • Another concern, especially in contrast to lattices, is that isogenies are not a very “expressive” tool. Lattice crypto has provided a rich suite of cryptographic functionalities including encryption, signatures, id-based crypto, homomorphic encryption, and more. On the other hand, the only practical isogeny crypto primitive known is key exchange. We do not even have a practical digital signature scheme based on isogenies (see Yoo et al in FC2017 and this paper, which is to appear at Asiacrypt 2017), and signatures are a relatively basic primitive.

The main conceptual idea of isogeny key exchange is the following: In the original Diffie-Hellman protocol Alice sends to Bob g^a and Bob sends to Alice g^b. One can interpret this in terms of group homomorphisms: Alice has a private group homomorphism \phi : G \to G defined by \phi(x) = x^a and Bob has a private group homomorphism \psi : G \to G defined by \psi(x) = x^b. Alice publishes \phi(g) and Bob publishes \psi(g). Alice completes the protocol by computing \phi( \psi(g )) and Bob computes \psi( \phi( g )). The homomorphisms commute so Alice and Bob compute the same key.

An isogeny is a group homomorphism from an elliptic curve E. An isogeny has a finite kernel G. So one can think of an isogeny as a homomorphism E \to E/G. The crucial fact is that there is a way to represent the image E/G in a form that does not reveal the group G. In other words, it is not represented using cosets, but as another elliptic curve.

The key exchange protocol is then seen to be analogous to the Diffie-Hellman protocol. Fix an elliptic curve E. Alice has a private subgroup G_A and a private isogeny (group homomorphism) \phi : E \to E/G_A. Bob has a private subgroup G_B and a private isogeny \psi : E \to E/G_B. Alice publishes \phi(P) for some points P \in E that enable Bob to compute \phi(G_B). Bob computes \psi( Q ) for some other points Q \in E that enable Alice to compute \psi( G_A ). Then Alice computes (E/G_B)/\psi(G_A) and Bob computes (E/G_A)/\phi(G_B) and in both cases they get the same elliptic curve (up to isomorphism) E/(G_A,G_B). For details see the paper by Jao and De Feo, or any of the other subsequent papers in the field.

One reason to choose supersingular elliptic curves is that it makes key generation and some computational and theoretical aspects of the protocol much more simple and efficient than if using other elliptic curves.

The fundamental computational problem underlying isogeny crypto is the problem: Given two elliptic curves E, E' to find an isogeny \phi : E \to E'. This has been studied by researchers since David Kohel’s thesis in the mid-1990s and is a well-established problem in computational number theory. Only exponential-time classical algorithms are known for this problem. Moving to quantum algorithms: Childs, Jao and Soukharev gave in 2014 a subexponential-time quantum algorithm for the ordinary curve case. However, for supersingular curves the only quantum algorithm known is by Biasse, Jao and Sankar and it requires exponential time and subexponential space. This gives further motivation to only consider the case of supersingular curves.

However, it is important to note that the Jao-De-Feo key exchange scheme relies on a weaker variant of this problem. In the scheme one gets two elliptic curves E, E' plus two pairs of points (P, \phi(P)) where \phi : E \to E' is an isogeny of known degree. Using these points one can generate exponentially many points (R, \phi(R)) on the graph of \phi. Is it possible to compute \phi using some kind of interpolation algorithm? Perhaps a quantum algorithm? A recent paper by Christophe Petit explores a novel classical approach to solving this variant of the isogeny problem, but currently these methods do not break practical versions of the SIDH scheme.

In conclusion, isogeny crypto is a very interesting and active area of research in crypto. However, more investigation is needed by researchers in quantum algorithms before we can be confident that it really is post-quantum secure. If you wish to learn more about the subject then I recommend this paper for a tutorial on the basic theory, and for a discussion of computational problems of interest.

— Steven Galbraith

Posted in Uncategorized | 2 Comments

Great animations explaining SIDH

There is a great blog post by Wouter Castryck on the COSIC research group (KU Leuven) website about supersingular Isogeny Diffie-Hellman (SIDH). I’ve been meaning to write about this for months but haven’t had the time. So in the meantime read about it here: Elliptic curves are quantum dead, long live elliptic curves.

— Steven Galbraith

Posted in Uncategorized | Leave a comment

CRYPTO and PQCRYPTO

The list of accepted papers to Crypto 2017 is now online. Some highlights for ECC fans include:

  • “The first collision for full SHA-1” by Marc Stevens, Elie Bursztein, Pierre Karpman, Ange Albertini and Yarik Markov
  • “Fast Secure Two-Party ECDSA Signing” by Yehuda Lindell
  • “Identity-Based Encryption from the Diffie-Hellman Assumption” by Nico Döttling and Sanjam Garg

The conference takes place August 20-24, 2017 in Santa Barbara.

The Eighth International Conference on Post-Quantum Cryptography (PQCrypto 2017)
takes place in Utrecht, the Netherlands, June 26–28, 2017.
The invited speakers are:

  •     Jaya Baloo
  •     Vadim Lyubashevsky
  •    Lieven Vandersypen

The list of acepted papers is available, and includes a session on isogeny-based crypto.

— Steven Galbraith

Posted in Uncategorized | Leave a comment

Eurocrypt 2017

Eurocrypt 2017 was hosted by the ENS crypto group in Paris, France. There were four talks of special interest to researchers in curve-based cryptography, and a couple of items in the Rump Session.

Twisted \mu_4-normal form for elliptic curves

David Kohel introduced the \mu_4-normal form for elliptic curves five years ago (at Indocrypt 2012). These curves are basically the “right way” to generalize Edwards curve arithmetic to characteristic 2. And they’re the right generalization not only mathematically, but also NIST-ically: existing standardized characteristic 2 curves cannot be transformed into \mu_4-normal form. David’s paper twists its way around that obstruction, for a small cost of two extra multiplications per point addition. These twisted \mu_4-normal curves are clearly the fastest and prettiest standard-compatible characteristic-2 elliptic curves out there. This is great news for binarophiles, and it will be interesting to see if implementers working on the hardware level can get much benefit from this.

Efficient compression of SIDH public keys

Joost Renes gave a remarkably accessible talk about his work with Craig Costello, David Jao, Patrick Longa, Michael Naehrig, and David Urbanik on compressing public keys for the Supersingular Isogeny Diffie–Hellman protocol. SIDH is the best-known supposedly-quantum-resistant elliptic curve cryptosystem; while it might be slow compared with other postquantum alternatives, its principal attraction for cryptographers is its particularly small keys. Well, those keys are now even smaller (330 bytes for 128-bit security)—but the interesting thing in this paper is a much-improved key compression algorithm, which runs an order of magnitude faster than previous methods.

Computation of a 768-bit prime field discrete logarithm

Thorsten Kleinjung gave a really nice talk on his record discrete logarithm computation with Claus Diem, Arjen Lenstra, Christine Priplata, and Colin Stahlke. Together they computed a discrete logarithm in a 768-bit prime field.
Why 768 bits? Because that matches the record for general integer factorization (from 2009, in a project that also included Thorsten and Arjen), which was computed with the General Number Field Sieve (GNFS); and GNFS is also what we use for prime-field discrete logs. In contrast to most recent finite-field discrete-log results which attack small-characteristic or pairing-related fields, this computation represents the state-of-the-art in the classic prime-field case.

The prime in question was p = [2^{766}\pi] + 6272, which is the smallest “safe prime” larger than 2^{766}\pi (“safe” meaning that (p-1)/2 is also prime, so that this represents the hardest case for generic algorithms applied to finite fields of the same size). The element 11 generates the multiplicative group of \mathbb{F}_p .

No doubt the question you are asking yourself right now is “what is the discrete logarithm of [2^{766}e] with respect to the base 11?”  Ask no more, for Thorsten has the answer: it’s 325923617918270562238615985978623709128341338833721058543950813521768156295091638348030637920237175638117352442299234041658748471079911977497864301995972638266781162575370644813703762423329783129621567127479417280687495231463348812.

…So now you know. But as Thorsten points out, the journey is more interesting than the final destination: using some clever techniques detailed in the paper, this calculation took much less time and effort (a whole order of magnitude!) than the authors expected. Before you get too excited, it still took 5300 core years—but if this isn’t the exact discrete logarithm you are looking for, computing another one in the same field will now only take two core days. From a cryptographic perspective, that two-core-day figure is especially interesting, because that’s the time required to break actual keys, after a 5-core-millennium precomputation depending only on the field.

A kilobit hidden SNFS discrete logarithm computation

Joshua Fried spoke about his work on with Pierrick Gaudry, Nadia Heninger, and Emmanuel Thomé about discrete logarithms in an even bigger prime field: 1024 bits. How can you compute discrete logs in such a large prime field? You cheat—or, I should say, the parameter generator cheats. Our estimates of the difficulty of these problems, and the cryptosystems that depend on them, are based on the performance of the General Number Field Sieve algorithm (GNFS). But Dan Gordon explained 25 years ago how to choose primes that are vulnerable to the much faster Special Number Field Sieve (SNFS)—but only if we know a secret backdoor, and detecting that backdoor is apparently infeasible. This project set up an instance of a backdoored 1024-bit prime, and then solved it.  This means that if you’re still using 1024-bit fields (and why are you doing such a thing in the twenty-first century?), then you should be extremely careful about their provenance. Kevin McCurley asked an interesting question: is Gordon’s backdoor optimal?

Speeding up the Huff form of elliptic curves

Gamze Orhon gave a lightning-fast presentation of her work with Huseyin Hisil on optimizing Huff curve arithmetic during the rump session. The key is viewing these curves as curves in \mathbb{P}^1\times\mathbb{P}^1, rather than \mathbb{P}^2. The details are in their preprint.

A database of discrete logarithm computations

Aurore Guillevic and Laurent Grémy have established a new reference website to help you keep track of records progress and progress in finite field discrete logarithm computations. It was about time we had a better solution than trawling the archives of the NMBRTHRY list! Laurent is hosting a front-end on his website, but what’s really nice is that the database itself is git-able.

—Ben Smith

Posted in Uncategorized | 3 Comments

ECC Conference 2017

The 21st Workshop on Elliptic Curve Cryptography will take place in Nijmegen, The Netherlands, November 13–15, 2017.

— Steven Galbraith

Posted in Uncategorized | Leave a comment