ماژول امنیتی سختافزاری
ماژول امنیتی سختافزاری (به انگلیسی: Hardware Security Module، به اختصار HSM) یک دستگاه پردازشگر فیزیکی است که از وظایف آن میتوان به محافظت و مدیریت امضاهای دیجیتال، رمزگذاری و رمزگشایی برای امضای دیجیتال، احراز هویت قوی و سایر توابع رمزنگاری دیگر اشاره کرد. این ماژول ها به طور سنتی به شکل کارت پلاگین یا یک دستگاه خارجی هستند که مستقیماً به رایانه یا سرور متصل میشوند. یک ماژول امنیتی سخت افزاری شامل یک یا چند مدار مجتمع رمزپردازنده ایمن است.
اهداف HSM (الف) نسل امن پردازنده (ب) ذخیرهسازی امن پردازنده، (ج) استفاده از مواد حساس و دادههای رمز نگاری، (د) تخلیه سرور نرمافزار کامل برای رمزنگاری نامتقارن و متقارن هستند. HSMها حمایت منطقی و فیزیکی این موارد را برای جلوگیری از استفاده غیر مجاز و دشمنان بالقوه فراهم میکنند. بهطور خلاصه، آنها با ارزش بالایی از کلیدهای رمز نگاری حفاظت میکنند.
مواد رمزنگاری به کار گرفته شده توسط اکثر HSMs نامتقارن هستند جفت کلید (و گواهینامههای) در رمزنگاری کلید عمومی مورد استفاده قرار میگیرد. برخی از HSMها همچنین میتوانند کلیدهای متقارن و دیگر اطلاعات را به صورت خودکار اداره کند. بسیاری از سیستمهای HSM وسیلهای برای پشتیبانگیری مطمئن از کلیدهایی استفاده میکنند که در شکل پیچیده توسط سیستم عامل کامپیوتر یا در شکل خارجی با استفاده از کارت هوشمند یا برخی از مشخصه امنیتی به کار برده میشود. HSMها هرگز نباید اجازه صادرات اسرار در فرم پروندههای متنی ساده، حتی هنگام انتقال بین HSMها یا انجام عملیات پشتیبانگیری دهند.
بسیاری از سیستم HSM نیز شتاب دهنده رمزنگاری سخت افزاری دارند. آنها معمولاً نمیتوانند از راه حلهایی که فقط به صورت نرمافزاری برای انجام عملیات با کلید متقارن هستند تداخل عملکرد داشته باشند. با این حال، با اجرای محدوده از شماره ۱ تا ۷،۰۰۰ RSA ۱،۰۲۴ بیتی، HSM میتواند به صورت offload پردازنده قابل توجهی برای انجام عملیات نامتقارن کلید ارائه کنند. از آنجا که استفاده از کلید آراسای ۲،۰۴۸ بیتی از سال ۲۰۱۰ [نیازمند منبع] توصیه شدهاست، کارایی در اندازه کلیدیهای بزرگتر روز به روز مهمتر میشود.
از آنجا که HSMs اغلب بخشی از یک مأموریت زیر ساختهای حیاتی مانند زیرساخت کلید عمومی یا برنامه بانکداری آنلاین هستند، HSMها بهطور معمول میتواند برای دسترسی به بالا به صورت خوشهای باشد. برخی از HSMs ویژگی منابع تغذیه دوگانه با قابلیت تداوم کار به صورت پیوسته را دارند
تعداد کمی از HSMهای موجود در بازار دارای قابلیت و توانایی اجرای ماژولهای اجرایی توسعه یافته ویژه در بین [ویرایش] محوطه امن HSMهارا دارند. چنین توانایی مفید است، برای مثال، در مواردی که الگوریتمهای خاص یا منطق کسب و کار است که باید در یک محیط امن و کنترل شده اجرا شود. ماژولهای اجرا میتوان در زبان بومی سی، در دات نت، جاوا یا زبانهای برنامهنویسی دیگر توسعه یافت. در حالی که سود کد برنامه خاص ارائه تضمین امنیت را فراهم میکند، این موتورهای اجرا وضعیت FIPS HSM یا ضوابط مشترک وضعیت اعتبار را دچار میکنند.
حفاظت از مداخله
تشخیص، مقاومت و پاسخ - حفاظت از مداخله - کلید و عمده تفاوت HSMها هستندکه از رایانههای سرور معمولی به عنوان شتاب دهندههای رمزنگاری فعالیت میکنند.
در حالی که برخی از استانداردهای پوشش نیازمندیهای امنیتی برای ماژولهای رمز نگاری وجود دارد، بهطور گسترده (هر دو به عنوان انتخاب مشتریان و درخواست دولت) از جانب FIPS ۱۴۰-۲ پذیرفته شدهاست.
رابطهای برنامه کاربردی نرمافزاری HSM
در زیر لیستی از رابطهای برنامه کاربردی رمزنگاری مشهور است که میتواند از ماژولهای سخت افزاری فروشندگان مختلف استفاده شود.
PKCS#۱۱: رابطهای برنامه کاربردی RSA برای بسترهای نرمافزاری مستقل، یک رابط عمومی برای تعریف HSMهاطراحی شدهاست. همچنین به عنوان 'cryptoki' شناخته شدهاست.
- OpenSSL: رابط موتورOpenSSL
- JCE/JCA:رابط رمزنگاری جاوا
- API: Microsoft CAPIمایکروسافت که توسط IIS, CA و دیگران استفاده میشود، همچنین در دات نت مورد استفاده قرار میگیرد
- Microsoft CNG API:رابط رمزنگاری نسل بعدی مایکروسافت که برای ویندوز ویستا به بعد در دسترس است، توسط IIS, ADCS و دیگران استفاده شدهاست.
استفاده اصلی HSM
HSMها میتوانند در هر برنامهای که از کلیدهای دیجیتال استفاده میشود به کار رود. بهطور معمول کلید باید با ارزش باشد به معنی اینکه، اگر به خطر بیفتد تأثیر منفی قابل توجه به صاحب کلید نخواهد داشت. لیستی از کاربردهای بی پایان وجود دارد، اما برخی از استفادههای اصلی عبارتند از:
محیط (PKI (CA HSMs
در مورد محیط PKI، HSMs معمولاً توسط همه مراکز صدور گواهینامه (CA) و مراکز ثبت نام (RAs) جهت تولید، ذخیره، و رسیدگی به جفت کلید استفاده میشود. در این سناریو وجود دارد، برخی از ویژگیهای اساسی که یک دستگاه باید داشته باشد، که عبارتند:
- حفاظت سطح بالای منطقی و فیزیکی
- طرح مجوز کاربر چند بخشی (به اشتراک گذاری محرمانه Blakley - شامیر نگاه کنید)
- رسیدگی کامل و آثار ورود به سیستم
- پشتیبانگیری کلید امنیتی
در محیط PKI، عملکرد دستگاه در هر دو عملیاتهای آنلاین و آفلاین به عنوان روش مرجع ثبت نام که عملکرد تنگنا زیرساخت نمایش میدهد بسیار کم اهمیت تراست.
HSMهای سیستم پرداخت کارت (HSMهای بانکی)
محدودیت از ویژگیهای HSMها در سیستم پردازش کارت استفاده میشود. این سیستمها معمولاً پیچیدگی کمتری از HSMهای CA را دارند و معمولاً ویژگیهای استاندارد API را انجام نمیدهند. این دستگاه را میتوان در دو طبقه اصلی دستهبندی نمود:
OEM یا ماژولهای یکپارچه برای دستگاههای گوینده خودکار و پایانههای اعتباری:
- جهت رمزگذاری پین وارد شده در هنگام استفاده از کارت
- جهت بار کردن کلید در حافظه محافظت شده
اختیارات و شخصی سازی ماژول میتواند استفاده شود جهت:
- بررسی آن لاین پین با مقایسه با بلوک پین رمزشده
- در رابطه با کنترلکننده خودپرداز، تراکنشهای تأیید اعتبار / بدهی کارت با چک کردن کدهای امنیتی کارت یا با انجام جزء پردازشی میزبان بر اساس یک تراکنش EMV
- پشتیبانی از یک رمزنگاری API با کارت هوشمند (مانند EMV)
- دوباره رمز در آوردن یک بلوک پین جهت ارسال آن به میزبان مجوز دیگر
- پشتیبانی از پروتکل مدیریت شبکه دستگاه خودپرداز اعتباری
- پشتیبانی از استانداردهای عملی کلید میزبان- میزبان | تبادل داده API
- تولید و چاپ «PIN mailer»
- تولید داده برای کارت نوار مغناطیسی (PVV، CVV)
- تولید keyset کارت و حمایت از روند شخصی سازی کارتهای هوشمند
سازمان اصلی که تولید و حفظ استانداردهای لازم برای HSMها در بازار بانکی پرداخت کارت استانداردهای صنعت شورای امنیت است.
اتصال به SSL
برنامههای کاربردی که در آن عملکرد تنگنا ولی امنیت نباید فراموش کرد وجود دارد. این برنامهها معمولاً به عنوان خدمات سرویس امنیتی از طریق HTTPS (SSL / TLS) ارائه شدهاست. در این محیط، HSMهای تسریع SSL به کار گرفته میشوند. تعداد نمونه برای عملکرد این برنامهها دارای دامنهای از ۵۰ تا ۱،۰۰۰برای RSA ۱،۰۲۴ بیتی است هر چند برخی از دستگاهها میتوانند اعداد را تا ارتفاع ۷،۰۰۰ عملیات در ثانیه برسانند.
DNSSEC
تعداد رو به افزایشی از ثبت استفاده HSMها برای ذخیره مواد کلیدی است که برای ثبت نام zonefiles بزرگ استفاده میشود. ابزار متن باز برای مدیریت امضای فایلهای منطقهای DNS با استفاده از HSM OpenDNSSEC است.