bcgit / pc-dart

Pointy Castle - Dart Derived Bouncy Castle APIs
MIT License
237 stars 122 forks source link

Error parsing ASN1 #106

Closed JChrist closed 3 years ago

JChrist commented 3 years ago

Trying to parse the following public key (in PEM format) results in an error for unsupported tag 100. However, there doesn't seem to be any such tag in it (asn1lib parses it). Also, a quick visualization doesn't reveal anything too exotic with it:

https://lapo.it/asn1js/#MIIGEzCCA8ugAwIBAgIBSTA9BgkqhkiG9w0BAQowMKANMAsGCWCGSAFlAwQCA6EaMBgGCSqGSIb3DQEBCDALBglghkgBZQMEAgOiAwIBQDB_MQswCQYDVQQGEwJFRTEQMA4GA1UECgwHRXN0b25pYTEmMCQGA1UECwwdUG9saWNlIGFuZCBCb3JkZXIgR3VhcmQgQm9hcmQxDTALBgNVBAsMBFRlc3QxEDAOBgNVBAUTBzA5LTIwMjAxFTATBgNVBAMMDENTQ0FfRXN0b25pYTAeFw0yMTA2MDcwNjA4NTRaFw0yMzEyMDQwNjA4NTRaMIGAMRUwEwYDVQQDFgwwMy0yMDIxX1REQ0MxEDAOBgNVBAUTBzAzLTIwMjExCzAJBgNVBAYTAkVFMRAwDgYDVQQKEwdFc3RvbmlhMTYwNAYDVQQLEy1IZWFsdGggYW5kIFdlbGZhcmUgSW5mb3JtYXRpb24gU3lzdGVtcyBDZW50cmUwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQC75phSyaC9Nwzbms3rg1hzu2Y2gS4DZYnS225hj7QV2dlX8d3GbWuQhuqDb-gRXtiU7_NwtJiD72jpNDtf6KgJhLMuUMwwbkR8_ZdbC5Ju16-7qt1havy8FkgmU8DeTrfGbyFIKn0MqEIF8XV3F-Et2GegQ_I1e-XA6UkEXJGXH4eTMaf4XhJEX2CSfQC7e_wPhqyscx_eq1ZJf0qeiQcwH-2_Hwd6pbxTK7bRaThs3PJcTVH1rSLSNwbbURf4OqcZGKyl78UNJW9CfzbF47qXvw2wFwir8zXKLBLonVsf5DKNN86Y2-Igw131xtlb5hRlK1e0PqrR8JKKhr-PJUy1aABLTLzluEDfPSx0QQiGqtZFhfmNyzi5aUhLfe5V1UAkuLeRupwvYm6JIVfBeHFiA-Gks0wiKFEN-cSKrCTj-4ayn9MEgPtLVQAC5uzmsKAUNfeEqlGeVl6W0ZA9NsPKRbxIMt0jkIadYcVN11Fq2Xb2UntDNBcXBTDODfSsNUMCAwEAAaOBtzCBtDAdBgNVHQ4EFgQUU-f4KmCBDzRdLpkiiacMPh9ZcyAwHwYDVR0jBBgwFoAU9-FrbZoH3Mfq8ekRZrpyJq6RyRAwNQYDVR0fBC4wLDAqoCigJoYkaHR0cHM6Ly93d3cucGtpLnBvbGl0c2VpLmVlL2NzY2EuY3JsMCsGA1UdEAQkMCKADzIwMjEwNjA3MDYwODU0WoEPMjAyMTEyMDQwNjA4NTRaMA4GA1UdDwEB_wQEAwIHgDA9BgkqhkiG9w0BAQowMKANMAsGCWCGSAFlAwQCA6EaMBgGCSqGSIb3DQEBCDALBglghkgBZQMEAgOiAwIBQAOCAgEAysQZ63SrGY3T9NWHhAR7AFKsfqn1PQTZmXk2JKorQPzk5ZdmOXK7x36f1rvc2IG5MCrFCBPnFnXJ7paB33d_LTSpz76PImNfTg06kXKi5CIAHI9q5yqhd4u5yAG6KlB4F_fFah_jbKCZ62NY-agI3LxdYTeR2hUPfngIwo7lPAeuLgbd23kNwQUJ-127HA-79Q_3FxP_a8m09jiCDbLm3zrQd-LcuWrfMeolDiSibhf-s1dYlzxPKCQe8TR_h782q02F30IvuIBa2XJ6NGwWystXmVx3wajgdhbVfU6w20bK0vEhz0efEXsWqnrwtiX95vAM34vbUgn9QyUst69oJa9OZGkLegyP31EbVmGQSc-uqbIBa2waEHDnWa-EILxZSMPKTIo-pQilVo7RiCVMyRksoJLRoMvttXtpJhHhBasYuz5iD9mGxCDUukp1zPYUuRSoizZc0l9RxMYm5CCrV5ofRUvbfryTcRYkJHBo5dUXpOxrsmEB2xOsa_jrOUVhm5Iw_dO65jnmrrKSJfC_eWTfcHomOnyEb7mTytkotKbJ1GiAjYiC-awJNZ-cfKEMypKDH6BiWWwcKGh33bov7a7_kPW17Tp9ycQxh6Z5-P4R9klfvBu8KHzlPRpnBwFiJjK-y0nroNO_8Pp9W6y2W46HZaHwGIiriNQvBiWBPRA
Ephenodrom commented 3 years ago

Hello JChrist, this is the same error that is mentioned in #90. An PR #111 already exists. Once the PR is merged and a new version is live, you can parse the above mentioned PEM. I already tested parsing it with the PR code.