EC.asn1 3.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. -- -------------------------------------------------------------------
  2. -- Taken from RFC 3279, 3 ASN.1 Module
  3. -- (https://www.rfc-editor.org/rfc/rfc3279.html#section-3)
  4. ansi-X9-62 OBJECT IDENTIFIER ::= {
  5. iso(1) member-body(2) us(840) 10045 }
  6. -- Arc for ECDSA signature OIDS
  7. id-ecSigType OBJECT IDENTIFIER ::= { ansi-X9-62 signatures(4) }
  8. -- OID for ECDSA signatures with SHA-1
  9. ecdsa-with-SHA1 OBJECT IDENTIFIER ::= { id-ecSigType 1 }
  10. id-publicKeyType OBJECT IDENTIFIER ::= { ansi-X9-62 keyType(2) }
  11. id-ecPublicKey OBJECT IDENTIFIER ::= { id-publicKeyType 1 }
  12. -- Named Elliptic Curves in ANSI X9.62.
  13. ellipticCurve OBJECT IDENTIFIER ::= { ansi-X9-62 curves(3) }
  14. c-TwoCurve OBJECT IDENTIFIER ::= {
  15. ellipticCurve characteristicTwo(0) }
  16. c2pnb163v1 OBJECT IDENTIFIER ::= { c-TwoCurve 1 }
  17. c2pnb163v2 OBJECT IDENTIFIER ::= { c-TwoCurve 2 }
  18. c2pnb163v3 OBJECT IDENTIFIER ::= { c-TwoCurve 3 }
  19. c2pnb176w1 OBJECT IDENTIFIER ::= { c-TwoCurve 4 }
  20. c2tnb191v1 OBJECT IDENTIFIER ::= { c-TwoCurve 5 }
  21. c2tnb191v2 OBJECT IDENTIFIER ::= { c-TwoCurve 6 }
  22. c2tnb191v3 OBJECT IDENTIFIER ::= { c-TwoCurve 7 }
  23. c2onb191v4 OBJECT IDENTIFIER ::= { c-TwoCurve 8 }
  24. c2onb191v5 OBJECT IDENTIFIER ::= { c-TwoCurve 9 }
  25. c2pnb208w1 OBJECT IDENTIFIER ::= { c-TwoCurve 10 }
  26. c2tnb239v1 OBJECT IDENTIFIER ::= { c-TwoCurve 11 }
  27. c2tnb239v2 OBJECT IDENTIFIER ::= { c-TwoCurve 12 }
  28. c2tnb239v3 OBJECT IDENTIFIER ::= { c-TwoCurve 13 }
  29. c2onb239v4 OBJECT IDENTIFIER ::= { c-TwoCurve 14 }
  30. c2onb239v5 OBJECT IDENTIFIER ::= { c-TwoCurve 15 }
  31. c2pnb272w1 OBJECT IDENTIFIER ::= { c-TwoCurve 16 }
  32. c2pnb304w1 OBJECT IDENTIFIER ::= { c-TwoCurve 17 }
  33. c2tnb359v1 OBJECT IDENTIFIER ::= { c-TwoCurve 18 }
  34. c2pnb368w1 OBJECT IDENTIFIER ::= { c-TwoCurve 19 }
  35. c2tnb431r1 OBJECT IDENTIFIER ::= { c-TwoCurve 20 }
  36. primeCurve OBJECT IDENTIFIER ::= { ellipticCurve prime(1) }
  37. prime192v1 OBJECT IDENTIFIER ::= { primeCurve 1 }
  38. prime192v2 OBJECT IDENTIFIER ::= { primeCurve 2 }
  39. prime192v3 OBJECT IDENTIFIER ::= { primeCurve 3 }
  40. prime239v1 OBJECT IDENTIFIER ::= { primeCurve 4 }
  41. prime239v2 OBJECT IDENTIFIER ::= { primeCurve 5 }
  42. prime239v3 OBJECT IDENTIFIER ::= { primeCurve 6 }
  43. prime256v1 OBJECT IDENTIFIER ::= { primeCurve 7 }
  44. -- -------------------------------------------------------------------
  45. -- Taken from RFC 5758, 3.2. ECDSA Signature Algorithm
  46. -- (https://www.rfc-editor.org/rfc/rfc5758.html#section-3.2)
  47. ecdsa-with-SHA224 OBJECT IDENTIFIER ::= { iso(1) member-body(2)
  48. us(840) ansi-X9-62(10045) signatures(4) ecdsa-with-SHA2(3) 1 }
  49. ecdsa-with-SHA256 OBJECT IDENTIFIER ::= { iso(1) member-body(2)
  50. us(840) ansi-X9-62(10045) signatures(4) ecdsa-with-SHA2(3) 2 }
  51. ecdsa-with-SHA384 OBJECT IDENTIFIER ::= { iso(1) member-body(2)
  52. us(840) ansi-X9-62(10045) signatures(4) ecdsa-with-SHA2(3) 3 }
  53. ecdsa-with-SHA512 OBJECT IDENTIFIER ::= { iso(1) member-body(2)
  54. us(840) ansi-X9-62(10045) signatures(4) ecdsa-with-SHA2(3) 4 }
  55. -- -------------------------------------------------------------------
  56. -- Taken from https://csrc.nist.gov/projects/computer-security-objects-register/algorithm-registration
  57. sigAlgs OBJECT IDENTIFIER ::= { 2 16 840 1 101 3 4 3 }
  58. id-ecdsa-with-sha3-224 OBJECT IDENTIFIER ::= { sigAlgs 9 }
  59. id-ecdsa-with-sha3-256 OBJECT IDENTIFIER ::= { sigAlgs 10 }
  60. id-ecdsa-with-sha3-384 OBJECT IDENTIFIER ::= { sigAlgs 11 }
  61. id-ecdsa-with-sha3-512 OBJECT IDENTIFIER ::= { sigAlgs 12 }