بسته 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 |
|---|---|---|---|---|
| قابلیت بستهبندی | کلید خصوصی + زنجیره گواهی به صورت همهکاره | امکان ترکیب در متن، کلید رمزگذاری نشده | فقط گواهی | تک کلید باینری یا گواهی |
| رمزگذاری | رمزگذاری شده با رمز عبور (AES-256) | عبارت عبور اختیاری روی کلید خصوصی | گواهی عمومی رمزگذاری نشده | باینری رمزگذاری نشده |
| اپل iOS و macOS | استاندارد بومی صادرات هویت | استفاده از طریق خط فرمان | وارد شده به عنوان گواهی | وارد شده به عنوان کلید خام |
| قابل تعویض با | .pfx (فرمت یکسان) | .crt, .key | .cer | .asn1 |
حالتهای رایج خرابی و راهنمای بازیابی هگز
خطای استخراج: 'Mac verify error: invalid password' علیرغم تایپ رمز عبور صحیح.
علت ریشهای: تنظیمات پیشفرض OpenSSL 3.0 از پذیرش الگوریتمهای رمزگذاری قدیمی 3DES/RC2 در داخل فایلهای قدیمیتر P12 خودداری میکند.
بازیابی: با استفاده از ابزار گواهی File2File با AES-256 مدرن مجدداً رمزگذاری کنید.
تحلیل امنیتی و بردارهای حمله تجزیهکننده (Parser)
ظروف P12 حاوی کلیدهای خصوصی حیاتی هستند؛ سایفرهای رمزگذاری قدیمی باید به استانداردهای مدرن AES بهروزرسانی شوند.
بردارهای حمله شناختهشده
- حملات بروت فورس رمز عبور علیه آرشیوهای P12 با رمزگذاری ضعیف و تعداد تکرار پایین.
- سوءاستفاده از سایفرهای ضعیف قدیمی RC2-40-CBC در فایلهای قدیمی P12.
- نشاست حافظه کلیدهای خصوصی رمزگشایی شده در بافرهای حافظه سختنشده.
بهترین روشهای پدافندی:
تاریخچه و نقاط عطف
مزایا و نقاط قوت کلیدی
- بستهبندی همهکاره: کلید خصوصی، گواهی عمومی و زنجیره کامل CA میانی را در یک فایل امن واحد ترکیب میکند.
- رمزگذاری محافظت شده با رمز عبور: کلیدهای خصوصی با استفاده از AES-256 یا 3DES رمزگذاری میشوند و انتقال آنها را امن میکند.
- فرمت استاندارد گواهی کلاینت برای احراز هویت مرورگر وب و پروفایلهای امضای کد توسعهدهنده اپل iOS.
محدودیتها و معایب فنی
- نیازمند رمز عبور برای استخراج: فراموش کردن رمز عبور باعث میشود کلید خصوصی برای همیشه غیرقابل بازیابی شود.
- فایلهای قدیمی P12 از الگوریتمهای رمزگذاری ضعیف 3DES یا RC2 استفاده میکردند که هشدارهایی را در OpenSSL 3.0 مدرن ایجاد میکند.
- فرمت باینری را نمیتوان بدون ابزارهای استخراج رمزنگاری به صورت بصری بازرسی کرد.
نکات فنی جالب
- پسوندهای فایل '.p12' و '.pfx' صددرصد قابل جایگزینی با یکدیگر هستند و به دقیقاً همان فرمت اشاره دارند.
- گواهیهای توسعهدهنده اپل iOS و پروفایلهای پروویژنینگ به عنوان فایلهای .p12 برای امضای برنامههای آیفون توزیع میشوند.
- OpenSSL 3.0 الگوریتمهای قدیمی PKCS#12 (RC2-40-CBC) را منسوخ کرد و برای باز کردن فایلهای قدیمی P12 به پرچم '-legacy' نیاز دارد.
سوالات فنی متداول
تفاوت بین .p12 و .pfx چیست؟
هیچ تفاوتی وجود ندارد. .pfx فرمت پیشین مایکروسافت بود که توسط آزمایشگاههای RSA به عنوان PKCS #12 (.p12) استاندارد شد. امروزه هر دو پسوند به دقیقاً یک فرمت اشاره دارند.
چگونه میتوانم کلید خصوصی را از یک فایل .p12 استخراج کنم؟
شما میتوانید با استفاده از File2File.app مستقیماً در مرورگر وب خود، کلید خصوصی و گواهی عمومی را در چند ثانیه به فایلهای .pem تمیز استخراج کنید.
چرا فایل P12 من به رمز عبور نیاز دارد؟
از آنجا که فایلهای P12 حاوی کلید خصوصی حساس شما هستند، با یک رمز عبور رمزگذاری میشوند تا از سرقت هویت دیجیتال شما توسط افراد غیرمجاز جلوگیری شود.
جفتهای تبدیل مرتبط با P12
تبدیل یک بسته PKCS #12 به گواهی PEM، کلیدهای عمومی و خصوصی شما را از یک آرشیو باینری قفل شده به فایلهای متنی پاک برای سرورهای وب استخراج میکند.
تبدیل گواهی PEM به یک بسته PKCS #12، گواهی عمومی و کلید خصوصی شما را در یک فایل محافظتشده با رمز عبور ادغام میکند تا نصب آن روی سرورهای ویندوز و مرورگرهای وب آسانتر شود.