گواهینامه SSL چیست
گواهینامه SSL چیست
اگر در محیط اینترنت رفت و آمد داشته باشید حتما خبرهای متوالی جعل گواهی امنیتی سرویسهایی مانند Gmail را بارها شنیدهاید. هشدارهای پی در پی و اخبار متفاوت از جعل گواهی امنیتی وبسایتهایی مانند گوگل، مایکروسافت، یاهو و … .
اما چگونه میتوان این گواهیهای امنیتی را جعل کرد؟ در این مقاله قصد دارم با زبانی ساده و روان به بررسی روند جعل این گواهیهای امنیتی پرداخته و شما را با نحوهی دستیابی به اطلاعاتتان آشنا کنم.
وقتی شما برای جستجو در اینترنت وارد سایتی مثل گوگل میشوید و عبارت مورد نظر را در فیلد جستجو وارد کرده و کلید جستجو را میزنید، این عبارت توسط کامپیوتر شما به سرور گوگل فرستاده شده و نتایج حاصل از جستجو برای شما نمایش داده خواهد شد. اما این کار چگونه انجام میشود؟
1. ابتدا شما وارد سایت گوگل میشوید.
2. عبارت مورد نظر را در کادر جستجو وارد کرده و دکمه جستجو را میزنید.
3. این عبارت ابتدا به سرور ISP یا مرکزی که شما از آن سرویس میگیرید فرستاده میشود.
4. سپس از آنجا به سرور مرکز اصلی که در بیشتر مواقع در مراکز استانها دایر است فرستاده میشود.
5. سپس از شبکه کل کشور خارج میشود و تازه به دست آن طرفیها میرسد که دیگر با مراحل آنجا کاری نداریم و تا همینجا برای توضیح کار بس است!
6. سپس سرور گوگل درخواست شما را پاسخ داده و از همین مسیر دوباره اطلاعات جدید به دست شما میرسد.
حالا تصور کنید یک نفر در این میان اطلاعات شما را رصد کند. یعنی شخص سومی در بین مسیر قرار گرفته و اطلاعات شما را قبل از رسیدن به سرور بعدی و در بین راه سرقت نماید. چه اتفاقی میافتد؟ قطعا عبارت مورد جستجو نمیتواند هیچگونه خطر امنیتی داشته باشد اما اگر این عبارت کلمهی عبور حساب بانکی شما باشد چطور؟ اگر کلمه عبور ایمیل شما باشد چطور؟ اینجاست که امنیت اطلاعات معنی پیدا میکند.
SSL چگونه کار میکند؟
به زبان ساده وقتی شما درخواست یک صفحهی ایمن (معمولا با https) میکنید، سرور یک کلید عمومی (Public Key) ساخته و به همراه یک درخواست گواهینامه SSL که تمامی اطلاعات شرکت درخواست کننده در آن قرار دارد به سرویسدهندهی خدمات SSL میفرستد. سرویس دهنده خدمات SSL با استفاده از الگوریتمهای پیشرفته اقدام به رمزگذاری کلید عمومی کرده و پس از رمزگذاری آن، کلید جدیدی ساخته و آن را به سرور بازمیگرداند (که به این کلید جدید، کلید خصوصی یا Private Key گفته میشود). در مبحث امنیت شبکه، مهمترین قسمت در سرویسدهی SSL حفظ و نگهداری همین کلید خصوصی است و در صورتی که بتوان به کلید خصوصی دسترسی پیدا کرد یعنی میتوان اطلاعات را خواند. کلید عمومی را هر کسی میتواند مشاهده کند اما کلید خصوصی را نه!
پس از دریافت کلید خصوصی، ارتباط امن شما با سرور برقرار شده و میتوانید با خیالی تقریبا راحت در وبسایت به گشت و گذار بپردازید!
SSL چگونه امنیت دادهها را تضمین میکند؟
پروتکل SSL اطلاعاتی که قرار است تبادل شود را با الگوریتمهای پیچیدهای رمزنگاری میکند تا اگر در بین راه شخص سومی این اطلاعات را به سرقت برد نتواند آن را بخواند. این اطلاعات فقط و فقط به وسیله کدهای Private Key قابل خواندن هستند و در صورتی که این کدها در دسترس دیگری قرار بگیرد به راحتی میتواند اطلاعات شما را شنود کند. یک شرکت سرویسدهندهی SSL نیز همیشه به دنبال این است که کسی نتواند به کلید خصوصی دسترسی داشته باشد.
آیا SSL قابل اعتماد است؟
وقتی شما فرمی را بدون پروتکل SSL در یک وبسایت تکمیل کرده و ارسال میکنید، این اطلاعات به صورت یک فایل متنی به مقصد فرستاده میشود. اما وقتی پای SSL به میان میآید، این کدها به صورت ایمن یا در اصطلاح داخل یک تونل امنیتی انتقال داده میشوند که افراد بیگانه نمیتوانند آنها را بخوانند. یعنی اگر سارق در میانه راه به این کدها دسترسی پیدا کند فقط کدهای نامفهومی را میبیند که با روشهای پیشرفتهای کدگذاری شدهاند و فقط در مرورگر کاربر و کامپیوتر سرور قابل رویت هستند اما اخیرا همین کدهای SSL نیز توسط دو پژوهشگر شکسته شدند.
SSL یک پروتکل امنیتی با الگوریتمهای رمزنگاری پیشرفته است که تبادل اطلاعات بین سیستم کاربر و سرور را کنترل کرده و با رمزنگاری دادهها کاری میکند که اطلاعات در بین مسیر برای شخص سومی قابل خواندن نباشند. یا به اصطلاح، اطلاعات را در یک تونل امنیتی رد و بدل میکند. این پروتکل برای اولین بار در مرورگرNetscape برای انتقال امن دادهها میان مرورگر و سرور ایجاد گردید و امروزه به یکی از اصلیترین راههای تامین امنیت وبسایتها تبدیل شده است که هماکنون میلیونها وبسایت از این پروتکل استفاده میکنند.
گواهینامهها از کجا پشتیبانی میشوند؟
شرکتهای متعددی وجود دارند که این گواهینامهها را صادر میکنند و در سرویسهای متفاوتی آنها را ارائه میکنند که ارزانترین آنها در حال حاضر معادل 57 هزار تومان برای هر سال میباشد و در صورتی که هر مشکلی پیش بیاید این شرکت طبق توافقی که با شما دارد که به آن گارانتی می گویند خسارت را پرداخت خواهد کرد. البته نوع رمزنگاری هر شرکت ارائه کننده گواهینامه نیز متفاوت است و نوع پرداخت خسارت احتمالی نیز مشخص که چیزی شبیه به بیمه هست ! سایتی که SSL دارد اما گواهینامه معتبری ندارد تفاوت چندانی با سایتی که SSL ندارد نخواهد داشت !
خوب با این توضیح مشخص میشود که چرا برخی مواقع برای سایتهایی که از https استفاده میکنند در هنگام ورود با پیغامی روبرو می شویم که مرورگر نسبت به اعتماد به این صفحه از شما پرسش میکند و نیاز به تایید از سمت کاربر است. (بطور مثال یکی از بانکهای کشور هنوز این گواهینامه را تهیه نکردهاند و بانک پارسیان و سامان این گواهینامه را دارند!)
رمزنگاری چگونه است ؟
رمزنگاری (Cryptography) علم به رمز در آوردن (encryption) اطلاعات است. توضیح روشهای بسیار پیچیدهای که امروزه برای رمزنگاری استفاده میشود از حوصله این مطلب خارج است، اما برای رفع ابهام، در زیر به یکی از سادهترین روشهای رمزنگاری میپردازیم: میدانیم که هر حرف در الفبا جایگاهی دارد. مثلا حرف «الف قبل از ب» و «حرف م قبل از ن» قرار دارد. حال، اگر بخواهید یک جمله را به رمز در آورید. در سادهترین شکل ممکن، هر حرف را با حرف بعدی خود در الفبا جایگزین میکنید.یعنی به جای «الف» حرف «ب»، به جای «ب» حرف «پ»، … ، به جای «ه» حرف «ی» و به جای حرف «ی» حرف «الف» را میگذارید.
با این کار میتوان جمله «بابا آب داد» را به جمله بی معنی «پبپب بپ ذبذ» تبدیل کرد که اگر فردی کلید رمز را نداشته باشد، به هیچ وجه از آن سر در نمیآورد.
نحوه عملکرد SSL چگونه است ؟
تبادل اطلاعات میان مرورگر و سایتی که در حال مرور شدن است، بوسیله کلیدهای خصوصی (private key) کد میشود و چنانچه در طول مسیر اطلاعات شنود شود، قابل استفاده نخواهد بود. بنابراین بخوبی میتوان از این پروتکل برای کاربردهای تجاری استفاده کرد. در حال حاضر بسیاری از وب سایت ها علاوه بر پروتکل معمول http از SSL نیز حمایت میکنند و شما میتوانید برای دسترسی امن به اطلاعات این سایتها از طریق یک لینک SSL ، از https استفاده کنید.
اس اس ال در واقع پروتکلی است که در آن ارتباطات بوسیله یک کلید، رمزگذاری (Encryption) میشوند. زمانی که قرار است یکسری اطلاعات را به صورت SSL به یک سایت که سرور (Server) آن گواهینامه SSL را دارد (در آدرس سایت https است) ارسال شود. ابتدا باید از یک کلید به عنوان قالبی برای به رمز در آوردن اطلاعات بین خدمات گیرنده (کاربر) و خدمات دهنده (سرور) استفاده شود. برای ساخت این کلید نیاز به چند مرحله هماهنگی به شرح زیر است.
1. وقتی سروری بخواهد پروتکل SSL را فعال کند. ابتدا یک کلید عمومی (Public Key) میسازد.
2. سپس کلید عمومی را همراه با یک درخواست گواهینامه SSL به یکی از صادرکنندگان این گواهینامهها مثل وریساین (Verisign) میفرستد.
3. وریساین نیز ابتدا مشخصات و میزان قابل اعتماد بودن و امنیت سرور را ارزیابی کرده و کلید عمومی را دوباره رمزگذاری میکند و برای سرور میفرستد تا در انتقال اطلاعات خود از آن استفاده کند. به کلید جدید کلید امنیتی (private key) میگویند.
4. حال هر زمان که کاربر بخواهد از طریق پروتکل SSL به این سایت دست یابد، ابتدا کامپیوتر کاربر یک کلید عمومی برای سرور میفرستد (هر کامپیوتری کلید مخصوص به خود را دارد).
5. سرور نیز این کلید عمومی را با کلید امنیتی خود مخلوط کرده و از آن کلید جدیدی میسازد. سپس آن را به کامپیوتر کاربر میفرستد.
6. از این به بعد تمامی اطلاعاتی که بین کاربر و سرور جابجا میشوند با این کلید جدید رمزگذاری میشوند.
یکی دیگر از کاربردهای SSL چیست ؟
هنگامی که به فروشگاهی وارد میشوید ، میدانید که با چه وضعیتی روبرو هستید.کالاها ، مارک آنها و راهنمای فروشگاه را میبینید. می توانید مطمئن باشید که اگر در خرید شما اشکالی پیش بیاید ، مدیر فروشگاه یا صاحب آن برای مراجعه در دسترس خواهند بود.
اما بر روی اینترنت ، مراجعه کنندگان به پایگاههای وب هیچ راه قابل اطمینانی برای آگاهی از اینکه چه کسی صاحب پایگاه “فروشگاه مجازی” است ، دردست ندارند. هنگامی که مشتریان با قصد انجام یک خرید اینترنتی ، به یک پایگاه وب وارد می شوند ، علاقه دارند بدانند که پول را به چه کسی میپردازند. آنها خواستار اثبات هویت صاحب پایگاه بوده ، و میخواهند بدانند که اطلاعات شخصی ارسالی آنها به پایگاه مزبور توسط سایر کاربران اینترنتی قابل ردگیری و تداخل نیست. اینجاست که گواهینامه های الکترونیکی SSL اهمیت خود را نشان می دهند.
رهیار سرور نماینده فروش SSL شرکت های Certum COMODO، Symantec و GeoTrust می باشد و تمام محصولات SSL این شرکت ها را با پایین ترین قیمت در اختیار شما کاربران گرامی قرار می دهد .
منابع :
http://weblogina.com/article/what-is-ssl
https://www.wikipedia.org