From e64564e166a2bb25b13dad941b3d9e35bf44cf03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Grubbstr=C3=B6m=20=28Grubba=29?= <grubba@grubba.org> Date: Wed, 23 Sep 2015 17:42:13 +0200 Subject: [PATCH] Standards.X509: parse_private_key() now knows about PKCS#8. --- lib/modules/Standards.pmod/X509.pmod | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/modules/Standards.pmod/X509.pmod b/lib/modules/Standards.pmod/X509.pmod index 55ba94eff3..53deb8e6d6 100644 --- a/lib/modules/Standards.pmod/X509.pmod +++ b/lib/modules/Standards.pmod/X509.pmod @@ -1819,12 +1819,16 @@ Crypto.Sign.State parse_private_key(Sequence seq) return Standards.PKCS.DSA.parse_private_key(seq); case 9: return Standards.PKCS.RSA.parse_private_key(seq); -#if constant(Nettle.ECC_Curve) case 2: // ECDSA, implicit curve. Not supported yet. return UNDEFINED; case 3: case 4: + // Either PKCS#8 or ECDSA. + Crypto.Sign res = Standards.PKCS.parse_private_key(seq); + if (res) return res; +#if constant(Nettle.ECC_Curve) + // EDCSA return Standards.PKCS.ECDSA.parse_private_key(seq); #endif } -- GitLab