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.
Ispezione 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):
Nessuna firma universale (codifica ASN.1 DER)RAPPRESENTAZIONE ASCII: Nessuna firma ASCII fissa
Standardizzazione: ITU-T Recommendation X.690
Specifiche tecniche
| Architettura del contenitore | Codifica binaria canonica rigorosa delle strutture ASN.1 tramite terne tag-lunghezza-valore (TLV) |
| Compressione | Dati binari non compressi |
| Endianness dei byte | Codifica ASN.1 big-endian |
| Spazi colore | Non applicabile (flusso binario crittografico) |
| Canali e struttura | Chiavi crittografiche, certificati X.509, liste di revoca dei certificati (CRL) e strutture PKCS |
| Dimensioni massime | Lunghezza ASN.1 illimitata |
| Trasparenza | Struttura dati binaria ASN.1 |
| Streaming e progressivo | Decodifica canonica deterministica a passaggio singolo |
Matrice di confronto tecnico: DER vs Concorrenti
| Attributo tecnico | DER (Attuale) | PEM | CRT | P12 |
|---|---|---|---|---|
| Rappresentazione dei dati | Rigorosa codifica binaria ASN.1 | Testo ASCII codificato in Base64 | PEM Base64 o DER binario | Archivio binario crittografato PKCS #12 |
| Hash deterministico | Bitstream 100% canonico | Dipende da spazi vuoti/banner | Dipende dalla formattazione | Crittografato con salt/IV |
| Dimensione del file | Il più piccolo (circa il 33% più piccolo del PEM) | Più grande a causa della codifica Base64 (+33%) | Più grande a causa della codifica Base64 (+33%) | Più grande a causa dei dati aggiuntivi della cifratura |
| 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 esadecimale
Errore OpenSSL: 'asn1 encoding routines:ASN1_get_object:header too long'.
Causa principale: Byte tag-lunghezza-valore (TLV) corrotto nell'intestazione della sequenza ASN.1.
Ripristino: Esegui la transcodifica utilizzando lo strumento per certificati File2File.app per ricostruire byte DER canonici validi.
Analisi di sicurezza e vettori di attacco del parser
I decoder DER analizzano descrittori di lunghezza; un underflow o overflow di interi può provocare overflow del buffer nelle librerie di crittografia native.
Vettori di attacco noti
- Overflow di interi durante la decodifica di lunghezze indefinite ASN.1 profondamente annidate.
- Lettura oltre i limiti durante l'analisi di stringhe di bit malformate.
- Interruzione del servizio tramite sequenze di ricorsione ASN.1 annidate.
Migliori pratiche difensive: Usa parser ASN.1 sicuri per la memoria e imponi limiti alla profondità massima di ricorsione.
Origini storiche e tappe fondamentali
Vantaggi principali
- Canonico e deterministico: garantisce che dati identici producano sempre esattamente lo stesso hash binario, essenziale per le firme digitali.
- Più compatto del PEM: riduce i dati aggiuntivi di circa il 33% omettendo la codifica Base64 e le intestazioni 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 fanno sì che qualsiasi minima discrepanza nel padding causi il rifiuto dell'analisi.
Curiosità tecniche
- 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 file .der su File2File.app per convertirlo in un certificato di testo .pem standard, direttamente nel browser e in pochi secondi.
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.