رمزپردازنده ایمن

رمزپردازنده ایمن یا پردازنده رمزنگاری ایمن  یک ریزپردازنده اختصاصی یا رایانه بر روی تراشه اختصاصی است که برای انجام عملیات رمزنگاری استفاده می‌شود و با چندین اقدامات امنیتی فیزیکی، در یک بسته‌بندی جاسازی شده‌است، که در نتیجهٔ این جاسازی، درجه‌ای از مقاومت در برابر ضربه حاصل می‌شود. بر خلاف پردازنده‌های رمزنگاری که داده‌های رمزگشایی شده را به یک گذرگاه در یک محیط امن منتقل می‌کنند، یک رمزپردازنده ایمن از داده‌های رمزگشایی شده یا فرمان‌های برنامه رمزگشایی شده در محیطی که امنیت را نمی‌توان به‌طور دائم در آن حفظ کرد، استفاده نمی‌کند.

عمل کردن بعنوان کانون اصلی یک زیر سیستم امنیتی، هدف استفاده از رمزپردازنده ایمن است تا با اقدامات امنیتی فیزیکی، نیاز به محافظت از بقیه زیر سیستم را برطرف کند.

مثال‌ها 
یک واحد امنیتی سخت‌افزاری (HSM) شامل یک یا چند تراشه پردازنده رمزنگاری ایمن است. این دستگاه‌ها، پردازنده رمزنگاری ایمن درجه بالا هستند که همراه با سرورهای سازمانی استفاده می‌شوند. یک واحد امنیتی سخت‌افزاری می‌تواند دارای چندین سطح امنیت فیزیکی با پردازنده رمزنگاری تک تراشه به عنوان ایمن‌ترین جزء آن باشد. پردازنده رمزنگاری، کلیدها یا فرمان‌های اجرایی روی گذرگاه را نشان نمی‌دهد، مگر آنکه به صورت رمزگذاری شده و کلیدهای صفر باشد که در اینصورت با هدف تلاش برای کاوش یا اسکن است. تراشه (های) رمزنگاری نیز ممکن است در سایر واحدهای امنیتی سخت‌افزار با سایر پردازنده‌ها و تراشه‌های حافظه، محفوظ شود که داده‌های رمز شده را ذخیره و پردازش می‌کنند. اگر تلاشی برای از بین بردن این محفوظیات صورت گیرد، کلیدهای موجود در تراشه رمزنگاری صفر می‌شوند. یک واحد امنیتی سخت‌افزاری می‌تواند بخشی از یک رایانه (به عنوان مثال دستگاه خودپرداز) باشد که در داخل صندوق امن و قفل شده عمل می‌کند تا از سرقت، تعویض و دستکاری آن جلوگیری کند.

اگرچه ممکن است کارت‌های هوشمند امروزی گسترده‌ترین شکل پردازنده رمزنگاری استقرار یافته باشند، اما رمزنگاری‌های ایمن پیچیده‌تر ومتنوع‌تر به‌طور گسترده در سیستم‌های دیگری مانند دستگاه‌های خودپرداز، جعبه‌های تنظیم تلویزیون، کاربردهای نظامی و تجهیزات ارتباطی قابل حمل و با امنیت بالا استفاده می‌شوند. برخی از پردازنده‌های رمزنگاری ایمن می‌توانند سیستم عامل‌های عامه مانند لینوکس را در مرز امنیتی خود اجرا کنند. دستورالعمل‌های برنامه رمزپردازنده به صورت رمز شده، دستورالعمل‌های ساده را رمزگشایی می‌کند و سپس در همان تراشه رمزپردازنده اجرا می‌کند که در آن‌جا دستورالعمل‌های رمزگشایی شده غیرقابل دسترس هستند. بدون آشکار کردن فرمان‌های برنامه رمزگشایی شده، رمزپردازنده مانع از دستکاری برنامه‌ها توسط تکنسین‌هایی می‌شود که ممکن است دسترسی قانونی به گذرگاه داده‌های زیرسیستم داشته باشند. این امر به رمزگذاری گذرگاه معروف است. داده‌های پردازش شده توسط رمزپردازنده نیز غالباً رمزگذاری می‌شوند.

واحد مورد اعتماد بستر نرم‌افزاری (TPM) یک پیاده‌سازی رمزپردازنده ایمن است که با فعال کردن یک محیط امن، مفهوم محاسبات قابل اعتماد را به رایانه‌های معمولی می‌دهد.  پیاده‌سازی‌های مرسوم واحد مورد اعتماد بستر نرم‌افزاری (TPM) متمرکز بر ارائه یک محیط بوت ضد دستکاری، رمزگذاری مداوم و فرّار ذخیره‌سازی هستند.

برای سیستم‌های نهفته نیز تراشه‌های امنیتی وجود دارد که همان سطح محافظت فیزیکی را برای کلیدها و سایر اجزای مخفی بعنوان پردازنده کارت هوشمند یا واحد مورد اعتماد بستر نرم‌افزاری (TPM) فراهم می‌کند، که این تراشه در بسته‌بندی کوچک‌تر، ساده‌تر و کم هزینه‌تر است.  آن‌ها معمولاً به عنوان دستگاه‌های اصالت‌سنجی شناخته می‌شوند و برای اصالت سنجی لوازم جانبی، تجهیزات تزیینی و / یا مواد مصرفی مورد استفاده قرار می‌گیرند. معمولاً این تراشه‌ها همانند TPMها، مدارهای مجتمع کلیددار هستند که قرار است در یک سیستم نهفته تعبیه شوند. آن‌ها معمولاً به یک برد رایانه لحیم می‌شوند.

امکانات 
تمهیدات امنیتی به کار گرفته شده در رمزپردازنده ایمن:
 تشخیص و جلوگیری از دستکاری.
 وجود لایه‌های سپر رسانا در تراشه به منظور جلوگیری از خواندن سیگنال‌های داخلی.
 اجرای کنترل شده به منظور جلوگیری از افشای اطلاعات مخفی توسط تأخیر زمان‌بندی.
 صفر کردن خودکار اسرار در صورت دستکاری.
 زنجیر اعتماد بوت کننده که قبل از بارگذاری سیستم عامل آن را تأیید می‌کند.
 زنجیره اعتماد سیستم عامل که قبل از بارگذاری آن، نرم‌افزار برنامه را تأیید می‌کند.
 ثبات‌های بر پایه سخت‌افزار، پیاده‌سازی یک مدل جداسازی امتیازی یک طرفه.

درجه امنیتی 
رمزپردازنده‌های ایمن اگرچه مفید هستند، اما در برابر حملات مخالفان مجهز و مصمم (به عنوان مثال سازمان اطلاعاتی دولت) که مایل به صرف منابع عظیم برای پروژه هستند، غیرقابل نفوذ نیستند. 

یک تیم، حمله به یک رمزپردازنده ایمن در IBM 4758 را مورد هدف قرار داد. تیمی در دانشگاه کمبریج از استخراج موفقیت‌آمیز اطلاعات مخفی از IBM 4758 خبر دادند که با استفاده از ترکیبی از ریاضیات و سخت‌افزار تحلیل رمزِ خاص منظوره حاصل شده بود. با این حال، این حمله در سیستم‌های دنیای واقعی عملی نبود زیرا به حمله کنندگانی نیاز داشت تا بتوانند به کلیه عملکردهای API دستگاه دسترسی کامل داشته باشد. شیوه‌های عادی و توصیه شده، از سیستم کنترل دسترسی یکپارچه استفاده می‌کنند تا قدرت را تقسیم کند و در نتیجه آن، هیچ‌کس نتواند حمله را پیاده‌سازی کند.

حمله آن‌ها و استفاده از آسیب‌پذیری موجود، نقصی در معماری نداشت و تنها در نرم‌افزار بارگذاری شده بر روی ۴۷۵۸ دارای کاستی بود، اما این حمله یادآور این موضوع است که یک سیستم امنیتی فقط به اندازه ضعیف‌ترین پیوند خود دارای امنیت است: پیوند محکم سخت افزاریِ ۴۷۵۸ با نقص در طراحی و مشخصات نرم‌افزار بارگذاری شده روی آن روبرو شد و در نتیجه این پیوند مستحکم، بی فایده تلقی شد.

دسترسی فیزیکی راحت به کارت‌های هوشمند، منجر به آسیب‌پذیری بیشتر آن‌ها می‌شود. در صورتی که سرمایه‌گذاری در طراحی ضد درب انجام نشود، امنیت در کارت‌های هوشمند و رمزپردازنده‌ها توسط درپشتی‌های سخت‌افزاری تضعیف می‌شود. .

در شرایطی که رمزگذاری کامل دیسک برنامه‌ها انجام می‌شود، به ویژه هنگامی که اجرای بوت پین انجام نمی‌شود، اگر پسماند داده قادر به بهره‌برداری از محتویات کنار گذاشتهٔ حافظه پس از رمزنگاری کلید TPM از آن باشد، رمزپردازنده در برابر حمله بوت سرد ایمن نیست.

اما اگر همه داده‌های حساس بدون ذخیره در حافظه خارجی، فقط در حافظه رمزنگاری ذخیره شود، و ریزپردازنده به گونه ای طراحی شده باشد که قادر به افشای کلیدها یا داده‌های رمزگشایی شده یا رمز نشده نشده روی پدهای اتصال روی تراشه یا برجستگی‌های لحیم کاری نباشد، در اینصورت چنین داده‌هایی را می‌توان محافظت شده تلقی کرد. جدا کردن هر نوع بسته‌بندی و لایه‌های محافظ فلزی از تراشه ریزپردازنده، فقط با بررسی تراشه ریزپردازنده قابل حصول است. این امر به داشتن دستگاه به صورت فیزیکی و همچنین مهارت و تجهیزات پیشرفته‌تری از کادر فنی نیاز دارد.

تجزیه و تحلیل دقیق زمانبندی عملیات مختلف از روش‌های دیگر حمله است که ممکن است بسته به مقدار پنهان یا نگاشت مصرف جریان فعلی در مقابل زمان متفاوت باشد، تا بتواند تفاوت‌هایی را در نحوه برخورد بیت‌های '۰' در مقابل بیت '۱' نشان دهد. یا ممکن است مهاجم با اعمال دمای زیادی، فرکانس کلاک بیش از حد زیاد یا کم، یا ولتاژ تأمین بیش از حد نیاز، به سیستم خطا اعمال کند. تنظیم طراحی داخلی رمزنگاری می‌تواند باعث جلوگیری از این حملات شود.

برخی از رمزپردازنده‌های ایمن دارای هسته‌های پردازنده دوگانه هستند و در صورت لزوم کلید رمزگذاری غیرقابل دسترس تولید می‌کنند، به طوری که حتی با مهندسی معکوس نیز هیچ کلید ضروری‌ای را برای رمزگشایی ایمن نرم‌افزار بوت شده از حافظه فلش مموری رمزگذاری شده یا ارتباط بین هسته‌ها نشان نمی‌دهد.

طراحی اولین رمزپردازنده مستقر بر یک تراشه برای محافظت از کپی از نرم‌افزارهای رایانه شخصی (رجوع کنید به ثبت اختراع ایالات متحده ۴٬۱۶۸٬۳۹۶، ۱۸ سپتامبر ۱۹۷۹) و الهام گرفته از نامه سرگشاده بیل گیتس به علاقه‌مندان.

تاریخچه 
واحد امنیتی سخت‌افزار (HSM)، نوعی رمزپردازنده ایمن، است که توسط مهندس مصری-آمریکایی محمد م. آتلا، در سال ۱۹۷۲ اختراع شد. وی یک واحد با امنیت بالا با نام "Atalla Box" اختراع کرد که پیام‌های شماره شناسایی شخصی (PIN) و عابربانک را رمزگذاری کرده و از دستگاههای آفلاین با تولید کلید شماره شناسایی شخصی حدس‌ناپذیر محافظت می‌کند. در سال ۱۹۷۲، وی این دستگاه را ثبت اختراع کرد. او در آن سال شرکت آتالا (در حال حاضر اوتیماکو آتالا) را تأسیس کرد، و سال بعد «آتالا باکس» را به عنوان دستگاه رسمی شناسایی تجاری کرد. دستگاه وی شامل یک کارت خوان و سیستم شناسایی مشتری بود که شامل یک ماژول کارت خوان، دو لنت شماره شناسایی شخصی مشتری، کنترل‌کننده هوشمند و رابط الکترونیکی غیرقابل انتقال داخل بسته بود. این مجموعه، این امکان را به مشتری می‌دهد تا یک کد مخفی را تایپ کند. این کد مخفی با کمک ریزپردازنده تبدیل به کد دیگری برای گوینده شده‌است. در طی تراکنش مالی، شماره حساب مشتری توسط کارت خوان خوانده می‌شود. این موفقیت بزرگ، منجر به استفاده گسترده از واحدهای با امنیت بالا شد.

از ترس تسلط شرکت آتالا بر بازار، بانک‌ها و شرکت‌های کارت اعتباری در دهه ۱۹۷۰ کار خود را با استاندارد بین‌المللی آغاز کردند. IBM 3624، از یک پروسه تأیید صحت شماره شناسایی شخصی مشابه سیستم قبلی آتالا را استفاده کرد که در اواخر دهه ۱۹۷۰ روانه بازار شد. آتالا رقیب اولیه IBM در بازار امنیت بانکی بود.

در کنفرانس انجمن ملی بانک‌های پس‌اندازهای متقابل (NAMSB) در ژانویه سال ۱۹۷۶، آتالا از سیستم ارتقاء سیستم شناسه خود با نام مبادله شناسه پرده برداشت. این ارتقا منجر به افزوده شدن قابلیت پردازش تجارت الکترونیک و خرید و فروش همراه با امنیت شبکه شد. سامانه شناسه با محوریت انجام معاملات بانکی بصورت برخط طراحی شده و به عملیات تسهیلات مشترک گسترش یافته‌است. این طراحی استوار و سازگار با شبکه‌های مختلف راه گزینی بسته کوچک (سوئیچینگ) بود و قادر به تنظیم مجدد الکترونیکی خود به هر یک از ۶۴۰۰۰ الگوریتم غیر خطی برگشت‌ناپذیر به عنوان اطلاعات داده کارت است. دستگاه مبادله شناسه در مارس ۱۹۷۶ منتشر شد. بعداً در سال ۱۹۷۹، آتالا اولین پردازنده امنیت شبکه (NSP) را معرفی کرد. محصولات HSM Atalla از ۲۵۰  محافظت می‌کند. از سال ۲۰۱۳ میلیون‌ها تراکنش با کارت انجام می‌شود، و این شرکت اکثر معاملات دستگاه خودپرداز جهان را از سال ۲۰۱۴ از نظر ایمنی تضمین می‌کند.

جستارهای وابسته 
 امنیت رایانه
 خرد کردن رمزنگاری
 FIPS 140-2
 شتاب سخت‌افزار
 شتاب‌دهنده SSL / TLS
 ماژول‌های امنیتی سخت‌افزار
 مهندسی امنیت
 کارت هوشمند
 محاسبات قابل اعتماد
 ماژول بسترهای نرم‌افزاری قابل اعتماد

منابع 

اختراع‌های اعراب
اختراع‌های مصری
رمزنگاری
سخت‌افزارهای مرتبط با رمزنگاری