← Back to team overview

launchpad-reviewers team mailing list archive

[Merge] ~finnrg/launchpad:feat/sk-ssh-key-types into launchpad:master

 

Finn Gärtner has proposed merging ~finnrg/launchpad:feat/sk-ssh-key-types into launchpad:master.

Commit message:
feat: Add support for sk ssh key types

Requested reviews:
  Launchpad code reviewers (launchpad-reviewers)

For more details, see:
https://code.launchpad.net/~finnrg/launchpad/+git/launchpad/+merge/493862
-- 
Your team Launchpad code reviewers is requested to review the proposed merge of ~finnrg/launchpad:feat/sk-ssh-key-types into launchpad:master.
diff --git a/lib/lp/registry/interfaces/ssh.py b/lib/lp/registry/interfaces/ssh.py
index e99a000..b718a03 100644
--- a/lib/lp/registry/interfaces/ssh.py
+++ b/lib/lp/registry/interfaces/ssh.py
@@ -30,8 +30,9 @@ from lp import _
 class SSHKeyType(DBEnumeratedType):
     """SSH key type
 
-    SSH (version 2) can use RSA, DSA, ECDSA, or Ed25519 keys for
-    authentication.  See OpenSSH's ssh-keygen(1) man page for details.
+    SSH (version 2) can use RSA, DSA, ECDSA or Ed25519 keys
+    and valid OpenSSH security key variants keys for authentication.
+    See OpenSSH's ssh-keygen(1) man page for details.
     """
 
     RSA = DBItem(
@@ -70,6 +71,24 @@ class SSHKeyType(DBEnumeratedType):
         """,
     )
 
+    SKED25519 = DBItem(
+        5,
+        """
+        SKED25519
+
+        SKED25519
+        """,
+    )
+
+    SKECDSA = DBItem(
+        6,
+        """
+        SKECDSA
+
+        SKECDSA
+        """,
+    )
+
 
 SSH_TEXT_TO_KEY_TYPE = {
     "ssh-rsa": SSHKeyType.RSA,
@@ -78,6 +97,8 @@ SSH_TEXT_TO_KEY_TYPE = {
     "ecdsa-sha2-nistp384": SSHKeyType.ECDSA,
     "ecdsa-sha2-nistp521": SSHKeyType.ECDSA,
     "ssh-ed25519": SSHKeyType.ED25519,
+    "sk-ssh-ed25519@xxxxxxxxxxx": SSHKeyType.SKED25519,
+    "sk-ecdsa-sha2-nistp256@xxxxxxxxxxx": SSHKeyType.SKECDSA,
 }
 
 
diff --git a/requirements/launchpad.txt b/requirements/launchpad.txt
index dfb4119..906b35a 100644
--- a/requirements/launchpad.txt
+++ b/requirements/launchpad.txt
@@ -185,7 +185,7 @@ toml==0.10.2
 transaction==3.0.1
 treq==18.6.0
 # lp:~launchpad/twisted:lp-backport
-Twisted==20.3.0+lp9
+Twisted==20.3.0+lp10
 # Python 3.8 and twisted 20.3.0+lp9
 txfixtures==0.4.3
 # Python 3.10+ and twisted 24.11