asn1: Also pretty-print cert policies

This commit is contained in:
Nicolas Williams
2021-08-09 11:15:41 -05:00
parent 7db298668b
commit df4b09f8af
2 changed files with 184 additions and 164 deletions

View File

@@ -2183,167 +2183,168 @@ test_ios(void)
0x75, 0x06, 0x75, 0x06,
}; };
char cert_json[] = { char cert_json[] = {
"{\"_type\":\"Certificate\",\"tbsCertificate\":{\"_type\":\"TBSCertificate" "{\"_type\":\"Certificate\",\"tbsCertificate\":{\"_type\":\"TBSCertificate"
"\",\"_save\":\"30820376A00302010202146A0597BA71D7E6D3AC0EDC9EDC95A15" "\",\"_save\":\"30820376A00302010202146A0597BA71D7E6D3AC0EDC9EDC95A15"
"B998DE40A300D06092A864886F70D01010B05003055310B30090603550406130" "B998DE40A300D06092A864886F70D01010B05003055310B30090603550406130"
"24348311E301C060355040A131553544D6963726F656C656374726F6E6963732" "24348311E301C060355040A131553544D6963726F656C656374726F6E6963732"
"04E56312630240603550403131D53544D2054504D20454B20496E7465726D656" "04E56312630240603550403131D53544D2054504D20454B20496E7465726D656"
"469617465204341203035301E170D3138313231343030303030305A170D32383" "469617465204341203035301E170D3138313231343030303030305A170D32383"
"13231343030303030305A300030820122300D06092A864886F70D01010105000" "13231343030303030305A300030820122300D06092A864886F70D01010105000"
"382010F003082010A0282010100CC14EB27A78CEB0EA486FA2DF7835F5FA8E90" "382010F003082010A0282010100CC14EB27A78CEB0EA486FA2DF7835F5FA8E90"
"5B097012B5BDE50380C355B1A2A721BBC3D08DD21796CDB239FA95310651B1B5" "5B097012B5BDE50380C355B1A2A721BBC3D08DD21796CDB239FA95310651B1B5"
"6FD2CFE53C87352EBD996E33256160404CE9302A08066801E786A2F86E181F94" "6FD2CFE53C87352EBD996E33256160404CE9302A08066801E786A2F86E181F94"
"9966F492A85B58EAA4A6A8CB3697551BB236E87CC7BF8EC1347871C91E15437E" "9966F492A85B58EAA4A6A8CB3697551BB236E87CC7BF8EC1347871C91E15437E"
"8F266BF1EA5EB271FDCF374D8B47DF8BCE89E1FAD61C2A088CB4036B359CB72A" "8F266BF1EA5EB271FDCF374D8B47DF8BCE89E1FAD61C2A088CB4036B359CB72A"
"294973FEDCCF0C340AFFD14B64F041165581ACA34147C1C75617047058F7ED7D" "294973FEDCCF0C340AFFD14B64F041165581ACA34147C1C75617047058F7ED7D"
"603E032508094FA73E8B9153DA3BF255D2CBBC5DF301BA8F74D198BEBCE86040" "603E032508094FA73E8B9153DA3BF255D2CBBC5DF301BA8F74D198BEBCE86040"
"FC1D2927C7657414490D802F482F3EBF2DE35EE149A1A6DE8D16891FBFBA02A1" "FC1D2927C7657414490D802F482F3EBF2DE35EE149A1A6DE8D16891FBFBA02A1"
"8AFE59F9D6F149744E5F0D559B10203010001A38201A9308201A5301F0603551" "8AFE59F9D6F149744E5F0D559B10203010001A38201A9308201A5301F0603551"
"D230418301680141ADB994AB58BE57A0CC9B900E7851E1A43C08660304206035" "D230418301680141ADB994AB58BE57A0CC9B900E7851E1A43C08660304206035"
"51D20043B303930370604551D2000302F302D06082B060105050702011621687" "51D20043B303930370604551D2000302F302D06082B060105050702011621687"
"474703A2F2F7777772E73742E636F6D2F54504D2F7265706F7369746F72792F3" "474703A2F2F7777772E73742E636F6D2F54504D2F7265706F7369746F72792F3"
"0590603551D110101FF044F304DA44B304931163014060567810502010C0B696" "0590603551D110101FF044F304DA44B304931163014060567810502010C0B696"
"43A353335343444323031173015060567810502020C0C5354333348545048414" "43A353335343444323031173015060567810502020C0C5354333348545048414"
"8433031163014060567810502030C0B69643A303034393030303830670603551" "8433031163014060567810502030C0B69643A303034393030303830670603551"
"D090460305E301706056781050210310E300C0C03322E300201000202008A304" "D090460305E301706056781050210310E300C0C03322E300201000202008A304"
"306056781050212313A30380201000101FFA0030A0101A1030A0100A2030A010" "306056781050212313A30380201000101FFA0030A0101A1030A0100A2030A010"
"0A310300E1603332E310A01040A01020101FFA40F300D16053134302D320A010" "0A310300E1603332E310A01040A01020101FFA40F300D16053134302D320A010"
"2010100300E0603551D0F0101FF040403020520300C0603551D130101FF04023" "2010100300E0603551D0F0101FF040403020520300C0603551D130101FF04023"
"00030100603551D250409300706056781050801304A06082B060105050701010" "00030100603551D250409300706056781050801304A06082B060105050701010"
"43E303C303A06082B06010505073002862E687474703A2F2F7365637572652E6" "43E303C303A06082B06010505073002862E687474703A2F2F7365637572652E6"
"76C6F62616C7369676E2E636F6D2F73746D74706D656B696E7430352E637274\"" "76C6F62616C7369676E2E636F6D2F73746D74706D656B696E7430352E637274\""
",\"version\":\"rfc3280_version_3\",\"serialNumber\":\"6A0597BA71D7E6D3A" ",\"version\":\"rfc3280_version_3\",\"serialNumber\":\"6A0597BA71D7E6D3A"
"C0EDC9EDC95A15B998DE40A\",\"signature\":{\"_type\":\"AlgorithmIdentifi" "C0EDC9EDC95A15B998DE40A\",\"signature\":{\"_type\":\"AlgorithmIdentifi"
"er\",\"algorithm\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"1.2.840.1135" "er\",\"algorithm\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"1.2.840.1135"
"49.1.1.11\",\"components\":[1,2,840,113549,1,1,11],\"name\":\"id-pkcs1" "49.1.1.11\",\"components\":[1,2,840,113549,1,1,11],\"name\":\"id-pkcs1"
"-sha256WithRSAEncryption\"},\"parameters\":\"0500\"},\"issuer\":{\"_choi" "-sha256WithRSAEncryption\"},\"parameters\":\"0500\"},\"issuer\":{\"_choi"
"ce\":\"rdnSequence\",\"value\":[[{\"_type\":\"AttributeTypeAndValue\",\"ty" "ce\":\"rdnSequence\",\"value\":[[{\"_type\":\"AttributeTypeAndValue\",\"ty"
"pe\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"2.5.4.6\",\"components\":[2" "pe\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"2.5.4.6\",\"components\":[2"
",5,4,6],\"name\":\"id-at-countryName\"},\"value\":{\"_choice\":\"printabl" ",5,4,6],\"name\":\"id-at-countryName\"},\"value\":{\"_choice\":\"printabl"
"eString\",\"value\":\"CH\"}}],[{\"_type\":\"AttributeTypeAndValue\",\"type" "eString\",\"value\":\"CH\"}}],[{\"_type\":\"AttributeTypeAndValue\",\"type"
"\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"2.5.4.10\",\"components\":[2," "\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"2.5.4.10\",\"components\":[2,"
"5,4,10],\"name\":\"id-at-organizationName\"},\"value\":{\"_choice\":\"pri" "5,4,10],\"name\":\"id-at-organizationName\"},\"value\":{\"_choice\":\"pri"
"ntableString\",\"value\":\"STMicroelectronics NV\"}}],[{\"_type\":\"Attr" "ntableString\",\"value\":\"STMicroelectronics NV\"}}],[{\"_type\":\"Attr"
"ibuteTypeAndValue\",\"type\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"2." "ibuteTypeAndValue\",\"type\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"2."
"5.4.3\",\"components\":[2,5,4,3],\"name\":\"id-at-commonName\"},\"value\"" "5.4.3\",\"components\":[2,5,4,3],\"name\":\"id-at-commonName\"},\"value\""
":{\"_choice\":\"printableString\",\"value\":\"STM TPM EK Intermediate C" ":{\"_choice\":\"printableString\",\"value\":\"STM TPM EK Intermediate C"
"A 05\"}}]]},\"validity\":{\"_type\":\"Validity\",\"notBefore\":{\"_choice\"" "A 05\"}}]]},\"validity\":{\"_type\":\"Validity\",\"notBefore\":{\"_choice\""
":\"utcTime\",\"value\":\"2018-12-14T00:00:00Z\"},\"notAfter\":{\"_choice\"" ":\"utcTime\",\"value\":\"2018-12-14T00:00:00Z\"},\"notAfter\":{\"_choice\""
":\"utcTime\",\"value\":\"2028-12-14T00:00:00Z\"}},\"subject\":{\"_choice\"" ":\"utcTime\",\"value\":\"2028-12-14T00:00:00Z\"}},\"subject\":{\"_choice\""
":\"rdnSequence\",\"value\":[]},\"subjectPublicKeyInfo\":{\"_type\":\"Subj" ":\"rdnSequence\",\"value\":[]},\"subjectPublicKeyInfo\":{\"_type\":\"Subj"
"ectPublicKeyInfo\",\"algorithm\":{\"_type\":\"AlgorithmIdentifier\",\"al" "ectPublicKeyInfo\",\"algorithm\":{\"_type\":\"AlgorithmIdentifier\",\"al"
"gorithm\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"1.2.840.113549.1.1." "gorithm\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"1.2.840.113549.1.1."
"1\",\"components\":[1,2,840,113549,1,1,1],\"name\":\"id-pkcs1-rsaEncry" "1\",\"components\":[1,2,840,113549,1,1,1],\"name\":\"id-pkcs1-rsaEncry"
"ption\"},\"parameters\":\"0500\"},\"subjectPublicKey\":\"2160:3082010A02" "ption\"},\"parameters\":\"0500\"},\"subjectPublicKey\":\"2160:3082010A02"
"82010100CC14EB27A78CEB0EA486FA2DF7835F5FA8E905B097012B5BDE50380C" "82010100CC14EB27A78CEB0EA486FA2DF7835F5FA8E905B097012B5BDE50380C"
"355B1A2A721BBC3D08DD21796CDB239FA95310651B1B56FD2CFE53C87352EBD9" "355B1A2A721BBC3D08DD21796CDB239FA95310651B1B56FD2CFE53C87352EBD9"
"96E33256160404CE9302A08066801E786A2F86E181F949966F492A85B58EAA4A" "96E33256160404CE9302A08066801E786A2F86E181F949966F492A85B58EAA4A"
"6A8CB3697551BB236E87CC7BF8EC1347871C91E15437E8F266BF1EA5EB271FDC" "6A8CB3697551BB236E87CC7BF8EC1347871C91E15437E8F266BF1EA5EB271FDC"
"F374D8B47DF8BCE89E1FAD61C2A088CB4036B359CB72A294973FEDCCF0C340AF" "F374D8B47DF8BCE89E1FAD61C2A088CB4036B359CB72A294973FEDCCF0C340AF"
"FD14B64F041165581ACA34147C1C75617047058F7ED7D603E032508094FA73E8" "FD14B64F041165581ACA34147C1C75617047058F7ED7D603E032508094FA73E8"
"B9153DA3BF255D2CBBC5DF301BA8F74D198BEBCE86040FC1D2927C7657414490" "B9153DA3BF255D2CBBC5DF301BA8F74D198BEBCE86040FC1D2927C7657414490"
"D802F482F3EBF2DE35EE149A1A6DE8D16891FBFBA02A18AFE59F9D6F149744E5" "D802F482F3EBF2DE35EE149A1A6DE8D16891FBFBA02A18AFE59F9D6F149744E5"
"F0D559B10203010001\"},\"issuerUniqueID\":null,\"subjectUniqueID\":nul" "F0D559B10203010001\"},\"issuerUniqueID\":null,\"subjectUniqueID\":nul"
"l,\"extensions\":[{\"_type\":\"Extension\",\"extnID\":{\"_type\":\"OBJECT I" "l,\"extensions\":[{\"_type\":\"Extension\",\"extnID\":{\"_type\":\"OBJECT I"
"DENTIFIER\",\"oid\":\"2.5.29.35\",\"components\":[2,5,29,35],\"name\":\"id" "DENTIFIER\",\"oid\":\"2.5.29.35\",\"components\":[2,5,29,35],\"name\":\"id"
"-x509-ce-authorityKeyIdentifier\"},\"critical\":false,\"extnValue\":\"" "-x509-ce-authorityKeyIdentifier\"},\"critical\":false,\"extnValue\":\""
"301680141ADB994AB58BE57A0CC9B900E7851E1A43C08660\",\"_extnValue_ch" "301680141ADB994AB58BE57A0CC9B900E7851E1A43C08660\",\"_extnValue_ch"
"oice\":\"ext-AuthorityKeyIdentifier\",\"_extnValue\":{\"_type\":\"Author" "oice\":\"ext-AuthorityKeyIdentifier\",\"_extnValue\":{\"_type\":\"Author"
"ityKeyIdentifier\",\"keyIdentifier\":\"1ADB994AB58BE57A0CC9B900E7851" "ityKeyIdentifier\",\"keyIdentifier\":\"1ADB994AB58BE57A0CC9B900E7851"
"E1A43C08660\",\"authorityCertIssuer\":null,\"authorityCertSerialNumb" "E1A43C08660\",\"authorityCertIssuer\":null,\"authorityCertSerialNumb"
"er\":null}},{\"_type\":\"Extension\",\"extnID\":{\"_type\":\"OBJECT IDENTI" "er\":null}},{\"_type\":\"Extension\",\"extnID\":{\"_type\":\"OBJECT IDENTI"
"FIER\",\"oid\":\"2.5.29.32\",\"components\":[2,5,29,32],\"name\":\"id-x509" "FIER\",\"oid\":\"2.5.29.32\",\"components\":[2,5,29,32],\"name\":\"id-x509"
"-ce-certificatePolicies\"},\"critical\":false,\"extnValue\":\"30393037" "-ce-certificatePolicies\"},\"critical\":false,\"extnValue\":\"30393037"
"0604551D2000302F302D06082B060105050702011621687474703A2F2F777777" "0604551D2000302F302D06082B060105050702011621687474703A2F2F777777"
"2E73742E636F6D2F54504D2F7265706F7369746F72792F\",\"_extnValue_choi" "2E73742E636F6D2F54504D2F7265706F7369746F72792F\",\"_extnValue_choi"
"ce\":\"ext-CertificatePolicies\",\"_extnValue\":[{\"_type\":\"PolicyInfo" "ce\":\"ext-CertificatePolicies\",\"_extnValue\":[{\"_type\":\"PolicyInfo"
"rmation\",\"policyIdentifier\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"" "rmation\",\"policyIdentifier\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\""
"2.5.29.32.0\",\"components\":[2,5,29,32,0],\"name\":\"id-x509-ce-certi" "2.5.29.32.0\",\"components\":[2,5,29,32,0],\"name\":\"id-x509-ce-certi"
"ficatePolicies-anyPolicy\"},\"policyQualifiers\":[{\"_type\":\"PolicyQ" "ficatePolicies-anyPolicy\"},\"policyQualifiers\":[{\"_type\":\"PolicyQ"
"ualifierInfo\",\"policyQualifierId\":{\"_type\":\"OBJECT IDENTIFIER\",\"" "ualifierInfo\",\"policyQualifierId\":{\"_type\":\"OBJECT IDENTIFIER\",\""
"oid\":\"1.3.6.1.5.5.7.2.1\",\"components\":[1,3,6,1,5,5,7,2,1],\"name\"" "oid\":\"1.3.6.1.5.5.7.2.1\",\"components\":[1,3,6,1,5,5,7,2,1],\"name\""
":\"id-pkix-qt-cps\"},\"qualifier\":\"1621687474703A2F2F7777772E73742E" ":\"id-pkix-qt-cps\"},\"qualifier\":\"1621687474703A2F2F7777772E73742E"
"636F6D2F54504D2F7265706F7369746F72792F\"}]}]},{\"_type\":\"Extension" "636F6D2F54504D2F7265706F7369746F72792F\",\"_qualifier_choice\":\"pq-"
"\",\"extnID\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"2.5.29.17\",\"compo" "CPS\"}]}]},{\"_type\":\"Extension\",\"extnID\":{\"_type\":\"OBJECT IDENTIF"
"nents\":[2,5,29,17],\"name\":\"id-x509-ce-subjectAltName\"},\"critical" "IER\",\"oid\":\"2.5.29.17\",\"components\":[2,5,29,17],\"name\":\"id-x509-"
"\":true,\"extnValue\":\"304DA44B304931163014060567810502010C0B69643A" "ce-subjectAltName\"},\"critical\":true,\"extnValue\":\"304DA44B3049311"
"353335343444323031173015060567810502020C0C5354333348545048414843" "63014060567810502010C0B69643A35333534344432303117301506056781050"
"3031163014060567810502030C0B69643A3030343930303038\",\"_extnValue_" "2020C0C53543333485450484148433031163014060567810502030C0B69643A3"
"choice\":\"ext-SubjectAltName\",\"_extnValue\":[{\"_choice\":\"directory" "030343930303038\",\"_extnValue_choice\":\"ext-SubjectAltName\",\"_extn"
"Name\",\"value\":{\"_choice\":\"rdnSequence\",\"value\":[[{\"_type\":\"Attri" "Value\":[{\"_choice\":\"directoryName\",\"value\":{\"_choice\":\"rdnSequen"
"buteTypeAndValue\",\"type\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"2.2" "ce\",\"value\":[[{\"_type\":\"AttributeTypeAndValue\",\"type\":{\"_type\":\""
"3.133.2.1\",\"components\":[2,23,133,2,1],\"name\":\"tcg-at-tpmManufac" "OBJECT IDENTIFIER\",\"oid\":\"2.23.133.2.1\",\"components\":[2,23,133,2"
"turer\"},\"value\":{\"_choice\":\"utf8String\",\"value\":\"id:53544D20\"}}]" ",1],\"name\":\"tcg-at-tpmManufacturer\"},\"value\":{\"_choice\":\"utf8Str"
",[{\"_type\":\"AttributeTypeAndValue\",\"type\":{\"_type\":\"OBJECT IDENT" "ing\",\"value\":\"id:53544D20\"}}],[{\"_type\":\"AttributeTypeAndValue\","
"IFIER\",\"oid\":\"2.23.133.2.2\",\"components\":[2,23,133,2,2],\"name\":\"" "\"type\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"2.23.133.2.2\",\"compon"
"tcg-at-tpmModel\"},\"value\":{\"_choice\":\"utf8String\",\"value\":\"ST33H" "ents\":[2,23,133,2,2],\"name\":\"tcg-at-tpmModel\"},\"value\":{\"_choice"
"TPHAHC0\"}}],[{\"_type\":\"AttributeTypeAndValue\",\"type\":{\"_type\":\"O" "\":\"utf8String\",\"value\":\"ST33HTPHAHC0\"}}],[{\"_type\":\"AttributeTyp"
"BJECT IDENTIFIER\",\"oid\":\"2.23.133.2.3\",\"components\":[2,23,133,2," "eAndValue\",\"type\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"2.23.133.2"
"3],\"name\":\"tcg-at-tpmVersion\"},\"value\":{\"_choice\":\"utf8String\",\"" ".3\",\"components\":[2,23,133,2,3],\"name\":\"tcg-at-tpmVersion\"},\"val"
"value\":\"id:00490008\"}}]]}}]},{\"_type\":\"Extension\",\"extnID\":{\"_ty" "ue\":{\"_choice\":\"utf8String\",\"value\":\"id:00490008\"}}]]}}]},{\"_typ"
"pe\":\"OBJECT IDENTIFIER\",\"oid\":\"2.5.29.9\",\"components\":[2,5,29,9]" "e\":\"Extension\",\"extnID\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"2.5."
",\"name\":\"id-x509-ce-subjectDirectoryAttributes\"},\"critical\":fals" "29.9\",\"components\":[2,5,29,9],\"name\":\"id-x509-ce-subjectDirector"
"e,\"extnValue\":\"305E301706056781050210310E300C0C03322E30020100020" "yAttributes\"},\"critical\":false,\"extnValue\":\"305E3017060567810502"
"2008A304306056781050212313A30380201000101FFA0030A0101A1030A0100A" "10310E300C0C03322E300201000202008A304306056781050212313A30380201"
"2030A0100A310300E1603332E310A01040A01020101FFA40F300D16053134302" "000101FFA0030A0101A1030A0100A2030A0100A310300E1603332E310A01040A"
"D320A0102010100\",\"_extnValue_choice\":\"ext-SubjectDirectoryAttrib" "01020101FFA40F300D16053134302D320A0102010100\",\"_extnValue_choice"
"utes\",\"_extnValue\":[{\"_type\":\"AttributeSet\",\"type\":{\"_type\":\"OBJ" "\":\"ext-SubjectDirectoryAttributes\",\"_extnValue\":[{\"_type\":\"Attri"
"ECT IDENTIFIER\",\"oid\":\"2.23.133.2.16\",\"components\":[2,23,133,2,1" "buteSet\",\"type\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"2.23.133.2.1"
"6],\"name\":\"tcg-at-tpmSpecification\"},\"values\":[\"300C0C03322E3002" "6\",\"components\":[2,23,133,2,16],\"name\":\"tcg-at-tpmSpecification\""
"01000202008A\"],\"_values_choice\":\"at-TPMSpecification\",\"_values\":" "},\"values\":[\"300C0C03322E300201000202008A\"],\"_values_choice\":\"at"
"[{\"_type\":\"TPMSpecification\",\"family\":\"2.0\",\"level\":0,\"revision\"" "-TPMSpecification\",\"_values\":[{\"_type\":\"TPMSpecification\",\"famil"
":138}]},{\"_type\":\"AttributeSet\",\"type\":{\"_type\":\"OBJECT IDENTIFI" "y\":\"2.0\",\"level\":0,\"revision\":138}]},{\"_type\":\"AttributeSet\",\"ty"
"ER\",\"oid\":\"2.23.133.2.18\",\"components\":[2,23,133,2,18],\"name\":\"t" "pe\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"2.23.133.2.18\",\"componen"
"cg-at-tpmSecurityAssertions\"},\"values\":[\"30380201000101FFA0030A0" "ts\":[2,23,133,2,18],\"name\":\"tcg-at-tpmSecurityAssertions\"},\"valu"
"101A1030A0100A2030A0100A310300E1603332E310A01040A01020101FFA40F3" "es\":[\"30380201000101FFA0030A0101A1030A0100A2030A0100A310300E1603"
"00D16053134302D320A0102010100\"],\"_values_choice\":\"at-TPMSecurity" "332E310A01040A01020101FFA40F300D16053134302D320A0102010100\"],\"_v"
"Assertions\",\"_values\":[{\"_type\":\"TPMSecurityAssertions\",\"version" "alues_choice\":\"at-TPMSecurityAssertions\",\"_values\":[{\"_type\":\"TP"
"\":0,\"fieldUpgradable\":true,\"ekGenerationType\":\"ekgt-injected\",\"e" "MSecurityAssertions\",\"version\":0,\"fieldUpgradable\":true,\"ekGener"
"kGenerationLocation\":\"tpmManufacturer\",\"ekCertificateGenerationL" "ationType\":\"ekgt-injected\",\"ekGenerationLocation\":\"tpmManufactur"
"ocation\":\"tpmManufacturer\",\"ccInfo\":{\"_type\":\"CommonCriteriaMeas" "er\",\"ekCertificateGenerationLocation\":\"tpmManufacturer\",\"ccInfo\""
"ures\",\"version\":\"3.1\",\"assurancelevel\":\"ealevel4\",\"evaluationSta" ":{\"_type\":\"CommonCriteriaMeasures\",\"version\":\"3.1\",\"assurancelev"
"tus\":\"evaluationCompleted\",\"plus\":true,\"strengthOfFunction\":null" "el\":\"ealevel4\",\"evaluationStatus\":\"evaluationCompleted\",\"plus\":t"
",\"profileOid\":null,\"profileUri\":null,\"targetOid\":null,\"targetUri" "rue,\"strengthOfFunction\":null,\"profileOid\":null,\"profileUri\":nul"
"\":null},\"fipsLevel\":{\"_type\":\"FIPSLevel\",\"version\":\"140-2\",\"leve" "l,\"targetOid\":null,\"targetUri\":null},\"fipsLevel\":{\"_type\":\"FIPSL"
"l\":\"sllevel2\",\"plus\":false},\"iso9000Certified\":false,\"iso9000Uri" "evel\",\"version\":\"140-2\",\"level\":\"sllevel2\",\"plus\":false},\"iso900"
"\":null}]}]},{\"_type\":\"Extension\",\"extnID\":{\"_type\":\"OBJECT IDENT" "0Certified\":false,\"iso9000Uri\":null}]}]},{\"_type\":\"Extension\",\"e"
"IFIER\",\"oid\":\"2.5.29.15\",\"components\":[2,5,29,15],\"name\":\"id-x50" "xtnID\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"2.5.29.15\",\"component"
"9-ce-keyUsage\"},\"critical\":true,\"extnValue\":\"03020520\",\"_extnVal" "s\":[2,5,29,15],\"name\":\"id-x509-ce-keyUsage\"},\"critical\":true,\"ex"
"ue_choice\":\"ext-KeyUsage\",\"_extnValue\":[\"keyEncipherment\"]},{\"_t" "tnValue\":\"03020520\",\"_extnValue_choice\":\"ext-KeyUsage\",\"_extnVal"
"ype\":\"Extension\",\"extnID\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"2." "ue\":[\"keyEncipherment\"]},{\"_type\":\"Extension\",\"extnID\":{\"_type\":"
"5.29.19\",\"components\":[2,5,29,19],\"name\":\"id-x509-ce-basicConstr" "\"OBJECT IDENTIFIER\",\"oid\":\"2.5.29.19\",\"components\":[2,5,29,19],\""
"aints\"},\"critical\":true,\"extnValue\":\"3000\",\"_extnValue_choice\":\"" "name\":\"id-x509-ce-basicConstraints\"},\"critical\":true,\"extnValue\""
"ext-BasicConstraints\",\"_extnValue\":{\"_type\":\"BasicConstraints\",\"" ":\"3000\",\"_extnValue_choice\":\"ext-BasicConstraints\",\"_extnValue\":"
"cA\":false,\"pathLenConstraint\":null}},{\"_type\":\"Extension\",\"extnI" "{\"_type\":\"BasicConstraints\",\"cA\":false,\"pathLenConstraint\":null}"
"D\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"2.5.29.37\",\"components\":[" "},{\"_type\":\"Extension\",\"extnID\":{\"_type\":\"OBJECT IDENTIFIER\",\"oi"
"2,5,29,37],\"name\":\"id-x509-ce-extKeyUsage\"},\"critical\":false,\"ex" "d\":\"2.5.29.37\",\"components\":[2,5,29,37],\"name\":\"id-x509-ce-extKe"
"tnValue\":\"300706056781050801\",\"_extnValue_choice\":\"ext-ExtKeyUsa" "yUsage\"},\"critical\":false,\"extnValue\":\"300706056781050801\",\"_ext"
"ge\",\"_extnValue\":[{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"2.23.133.8" "nValue_choice\":\"ext-ExtKeyUsage\",\"_extnValue\":[{\"_type\":\"OBJECT "
".1\",\"components\":[2,23,133,8,1],\"name\":\"tcg-kp-EKCertificate\"}]}" "IDENTIFIER\",\"oid\":\"2.23.133.8.1\",\"components\":[2,23,133,8,1],\"na"
",{\"_type\":\"Extension\",\"extnID\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid" "me\":\"tcg-kp-EKCertificate\"}]},{\"_type\":\"Extension\",\"extnID\":{\"_t"
"\":\"1.3.6.1.5.5.7.1.1\",\"components\":[1,3,6,1,5,5,7,1,1],\"name\":\"i" "ype\":\"OBJECT IDENTIFIER\",\"oid\":\"1.3.6.1.5.5.7.1.1\",\"components\":"
"d-pkix-pe-authorityInfoAccess\"},\"critical\":false,\"extnValue\":\"30" "[1,3,6,1,5,5,7,1,1],\"name\":\"id-pkix-pe-authorityInfoAccess\"},\"cr"
"3C303A06082B06010505073002862E687474703A2F2F7365637572652E676C6F" "itical\":false,\"extnValue\":\"303C303A06082B06010505073002862E68747"
"62616C7369676E2E636F6D2F73746D74706D656B696E7430352E637274\",\"_ex" "4703A2F2F7365637572652E676C6F62616C7369676E2E636F6D2F73746D74706"
"tnValue_choice\":\"ext-AuthorityInfoAccess\",\"_extnValue\":[{\"_type\"" "D656B696E7430352E637274\",\"_extnValue_choice\":\"ext-AuthorityInfoA"
":\"AccessDescription\",\"accessMethod\":{\"_type\":\"OBJECT IDENTIFIER\"" "ccess\",\"_extnValue\":[{\"_type\":\"AccessDescription\",\"accessMethod\""
",\"oid\":\"1.3.6.1.5.5.7.48.2\",\"components\":[1,3,6,1,5,5,7,48,2],\"n" ":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"1.3.6.1.5.5.7.48.2\",\"compon"
"ame\":\"id-pkix-ad-caIssuers\"},\"accessLocation\":{\"_choice\":\"unifor" "ents\":[1,3,6,1,5,5,7,48,2],\"name\":\"id-pkix-ad-caIssuers\"},\"acces"
"mResourceIdentifier\",\"value\":\"http://secure.globalsign.com/stmtp" "sLocation\":{\"_choice\":\"uniformResourceIdentifier\",\"value\":\"http:"
"mekint05.crt\"}}]}]},\"signatureAlgorithm\":{\"_type\":\"AlgorithmIden" "//secure.globalsign.com/stmtpmekint05.crt\"}}]}]},\"signatureAlgor"
"tifier\",\"algorithm\":{\"_type\":\"OBJECT IDENTIFIER\",\"oid\":\"1.2.840." "ithm\":{\"_type\":\"AlgorithmIdentifier\",\"algorithm\":{\"_type\":\"OBJEC"
"113549.1.1.11\",\"components\":[1,2,840,113549,1,1,11],\"name\":\"id-p" "T IDENTIFIER\",\"oid\":\"1.2.840.113549.1.1.11\",\"components\":[1,2,84"
"kcs1-sha256WithRSAEncryption\"},\"parameters\":\"0500\"},\"signatureVa" "0,113549,1,1,11],\"name\":\"id-pkcs1-sha256WithRSAEncryption\"},\"par"
"lue\":\"2048:3D4C381E5B4F1BCBE09C63D52F1F04570CAEA142FD9CD942043B1" "ameters\":\"0500\"},\"signatureValue\":\"2048:3D4C381E5B4F1BCBE09C63D5"
"1F8E3BDCF50007AE16CF8869013041E92CDD3280BA4B51FBBD40582ED750219E" "2F1F04570CAEA142FD9CD942043B11F8E3BDCF50007AE16CF8869013041E92CD"
"261A695095674855AACEB520ADAFF9E7E908480A39CDCF900462D9171960FFE5" "D3280BA4B51FBBD40582ED750219E261A695095674855AACEB520ADAFF9E7E90"
"5D3AC49E8C981341BBD2EFBCC252A4C18A4F3B7C84CCE42CE70A208C84D2630A" "8480A39CDCF900462D9171960FFE55D3AC49E8C981341BBD2EFBCC252A4C18A4"
"7ABFBE72D6271E75B9FF1C971D20EB3DBD763F1E04D834EAA692D2E4001BBF47" "F3B7C84CCE42CE70A208C84D2630A7ABFBE72D6271E75B9FF1C971D20EB3DBD7"
"30A3E3FDA9711AE386524D91C63BE0E516D00D5C6141FCCF6C539F3518E18004" "63F1E04D834EAA692D2E4001BBF4730A3E3FDA9711AE386524D91C63BE0E516D"
"9865BE16B69CAE1F8CB7FDC474B38F7EE56CBE7D8A89D9BA99B65D5265AEF32A" "00D5C6141FCCF6C539F3518E180049865BE16B69CAE1F8CB7FDC474B38F7EE56"
"A62426B10E6D75BB8677EC44F755BBC2806FD2B4E04BDF5D44259DBEAA42B6F5" "CBE7D8A89D9BA99B65D5265AEF32AA62426B10E6D75BB8677EC44F755BBC2806"
"63DF7AA7506\"}" "FD2B4E04BDF5D44259DBEAA42B6F563DF7AA7506\""
}; "}"
};
heim_octet_string os; heim_octet_string os;
Certificate c0, c1; Certificate c0, c1;
size_t i, nknown, size; size_t i, nknown, size;

View File

@@ -382,12 +382,17 @@ PrivateKeyUsagePeriod ::= SEQUENCE {
-- certificate policies extension OID and syntax -- certificate policies extension OID and syntax
_POLICYQUALIFIERINFO ::= CLASS { -- Heimdal extension
&id OBJECT IDENTIFIER UNIQUE,
&Type
}
CertPolicyId ::= OBJECT IDENTIFIER CertPolicyId ::= OBJECT IDENTIFIER
PolicyQualifierId ::= OBJECT IDENTIFIER -- ( id-qt-cps | id-qt-unotice ) PolicyQualifierId ::= OBJECT IDENTIFIER -- ( id-qt-cps | id-qt-unotice )
PolicyQualifierInfo ::= SEQUENCE { PolicyQualifierInfo{_POLICYQUALIFIERINFO:PolicyQualifierSet} ::= SEQUENCE {
policyQualifierId PolicyQualifierId, policyQualifierId _POLICYQUALIFIERINFO.&id({PolicyQualifierSet}),
qualifier HEIM_ANY -- ANY DEFINED BY policyQualifierId qualifier _POLICYQUALIFIERINFO.&Type({PolicyQualifierSet}{@policyQualifierId})
} }
PolicyQualifierInfos ::= SEQUENCE SIZE (1..MAX) OF PolicyQualifierInfo PolicyQualifierInfos ::= SEQUENCE SIZE (1..MAX) OF PolicyQualifierInfo
@@ -1178,4 +1183,18 @@ id-pkix-ad-caIssuers OBJECT IDENTIFIER ::= { id-pkix-ad 2 }
id-pkix-ad-timeStamping OBJECT IDENTIFIER ::= { id-pkix-ad 3 } id-pkix-ad-timeStamping OBJECT IDENTIFIER ::= { id-pkix-ad 3 }
id-pkix-ad-caRepository OBJECT IDENTIFIER ::= { id-pkix-ad 5 } id-pkix-ad-caRepository OBJECT IDENTIFIER ::= { id-pkix-ad 5 }
pq-CPS _POLICYQUALIFIERINFO ::= {
&id id-pkix-qt-cps,
&Type AliasIA5String
}
pq-UserNotice _POLICYQUALIFIERINFO ::= {
&id id-pkix-qt-unotice,
&Type UserNotice
}
KnownPolicyQualifiers _POLICYQUALIFIERINFO ::= {
pq-CPS
| pq-UserNotice
}
PolicyQualifierInfo ::= PolicyQualifierInfo{KnownPolicyQualifiers}
END END