How do I use ssh-keygen to generate an ML-KEM key pair? My current version of OpenSSH does not appear to have that functionality, unless I am missing something.
Background
I today for the first time saw this, when connecting to a remote host via ssh:
The version of OpenSSH on my system (running Tahoe 26.4.1) per
is 10.2p1.
Pulling up the quoted link I found out that the recommended cipher is now based on Module-Lattice-Based Key-Encapsulation Mechanism (ML-KEM). RSA and elliptic-curve cryptography (ECC) have been known to not be quantum-computing-safe. In short, a sufficiently powerful quantum computer will be able to brute-force crack these established ciphers within a reasonable timeframe. Once such a quantum computer becomes available even previously encrypted communication, which has been stored, is subject to being cracked. OpenSSH therefore encourages the use of ML-KEM ciphers as early as possible.
Background
I today for the first time saw this, when connecting to a remote host via ssh:
Code:
dominik@dominikmbp ~ % ssh admin@dominikpc.local
** WARNING: connection is not using a post-quantum key exchange algorithm.
** This session may be vulnerable to "store now, decrypt later" attacks.
** The server may need to be upgraded. See https://openssh.com/pq.html
Enter passphrase for key '/Users/dominik/.ssh/id_rsa':
The version of OpenSSH on my system (running Tahoe 26.4.1) per
Code:
dominik@dominikmbp ~ % ssh -V
OpenSSH_10.2p1, LibreSSL 3.3.6
Pulling up the quoted link I found out that the recommended cipher is now based on Module-Lattice-Based Key-Encapsulation Mechanism (ML-KEM). RSA and elliptic-curve cryptography (ECC) have been known to not be quantum-computing-safe. In short, a sufficiently powerful quantum computer will be able to brute-force crack these established ciphers within a reasonable timeframe. Once such a quantum computer becomes available even previously encrypted communication, which has been stored, is subject to being cracked. OpenSSH therefore encourages the use of ML-KEM ciphers as early as possible.