📄 ospasn1parse.c
字号:
{"attrTypeAndVal", OSPC_TAG_TYPE_DERIVED, OSPEPTID_ATTRTYPEANDVAL,0x2, 0, 0xff, 0, 0}, {"terminator", OSPC_TAG_TYPE_NULL, OSPEPTID_NOTDEFINED, 0x3, 1, 1, 0, 0}, {OSPC_OSNULL}}; static OSPTASN1PARSETABLE ospgParseTable_PrivateKeyInfo[] ={ {"PrivateKeyInfo", OSPC_TAG_TYPE_SEQUENCE, OSPEPTID_NOTDEFINED, 0x0, 1, 1, 0, 0}, {"version", OSPC_TAG_TYPE_INTEGER, OSPEPTID_NOTDEFINED, 0x1, 1, 1, 0, 0}, {"algorithm", OSPC_TAG_TYPE_DERIVED, OSPEPTID_DERALGORITHMID, 0x2, 1, 1, 0, 0}, {"privateKey", OSPC_TAG_TYPE_OCTET_STRING, OSPEPTID_NOTDEFINED, 0x3, 1, 1, 0, 0}, {"attributes", OSPC_TAG_TYPE_DERIVED, OSPEPTID_PRIVATEKEYINFO_ATTRIBUTES, 0x4, 0, 1, 0, 0}, {OSPC_OSNULL}}; static OSPTASN1PARSETABLE ospgParseTable_PrivateKeyInfo_Attributes[] ={ {"UnauthenticatedAttributes",OSPM_TAG_TYPE_IMPLICIT_TAG(0), OSPEPTID_NOTDEFINED, 0x0, 0, 1, 0, 0}, {"unauthenticatedAttribute",OSPC_TAG_TYPE_DERIVED, OSPEPTID_ATTRTYPEANDVAL,0x1, 1, 0xff, 0, 0}, {OSPC_OSNULL}}; static OSPTASN1PARSETABLE ospgParseTable_CertReq[] ={ {"CertReq", OSPC_TAG_TYPE_SEQUENCE, OSPEPTID_NOTDEFINED, 0x0, 1, 1, 0, 0 }, {"certReqInfo", OSPC_TAG_TYPE_DERIVED, OSPEPTID_CERTREQINFO, 0x1, 1, 1, 0, 0 }, {"signatureAlgorithm", OSPC_TAG_TYPE_DERIVED, OSPEPTID_SIGNATUREALGORITHM, 0x2, 1, 1, 0, 0 }, {"signature", OSPC_TAG_TYPE_BIT_STRING, OSPEPTID_NOTDEFINED, 0x3, 1, 1, 0, 0 }, {OSPC_OSNULL}};static OSPTASN1PARSETABLE ospgParseTable_CertReqInfo[] ={ {"CertReqInfo", OSPC_TAG_TYPE_SEQUENCE, OSPEPTID_NOTDEFINED, 0x0, 1, 1, 0, 0 }, {"version", OSPC_TAG_TYPE_INTEGER, OSPEPTID_NOTDEFINED, 0x1, 1, 1, 0, 0 }, {"Subject", OSPC_TAG_TYPE_DERIVED, OSPEPTID_RDNSEQUENCE, 0x2, 1, 1, 0, 0 }, {"subjectPubKeyInfo", OSPC_TAG_TYPE_DERIVED, OSPEPTID_SUBJPUBKEYINFO, 0x3, 1, 1, 0, 0 }, {"attributes", OSPM_TAG_TYPE_EXPLICIT_TAG(0), OSPEPTID_NOTDEFINED, 0x4, 0, 1, 0, 0 }, {OSPC_OSNULL}};/* NOTE: THE OSPEASN1PARSETABLEID enum list must stay in sync with ospgParseTableIndex[]. The enumvalues are the index into the ParseTableIndex for the parse table array.*/ static OSPTASN1PARSETABLE *ospgParseTableIndex[] ={ /* TO NOT CHANGE THIS TABLE WITHOUT UPDATING THE ENUM VALUES IN OSPEASN1PARSETABLEID */ /* CERTIFICATE ELEMENTS */ ospgParseTable_NotDefined, ospgParseTable_Certificate, ospgParseTable_TBSCertificate, ospgParseTable_SignatureAlgorithm, ospgParseTable_DERAlgorithmId, ospgParseTable_Explicit_Version, ospgParseTable_Version, ospgParseTable_CertSerialNum, ospgParseTable_Name, ospgParseTable_RDNSequence, ospgParseTable_RelDisName, ospgParseTable_AttrTypeAndValue, ospgParseTable_AttributeType, ospgParseTable_AttributeValue, ospgParseTable_Validity, ospgParseTable_Time, ospgParseTable_UTCTime, ospgParseTable_SubjPubKeyInfo, ospgParseTable_IssuerUniqueId, ospgParseTable_SubjectUniqueId, ospgParseTable_UniqueId, ospgParseTable_Explicit_Extensions, ospgParseTable_Extensions, ospgParseTable_Extension, ospgParseTable_ContentInfo_Data, ospgParseTable_Explicit_Data, ospgParseTable_Data, ospgParseTable_ContentInfo_SignedData, ospgParseTable_Explicit_SignedData, ospgParseTable_SignedData, ospgParseTable_DigestAlgorithms, ospgParseTable_Certificates, ospgParseTable_CertRevLists, ospgParseTable_CertRevList, ospgParseTable_SignerInfos, ospgParseTable_SignerInfo, ospgParseTable_EncryptedDigest, ospgParseTable_AuthAttributes, ospgParseTable_UnauthAttributes, ospgParseTable_IssuerAndSerNum, ospgParseTable_DigestInfo, ospgParseTable_AlgorithmId, ospgParseTable_PrivateKeyInfo, ospgParseTable_PrivateKeyInfo_Attributes, ospgParseTable_CertReq, ospgParseTable_CertReqInfo, OSPC_OSNULL};/* NOTE: THE OSPEASN1DATAREFID enum list must stay in sync with ospgDataReferenceIdIndex[]. The enumvalues are the index into the DataReferenceIdIndex. */static unsigned char ospgDataRefId_NotDefined[] = { 0xff };static unsigned char ospgDataRefId_Certificate[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, 0xff };static unsigned char ospgDataRefId_Cert_TBSCertificate[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, 0xff };static unsigned char ospgDataRefId_Cert_SignatureAlgorithm[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_SIGNATUREALGORITHM, 0xff };static unsigned char ospgDataRefId_Cert_Signature[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_SIGNATURE, 0xff };static unsigned char ospgDataRefId_Cert_Explicit_Version[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, OSPC_ASN1_DATAREFID_CERT_EXPLICIT_VERSION, 0xff };static unsigned char ospgDataRefId_Cert_Version[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, OSPC_ASN1_DATAREFID_CERT_VERSION, 0xff };static unsigned char ospgDataRefId_Cert_SerialNumber[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, OSPC_ASN1_DATAREFID_CERT_SERIALNUMBER, 0xff };static unsigned char ospgDataRefId_Cert_Signature_TBS[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, OSPC_ASN1_DATAREFID_CERT_SIGNATURE_TBS, 0xff };static unsigned char ospgDataRefId_Cert_Issuer[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, OSPC_ASN1_DATAREFID_CERT_ISSUER, 0xff };static unsigned char ospgDataRefId_Cert_NotBefore[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, OSPC_ASN1_DATAREFID_CERT_VALIDITY, OSPC_ASN1_DATAREFID_CERT_NOTBEFORE, 0xff };static unsigned char ospgDataRefId_Cert_NotAfter[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, OSPC_ASN1_DATAREFID_CERT_VALIDITY, OSPC_ASN1_DATAREFID_CERT_NOTAFTER, 0xff };static unsigned char ospgDataRefId_Cert_Subject[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, OSPC_ASN1_DATAREFID_CERT_SUBJECT, 0xff };static unsigned char ospgDataRefId_Cert_SubjPubKeyInfo[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, OSPC_ASN1_DATAREFID_CERT_SUBJPUBKEYINFO, 0xff };static unsigned char ospgDataRefId_Cert_PublicKeyAlg[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, OSPC_ASN1_DATAREFID_CERT_SUBJPUBKEYINFO, OSPC_ASN1_DATAREFID_CERT_PUBLICKEYALG, 0xff };static unsigned char ospgDataRefId_Cert_PublicKey[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, OSPC_ASN1_DATAREFID_CERT_SUBJPUBKEYINFO, OSPC_ASN1_DATAREFID_CERT_PUBLICKEY, 0xff };static unsigned char ospgDataRefId_Cert_IssuerUniqueId[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, OSPC_ASN1_DATAREFID_CERT_ISSUERUNIQUEID, 0xff };static unsigned char ospgDataRefId_Cert_SubjectUniqueId[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, OSPC_ASN1_DATAREFID_CERT_SUBJECTUNIQUEID, 0xff };static unsigned char ospgDataRefId_Cert_Explicit_Extensions[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, OSPC_ASN1_DATAREFID_CERT_EXPLICIT_EXTENSIONS, 0xff };static unsigned char ospgDataRefId_Cert_Extensions[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, OSPC_ASN1_DATAREFID_CERT_EXPLICIT_EXTENSIONS, OSPC_ASN1_DATAREFID_CERT_EXTENSIONS, 0xff };static unsigned char ospgDataRefId_Cert_Extension[] = { OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, OSPC_ASN1_DATAREFID_CERT_EXPLICIT_EXTENSIONS, OSPC_ASN1_DATAREFID_CERT_EXTENSIONS, OSPC_ASN1_DATAREFID_CERT_EXTENSION, 0xff };static unsigned char ospgDataRefId_SignedData[] = { OSPC_ASN1_DATAREFID_SIGNEDDATA, 0xff };static unsigned char ospgDataRefId_SgnDat_Version[] = { OSPC_ASN1_DATAREFID_SIGNEDDATA, OSPC_ASN1_DATAREFID_SGNDAT_VERSION, 0xff };static unsigned char ospgDataRefId_SgnDat_DigestAlgorithms[] = { OSPC_ASN1_DATAREFID_SIGNEDDATA, OSPC_ASN1_DATAREFID_SGNDAT_DIGESTALGORITHMS, 0xff };static unsigned char ospgDataRefId_SgnDat_DigestAlgorithm[] = { OSPC_ASN1_DATAREFID_SIGNEDDATA, OSPC_ASN1_DATAREFID_SGNDAT_DIGESTALGORITHMS, OSPC_ASN1_DATAREFID_SGNDAT_DIGESTALGORITHM, 0xff };static unsigned char ospgDataRefId_SgnDat_Content[] = { OSPC_ASN1_DATAREFID_SIGNEDDATA, OSPC_ASN1_DATAREFID_SGNDAT_CONTENTINFO, 0xff };static unsigned char ospgDataRefId_SgnDat_Certificates[] = { OSPC_ASN1_DATAREFID_SIGNEDDATA, OSPC_ASN1_DATAREFID_SGNDAT_CERTIFICATES, 0xff };static unsigned char ospgDataRefId_SgnDat_Certificate[] = { OSPC_ASN1_DATAREFID_SIGNEDDATA, OSPC_ASN1_DATAREFID_SGNDAT_CERTIFICATES, OSPC_ASN1_DATAREFID_SGNDAT_CERTIFICATE, 0xff };static unsigned char ospgDataRefId_SgnDat_Certificate_SubjPubKeyInfo[] = { OSPC_ASN1_DATAREFID_SIGNEDDATA, OSPC_ASN1_DATAREFID_SGNDAT_CERTIFICATES, OSPC_ASN1_DATAREFID_SGNDAT_CERTIFICATE, OSPC_ASN1_DATAREFID_CERTIFICATE, OSPC_ASN1_DATAREFID_CERT_TBSCERTIFICATE, OSPC_ASN1_DATAREFID_CERT_SUBJPUBKEYINFO, 0xff};static unsigned char ospgDataRefId_SgnDat_CertRevLists[] = { OSPC_ASN1_DATAREFID_SIGNEDDATA, OSPC_ASN1_DATAREFID_SGNDAT_CERTREVLISTS, 0xff };static unsigned char ospgDataRefId_SgnDat_CertRevList[] = { OSPC_ASN1_DATAREFID_SIGNEDDATA, OSPC_ASN1_DATAREFID_SGNDAT_CERTREVLISTS, OSPC_ASN1_DATAREFID_SGNDAT_CERTREVLIST, 0xff };static unsigned char ospgDataRefId_SgnDat_SignerInfos[] = { OSPC_ASN1_DATAREFID_SIGNEDDATA, OSPC_ASN1_DATAREFID_SGNDAT_SIGNERINFOS, 0xff };static unsigned char ospgDataRefId_SgnDat_SignerInfo[] = { OSPC_ASN1_DATAREFID_SIGNEDDATA, OSPC_ASN1_DATAREFID_SGNDAT_SIGNERINFOS, OSPC_ASN1_DATAREFID_SGNDAT_SIGNERINFO, 0xff };static unsigned char ospgDataRefId_SignerInfo [] = { OSPC_ASN1_DATAREFID_SIGNERINFO, 0xff};static unsigned char ospgDataRefId_SgnInf_Version[] = { OSPC_ASN1_DATAREFID_SIGNERINFO, OSPC_ASN1_DATAREFID_SGNINF_VERSION, 0xff };static unsigned char ospgDataRefId_SgnInf_Issuer [] = { OSPC_ASN1_DATAREFID_SIGNERINFO, OSPC_ASN1_DATAREFID_SGNINF_ISSUERANDSERNUM, OSPC_ASN1_DATAREFID_SGNINF_ISSUER, 0xff };static unsigned char ospgDataRefId_SgnInf_SerialNumber [] = { OSPC_ASN1_DATAREFID_SIGNERINFO, OSPC_ASN1_DATAREFID_SGNINF_ISSUERANDSERNUM, OSPC_ASN1_DATAREFID_SGNINF_SERIALNUMBER, 0xff };static unsigned char ospgDataRefId_SgnInf_DigestAlgorithm [] = { OSPC_ASN1_DATAREFID_SIGNERINFO, OSPC_ASN1_DATAREFID_SGNINF_DIGESTALGORITHM, 0xff };static unsigned char ospgDataRefId_SgnInf_AuthAttributes[] = { OSPC_ASN1_DATAREFID_SIGNERINFO, OSPC_ASN1_DATAREFID_SGNINF_AUTHATTRIBUTES, 0xff };static unsigned char ospgDataRefId_SgnInf_DigEncryptAlg [] = { OSPC_ASN1_DATAREFID_SIGNERINFO, OSPC_ASN1_DATAREFID_SGNINF_DIGENCRYPTALG, 0xff };static unsigned char ospgDataRefId_SgnInf_EncryptedDigest [] = { OSPC_ASN1_DATAREFID_SIGNERINFO, OSPC_ASN1_DATAREFID_SGNINF_ENCRYPTEDDIGEST, 0xff };static unsigned char ospgDataRefId_SgnInf_UnauthAttributes [] = { OSPC_ASN1_DATAREFID_SIGNERINFO, OSPC_ASN1_DATAREFID_SGNINF_UNAUTHATTRIBUTES, 0xff };static unsigned char ospgDataRefId_ContentInfo[] = { OSPC_ASN1_DATAREFID_CONTENTINFO, 0xff };static unsigned char ospgDataRefId_CntInf_ContentType[] = { OSPC_ASN1_DATAREFID_CONTENTINFO, OSPC_ASN1_DATAREFID_CNTINF_CONTENTTYPE, 0xff };static unsigned char ospgDataRefId_CntInf_Explicit_Content[] = { OSPC_ASN1_DATAREFID_CONTENTINFO, OSPC_ASN1_DATAREFID_CNTINF_EXPLICIT_CONTENT, 0xff };static unsigned char ospgDataRefId_CntInf_Content[] = { OSPC_ASN1_DATAREFID_CONTENTINFO, OSPC_ASN1_DATAREFID_CNTINF_EXPLICIT_CONTENT, OSPC_ASN1_DATAREFID_CNTINF_CONTENT, 0xff };static unsigned char ospgDataRefId_DigestInfo[] = { OSPC_ASN1_DATAREFID_DIGESTINFO, 0xff };static unsigned char ospgDataRefId_DigInf_DigestAlgorithm[] = { OSPC_ASN1_DATAREFID_DIGESTINFO, OSPC_ASN1_DATAREFID_DIGINF_DIGESTALGORITHM, 0xff };static unsigned char ospgDataRefId_DigInf_Digest[] = { OSPC_ASN1_DATAREFID_DIGESTINFO, OSPC_ASN1_DATAREFID_DIGINF_DIGEST, 0xff };static unsigned char ospgDataRefId_AlgorithmId[] = { OSPC_ASN1_DATAREFID_ALGORITHMID, 0xff };
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -