חבילת PKCS #12 (.p12)
IETF תקןPKCS #12 (הידוע גם כ-P12 או PFX) הוא פורמט ארכיון מוצפן ומוגן סיסמא, המיועד לאחסן ולהעביר באופן מאובטח מפתחות פרטיים לצד אישורי X.509 ציבוריים תואמים ושרשראות רשות אישורים (CA).
המר P12 ל-PEM
ממיר חינמי מ-P12 ל-PEM פועל בדפדפן. המר קבצים באופן מיידי במכשיר שלך.
בדיקה ומטא-דאטה
מערכות הפעלה ומנתחי קבצים מזהים קבצי P12 על ידי בדיקת רצף הבייטים הבינארי הראשוני:
חתימת כותרת ברמת הבייט (Magic Bytes)
מערכות הפעלה ומנתחי קבצים מזהים קבצי P12 על ידי בדיקת רצף הבייטים הבינארי הראשוני:
חתימת HEX (היסט 0):
30 82ייצוג ASCII: 0\x82
תקינה: IETF RFC 7292 / PKCS #12 v1.1
מפרט טכני
| ארכיטקטורת מעטפת | Password-encrypted ASN.1 PFX structure encapsulating SafeBags holding private keys, certificates, and CRLs |
| דחיסה | Uncompressed cryptographic data |
| סדר בתים (Endianness) | Big-Endian ASN.1 DER |
| מרחבי צבע | N/A (Encrypted Key Store) |
| ערוצים ומבנה | Private keys, Public certificates, Intermediate CA chains, and Root CA certificates |
| ממדים מרביים | Typically 5 KB to 25 KB |
| שקיפות | Encrypted container (password-protected) |
| הזרמה ופרוגרסיביות | Atomic encrypted archive extraction |
מטריצת השוואה טכנית: P12 מול מתחרים
| תכונה טכנית | P12 (נוכחי) | PEM | CRT | DER |
|---|---|---|---|---|
| יכולת אריזה (Bundle) | מפתח פרטי + שרשרת אישורים בהכל-באחד | ניתן לשלב בטקסט, מפתח לא מוצפן | אישור בלבד | מפתח בינארי יחיד או אישור |
| הצפנה | מוצפן בסיסמא (AES-256) | סיסמה אופציונלית על מפתח פרטי | אישור ציבורי לא מוצפן | בינארי לא מוצפן |
| Apple iOS & macOS | תקן ייצוא זהויות מקורי | בשימוש דרך שורת הפקודה | מובא כאישור | מובא כמפתח גולמי |
| ניתן להחלפה עם | .pfx (פורמט זהה לחלוטין) | .crt, .key | .cer | .asn1 |
מצבי שיחשות נפוצים ומדריך שחזור הקסדצימלי (Hex)
שגיאת חילוץ: 'Mac verify error: invalid password' למרות הקלדת הסיסמה הנכונה.
גורם שורש: הגדרות ברירת המחדל של OpenSSL 3.0 מסרבות לאלגוריתמי הצפנה ישנים מסוג 3DES/RC2 הנמצאים בתוך קבצי P12 ישנים יותר.
התאוששות: הצפנה מחדש באמצעות AES-256 מודרני בעזרת כלי האישורים של File2File.
ניתוח אבטחה ווקטורי התקפה על מנתחים (Parsers)
מיכלי P12 מחזיקים מפתחות פרטיים קריטיים; יש לעדכן צפני הצפנה ישנים בתקני AES מודרניים.
ווקטורי תקיפה ידועים
- התקפות כוח גס (Brute-force) על סיסמאות נגד ארכיון P12 המוצפן בחולשה תוך שימוש בספירות איטרציה נמוכות.
- ניצול צפנים חלשים מדור קודם RC2-40-CBC בקבצי P12 ישנים.
- דליפת זיכרון של מפתחות פרטיים מפוענחים בתווך זיכרון לא מוקשח.
השיטות המומלצות להגנה:
היסטוריה ואבני דרך
יתרונות מרכזיים
- חבילת הכל-באחד: מאגדת את המפתח הפרטי, האישור הציבורי ושרשרת ה-CA הביניים המלאה בקובץ מאובטח אחד.
- הצפנה מוגנת בסיסמא: מפתחות פרטיים מוצפנים באמצעות AES-256 או 3DES, מה שהופך אותם לבטוחים להעברה.
- פורמט אישור הלקוח התקני עבור אימות בדפדפן אינטרנט ופרופילי חתימת קוד למפתחי Apple iOS.
מגבלות טכניות וחסרונות
- דורש סיסמא לצורך חילוץ: שכחת הסיסמא הופכת את המפתח הפרטי לבלתי הפיך ולבלתי ניתן לשחזור לצמיתות.
- קבצי P12 ישנים השתמשו באלגוריתמי הצפנה חלשים מסוג 3DES או RC2 המעוררים אזהרות ב-OpenSSL 3.0 המודרני.
- פורמט בינארי שלא ניתן לבדוק אותו ויזואלית ללא כלי חילוץ קריפטוגרפיים.
עובדות טכניות מעניינות
- סיומות הקבצים '.p12' ו-'.pfx' ניתנות להחלפה ב-100% ומתייחסות בדיוק לאותו הפורמט.
- אישורי מפתחי Apple iOS ופרופילי הוראות הפעלה (provisioning profiles) מופצים כקבצי .p12 לצורך חתימת אפליקציות אייפון.
- OpenSSL 3.0 הוציא משימוש אלגוריתמי PKCS#12 ישנים (RC2-40-CBC), ומחייב שימוש בדגל '-legacy' כדי לפתוח קבצי P12 ישנים.
שאלות טכניות נפוצות
מה ההבדל בין .p12 ל-.pfx?
אין הבדל. .pfx היה הפורמט הקודם של Microsoft אשר תוּקנן על ידי מעבדות RSA כ-PKCS #12 (.p12). כיום, שתי הסיומות מתייחסות בדיוק לאותו הפורמט.
איך אני יכול לחלץ את המפתח הפרטי מקובץ .p12?
אתה יכול לחלץ את המפתח הפרטי והאישור הציבורי לקבצי .pem נקיים בתוך שניות באמצעות File2File.app ישירות בדפדפן האינטרנט שלך.
למה קובץ ה-P12 שלי זקוק לסיסמה?
מכיוון שקבצי P12 מכילים את המפתח הפרטי הרגיש שלך, הם מוצפנים בסיסמה כדי למנוע מאנשים לא מורשים לגנוב את הזהות הדיגיטלית שלך.