using System;
namespace Org.BouncyCastle.Asn1.GM
{
// TODO[api] Make static
public abstract class GMObjectIdentifiers
{
public static readonly DerObjectIdentifier sm_scheme = new DerObjectIdentifier("1.2.156.10197.1");
public static readonly DerObjectIdentifier sm6_ecb = sm_scheme.Branch("101.1");
public static readonly DerObjectIdentifier sm6_cbc = sm_scheme.Branch("101.2");
public static readonly DerObjectIdentifier sm6_ofb128 = sm_scheme.Branch("101.3");
public static readonly DerObjectIdentifier sm6_cfb128 = sm_scheme.Branch("101.4");
public static readonly DerObjectIdentifier sm1_ecb = sm_scheme.Branch("102.1");
public static readonly DerObjectIdentifier sm1_cbc = sm_scheme.Branch("102.2");
public static readonly DerObjectIdentifier sm1_ofb128 = sm_scheme.Branch("102.3");
public static readonly DerObjectIdentifier sm1_cfb128 = sm_scheme.Branch("102.4");
public static readonly DerObjectIdentifier sm1_cfb1 = sm_scheme.Branch("102.5");
public static readonly DerObjectIdentifier sm1_cfb8 = sm_scheme.Branch("102.6");
public static readonly DerObjectIdentifier ssf33_ecb = sm_scheme.Branch("103.1");
public static readonly DerObjectIdentifier ssf33_cbc = sm_scheme.Branch("103.2");
public static readonly DerObjectIdentifier ssf33_ofb128 = sm_scheme.Branch("103.3");
public static readonly DerObjectIdentifier ssf33_cfb128 = sm_scheme.Branch("103.4");
public static readonly DerObjectIdentifier ssf33_cfb1 = sm_scheme.Branch("103.5");
public static readonly DerObjectIdentifier ssf33_cfb8 = sm_scheme.Branch("103.6");
public static readonly DerObjectIdentifier sms4_ecb = sm_scheme.Branch("104.1");
public static readonly DerObjectIdentifier sms4_cbc = sm_scheme.Branch("104.2");
public static readonly DerObjectIdentifier sms4_ofb128 = sm_scheme.Branch("104.3");
public static readonly DerObjectIdentifier sms4_cfb128 = sm_scheme.Branch("104.4");
public static readonly DerObjectIdentifier sms4_cfb1 = sm_scheme.Branch("104.5");
public static readonly DerObjectIdentifier sms4_cfb8 = sm_scheme.Branch("104.6");
public static readonly DerObjectIdentifier sms4_ctr = sm_scheme.Branch("104.7");
public static readonly DerObjectIdentifier sms4_gcm = sm_scheme.Branch("104.8");
public static readonly DerObjectIdentifier sms4_ccm = sm_scheme.Branch("104.9");
public static readonly DerObjectIdentifier sms4_xts = sm_scheme.Branch("104.10");
public static readonly DerObjectIdentifier sms4_wrap = sm_scheme.Branch("104.11");
public static readonly DerObjectIdentifier sms4_wrap_pad = sm_scheme.Branch("104.12");
public static readonly DerObjectIdentifier sms4_ocb = sm_scheme.Branch("104.100");
public static readonly DerObjectIdentifier sm5 = sm_scheme.Branch("201");
public static readonly DerObjectIdentifier sm2p256v1 = sm_scheme.Branch("301");
public static readonly DerObjectIdentifier sm2sign = sm_scheme.Branch("301.1");
public static readonly DerObjectIdentifier sm2exchange = sm_scheme.Branch("301.2");
public static readonly DerObjectIdentifier sm2encrypt = sm_scheme.Branch("301.3");
/**
* <Information security technology — Cryptographic application identifier criterion specification>
* http://c.gb688.cn/bzgk/gb/showGb?type=online&hcno=252CF0F72A7BE339A56DEA7D774E8994,
* Page 21 only cover from 301.1 to 301.3
*/
public static readonly DerObjectIdentifier wapip192v1 = sm_scheme.Branch("301.101");
/**
* <WAPI certificate management—Part 5: Example of certificate format (draft)>
* http://www.chinabwips.org.cn/zqyjgs1.htm and
* http://www.chinabwips.org.cn/doc/101.pdf,
* Page 9 and page 10 states the OID of ECDSA-192 algorithm based on SHA-256 is 1.2.156.11235.1.1.1
* */
public static readonly DerObjectIdentifier wapi192v1 = new DerObjectIdentifier("1.2.156.11235.1.1.1");
public static readonly DerObjectIdentifier wapi192v1_parameters = new DerObjectIdentifier("1.2.156.11235.1.1.2.1");
public static readonly DerObjectIdentifier sm2encrypt_recommendedParameters = sm2encrypt.Branch("1");
public static readonly DerObjectIdentifier sm2encrypt_specifiedParameters = sm2encrypt.Branch("2");
public static readonly DerObjectIdentifier sm2encrypt_with_sm3 = sm2encrypt.Branch("2.1");
public static readonly DerObjectIdentifier sm2encrypt_with_sha1 = sm2encrypt.Branch("2.2");
public static readonly DerObjectIdentifier sm2encrypt_with_sha224 = sm2encrypt.Branch("2.3");
public static readonly DerObjectIdentifier sm2encrypt_with_sha256 = sm2encrypt.Branch("2.4");
public static readonly DerObjectIdentifier sm2encrypt_with_sha384 = sm2encrypt.Branch("2.5");
public static readonly DerObjectIdentifier sm2encrypt_with_sha512 = sm2encrypt.Branch("2.6");
public static readonly DerObjectIdentifier sm2encrypt_with_rmd160 = sm2encrypt.Branch("2.7");
public static readonly DerObjectIdentifier sm2encrypt_with_whirlpool = sm2encrypt.Branch("2.8");
public static readonly DerObjectIdentifier sm2encrypt_with_blake2b512 = sm2encrypt.Branch("2.9");
public static readonly DerObjectIdentifier sm2encrypt_with_blake2s256 = sm2encrypt.Branch("2.10");
public static readonly DerObjectIdentifier sm2encrypt_with_md5 = sm2encrypt.Branch("2.11");
public static readonly DerObjectIdentifier id_sm9PublicKey = sm_scheme.Branch("302");
public static readonly DerObjectIdentifier sm9sign = sm_scheme.Branch("302.1");
public static readonly DerObjectIdentifier sm9keyagreement = sm_scheme.Branch("302.2");
public static readonly DerObjectIdentifier sm9encrypt = sm_scheme.Branch("302.3");
public static readonly DerObjectIdentifier sm3 = sm_scheme.Branch("401");
public static readonly DerObjectIdentifier hmac_sm3 = sm3.Branch("2");
public static readonly DerObjectIdentifier sm2sign_with_sm3 = sm_scheme.Branch("501");
public static readonly DerObjectIdentifier sm2sign_with_sha1 = sm_scheme.Branch("502");
public static readonly DerObjectIdentifier sm2sign_with_sha256 = sm_scheme.Branch("503");
public static readonly DerObjectIdentifier sm2sign_with_sha512 = sm_scheme.Branch("504");
public static readonly DerObjectIdentifier sm2sign_with_sha224 = sm_scheme.Branch("505");
public static readonly DerObjectIdentifier sm2sign_with_sha384 = sm_scheme.Branch("506");
public static readonly DerObjectIdentifier sm2sign_with_rmd160 = sm_scheme.Branch("507");
public static readonly DerObjectIdentifier sm2sign_with_whirlpool = sm_scheme.Branch("520");
public static readonly DerObjectIdentifier sm2sign_with_blake2b512 = sm_scheme.Branch("521");
public static readonly DerObjectIdentifier sm2sign_with_blake2s256 = sm_scheme.Branch("522");
}
}