The following is a list of standard tag and class combinations.
const ( BOOLEAN = Tag(1) INTEGER = Tag(2) BIT_STRING = Tag(3) OCTET_STRING = Tag(4) NULL = Tag(5) OBJECT_IDENTIFIER = Tag(6) ENUM = Tag(10) UTF8String = Tag(12) SEQUENCE = Tag(16 | classConstructed) SET = Tag(17 | classConstructed) PrintableString = Tag(19) T61String = Tag(20) IA5String = Tag(22) UTCTime = Tag(23) GeneralizedTime = Tag(24) GeneralString = Tag(27) )
Tag represents an ASN.1 identifier octet, consisting of a tag number (indicating a type) and class (such as context-specific or constructed).
Methods in the cryptobyte package only support the low-tag-number form, i.e. a single identifier octet with bits 7-8 encoding the class and bits 1-6 encoding the tag number.
type Tag uint8
func (t Tag) Constructed() Tag
Constructed returns t with the constructed class bit set.
func (t Tag) ContextSpecific() Tag
ContextSpecific returns t with the context-specific class bit set.