Binario DER (.der)
ITU-T StandardLe Distinguished Encoding Rules (DER) sono lo standard di codifica binaria rigoroso e canonico per le strutture dati ASN.1, che fornisce una rappresentazione priva di ambiguità e a bit esatti dei certificati di sicurezza e delle chiavi crittografiche.
Converti da DER a PEM
Convertitore gratuito da DER a PEM nel browser. Converti i file istantaneamente sul tuo dispositivo.
Ispeziona e metadati
I sistemi operativi e gli analizzatori di file identificano i file DER ispezionando la sequenza di byte binari iniziale:
Firma dell'intestazione a livello di byte (Magic Bytes)
I sistemi operativi e gli analizzatori di file identificano i file DER ispezionando la sequenza di byte binari iniziale:
FIRMA ESADECIMALE (OFFSET 0):
30 82RAPPRESENTAZIONE ASCII: 0\x82
Standardizzazione: ITU-T Recommendation X.690
Specifiche tecniche
| Architettura del container | Strict canonical binary encoding of ASN.1 structures using Tag-Length-Value (TLV) triples |
| Compressione | Uncompressed binary data |
| Endianness dei byte | Big-Endian ASN.1 encoding |
| Spazi colore | N/A (Cryptographic Binary Stream) |
| Canali e struttura | Cryptographic keys, X.509 certificates, CRLs, and PKCS structures |
| Dimensioni massime | Unbounded ASN.1 length |
| Trasparenza | Binary ASN.1 data structure |
| Streaming e progressivo | Deterministic single-pass canonical decoding |
Matrice di confronto tecnico: DER vs Concorrenti
| Attributo tecnico | DER (Corrente) | PEM | CRT | P12 |
|---|---|---|---|---|
| Rappresentazione dei Dati | Rigorosa codifica binaria ASN.1 | Testo protetto Base64 ASCII | PEM Base64 o DER binario | Archivio binario crittografato PKCS #12 |
| Hasing Deterministico | Bitstream 100% canonico | Dipende da spazi vuoti/banner | Dipende dalla formattazione | Crittografato con salt/IV |
| Dimensione del File | Il più piccolo (~33% più piccolo del PEM) | Più grande a causa del Base64 (+33%) | Più grande a causa del Base64 (+33%) | Più grande a causa dei wrapper di crittografia |
| Supporto Java e Hardware | Standard nativo | Richiede conversione in Java | Richiede conversione in Java | Supportato come keystore |
Modalità di corruzione comuni e guida al recupero Hex
Errore OpenSSL: 'asn1 encoding routines:ASN1_get_object:header too long'.
Causa principale: Byte Tag-Length-Value (TLV) corrotto nell'intestazione della sequenza ASN.1.
Ripristino: Esegui la transcodifica utilizzando lo strumento per certificati File2File per ricostruire byte DER canonici validi.
Analisi di sicurezza e vettori di attacco del parser
I decoder DER analizzano descrittori di lunghezza in cui l'underflow o l'overflow di interi possono innescare buffer overflow nelle librerie di crittografia native.
Vettori di attacco noti
- Overflow di interi durante la decodifica di lunghezze indefinite ASN.1 profondamente annidate.
- Lettura fuori dai limiti (out-of-bounds) durante l'analisi di stringhe di bit malformate.
- Denial of service tramite bombe di ricorsione ASN.1 annidate.
Migliori pratiche difensive:
Origini storiche e tappe fondamentali
Vantaggi principali e pro
- Canonico e deterministico: garantisce che dati identici producano sempre esattamente lo stesso hash binario, essenziale per le firme digitali.
- Più compatto rispetto al PEM: fa risparmiare circa il 33% di overhead omettendo la codifica Base64 e i banner ASCII.
- Formato nativo per moduli di sicurezza hardware (HSM), smart card e keystore Java.
Limiti tecnici e svantaggi
- Il formato binario non può essere visualizzato, modificato o copiato e incollato negli editor di testo.
- Meno comune negli ambienti di web hosting, che preferiscono nettamente file PEM/CRT basati su testo.
- Le rigide regole di codifica significano che qualsiasi minima discrepanza nel padding causa il rifiuto dell'analisi.
Curiosità tecniche interessanti
- Il DER è un sottoinsieme rigoroso del BER (Basic Encoding Rules); mentre il BER consente molteplici modi validi per codificare un valore, il DER ne consente esattamente uno in modo canonico.
- Se codifichi in Base64 un file DER e lo racchiudi tra '-----BEGIN CERTIFICATE-----', ottieni un file PEM standard.
- Il KeyFactory di Java richiede che le chiavi pubbliche e private RSA siano fornite in formato DER grezzo.
Domande tecniche frequenti
Qual è la differenza tra DER e PEM?
DER è il formato binario grezzo di un certificato o di una chiave. PEM è semplicemente lo stesso file DER convertito in testo Base64 leggibile con banner '-----BEGIN...-----'.
Come posso convertire DER in PEM?
Carica il tuo file .der su File2File.app per convertirlo in un certificato di testo .pem standard in un secondo direttamente nel tuo browser.
Perché Java usa le chiavi DER?
La Java Cryptography Architecture (JCA) utilizza array di byte PKCS#8 e X.509 codificati in DER per le sue specifiche di chiave native.