DER dvejetainis formatas (.der)

ITU-T Standartinis

Skiriamųjų kodavimo taisyklių (angl. Distinguished Encoding Rules, DER) standartas yra griežtas, kanoninis dvejetainis ASN.1 duomenų struktūrų kodavimo standartas, užtikrinantis vienareikšmį, bitslieka tikslų saugos sertifikatų ir kriptografinių raktų vaizdavimą.

Konvertuoti DER į PEM

Nemokamas DER į PEM konverteris naršyklėje. Konvertuokite failus akimirksniu savo įrenginyje.

Tikrinti ir metaduomenys

Operacinės sistemos ir failų analizatoriai atpažįsta DER failus tikrindami pradinę dvejetainę baitų seką:

Pasirinkite arba nuvilkite failus čia

100% privatus konvertavimas naršyklėje - failai niekada nepalieka jūsų įrenginio

arba įklijuokite Ctrl+V
Nulinio tinklo perdavimo privatumo garantija: 0 baitų įkelta į išorinius serverius. Visas apdorojimas vyko vietoje, jūsų naršyklės smėlio dėžėje (sandbox).

Baitų lygio antraštės parašas (magiškieji baitai)

Operacinės sistemos ir failų analizatoriai atpažįsta DER failus tikrindami pradinę dvejetainę baitų seką:

ŠEŠIOLIKTAINIS PARAŠAS (POSLINKIS 0):

30 82

ASCII ATVAIZDAVIMAS: 0\x82

Standartizacija: ITU-T Recommendation X.690

Techninės specifikacijos

Konteinerio architektūraStrict canonical binary encoding of ASN.1 structures using Tag-Length-Value (TLV) triples
GlaudinimasUncompressed binary data
Baitų seka (Endianness)Big-Endian ASN.1 encoding
Spalvų erdvėsN/A (Cryptographic Binary Stream)
Kanalai ir struktūraCryptographic keys, X.509 certificates, CRLs, and PKCS structures
Maksimalūs matmenysUnbounded ASN.1 length
SkaidrumasBinary ASN.1 data structure
Srautas ir progresyvusis įkėlimasDeterministic single-pass canonical decoding

Techninė palyginimo matrica: DER vs konkurentai

Techninis atributasDER (Dabartinis)PEMCRTP12
Duomenų vaizdavimasGriežtas dvejetainis ASN.1 kodavimasBase64 ASCII šarvuotas tekstasBase64 PEM arba dvejetainis DERUžšifruotas dvejetainis PKCS #12 archyvas
Deterministinė maiša100 % kanoninis bitų srautasPriklauso nuo tarpų / reklaminių juostųPriklauso nuo formatoUžšifruota su „salt" / IV
Failo dydisMažiausias (~33 % mažesnis nei PEM)Didesnis dėl Base64 (+33 %)Didesnis dėl Base64 (+33 %)Didesnis dėl šifravimo gaubtų
„Java" ir aparatinės įrangos palaikymasGimtasis standartasReikalauja konvertavimo „Java" aplinkojeReikalauja konvertavimo „Java" aplinkojePalaikomas kaip raktų saugykla

Dažni sugadinimo režimai ir šešioliktainio atkūrimo vadovas

OpenSSL klaida: „asn1 encoding routines:ASN1_get_object:header too long".

Pirminė priežastis: Sugadintas žymos-ilgio-reikšmės (TLV) baitas ASN.1 sekos antraštėje.

Atkūrimas: Atlikite perkodavimą naudodami „File2File Certificate Tool", kad atkurtumėte galiojančius DER kanoninius baitus.

Saugumo analizė ir analizatoriaus atakos vektoriai

DER dekoderiai išanalizuoja ilgio aprašus, kur sveikųjų skaičių perteklius arba nepakankamumas (underflow/overflow) gimtosiose kriptografijos bibliotekose gali sukelti buferio perpildymą.

Žinomi atakos vektoriai

  • Sveikojo skaičiaus perteklius dekoduojant giliai įdėtą neapibrėžtą ASN.1 ilgį.
  • Skaitymas už ribų analizuojant deformuotas bitų eilutes.
  • Paslaugos trikdymas (DoS) per įdėtąsias ASN.1 rekursijos bombas.

Geriausia apsaugos praktika:

Istorinė kilmė ir svarbiausi etapai

2021ITU-T X.690 pataisa stabilizuoja ASN.1 DER specifikacijas šiuolaikiniuose aparatinės įrangos raktuose.
1997Java kriptografijos architektūros (JCA) pritaikytas dvejetainiam raktų kodavimui (X509EncodedKeySpec).
1988Standartizuotas pagal CCITT / ITU-T X.690 rekomendaciją kaip griežtas pagrindinių kodavimo taisyklių (BER) poaikis.

Pagrindiniai privalumai

  • Kanoninis ir deterministinis: garantuoja, kad identiški duomenys visada sugeneruoja lygiai tokį patį dvejetainį maišos (angl. hash) kodą, kuris yra būtinas skaitmeniniams parašams.
  • Kompaktiškesnis nei PEM: sutaupo apie 33 % papildomos apimties, nes nenaudojamas Base64 kodavimas ir ASCII reklaminės juostos.
  • Vietinis formatas aparatinės įrangos saugos moduliams (HSM), išmaniosioms kortelėms ir „Java" raktų saugykloms.

Techniniai apribojimai ir trūkumai

  • Dvejetainio formato negalima peržiūrėti, redaguoti ar kopijuoti teksto rengyklėse.
  • Retesnis žiniatinklio prieglobos aplinkose, kuriose visiškai teikiama pirmenybė tekstiniams PEM/CRT failams.
  • Griežtos kodavimo taisyklės reiškia, kad bet koks nedidelis užpildymo neatitikimas sukelia analizės klaidą ir atmetimą.

Įdomūs techniniai faktai

  • DER yra griežtas BER (pagrindinių kodavimo taisyklių) poaikis; nors BER leidžia kelis galimus reikšmių kodavimo būdus, DER leidžia tiksliai vieną kanoninį būdą.
  • Jei DER failą užkoduosite naudodami Base64 ir apgaubsite „-----BEGIN CERTIFICATE-----", gausite standartinį PEM failą.
  • „Java" KeyFactory reikalauja, kad RSA viešieji ir privačiai raktai būtų pateikti grynuoju DER formatu.

Dažniausiai užduodami techniniai klausimai

Kuo skiriasi DER ir PEM?

DER yra neapdorotas dvejetainis sertifikato arba rakto formatas. PEM yra tiesiog tas pats DER failas, konvertuotas į įskaitomą Base64 tekstą su „-----BEGIN...-----“ žymomis.

Kaip konvertuoti DER į PEM?

Įkelkite savo .der failą į File2File.app, kad per vieną sekundę tiesiogiai savo naršyklėje konvertuotumėte jį į standartinį .pem tekstinį sertifikatą.

Kodėl „Java“ naudoja DER raktus?

Java kriptografijos architektūra (JCA) savo vietinėms raktų specifikacijoms naudoja DER koduotus PKCS#8 ir X.509 baitų masyvus.