2
$\begingroup$

I am working on a code generating Edwards curve (Ed25519) keys in a HSM using PKCS#11 API. In the public key template the CKA_EC_PARAMS uses an OID to specify the curve. The encoding for Ed25519 is 06 09 2B 06 01 04 01 DA 47 0F 01. I understand the tag (06 for OID), the length (9) but the OID itself does not match the 1.3.101.112 from the RFC8410.

Any clue ? Is this pure proprietary encoding ?

$\endgroup$

1 Answer 1

2
$\begingroup$

I'm not sure about what you need, but 06 09 2B 06 01 04 01 DA 47 0F 01 is the DER encoding of OID 1.3.6.1.4.1.11591.15.1 meaning curve Ed25519, not the OID 1.3.101.112 for algorithm EdDSA25519, which DER encoding I just computed by hand as 06 03 2B 65 70.

See this answer for the mysteries of OID encoding, with references, explaining in particular how 2B turns to 1.3.

$\endgroup$
1
  • $\begingroup$ Excellent thanks. Apparently OID 1.3.6.1.4.1.11591.15.1 is introduced in OpenPGP message Format draft-ietf-openpgp-rfc4880bis-09. $\endgroup$
    – Peter
    Commented May 27, 2020 at 15:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.