נתוני DER בינאריים (.der)

ITU-T תקן

כללי קידוד מובחנים (DER - Distinguished Encoding Rules) הוא תקן הקידוד הבינארי הקפדני והקאנוני עבור מבני נתונים מסוג ASN.1, המספק ייצוג מדויק וחד-משמעי ברמת הסיביות של אישורי אבטחה ומפתחות קריפטוגרפיים.

המר DER ל-PEM

ממיר חינמי מ-DER ל-PEM פועל בדפדפן. המר קבצים באופן מיידי במכשיר שלך.

בדיקה ומטא-דאטה

מערכות הפעלה ומנתחי קבצים מזהים קבצי DER על ידי בדיקת רצף הבייטים הבינארי הראשוני:

בחר או גרור קבצים לכאן

המרה פרטית ב-100% בתוך הדפדפן - הקבצים לעולם אינם עוזבים את המכשיר שלך

או הדבק Ctrl+V
הבטחת פרטיות ללא העברה ברשת: 0 בייט הועלו לשרתים חיצוניים. כל העיבוד מתבצע באופן מקומי בארגז החול של הדפדפן שלך.

חתימת כותרת ברמת הבייט (Magic Bytes)

מערכות הפעלה ומנתחי קבצים מזהים קבצי DER על ידי בדיקת רצף הבייטים הבינארי הראשוני:

חתימת HEX (היסט 0):

30 82

ייצוג ASCII: 0\x82

תקינה: ITU-T Recommendation X.690

מפרט טכני

ארכיטקטורת מעטפתStrict canonical binary encoding of ASN.1 structures using Tag-Length-Value (TLV) triples
דחיסהUncompressed binary data
סדר בתים (Endianness)Big-Endian ASN.1 encoding
מרחבי צבעN/A (Cryptographic Binary Stream)
ערוצים ומבנהCryptographic keys, X.509 certificates, CRLs, and PKCS structures
ממדים מרבייםUnbounded ASN.1 length
שקיפותBinary ASN.1 data structure
הזרמה ופרוגרסיביותDeterministic single-pass canonical decoding

מטריצת השוואה טכנית: DER מול מתחרים

תכונה טכניתDER (נוכחי)PEMCRTP12
ייצוג נתוניםקידוד ASN.1 בינארי קפדניטקסט ממוגן Base64 ASCIIBase64 PEM או DER בינאריארכיון PKCS #12 בינארי מוצפן
גיבוב דטרמיניסטי (Hashing)זרם סיביות קאנוני ב-100%תלוי ברווחים לבנים/כותרותתלוי בעיצובמוצפן עם מלח (salt)/וקטור אתחול (IV)
גודל קובץהקטן ביותר (כ-33% קטן יותר מ-PEM)גדול יותר עקב Base64 (+33%)גדול יותר עקב Base64 (+33%)גדול יותר עקב מעטפות הצפנה
תמיכה בג'אווה וחומרהתקן מולד (Native)דורש המרה בג'אווהדורש המרה בג'אווהנתמך כמחסן מפתחות

מצבי שיחשות נפוצים ומדריך שחזור הקסדצימלי (Hex)

שגיאת OpenSSL: 'asn1 encoding routines:ASN1_get_object:header too long'.

גורם שורש: בתג (Tag-Length-Value - TLV) מושחת בכותרת רצף ה-ASN.1.

התאוששות: בצע המרה מחדש באמצעות כלי האישורים של File2File כדי לשחזר בתים קאנוניים חוקיים של DER.

ניתוח אבטחה ווקטורי התקפה על מנתחים (Parsers)

מפענחי DER מנתחים תיאורי אורך שבהם גלישת חסר או גלישת יתר של מספרים שלמים עלולה להפעיל גלישות חוצץ בספריות קריפטוגרפיה מובנות.

ווקטורי תקיפה ידועים

  • גלישת מספר שלם (Integer overflow) במהלך פענוח אורך בלתי מוגדר של ASN.1 מקונן עמוקות.
  • קריאה מחוץ לגבולות (Out-of-bounds read) בעת ניתוח מחרוזות סיביות פגומות.
  • מניעת שירות (DoS) באמצעות פצצות רקורסיה מקוננות של ASN.1.

השיטות המומלצות להגנה:

היסטוריה ואבני דרך

2021עדכון תקן ITU-T X.690 מייצב את מפרטי ASN.1 DER ברחבי חומרות אסימון מודרניות.
1997אומץ על ידי ארכיטקטורת הקריפטוגרפיה של ג'אווה (JCA) עבור קידוד מפתחות בינארי (X509EncodedKeySpec).
1988הוגדר כתקן תחת CCITT / ITU-T Recommendation X.690 כתת-קבוצה קפדנית של כללי קידוד בסיסיים (BER).

יתרונות מרכזיים

  • קאנוני ודטרמיניסטי: מבטיח שנתונים זהים תמיד יפיקו בדיוק את אותו ה-hash הבינארי, דבר חיוני לחתימות דיגיטליות.
  • קומפקטי יותר מ-PEM: חוסך כ-33% מנפח הנתונים על ידי השמטת קידוד Base64 וכותרות טקסטואליות.
  • פורמט מקורי עבור מודולי אבטחת חמונה (HSM), כרטיסים חכמים ומחסני מפתחות של ג'אווה (Keystores).

מגבלות טכניות וחסרונות

  • פורמט בינארי שלא ניתן לצפות בו, לערוך אותו או להעתיק-להדביק אותו בעורכי טקסט.
  • פחות נפוץ בסביבות אחסון אתרים, המעדיפות באופן גורף קבצי PEM/CRT מבוססי טקסט.
  • כללי קידוד קפדניים פירושם שכל סטיית ריפוד קטנה גורמת לדחיית הניתוח (parsing).

עובדות טכניות מעניינות

  • DER הוא תת-קבוצה קפדנית של BER (כללי קידוד בסיסיים); בעוד ש-BER מאפשר מספר דרכים חוקיות לקודד ערך, DER מתיר דרך קאנוני אחת ויחידה.
  • אם תקודד קובץ DER ב-Base64 ותעטוף אותו ב-'-----BEGIN CERTIFICATE-----', תקבל קובץ PEM סטנדרטי.
  • אובייקט ה-KeyFactory של ג'אווה דורש שמפתחות ציבוריים ופרטיים מסוג RSA יסופקו בפורמט DER גולמי.

שאלות טכניות נפוצות

מה ההבדל בין DER ל-PEM?

DER הוא הפורמט הבינארי הגולמי של אישור או מפתח. PEM הוא פשוט אותו קובץ DER שהומר לטקסט Base64 קריא עם כותרות '-----BEGIN...-----'.

איך אני יכול להמיר DER ל-PEM?

העלה את קובץ ה-.der שלך ל-File2File.app כדי להמיר אותו לאישור טקסט תקני מסוג .pem בשנייה אחת ישירות בדפדפן שלך.

למה Java משתמשת במפתחות DER?

ארכיטקטורת ההצפנה של Java (JCA) משתמשת במערכי בייט מסוג PKCS#8 ו-X.509 מקודדי DER עבור מפרטי המפתחות המקוריים שלה.