بسته PKCS #12 (.p12)

IETF استاندارد

PKCS #12 (P12، که با نام PFX نیز شناخته می‌شود) یک فرمت آرشیو رمزگذاری شده و محافظت شده با رمز عبور است که برای ذخیره و انتقال ایمن کلیدهای خصوصی در کنار گواهی‌های عمومی X.509 منطبق و زنجیره‌های CA طراحی شده است.

تبدیل P12 به PEM

مبدل رایگان P12 به PEM درون مرورگر. فایل‌ها را فورا روی دستگاه خود تبدیل کنید.

بررسی و فراداده

سیستم‌عامل‌ها و تحلیلگرهای فایل، فایل‌های P12 را با بررسی توالی بایت‌های دودویی ابتدایی شناسایی می‌کنند:

انتخاب یا رها کردن فایل‌ها در اینجا

تبدیل ۱۰۰٪ خصوصی در مرورگر - فایل‌ها هرگز دستگاه شما را ترک نمی‌کنند

یا جای‌گذاری کنید Ctrl+V
تضمین حریم خصوصی بدون انتقال شبکه: صفر بایت به سرورهای خارجی آپلود می‌شود. تمام پردازش‌ها به صورت محلی در سندباکس مرورگر شما انجام شد.

امضای هدر در سطح بایت (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 (فعلی)PEMCRTDER
قابلیت بسته‌بندیکلید خصوصی + زنجیره گواهی به صورت همه‌کارهامکان ترکیب در متن، کلید رمزگذاری نشدهفقط گواهیتک کلید باینری یا گواهی
رمزگذاریرمزگذاری شده با رمز عبور (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.
  • نشاست حافظه کلیدهای خصوصی رمزگشایی شده در بافرهای حافظه سخت‌نشده.

بهترین روش‌های پدافندی:

تاریخچه و نقاط عطف

2014IETF استاندارد RFC 7292 را منتشر می‌کند که PKCS #12 v1.1 مدرن را با رمزگذاری AES استانداردسازی می‌کند.
2000دسته کلید اپل macOS و مایکروسافت ویندوز استاندارد PKCS #12 را برای انتقال شناسه دیجیتال کاربر اتخاذ می‌کنند.
1999آزمایشگاه‌های RSA نسخه PKCS #12 v1.0 را منتشر می‌کنند که جایگزین فرمت قبلی PFX مایکروسافت می‌شود.

مزایا و نقاط قوت کلیدی

  • بسته‌بندی همه‌کاره: کلید خصوصی، گواهی عمومی و زنجیره کامل 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 حاوی کلید خصوصی حساس شما هستند، با یک رمز عبور رمزگذاری می‌شوند تا از سرقت هویت دیجیتال شما توسط افراد غیرمجاز جلوگیری شود.