ASN.1 BER/DER Parser
Walk any BER/DER-encoded ASN.1 tree (X.690). Tags, lengths, types, and value previews; OBJECT IDENTIFIERs are looked up against a built-in dictionary. Useful when you have raw bytes and need to know what they are. Accepts hex, bare base64, or a PEM block.
Input
Result
About ASN.1 / BER / DER
ASN.1 (Abstract Syntax Notation One) describes the abstract structure; BER/DER is the concrete byte encoding (a tag, a length, and a value, recursively). DER is the canonical, deterministic flavour used by X.509, PKCS#7, PKCS#10, PKCS#12 and friends. Defined by ITU-T X.690.
Spec
X.690 (BER/CER/DER) and X.680 (ASN.1).
Companion tool
For BER-TLV (smart-card flavour, slightly different conventions): use the TLV parser.
Reading ASN.1 DER/BER structure
ASN.1 with DER/BER encoding is the backbone of nearly every PKI and smart-card format: X.509 certificates, PKCS#7/#8/#10, EMV data objects and many JavaCard structures are all trees of tag-length-value (TLV) triples. This parser decodes that tree so you can see the SEQUENCEs, SETs, INTEGERs, OIDs and OCTET STRINGs that make up a structure.
Worked example: the bytes 30 03 02 01 05 parse as a SEQUENCE (tag 0x30, length 3) containing an INTEGER (tag 0x02, length 1) with value 5. Use it to debug a malformed certificate or to learn how a format is laid out. It decodes structure and common types; it does not attach semantic meaning to every object identifier.
Frequently asked questions
What is the difference between BER and DER?
BER allows several valid encodings of the same value; DER is a canonical subset with one encoding, which is what X.509 requires. This tool reads both.
What does a tag like 0x30 or 0xA0 mean?
0x30 is a constructed SEQUENCE; 0xA0 is a context-specific constructed tag ([0]) often used for optional fields. The parser labels the class and whether a tag is constructed.
Does my data leave the browser?
No — parsing is entirely client-side.