1e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrompackage org.bouncycastle.asn1.eac;
2e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom
3e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstromimport org.bouncycastle.asn1.ASN1ObjectIdentifier;
4e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom
55db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root/**
65db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root * German Federal Office for Information Security
7d001700a15b8bd733ae344c1fc315b97c43c6590Kenny Root * (Bundesamt für Sicherheit in der Informationstechnik)
85db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root * <a href="http://www.bsi.bund.de/">http://www.bsi.bund.de/</a>
95db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root * <p>
105db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root * <a href="https://www.bsi.bund.de/EN/Publications/TechnicalGuidelines/TR03110/BSITR03110.html">BSI TR-03110</a>
115db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root * Technical Guideline Advanced Security Mechanisms for Machine Readable Travel Documents
125db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root * <p>
13d001700a15b8bd733ae344c1fc315b97c43c6590Kenny Root * <a href="https://www.bsi.bund.de/SharedDocs/Downloads/EN/BSI/Publications/TechGuidelines/TR03110/TR-03110_v2.1_P3pdf.pdf">
14d001700a15b8bd733ae344c1fc315b97c43c6590Kenny Root * Technical Guideline TR-03110-3</a>
155db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root * Advanced Security Mechanisms for Machine Readable Travel Documents;
165db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root * Part 3: Common Specifications.
175db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root */
18e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrompublic interface EACObjectIdentifiers
19e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom{
205db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /**
215db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * <pre>
225db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * bsi-de OBJECT IDENTIFIER ::= {
235db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     *     itu-t(0) identified-organization(4) etsi(0)
245db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     *     reserved(127) etsi-identified-organization(0) 7
255db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * }
265db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * </pre>
275db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * OID: 0.4.0.127.0.7
285db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     */
29e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom    static final ASN1ObjectIdentifier    bsi_de      = new ASN1ObjectIdentifier("0.4.0.127.0.7");
30e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom
315db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /**
325db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * <pre>
335db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * id-PK OBJECT IDENTIFIER ::= {
345db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     *     bsi-de protocols(2) smartcard(2) 1
355db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * }
365db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * </pre>
375db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * OID: 0.4.0.127.0.7.2.2.1
385db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     */
395db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    static final ASN1ObjectIdentifier    id_PK      = bsi_de.branch("2.2.1");
40e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom
415db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.1.1 */
425db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    static final ASN1ObjectIdentifier    id_PK_DH   = id_PK.branch("1");
435db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.1.2 */
44e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom    static final ASN1ObjectIdentifier    id_PK_ECDH = id_PK.branch("2");
45e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom
465db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /**
475db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * <pre>
485db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * id-CA OBJECT IDENTIFIER ::= {
495db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     *     bsi-de protocols(2) smartcard(2) 3
505db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * }
515db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * </pre>
525db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * OID: 0.4.0.127.0.7.2.2.3
535db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     */
545db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    static final ASN1ObjectIdentifier    id_CA                   = bsi_de.branch("2.2.3");
555db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.3.1 */
565db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    static final ASN1ObjectIdentifier    id_CA_DH                = id_CA.branch("1");
575db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.3.1.1 */
585db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    static final ASN1ObjectIdentifier    id_CA_DH_3DES_CBC_CBC   = id_CA_DH.branch("1");
595db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.3.2 */
605db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    static final ASN1ObjectIdentifier    id_CA_ECDH              = id_CA.branch("2");
615db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.3.2.1 */
62e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom    static final ASN1ObjectIdentifier    id_CA_ECDH_3DES_CBC_CBC = id_CA_ECDH.branch("1");
63e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom
645db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /**
655db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * <pre>
665db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * id-TA OBJECT IDENTIFIER ::= {
675db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     *     bsi-de protocols(2) smartcard(2) 2
685db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * }
695db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * </pre>
705db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * OID: 0.4.0.127.0.7.2.2.2
715db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     */
72e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom    static final ASN1ObjectIdentifier    id_TA = bsi_de.branch("2.2.2");
73e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom
745db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.2.1 */
755db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    static final ASN1ObjectIdentifier    id_TA_RSA              = id_TA.branch("1");
765db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.2.1.1 */
775db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    static final ASN1ObjectIdentifier    id_TA_RSA_v1_5_SHA_1   = id_TA_RSA.branch("1");
785db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.2.1.2 */
79e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom    static final ASN1ObjectIdentifier    id_TA_RSA_v1_5_SHA_256 = id_TA_RSA.branch("2");
805db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.2.1.3 */
815db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    static final ASN1ObjectIdentifier    id_TA_RSA_PSS_SHA_1    = id_TA_RSA.branch("3");
825db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.2.1.4 */
835db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    static final ASN1ObjectIdentifier    id_TA_RSA_PSS_SHA_256  = id_TA_RSA.branch("4");
845db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.2.1.5 */
85e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom    static final ASN1ObjectIdentifier    id_TA_RSA_v1_5_SHA_512 = id_TA_RSA.branch("5");
865db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.2.1.6 */
875db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    static final ASN1ObjectIdentifier    id_TA_RSA_PSS_SHA_512  = id_TA_RSA.branch("6");
885db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.2.2 */
895db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    static final ASN1ObjectIdentifier    id_TA_ECDSA            = id_TA.branch("2");
905db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.2.2.1 */
915db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    static final ASN1ObjectIdentifier    id_TA_ECDSA_SHA_1      = id_TA_ECDSA.branch("1");
925db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.2.2.2 */
935db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    static final ASN1ObjectIdentifier    id_TA_ECDSA_SHA_224    = id_TA_ECDSA.branch("2");
945db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.2.2.3 */
955db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    static final ASN1ObjectIdentifier    id_TA_ECDSA_SHA_256    = id_TA_ECDSA.branch("3");
965db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.2.2.4 */
975db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    static final ASN1ObjectIdentifier    id_TA_ECDSA_SHA_384    = id_TA_ECDSA.branch("4");
985db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    /** OID: 0.4.0.127.0.7.2.2.2.2.5 */
995db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root    static final ASN1ObjectIdentifier    id_TA_ECDSA_SHA_512    = id_TA_ECDSA.branch("5");
100e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom
101e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom    /**
1025db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * <pre>
103e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom     * id-EAC-ePassport OBJECT IDENTIFIER ::= {
1045db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     *     bsi-de applications(3) mrtd(1) roles(2) 1
1055db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * }
1065db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * </pre>
1075db505e1f6a68c8d5dfdb0fed0b8607dea7bed96Kenny Root     * OID: 0.4.0.127.0.7.3.1.2.1
108e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom     */
109e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom    static final ASN1ObjectIdentifier id_EAC_ePassport = bsi_de.branch("3.1.2.1");
110e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom}
111