پروتکل SSL چیست؟
پروتکل SSL چیست؟
امروزه اینترنت به یکی از ارکان ارتباطی بین افراد و سازمان ها تبدیل شده است. بسیاری از ما روزانه اطلاعاتی از این طریق می گیریم یا می فرستیم. این اطلاعات از نظر اهمیت با هم تفاوت زیادی دارند. ابته برخی از این اطلاعات مانند اخبار یک سایت ، اهمیت امنیتی چندانی ندارد ، اما در طرف دیگر اطلاعات مربوط به اسناد شخصی مثل ایمیل ها ، رمز حساب های بانکی و … وجود دارند که قطعا مایل نیستیم در اختیار دیگران قرار بگیرد.
در حقیقت اطلاعاتی که در حالت عادی بین کاربران و دنیای اینترنت رد و بدل می شوند ، به گونه ای است که یک هکر یا خرابکار حرفه ای می تواند آن ها را ببیند و برای اهداف خود از آن ها سواستفاده کند. برای مثال هنگامی که قصد دارید برای خرید الکترونیکی پول محصول را بپردازید اگر سایت سایت بانک شما از شما رمز بخواهد و فاقد پرتکول امنیتی باشد ممکن است اطلاعات شما در طول راه ، بدون این که متوجه شوید دزدیده شود و اگر بدشانس باشید چند روز بعد که به حسابتان سر می زنید ، آن را خالی می یابید.
اما احتمال این اتفاق بسیار کم است ، زیرا اکثر حساب های بانکی یا سایت هایی که اطلاعات خصوصی کاربران را نگه داری می کنند معمولا از روش هایی برای رمز گذاری یا Encrypt اطلاعات استفاده می کنند. در این حالت اگر این اطلاعات در طول راه دزدیده شوند دیگر جای نگرانی نیست. زیرا شکستن رمز آن ها تقریبا غیر ممکن است.
اطلاعات معمولا کی و کجا دزدیده می شوند؟
زمانی که آدرس یک وب سایت را در مرورگر وارد می کنیم ، اطلاعات بین کامپیوتر ما (Client) و کامپیوتری که سایت روی آن قرار دارد (Server) در حال رد و بدل هستند. پس اگر بتوانیم ارتباط بین Client و Server را امن کنیم ، اطلاعات دزدیده نخواهند شد.
اطلاعات در اینترنت چگونه جابه جا می شوند؟
اطلاعات در اینترنت (درست مثل ارسال یک نامه) به صورت فایل های متنی جا به جا می شوند. به عبارتی همان طور که یک نامه از زمانی که در صندوق پست گذاشته می شود تا زمانی که به صاحبش برسد در دست افراد مختلفی قرار می گیرد تا به مقصد برسد. اگر نامه به صورت معمولی فرستاده شود هر یک از سیستم های در طول راه می توانند نامه شما را بخوانند. پس برای جلوگیری از سرقت احتمالی باید نامه را رمز گذاری کنیم. با یک مثال مسئله را روشن می کنیم. فرض کنید می خواهید برای دوست خود نامه ای بفرستید ولی به دلایلی دوست ندارید محتوای نامه را افراد خانواده ببینند! در این رابطه یکی از این کار ها این است که نامه را به صورت رمزی بنویسید که فقط دوستتان از آن سر در بیاورد! در دنیای اینترنت هم برای این که هکر ها نتوانند از ماهیت و جزئیات نامه باخبر شوند و از آن سر در بیاورند ، آن ها را رمز گذاری می کنند. یکی از روش های متداول رمز گذاری اینترنتی استفاده از پرتکول SSL Secure Socket Layer است.
SSL چیست؟
از این پرتکول برای امن کردن پرتکول های غیرامن مانند HTTP ، LDAP ، IMAP و … استفاده می شود. در حقیقت SSL بر این اساس یکسری الگوریتم های رمزنگاری بر روی داده های خام قرار می دهد که قرار است یک کانال ارتباطی غیرامن بگذرد تا محرمانه ماندن داده ها تضمین شود. به بیان دیگر شرکتی که صلاحیت صدور و اعطاء گوهینامه دیجیتال SSL را دارد برای هر کدام از دو طرفی که قرار است ارتباطات بین شبکه ای را امن کنند. این مدارک باید احراز هویت کاربران را تایید کنند و از هر طرف گواهینامه تایید شود. اگر اطلاعات حین انتقال به سرقت رفت برای رباینده قابل درک نیست که این کار به صورت الگوریتم های رمزنگاری و کلیدهای رمزنگاری نامتقاران و متقاران انجام می دهد.
ملزومات ارتباط بر پایه SSL
برای داشتن ارتباطات امن مبتنی بر SSL ، عموما به دو نوع گواهی دیجیتال SSL ، یکی برای سرویس دهنده و دیگری برای سرویس گیرنده و هم چنین یک مرکز صدور و اعطای گواهینامه دیجیتال (Certificate authorities) که به اختصار CA نامیده می شود، نیاز است. وظیفه CA این است که هویت طرفین ارتباط نشانی ها، حساب های بانکی و تاریخ انقضای گواهینامه را بداند و بر اساس آن ها هویت ها را تعیین نماید.
رمزنگاری
رمزنگاری (Cryptography) ، علم به رمز در آوردن (Encryption) اطلاعات است. البته بدیهی است که توضیح روش های پیچیده ای که امروزه برای رمزنگاری استفاده می شود از حوصله و این مطلب خارج است. برای مثال زدن در ادامه به یکی از ساده ترین روش های رمزنگاری می پردازیم:
می دانیم هر حرف الفبا جایگاهی دارد مثلا حرف «B قبل از A» و حرف «M بعد از N» قرار دارد. حالا برای مثال یک جمله مثل My Site را می خواهیم رمز نگاری کنیم. حالا هر حرف را به حرف قبلی برمیگردانیم. جمله ما می شود: Nx Rhsd به نظر شما معنی دارد؟ این جمله طوری کد گذاری شده که شما می دانید! اما هکر های حرفه ای باهوش تر از این حرف ها هستند! به راحتی می توانند الگوریتم ساده ی شما را شناسایی و هک کنند!
SSL چگونه کار می کند؟
SSL در واقع پروتکلی است که در آن ارتباطات به وسیله یک کلید ، رمز گذاری (Encryption) می شوند. لازم به ذکر است زمانی که قرار است یکسری اطلاعات به صورت SSL به یک سایت که سرور آن گواهینامه SSL را دارد (ابتدای آدرس سایت https باشد) ازسال شود ، ابتدا باید از یک کلید به عنوان قالبی برای به رمز درآوردن اطلاعات بین خدمات گیرنده (Client) و خدمات دهنده (Server) استفاده شود. برای ساخت این کلید نیاز به چند مرحله هماهنگی به شرح زیر است.
وقتی سرور بخواهد پروتکل SSL را فعال کند ابتدا یک کلید عمومی (Public Key) می سازد.
سپس کلید عمومی را همراه با یک درخواست گواهینامه SSL به یکی از صادرکنندگان این گواهینامه مثل وریساین (Verisign) ارسال می کند.
وریساین نیز ابتدا مشخصات و میزان قابل اعتماد بودن و امنیت سرور را ارزیابی کرده و کلید عمومی را دوباره رمزگذاری می کند و برای سرور می فرستد تا در انتقال اطلاعات خود از آن استفاده کند. به این کلید جدید کلید خصوصی یا امنیتی (Private Key) می گویند.
حال هر زمان که کاربر بخواهد از طریق پرتکول SSL به این سایت دست یابد ، ابتدا کامپیوتر کاربر یک کلید عمومی برای سرور می فرستد (هر کامپیوتر کلید مخصوص به خود را دارد).
سرور نیز این کلید عمومی را با کلید امنیتی خود مخلوط کرده و از آن کلید جدیدی می سازد سپس آن را به کامپیوتر کاربر می فرستد.
از این به بعد تمامی اطلاعاتی که رد و بدل می شوند با این کلید جدید رمزنگاری می شوند.
البته واضح است که نیازی به دانستن تمام این جزییات نیست و ما جهت رفع کنجکاوی آن ها را توضیح دادیم. فقط این را بدانید که با استفاده از این سرویس اطلاعات کاملا رمزنگاری شده و بازکردن آن ها تقریبا غیرممکن است. ضمن این که تنها وظیفه شما این است که از این امکانات استفاده کنید و پرتکول SSL را در مرورگر برای ایمیل و دیگر حساب های خود که سرور به شما این امکان را می دهد فعال کنید. اگر شما هم مدیر یک سرور هستید سعی کنید گواهینامه پرتکول SSL را از صادرکنندگان آن مثل Verisign و Thawte خریداری و در اختیار کاربران و خدمت گیرندگان خود بگذارید.
چه طور می توانیم مطمئن شویم یک سایت از SSL استفاده می کند؟
این بخش خیلی ساده در عین حال حیاتی و مهم است. برای این کار به وب سایت موردنظر وارد شوید سپس زمانی که سایت کاملا بارگذاری شد به ابتدای آدرس آن نگاه کنید اکنون می بایست به جای http عبارت https را ببینید (منظور از حرف s در پایان http، عبارت Secure است).
البته در این حالت یک علامت قفل هم در مرورگر دیده می شود. جای این قفل در مرورگرهای مختلف متفاوت است. در فایرفاکس و اینترنت اکسپلورر در پایین و سمت راست صفحه، در نوار وضعیت (status bar) و در مرورگرهای سافاری، کروم و اپرا در سمت راست آدرس دیده می شود.
نکته جالب در خصوص این قفل کوچک این است که با دو بار کلیک کردن بر روی آن، میتوانید مشخصات کامل گواهی اس اس ال سایت مورد نظر را ببینید. مهمترین نکته در خصوص این اطلاعات تاریخ خرید و انقضای این گواهینامه است که باید به آن توجه داشته باشید.
حتی اگر اطلاعات چندان مهمی را رد و بدل نمی کنید، پیشنهاد می کنیم که از اس اس ال استفاده کنید. وقتی سرویسی با امنیت بالا و رایگان در اختیارتان قرار می گیرد، چرا از آن بهره نبرید؟ در زیر چند نمونه از روش های استفاده از این پروتکل را می توانید مطالعه کنید.
مرورگر
در فایرفاکس 3 پروتکل اس اس ال به صورت پیش فرض فعال است. البته برای فعال و غیر فعال کردن این امکان میتوانید به روش زیر اقدام کنید:
از منوی Tools فایرفاکس، گزینه Options را انتخاب کنید. در پنجره باز شده از سربرگ Advanced بخش Encryption را باز کنید. می بینید که به صورت پیش فرض Use SSL 3.0 تیک خورده است.
Firefox > Tools > Options > Advanced > Encryption
چگونه اس اس ال ایمیل را فعال کنیم؟
اگر خواهان ارتباط ایمیلی امنی هستید، توصیه می کنیم از ایمیل شرکت گوگل که به اختصار جیمیل نامیده می شود، استفاده کنید. در پایین اطلاعات لازم برای فعال کردن پروتکل اس اس ال در جیمیل آورده شده است.
• به جیمیل خود وارد شوید و در کادر بالا در سمت راست دکمه Setting را پیدا کنید (در سمت چپ کلمه Setting، نام جیمیل شما و در سمت راست آن کلمه Help نوشته شده است.). روی Setting کلیک کنید.
• در پنجمین کادر تب General، عبارت Browser connection را پیدا کرده و روی عبارت Always use https کلیک کنید تا انتخاب شود
• به پایین صفحه بیاید و دکمه Save Changes را بزنید.
• حال تمامی ایمیل های شما طبق پروتکل اس اس ال منتقل می شوند.
حساب های بانکی
در ایران همه بانک های ارائه دهنده خدمات بانکداری الکترونیک، از پروتکل اس اس ال استفاده می کنند. گفتیم که برای اطمینان از این موضوع کافی است در صفحات خدمات اینترنتی بانک خود که اطلاعات مهم (مثل حساب کاربری یا رمز ورود) را درج و ارسال می کنید، به آدرس نگاه کنید. باید https در ابتدای آدرس وجود داشته باشد. علاوه براین توصیه می شود با مراجعه به بانک تان، نحوه استفاده امن از خدمات اینترنتی شان را سؤال کنید.
در اینجا نگاهی اجمالی به وضعیت پروتکل اس اس ال در بانک ها ایران می اندازیم.
بانک های صادرات، ملی، ملت، تجارت، اقتصاد نوین، سامان، پارسیان، کشاورزی، صنعت و معدن، توسعه صادرات، پاسارگاد، سرمایه و پست بانک در سیستم خدمات اینترنتی خود از پروتکل اس اس ال استفاده می کنند.
البته بانکداری الکترونیک در ایران چندان هم امن نیست، برای مثال هنگام تألیف این مطلب ما در استفاده از سیستم بانک داری الکترونیک بانک های سپه و مسکن با SSL های منقضی شده روبرو شدیم.
لازم به ذکر است که هدف ما از بردن نام بانک ها فقط کمک به اگاهی و افزایش امنیت خوانندگان گرامی است. تا توجه بیشتری به امنیت ارتباطات خود داشته باشند.
به طور خلاصه همیشه به این موضوع توجه داشته باشید که ارتباطات شما در اینترنت توسط هکرها و کلاهبرداران قابل خواندن و سرقت است. مگر اینکه به صورت امن و رمزنگاری شده منتقل شوند.
بسیار مهم و حیاتی است که هنگام اتصال به سرویس های مهم مانند حسابهای بانکی، ایمیل و اکانت های مهم تان از SSL استفاده کنید. بنابرای همیشه به ابتدای آدرس این سایتها نگاه کنید و دقت کنید که روی حالتhttps باشند. در غیر این صورت شما نمیتوانید از امنیت ارتباطات خود اطمینان داشته باشید
منبع : ترنج وب