ASN.1 DER

Dipublikasikan: 11 Desember 2025

Terakhir diperbarui: 11 Desember 2025

Raymond Kelvin Nando — ASN.1 DER merupakan salah satu aturan encoding paling ketat dan deterministik dalam keluarga ASN.1 yang dirancang untuk memastikan setiap struktur data hanya memiliki satu representasi biner yang valid. Tidak seperti BER yang fleksibel atau CER yang menggunakan indefinite length, DER mengharuskan struktur yang terdefinisi dengan jelas sehingga sangat ideal untuk tanda tangan digital, sertifikat X.509, serta berbagai protokol keamanan modern. DER menjadi fondasi interoperabilitas karena menghasilkan output yang selalu konsisten di setiap sistem.

Pengertian ASN.1 DER

ASN.1 DER (Distinguished Encoding Rules) adalah aturan encoding berbasis TLV (Tag–Length–Value) yang memastikan representasi data ASN.1 selalu tunggal, deterministik, dan bebas variasi. DER menurunkan aturan dasar BER, tetapi menghilangkan fleksibilitasnya demi menghasilkan konsistensi absolut. Setiap elemen ASN.1 dalam DER wajib mengikuti aturan-aturan ketat:

  • Tidak boleh menggunakan indefinite length.
  • Panjang harus selalu definite dan representasi minimal.
  • Setiap angka, string, dan struktur kompleks harus memiliki bentuk encoding paling ringkas dan satu-satunya yang diperbolehkan.
  • Setiap elemen SET harus diurutkan secara leksikografis berdasarkan encoding-nya, bukan nama field.

Dengan sifat deterministik tersebut, DER menjadi standar de facto untuk objek yang akan diverifikasi oleh algoritma kriptografi karena setiap variasi sekecil apa pun dapat menyebabkan tanda tangan menjadi tidak valid.

Orang lain juga membaca :  Base16

Sejarah Perkembangan ASN.1 DER

DER dikembangkan pada akhir 1980-an hingga awal 1990-an oleh ITU-T dan ISO sebagai respons terhadap kelemahan BER yang terlalu longgar. Pada masa awal telekomunikasi digital, BER menjadi standar universal, namun fleksibilitasnya menyebabkan banyak sistem memproduksi output berbeda untuk data sama. Hal ini menjadi masalah besar dalam kriptografi, tanda tangan digital, sertifikat, dan protokol jaringan.

Untuk mengatasi masalah itu, dua turunan kanonik diperkenalkan:

  • DER untuk encoding deterministik dengan definite length saja.
  • CER untuk encoding deterministik yang masih mendukung indefinite length untuk data besar.

DER segera menjadi inti dari banyak standar keamanan: PKCS#1, PKCS#7, PKCS#12, X.509, TLS, S/MIME, dan berbagai format kunci seperti RSA dan EC Private Key. Hingga kini DER tetap menjadi encoding paling penting dalam seluruh ekosistem kriptografi modern.

Prinsip Dasar dan Metode ASN.1 DER

ASN.1 DER mengikuti format TLV dengan seperangkat aturan kanonik yang ketat.

1. Tag (T)

Tag berisi informasi class (universal/application/context/private), type (primitive atau constructed), serta tag number. DER mewajibkan representasi minimum tanpa byte tambahan.

Contoh tag universal umum:

  • INTEGER → 02
  • BIT STRING → 03
  • OCTET STRING → 04
  • NULL → 05
  • OBJECT IDENTIFIER → 06
  • SEQUENCE (constructed) → 30
  • SET (constructed) → 31

2. Length (L)

Aturan panjang DER:

  • Harus selalu definite length.
  • Tidak boleh indefinite.
  • Representasi harus paling minimal, tidak boleh ada byte panjang berlebih.
  • Short form dipakai jika panjang < 128.
  • Long form digunakan jika panjang ≥ 128.

Contoh:
Panjang 127 → 7F
Panjang 130 → 81 82

3. Value (V)

Nilai mengikuti spesifikasi tipe ASN.1.

  • INTEGER tidak boleh memiliki leading zero kecuali diperlukan untuk menegaskan bilangan positif.
  • BIT STRING wajib mencantumkan byte unused-bits pada byte pertama.
  • OBJECT IDENTIFIER harus mengikuti sistem base-128 dengan representasi paling ringkas.
Orang lain juga membaca :  B-Tree Serialization Encoding

4. SET Ordering

Salah satu aturan paling penting: elemen-elemen SET harus diurutkan berdasarkan hasil encoding DER mereka dalam bentuk leksikografis (byte-by-byte), bukan berdasarkan nama field. Aturan inilah yang sering menyebabkan error parsing pada implementasi yang salah.

5. No Indefinite Length

Berbeda dari CER dan BER, DER sepenuhnya melarang penggunaan indefinite length. Semua struktur harus mengetahui total panjangnya sebelum encoding.

6. Strict Canonical Form

Setiap variasi encoding yang diperbolehkan BER tetapi tidak ketat harus dibuang. DER hanya menerima satu kemungkinan encoding untuk data tertentu.

Contoh Input → Output ASN.1 DER

Contoh 1: INTEGER 5

Tag: 02
Length: 01
Value: 05

Output:
02 01 05

Contoh 2: INTEGER 300

Bilangan 300 dalam hex → 01 2C
Representasi DER:
02 02 01 2C

Output:
02 02 01 2C

Contoh 3: SEQUENCE berisi INTEGER 5 dan BOOLEAN TRUE

SEQUENCE length: total 3+3 = 6

SEQUENCE tag: 30
Length: 06
INTEGER 5 → 02 01 05
BOOLEAN TRUE → 01 01 FF

Output:
30 06 02 01 05 01 01 FF

Contoh 4: OBJECT IDENTIFIER 1.2.840.113549

OID encoding DER:
06 06 2A 86 48 86 F7 0D

Makna:
1*40 + 2 = 2A
840 → 86 48
113549 → 86 F7 0D

Contoh 5: BIT STRING

BIT STRING dengan 3 byte data: A1 B2 C3
Jumlah unused bits = 0

03 04 00 A1 B2 C3

Kelebihan & Kekurangan ASN.1 DER

Kelebihan:

  • Satu-satunya encoding deterministik untuk ASN.1 menggunakan definite length.
  • Sangat ideal untuk tanda tangan digital dan sertifikat.
  • Digunakan luas dalam standar keamanan global.
  • Kompatibel lintas platform dan sangat stabil.
  • Menghindari ambiguitas yang umum pada BER.
Orang lain juga membaca :  Base32

Kekurangan:

  • Tepat waktu encoding kadang sulit karena panjang harus diketahui sejak awal.
  • Tidak cocok untuk data streaming atau data sangat besar.
  • Lebih rumit untuk diimplementasikan dibanding BER.
  • Kaku dan tidak fleksibel.
  • Jika salah sedikit dalam aturan, struktur tidak akan valid.

Referensi

  • ITU-T. (2015). X.690: ASN.1 Encoding Rules.
  • ISO/IEC. (2015). Information Technology — ASN.1 DER.
  • Adams, C., & Lloyd, S. (2003). Understanding PKI. Addison-Wesley.
  • Gutmann, P. (2004). X.509 Style Guide. University of Auckland.
  • Stallings, W. (2017). Cryptography and Network Security. Pearson.

Citation

Previous Article

ASN.1 CER

Next Article

ATSC A/53 Video Encoding

Citation copied!