¿Cómo funcionan [0] y [3] en ASN1?

Estoy decodificando ASN1 (como se usa en X.509 para certificados HTTPS). Lo estoy haciendo bastante bien, pero hay una cosa para la que simplemente no puedo encontrar una documentación comprensible.

En un analizador JS ASN1 (por ejemplo,http://lapo.it/asn1js/) ve un [0] y un [3] debajo de un elemento SEQUENCE, el primero se ve así en los datos: A0 03 02 01 02. Quiero saber qué significa esto y cómo descodificarlo.

Otro ejemplo eshttp://www.jensign.com/JavaScience/GetTBSCert/index.html, hay un [0] justo después de los primeros dos elementos SEQUENCE.

Lo que no entiendo es cómo encaja A0 con el esquema en el que los primeros 2 bits del byte de la etiqueta son una clase, el siguiente bit primitivo / construido y los 5 restantes se supone que son el tipo de etiqueta. A0 es 10100000, lo que significa que el valor del tipo de etiqueta sería cero.

Respuestas a la pregunta(3)

Su respuesta a la pregunta