
Q: Your compiler supplies a der_encode() procedure. How do I encode BER?
A:
	The DER (and CER) are stricter subsets of a more generic BER encoding
	method. If you encode data with DER or CER, all BER-conformant decoders
	will easily understand that. Hence, to encode data in the BER format,
	simply use the DER encoder, der_encode().

	See also:	ISO/IEC 8825-1 / X.690:
			"ASN.1 encoding rules: Specification of
			 Basic Encoding Rules (BER),
			 Canonical Encoding Rules (CER) and
			 Distinguished Encoding Rules (DER)"


Q: I've tried doing ./asn1c/asn1c -P examples/*PKIX*93*, but compiler spits
   several fatal failures and exits.
A:
	The old (RFC2459) PKIX1 specifications used ASN.1 Information Object
	Classes, which is arguably one of the most complex ASN.1 concepts.

	The asn1c parser and fixer subsystems currently understand most of
	IOC syntax, but the compiler can cope with only the very basic
	IOC semantics.

	The goal of asn1c is to adequately support the practically necessary
	subset of IOCs to compile PKIX1 and other real-world specs,
	but this milestone isn't yet reached. Please contact me in case
	you have special requirements, we can work it out.

	However, the asn1c compiler is able to understand the newer PKIX1
	ASN.1 specs, contained in RFC3280, which obsoletes RFC2459.
	To compile the sample X.509 certificate dump utility, try this out:

		cd ./examples/sample.source.PKIX1
		make
		./x509dump -h


-- 
Lev Walkin
vlm@lionet.info
