نحوه عملکرد و رمزنگاری چیپ های TPM

نحوه عملکرد و رمزنگاری چیپ های TPM

TPM (Trusted Platform Module) یک میکروچیپ امنیتی است که فرایندهای امنیتی را رمزنگاری می­نماید. این چیپ معمولا بر روی مادربورد لپ تاپ یا کامپیوتر نصب می شود که با استفاده از یک گذرگاه سخت افزاری با سایر قسمت های دستگاه ارتباط برقرار می کند. در واقع TPM ماژول احراز هویت دستگاه لپ تاپ یا کامپیوتر شما است که به شما اطمینان می دهد که با دستگاه سالم و درستی ارتباط برقرار کرده اید. کامپیوترهایی داری این چیپ توانایی ایجاد کلید­های رمزنگاری را  دارند که رمزگشایی آنها فقط بوسیله TPM امکان پذیر است و اگر دستگاه شما TPM مورد نظر را نداشته باشد عملیات رمزگشایی انجام نمی شود. این مولفه­های امنیتی که برای رمزنگاری از TPM استفاده می کنند می توانند پسوردها ، گواهی­ها و یا کلیدهای رمزنگاری باشند که درون TPM ذخیره می شوند. به زبان ساده وقتی در مورد احراز هویت سخت افزاری صحبت می کنیم و می خواهیم مطمئن شویم که سخت افزار شما دچار تغییرات و دستکاری های غیر مجاز نشده است و همانی است که ادعا می کند.

همانطور که در بالا گفته شد کلید های رمزنگاری و ... درون TPM قرار می­گیرند که به اینکار Wrapping و Binding کلیدهای رمزنگاری هم گفته می شود و به منظور جلوگیری از افشای کلیدهای رمزنگاری است و یک قابلیت امنیتی بسیار مناسب برای کلیدهای رمزنگاری ایجاد می کند. هر  TPM درون خودش و  برای خودش دارای یک کلید ریشه یا Root wrapping Key است که به آن Storage Root Key یا SRK هم گفته می شود. قسمت محرمانه و خصوصی کلید رمزنگاری که درون TPM قرار گرفته است به هیچ عنوان برای هیچ مولفه، نرم افزار، پردازش یا حتی شخصی در دسترس نخواهد بود و کاملا محرمانه حفظ می شود. کامپیوترهایی که از TPM استفاده می کنند هم می توانند یک کلید تولید کنند که نه تنها درون TPM قرار می گیرد بلکه برای بررسی احراز هویت و صحت سنجی از پلت فرم­های خاصی استفاده می­نمایند.

این نوع از کلیدهای امنیتی فقط می­توانند توسط معیارهای امنیتی همانپلت فرم رمزگشایی شوند که همان مقادیر کلید را درون TPM خود داشته باشد و در صورت تغییر کرد مقادیر و یا عدم برابری آنها با مقادیری که از قبل در TPM وجود دارد، پلت فرم­ احراز هویت نخواهد شد. به عبارتی فرآیند ایجاد یک کلید در TPM برایپلف فرممورد نظر را Sealing  گفته و به عملیات رمزگشایی آن Unsealing می­گویند. TPM همچنین امکان Seal و Unseal کردن داده های بیرون TPM را نیز دارد.

شما زمانیکه از نرم افزارهایی مثل Windows BitLocker یا Drive Encryption استفاده می کنید می توانید با استفاده از فرآیند Seal  کاری کنید که فقط در صورتیکه سخت افزار یا نرم افزار خاصی درون دستگاه قرار داشت فرآیند رمزگشایی انجام شود و برای رمزگشایی داده های خودتان می توانید شرط سخت افزاری یا نرم افزاری بگذارید. با توجه به اینکه TPM از مدار منطقی و Firmware داخلی خاص خودش برای پردازش دستورات استفاده می کند ، وابستگی به سیستم عامل شما ندارد و به همین دلیل در مقابل آسیب پذیری های نرم افزاری مقاوم است. در واقعTPM یک روش رمزنگاری بر اساس سخت افزار یا Hardware Based Cryptography است که این ایده را در پس زمینه دارد که اطلاعاتی که در سخت افزار ذخیره می شود از اطلاعاتی که در نرم افزارها نگهداری می شوند بهتر حفاظت می شوند و در برابر حملات نرم افزاری مقاومت بیشتری دارند. نرم افزارها متنوعی وجود دارد که می توانند کلیدهای رمزنگاری خودشان را بر اساس TPM طراحی کنند. اینگونه نرم افزارها دسترسی به اطلاعات بر روی تجهیزات پردازش کننده اطلاعات را بدون احراز هویت و تعیین سطح دسترسی مناسب توسط TPM ها بسیار سخت می­کنند، حتی اگر سخت افزار شما هم به سرقت برود اینگونه نرم افزارها از داده های شما حفاظت می­کنند. تصور کنید که شما برنامه ای نوشته اید که با استفاده از کلید رمزنگاری خاصی که در TPM وجود دارد کار می کند و شخصی هارد دیسک این نرم افزار را به سرقت می برد و می خواهد اطلاعات را بازیابی و استفاده نماید با توجه به اینکه رمزنگاری اطلاعات بر اساس کلیدهای موجود در TPM  انجام شده است این امکان برایش بسیار سخت خواهد بود که اطلاعات را رمزگشایی کند. اما بایستی به یک نکته توجه کنید که TPM نمی تواند نرم افزاری که بر روی سیستم عامل PC   نصب شده است را کنترل کند. TPM فقط می تواند پارامترهای پیکربندی خود را از قبل از بوت سیستم عامل تعریف کند یا در اصطلاح فنی TPM به شکل Pre-Runtime پارامترهای پیکربندی خود را اجرا می کند. بعد از اجرا شدن این پارامترها از این به بعد این نرم افزارهای ما هستند که Policy های خودشان را بر اساس پارامترهای موجود در TPM شکل می دهند. پردازش هایی که به رمزنگاری نیاز دارند و کلید رمزنگاری دارند با استفاده از TPM بسیار می توانند امن تر شوند و برای مثال در حوزه امضای دیجیتال یا Digital Signing استفاده از TPM درجه امنیتی را بسیار بالا می برد. البته به غیر از این موارد شما میتوانید از TPM در مواردی مثل مدیریت مستندات امن، ایمیل های امن و هر سرویسی که نیاز به درجه امنیتی بالایی دارد استفاده کنید مثلا اگر به فرض در فرآیند Boot یک سیستم تغییراتیدر تنظیمات سیستم تشخیص داده شود و نشان دهد که سیستم دیگر همان سیستمی که قبلا استفاده می شده نمی باشد، دسترسی به اطلاعاتی که از طریق TPM رمزنگاری شده برای کاربران مسدود خواهد شد تا زمانیکه مجددا تنظیمات به حالت درست و قبلی خود بازگردد. این قابلیت ها و امکانات امنیتی که مکانیزم TPM در اختیار ما قرار می دهد می­تواند درجه امنیتی را در بسیاری از حوزه های فناوری اطلاعات بالا ببرد که از آن جمله می توان به تجارت الکترونیک، نرم افزارهای کاربردی امن، بانکداری آنلاین، نگهداری اطلاعات محرمانه سازمانی و مدیریت مستندات امن، برقراری ارتباطات امن و هر جایی که نیاز به درجه امنیتی بالاتری باشد اشاره کرد. امنیت در لایه سخت افزاری می تواند حفاظت اطلاعات را به شدت بالا ببرد از جمله در ارتباطاتی مثل VPN یا تجهیزات وایرلس و ...

امروزه اکثر تولید کنندگان سرور در دنیا نیز به سمت استفاده و قراردادن چیپ های TPM بر روی محصولات خود هستند و در این حین اپلیکیشن های زیاد هم تولید شده اند که مکانیزمهای امنیتی خودشان را بر اساس TPM طراحی و تولید کرده اند.

نظرات بازدیدکنندگان