То, что BC и OpenSSL поддерживают, является очень маленькой частью ASN.1.Фактически долгое время не было полной реализации ASN.1, по крайней мере, для общественности.Производители телекоммуникационного и телефонного оборудования, вероятно, имеют довольно полную реализацию ASN.1.В настоящее время наиболее продвинутая реализация ASN.1, доступная для широкой публики, разработана в рамках проекта OsmoCom, Харальд Велте написал в блоге: http://laforge.gnumonks.org/weblog/2011/04/12#20110412-mapv1_available
И что еще хуже, ASN.1, в частности,схемы избыточного кодирования (в ASN.1 есть как минимум 3 различных способа кодирования строк), которые были причиной нескольких проблем с безопасностью в последние годы из-за проблем, возникших при правильной обработке сертификатов x509.x509 - это еще одна испорченная технология из ада, и ИМХО лучше избегать.Конечно, SSL зависит от этого, но получение сертификата, подписанного «доверенным» CA, ничего не значит;любой центр сертификации может подписать любой домен, и после просмотра того, чему ваш браузер доверяет по умолчанию, я больше не доверял своему браузеру.
Итак, если коротко, ASN.1 не работает и его следует избегать вновые дизайны.За пределами телефонных сетей широко используется только x509, который тоже не работает.Таким образом, я бы не использовал его.Используйте JSON, BSON, буфер протокола, Netstrings или что-то вменяемое.