آموزشی

ssl چیست و چگونه کار می کند ؟

گام ۱ – پروتکل SSL

SSL چیست؟

SSL مخفف کلمه Secure Socket Layer به معنی «لایه اتصال امن» و پروتکلی(مجموعه ای از قوانین) جهت برقراری ارتباطات ایمن میان سرویس دهنده و سرویس گیرنده در اینترنت است که توسط شرکت Netscape ابداع شده.

از این پروتکل برای امن کردن پروتکل های غیرامن نظیرHTTP ،LDAP ، IMAP و … استفاده می شود. بر این اساس یکسری الگوریتم های رمزنگاری بر روی داده های خام که قرار است از یک کانال ارتباطی غیرامن مثل اینترنت عبور کنند، اعمال می‌شود و محرمانه ماندن داده‌ها را در طول انتقال تضمین می‌کند.

به بیان دیگر:

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

البته علاوه بر این تضمین می کند، اگر اطلاعات حین انتقال به سرقت رفت، برای رباینده قابل درک و استفاده نباشد که این کار را به کمک الگوریتم های رمزنگاری و کلیدهای رمزنگاری نامتقارن و متقارن انجام می‌دهد.

 

ملزومات ارتباط بر پایه SSL

برای داشتن ارتباطات امن مبتنی بر اس اس ال عموماً به دو نوع گواهی دیجیتال اس اس ال، یکی برای سرویس دهنده و دیگری برای سرویس گیرنده و یک مرکز صدور و اعطای گواهینامه دیجیتال(Certificate authorities) نیاز است.

وظیفه CA این است که هویت طرفین ارتباط، نشانی ها، حساب های بانکی و تاریخ انقضای گواهینامه را بداند و براساس آن ها هویت ها را تعیین نماید.

رمزنگاری

رمزنگاری (Cryptography) علم به رمز در آوردن (encryption) اطلاعات است. توضیح روش های بسیار پیچیده ای که امروزه برای رمزنگاری استفاده می شود از حوصله این مطلب خارج است.

این نوشته را هم از دست ندهید :   SIP چیست و چگونه کار می کند ؟

اما برای رفع ابهام، در زیر به یکی از ساده ترین روش های رمزنگاری می پردازیم:

می دانیم که هر حرف در الفبا جایگاهی دارد. مثلا حرف «الف قبل از ب» و «حرف م قبل از ن» قرار دارد.

حال، اگر بخواهید یک جمله را به رمز در آورید. در ساده ترین شکل ممکن، هر حرف را با حرف بعدی خود در الفبا جایگزین می کنید.

یعنی به جای «الف» حرف «ب»، به جای «ب» حرف «پ»، … ، به جای «ه» حرف «ی» و به جای حرف «ی» حرف «الف» را می گذارید.

با این کار می توان جمله «بابا آب داد» را به جمله بی معنی «پبپب بپ ذبذ» تبدیل کرد که اگر فردی کلید رمز را نداشته باشد، به هیچ وجه از آن سر در نمی آورد.

SSL چگونه کار می کند؟

اس اس ال در واقع پروتکلی است که در آن ارتباطات بوسیله یک کلید، رمزگذاری(Encryption) می شوند. زمانی که قرار است یکسری اطلاعات را به صورت اس اس ال به یک سایت که سرور (server) اش گواهی نامه اس اس ال را دارد (در آدرس سایت https است) ارسال شود.

ابتدا باید از یک کلید به عنوان قالبی برای به رمز در آوردن اطلاعات بین خدمات گیرنده (کاربر) و خدمات دهنده (سرور) استفاده شود.

برای ساخت این کلید نیاز به چند مرحله هماهنگی به شرح زیر است:

۱٫ وقتی سروری بخواهد پروتکل اس اس ال را فعال کند. ابتدا یک کلید عمومی (Public Key) می سازد.

۲٫ سپس کلید عمومی را همراه با یک درخواست گواهی نامه اس اس ال به یکی از صادرکنندگان این گواهی نامه ها مثل وریساین (Verisign) می فرستد.

این نوشته را هم از دست ندهید :   VCI و VPI در تنظیمات مودم چگونه است؟

۳٫ وریساین نیز ابتدا مشخصات و میزان قابل اعتماد بودن و امنیت سرور را ارزیابی کرده و کلید عمومی را دوباره رمزگذاری می کند و برای سرور می فرستد تا در انتقال اطلاعات خود از آن استفاده کند. به کلید جدید کلید امنیتی (private key) می گویند.

۴٫ حال هر زمان که کاربر بخواهد از طریق پروتکل اس اس ال به این سایت دست یابد، ابتدا کامپیوتر کاربر یک کلید عمومی برای سرور می فرستد (هر کامپیوتری کلید مخصوص به خود را دارد).

۵٫ سرور نیز این کلید عمومی را با کلید امنیتی خود مخلوط کرده و از آن کلید جدیدی می سازد. سپس آن را به کامپیوتر کاربر می فرستد.

۶٫ از این به بعد تمامی اطلاعاتی که بین کاربر و سرور جابجا می شوند با این کلید جدید رمز گذاری می شوند.

واضح است که نیازی به دانستن تمام این جزییات نیست و ما جهت رفع کنجکاوی آنها را آورده ایم. فقط این را بدانید که با استفاده از این سرویس اطلاعات کاملا رمزنگاری و باز کردن آنها تقریبا غیر ممکن است.

تنها وظیفه شما به عنوان کاربر این است که از این امکانات استفاده کنید و پروتکل اس اس ال را در مرورگر، ایمیل و دیگر حساب های خود که سرور آن به شما این امکان را می دهد، فعال کنید.

اگر هم یک مدیر سرور هستید، سعی کنید گواهی نامه پروتکل اس اس ال را از صادرکنندگان آن مثل Verisign و Thawte خریداری و در اختیار بازدیدکنندگان خود بگذارید.

چگونه می توان مطمئن شد، یک سایت از اس اس ال استفاده می کند؟

این بخش بسیار ساده اما مهم و حیاتی است. برای این کار ابتدا وارد آن سایت شوید. زمانی که صفحه به طور کامل بارگذاری (load) شد، به ابتدای آدرس آن نگاه کنید. می بایست به جای http حروف https نوشته شده باشد (منظور از حرف s در پایان http عبارت secure است).

این نوشته را هم از دست ندهید :   DLNA چیست، چه می‌کند و چگونه از آن استفاده کنیم ؟

البته در این حالت یک علامت قفل هم در مرورگر دیده می شود. جای این قفل در مرورگرهای مختلف متفاوت است. در فایرفاکس و اینترنت اکسپلورر در پایین و سمت راست صفحه، در نوار وضعیت (status bar) و در مرورگرهای سافاری، کروم و اپرا در سمت راست آدرس دیده می شود.

نکته جالب:

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

حتی اگر اطلاعات چندان مهمی را رد و بدل نمی کنید، پیشنهاد می کنیم که از اس اس ال استفاده کنید. وقتی سرویسی با امنیت بالا و رایگان در اختیارتان قرار می گیرد، چرا از آن بهره نبرید؟ در زیر چند نمونه از روش های استفاده از این پروتکل را می توانید مطالعه کنید.

 

مرورگر

در فایرفاکس ۳ پروتکل اس اس ال به صورت پیش فرض فعال است. البته برای فعال و غیر فعال کردن این امکان می‌توانید به روش زیر اقدام کنید:

از منوی Tools فایرفاکس، گزینه Options را انتخاب کنید. در پنجره باز شده از سربرگ Advanced بخش Encryption را باز کنید. می بینید که به صورت پیش فرض Use SSL 3.0 تیک خورده است.