امروزه اينترنت به يکي از ارکان ارتباطي بين افراد و سازمان ها تبديل شده است. بسياري از ما روزانه اطلاعاتي از اين طريق مي گيريم يا مي فرستيم. اين اطلاعات از نظر اهميت با هم تفاوت زيادي دارند. برخي از اين اطلاعات مانند اخبار يک سايت اهميت امنيتي چنداني ندارند، اما در طرف ديگر اسناد شخصي مثل ايميل ها، رمز حساب هاي بانکي و غیره قرار دارند که دوست نداريم به دست ديگران بيافتند.
اطلاعاتي که در حالت عادي بين کاربران و دنياي اينترنت رد و بدل مي شوند، به گونه اي هستند که يک هکر يا خراب کار حرفه اي مي تواند آنها را ببيند و براي اهداف خود مورد سوء استفاده قرار دهد. مثلا در يک خريد اينترنتي، زماني که قصد داريد براي پرداخت به حساب بانکي خود وارد شويد، سايت از شما رمزعبور مي خواهد. حال اگر سايت مورد نظر فاقد برنامه هاي امنيتي لازم باشد، ممکن است اطلاعات شما در ميانه راه بدون آنکه متوجه شويد، دزديده شوند و اگر بد شانس باشيد چند روز بعد که به حساب تان سر مي زنيد آن را خالي شده مي يابيد.
اما احتمال اين اتفاق بسيار اندک است، زيرا اکثر حساب هاي بانکي و سايت هايي از اين قبيل که با اطلاعات حساس و مهم در ارتباط اند، معمولا از روش هايي براي رمزگذاري (Encrypt) اطلاعات استفاده مي کنند. در اين حالت اگر اطلاعات در ميان راه دزديده شوند جاي نگراني نخواهد بود، زيرا شکستن رمز آنها تقريبا غيرممکن است.
اطلاعات معمولاً کي و کجا دزديده مي شوند؟
زماني که آدرس يک سايت را در مرورگر وارد مي کنيم اطلاعات بين کامپيوتر ما و کامپيوتري که سايت روي آن قرار دارد (سرور) در حال رد و بدل هستند. پس اگر بتوانيم به طريقي ارتباط بين کامپيوتر خود و کامپيوتر سرور را امن کنيم اطلاعات ما دزديده نخواهند شد.
اطلاعات در اينترنت چگونه جابجا مي شوند؟
اطلاعات در اينترنت (درست مثل فرستادن يک نامه) به صورت فايل هاي متني جابجا مي شوند. همان طور که يک نامه از زماني که در صندوق پست گذاشته مي شود تا زماني که به صاحبش مي رسد در دست افراد مختلفي قرار مي گيرد، به همان صورت نيز اطلاعات ما توسط سيستم هاي زيادي دست به دست مي شود تا به سايت يا شخص مورد نظر مي رسد. اگر اطلاعات به صورت عادي فرستاده شوند، هر کدام از سيستم هاي بين راه مي توانند آنها را ببينند. پس براي جلوگيري از خوانده شدن و سرقت احتمالي، بايد آنها را رمزگذاري کرد. با يک مثال مسئله را روشن تر مي کنم. فرض کنيد مي خواهيد براي نامزد خود يک نامه بنويسيد. اما دوست نداريد افراد خانواده او بتوانند آن نامه را بخوانند. يکي از راه ها اين است که نوشته ها را به رمز بنويسيد، رمزي که فقط نامزد تان از آن سر در بياورد، در اينترنت هم براي اينکه هکرها نتوانند اطلاعات را بفهمند، آنها را به رمز در مي آورند. يکي از بهترين و متداول ترين روش هاي رمز گذاري اينترنتي، استفاده از پروتکل اس ال ال است.
اس اس ال چيست؟
SSL مخفف کلمه Secure Socket Layer به معني «لايه اتصال امن» و پروتکلي (مجموعه اي از قوانين) جهت برقراري ارتباطات ايمن ميان سرويس دهنده و سرويس گيرنده در اينترنت است که توسط شرکت Netscape ابداع شده.
از اين پروتکل براي امن کردن پروتکل هاي غيرامن نظيرHTTP ،LDAP، IMAP و غیره استفاده مي شود. بر اين اساس يکسري الگوريتم هاي رمزنگاري بر روي داده هاي خام که قرار است از يک کانال ارتباطي غيرامن مثل اينترنت عبور کنند، اعمال مي شود و محرمانه ماندن داده ها را در طول انتقال تضمين مي کند.
به بيان ديگر شرکتي که صلاحيت صدور و اعطاء گواهي هاي ديجيتال اس اس ال را دارد، براي هر کدام از دو طرفي که قرار است ارتباطات ميان شبکه اي امن داشته باشند، گواهي هاي مخصوص سرويس دهنده و سرويس گيرنده را صادر مي کند و با مکانيزم هاي احراز هويت خاص خود، هويت هر کدام از طرفين را براي طرف مقابل تأييد مي کند. البته علاوه بر اين تضمين مي کند، اگر اطلاعات حين انتقال به سرقت رفت، براي رباينده قابل درک و استفاده نباشد که اين کار را به کمک الگوريتم هاي رمزنگاري و کليد هاي رمزنگاري نامتقارن و متقارن انجام مي دهد.
ملزومات ارتباط بر پايه اس اس ال
براي داشتن ارتباطات امن مبتني بر اس اس ال عموماً به دو نوع گواهي ديجيتال اس اس ال، يکي براي سرويس دهنده و ديگري براي سرويس گيرنده و يک مرکز صدور و اعطاي گواهينامه ديجيتال(Certificate authorities) نياز است. وظيفه CA اين است که هويت طرفين ارتباط، نشاني ها، حساب هاي بانکي و تاريخ انقضاي گواهينامه را بداند و براساس آنها هويت ها را تعيين نمايد.
رمزنگاري
رمزنگاري (Cryptography) علم به رمز در آوردن (encryption) اطلاعات است. توضيح روش هاي بسيار پيچيده اي که امروزه براي رمزنگاري استفاده مي شود از حوصله اين مطلب خارج است، اما براي رفع ابهام، در زير به يکي از ساده ترين روش هاي رمزنگاري مي پردازيم:
مي دانيم که هر حرف در الفبا جايگاهي دارد. مثلا حرف «الف قبل از ب» و «حرف م قبل از ن» قرار دارد.
حال، اگر بخواهيد يک جمله را به رمز در آوريد. در ساده ترين شکل ممکن، هر حرف را با حرف بعدي خود در الفبا جايگزين مي کنيد. يعني به جاي «الف» حرف «ب»، به جاي «ب» حرف «پ»، غیره، به جاي «ه» حرف «ي» و به جاي حرف «ي» حرف «الف» را مي گذاريد.
با اين کار مي توان جمله «بابا آب داد» را به جمله بي معني «پبپب بپ ذبذ» تبديل کرد که اگر فردي کليد رمز را نداشته باشد، به هيچ وجه از آن سر در نمي آورد.
اس اس ال چگونه کار مي کند؟
اس اس ال در واقع پروتکلي است که در آن ارتباطات بوسيله يک کليد، رمزگذاري(Encryption) مي شوند. زماني که قرار است يکسري اطلاعات را به صورت اس اس ال به يک سايت که سرور (server) اش گواهي نامه اس اس ال را دارد (در آدرس سايت https است) ارسال شود. ابتدا بايد از يک کليد به عنوان قالبي براي به رمز در آوردن اطلاعات بين خدمات گيرنده (کاربر) و خدمات دهنده (سرور) استفاده شود. براي ساخت اين کليد نياز به چند مرحله هماهنگي به شرح زير است
1. وقتي سروري بخواهد پروتکل اس اس ال را فعال کند. ابتدا يک کليد عمومي (Public Key) مي سازد.
2.سپس کليد عمومي را همراه با يک درخواست گواهي نامه اس اس ال به يکي از صادرکنندگان اين گواهي نامه ها مثل وريساين (Verisign) مي فرستد.
3. وريساين نيز ابتدا مشخصات و ميزان قابل اعتماد بودن و امنيت سرور را ارزيابي کرده و کليد عمومي را دوباره رمزگذاري مي کند و براي سرور مي فرستد تا در انتقال اطلاعات خود از آن استفاده کند. به کليد جديد کليد امنيتي (private key) مي گويند.
4. حال هر زمان که کاربر بخواهد از طريق پروتکل اس اس ال به اين سايت دست يابد، ابتدا کامپيوتر کاربر يک کليد عمومي براي سرور مي فرستد (هر کامپيوتري کليد مخصوص به خود را دارد).
5. سرور نيز اين کليد عمومي را با کليد امنيتي خود مخلوط کرده و از آن کليد جديدي مي سازد، سپس آن را به کامپيوتر کاربر مي فرستد.
6.از اين به بعد تمامي اطلاعاتي که بين کاربر و سرور جابجا مي شوند با اين کليد جديد رمز گذاري مي شوند.
واضح است که نيازي به دانستن تمام اين جزييات نيست و ما جهت رفع کنجکاوي آنها را آورده ايم. فقط اين را بدانيد که با استفاده از اين سرويس اطلاعات کاملا رمزنگاري و باز کردن آنها تقريبا غير ممکن است. تنها وظيفه شما به عنوان کاربر اين است که از اين امکانات استفاده کنيد و پروتکل اس اس ال را در مرورگر، ايميل و ديگر حساب هاي خود که سرور آن به شما اين امکان را مي دهد، فعال کنيد.
اگر هم يک مدير سرور هستيد، سعي کنيد گواهي نامه پروتکل اس اس ال را از صادرکنندگان آن مثل Verisign و Thawte خريداري و در اختيار بازديد کنندگان خود بگذاريد.
چگونه مي توان مطمئن شد، يک سايت از اس اس ال استفاده مي کند؟
اين بخش بسيار ساده اما مهم و حياتي است. براي اين کار ابتدا وارد آن سايت شويد. زماني که صفحه به طور کامل بارگذاري (load) شد، به ابتداي آدرس آن نگاه کنيد. مي بايست به جاي http حروف https نوشته شده باشد (منظور از حرف s در پايان http عبارت secure است). البته در اين حالت يک علامت قفل هم در مرورگر ديده مي شود. جاي اين قفل در مرورگرهاي مختلف متفاوت است. در فايرفاکس و اينترنت اکسپلورر در پايين و سمت راست صفحه، در نوار وضعيت (status bar) و در مرورگرهاي سافاري، کروم و اپرا در سمت راست آدرس ديده مي شود.
چگونه اس اس ال ايميل را فعال کنيم؟
اگر خواهان ارتباط ايميلي امني هستيد، توصيه مي کنيم از ايميل شرکت گوگل که به اختصار جيميل ناميده مي شود، استفاده کنيد. در پايين اطلاعات لازم براي فعال کردن پروتکل اس اس ال در جيميل آورده شده است.
1.به جيميل خود وارد شويد و در کادر بالا در سمت راست دکمه Setting را پيدا کنيد (در سمت چپ کلمه Setting، نام جيميل شما و در سمت راست آن کلمه Help نوشته شده است.). روي Setting کليک کنيد.
2.در پنجمين کادر تب General، عبارت Browser connection را پيدا کرده و روي عبارت Always use https کليک کنيد تا انتخاب شود.
3.به پايين صفحه بيايد و دکمه Save Changes را بزنيد.
4.حال تمامي ايميل هاي شما طبق پروتکل اس اس ال منتقل مي شوند.
حساب هاي بانکي
در ايران همه بانک هاي ارائه دهنده خدمات بانکداري الکترونيک، از پروتکل اس اس ال استفاده مي کنند. گفتيم که براي اطمينان از اين موضوع کافي است در صفحات خدمات اينترنتي بانک خود که اطلاعات مهم (مثل حساب کاربري يا رمز ورود) را درج و ارسال مي کنيد، به آدرس نگاه کنيد. بايد https در ابتداي آدرس وجود داشته باشد. علاوه براين توصيه مي شود با مراجعه به بانک تان، نحوه استفاده امن از خدمات اينترنتي شان را سؤال کنيد.
شیوه رمزنگاری اطلاعات در ssl به چه صورت است؟
در یک بیان ساده، پس از برقراری اتصال امن، ssl اطلاعات را به وسیله دو کلید رمزنگاری میکند، کلید عمومی برای اشخاص سوم شخص قابل خواندن است اما کلید دوم تنها توسط ارسال کننده و دریافت کننده داده، قابل استفاده است.
چگونه از استفاده کردن یک سایت از پروتکل امن اطمینان حاصل کنیم؟
چند فاکتور در تعیین معتبر بودن گواهی یک سایت نقش دارند، اول از همه کلید کوچکی است که در مرورگرهای مختلف با کمی اختلاف در مکان و شکل، نشان داده میشود، برخی از مرورگرها در نسخه های جدید خود پس از برقراری یک اتصال امن، نوار آدرس را به رنگ سبز نیز نشان میدهند، فاکتور دیگر وجود عبارت https در ابتدای آدرس آن سایت است.
چرا در برخی از سایت ها، مرورگر تقاضای تایید اعتبار میکند؟
بعضا ممکن است با صفحاتی روبرو شده باشید که مرورگر نسبت به منقضی شدن اعتبار گواهی ارتباط امن آن، به شما هشدار دهد، این اتفاق به چند دلیل ممکن است رخ دهد، یکی اینکه گواهی آن سایت واقعا به پایان رسیده و تمدید نشده باشد، دوم اینکه تاریخ سیستم شما از زمان حقیقی، عقب تر یا حتی جلوتر باشد، دلیل سوم هم میتواند به مسائل فنی صفحه و ترکیب اشتباه داده های عادی با داده های رمزنگاری شده مربوط باشد که این عامل به مسائل فنی سایت ارتباط دارد.
چگونه برای سایت خود گواهی ssl تهیه کنیم؟
برای داشتن یک ارتباط امن در بستر HTTPS برای سایت خود، نیاز به گواهی معتبر ssl دارید، این گواهی از طریق نمایندگی ها و سرویس دهنده های هاست نیز قابل خریداری است، علاوه بر این به سروری با قابلیت پشتیانی از ssl و یک ip اختصاصی احتیاج خواهید داشت.
نحوه عملکرد داخلی پروتکل Secure Socket Layer
همان طور که میدانید SSL میتواند از ترکیب رمزنگاری متقارن و نامتقارن استفاده کند. رمزنگاری کلید متقارن سریع تر از رمزنگاری کلید عمومی است و از طرف دیگر رمزنگاری کلید عمومی تکنیک های احراز هویت قوی تری را ارایه میکند. یک جلسه SSL (SSL Session) با یک تبادل پیغام ساده تحت عنوان SSL Handshake شروع میشود. این پیغام اولیه به سرویس دهنده این امکان را میدهد تا خودش را به سرویس دهنده دارای کلید عمومی معرفی نماید و سپس به سرویس گیرنده و سرویس دهنده این اجازه را میدهد که یک کلید متقارن را ایجاد نمایند که برای رمزنگاری ها و رمزگشایی سریع تر در جریان ادامه مبادلات مورد استفاده قرار میگیرد. گام هایی که قبل از برگزاری این جلسه انجام میشوند براساس الگوریتم RSA Key Exchange عبارتند از:
1.سرویس گیرنده، نسخه SSL مورد استفاده خود، تنظیمات اولیه درباره نحوه رمزگذاری و یک داده تصادفی را برای شروع درخواست یک ارتباط امن مبتنی بر SSL به سمت سرویس دهنده ارسال میکند.
2.سرویس دهنده نیز در پاسخ نسخه SSL مورد استفاده خود، تنظیمات رمزگذاری و داده تصادفی تولید شده توسط خود را به سرویس گیرنده میفرستد و همچنین سرویس دهنده گواهینامه خود را نیز برای سرویس گیرنده ارسال میکند و اگر سرویس گیرنده از سرویس دهنده، درخواستی داشت که نیازمند احراز هویت سرویس گیرنده بود، آن را نیز از سرویس گیرنده درخواست میکند.
3.سپس سرویس گیرنده با استفاده از اطلاعاتی که از سرویس دهنده مجاز در خود دارد، داده ها را بررسی میکند و اگر سرویس دهنده مذکور تایید هویت شد، وارد مرحله بعدی میشود و در غیر این صورت با پیغام هشداری به کاربر، ادامه عملیات قطع میگردد.
4.سرویس گیرنده یک مقدار به نام Secret Premaster را برای شروع جلسه ایجاد میکند و آن را با استفاده از کلید عمومی (که اطلاعات آن معمولا در سرویس دهنده موجود است) رمزنگاری میکند و این مقدار رمز شده را به سرویس دهنده ارسال میکند.
5.اگر سرویس دهنده به گواهینامه سرویس گیرنده نیاز داشت میبایست در این گام برای سرویس دهنده ارسال شود و اگر سرویس گیرنده نتواند هویت خود را به سرویس دهنده اثبات کند، ارتباط در همین جا قطع میشود.
6. به محض این که هویت سرویس گیرنده برای سرویس دهنده احراز شد، سرویس دهنده با استفاده از کلید اختصاصی خودش مقدار Premaster Secret را رمزگشایی میکند و سپس اقدام به تهیه مقداری به نام Master Secret مینماید.
7.هم سرویس دهنده و هم سرویس گیرنده با استفاده از مقدار Master Secret کلید جلسه (Session Key) را تولید میکنند که در واقع کلید متقارن مورد استفاده در عمل رمزنگاری و رمزگشایی داده ها حین انتقال اطلاعات است و در این مرحله به نوعی جامعیت داده ها بررسی میشود.
8.سرویس گیرنده پیغامی را به سرویس دهنده میفرستد تا به او اطلاع دهد، داده بعدی که توسط سرویس گیرنده ارسال میشود به وسیله کلید جلسه رمزنگاری خواهد شد و در ادامه، پیغام رمز شده نیز ارسال میشود تا سرویس دهنده از پایان یافتن Handshake سمت سرویس گیرنده مطلع شود.
9. سرویس دهنده پیغامی را به سرویس گیرنده ارسال میکند تا او را از پایان Handshake سمت سرویس دهنده آگاه نماید و همچنین این که داده بعدی که ارسال خواهد شد توسط کلید جلسه رمز میشود.
10.در این مرحله SSL Handshake تمام میشود و از این به بعد جلسه SSL شروع میشود و هر دو عضو سرویس دهنده و گیرنده شروع به رمزنگاری و رمزگشایی و ارسال داده ها میکنند.
آیا پروتکل SSL واقعاً امن است؟
در این پروتکل، همان طور که گفته شد، داده ها بین سرویس دهنده و گیرنده رمزگذاری میشوند، به همین دلیل، داده ها در طول انتقال از کانال غیر امن مانند اینترنت، اینترانت و غیره، حفاظت شده باقی میمانند. هرچند دسترسی به این داده ها ممکن است، اما به دلیل آن که رمزگذاری شده اند، برای بدست آوردن داده های رمزگشایی شده اصلی، باید کلید مورد استفاده در آن نشست ارتباطی امن (Secure connection session) را دانست. از این رو، این پروتکل عملاً غیرقابل نفوذ است. البته در دنیای هک و امنیت، چیز غیرممکنی وجود ندارد، برای مثال، ممکن است طی فرایند های خاص، بسیار پیچیده و مهندسی شده، حتی بدون داشتن کلید نیز روزی بتوان داده های اصلی را بدست آورد یا مثلاً ممکن است کلید های مورد استفاده در فرایند رمزگذاری و رمزنگاری، از سمت سرویس دهنده پروتکل امن، به سرقت رفته باشند.
از سوی دیگر، داده ها فقط و فقط در طول مسیر انتقال از کانال مورد نظر رمزگذاری شده اند، یعنی داده های اصلی، در سمت سرویس دهنده و گیرنده توسط پروتکل SSL رمزنگاری نمیشوند. به همین دلیل، درصورتی که بد افزاری در هر یک از این سمت ها قرار بگیرد، میتواند داده های اصلی را به راحتی بدزدد. البته تاکنون گزارشی از سرقت اطلاعات از طریق کانال امن SSL منتشر نشده است بنابراین میتوان آن را یک پروتکل واقعاً امن دانست.
ویژگی های گواهی امنیتی ssl :
آیا استفاده از SSL در وب سایت های تجاری لازم است؟
از آنجا که تعداد وب سایت های تجاری در حال افزایش است، ایمنی اینگونه سایت ها نیز باید افزایش یابد تا هکرها نتوانند به اطلاعات حیاتی دست یابند.
یکی از پرکاربردترین موارد استفاده از گواهی SSL ایجاد و ضمانت امنیت سایت هایی است که در زمینه کسب و کارهای اینترنتی و تجاری فعالیت میکنند. تمام سایت های تجاری حاوی اطلاعات مهمی از مشتریان هستند که اگر در دسترس برخی از افراد قرار گیرد بسیار خطرناک خواهد بود.
البته اجباری بودن استفاده از SSL بستگی به نوع تجارت و عملکرد آن دارد مثلا برای وب سایت هایی که شماره کارت اعتباری، آدرس، ایمیل یا شماره تلفن افراد را جمع آوری میکنند، این کار ضروری است.
زمانی که کاربران از سایتی که از گواهی SSL استفاده میکند بازدید میکنند اطمینان خاطر دارند که این همان سایت مورد نظرشان است و اطلاعات خود را به سایت درست و معتبری ارسال میکنند.
با استفاده از این فناوری میتوان از حملاتی مثل فیشینگ که مبنی بر جعل سایت هستند جلوگیری کرد. در اینگونه حمله ها هکر که میتواند یک رقیب تجاری باشد با ایجاد سایتی که به لحاظ ظاهری مشابه سایت اصلی است و با فریب دادن کاربران، آنها را به سایت جعلی هدایت میکند و بدین ترتیب امنیت اطلاعات آنها را به خطر میاندازد، سرقت اطلاعات انجام میدهد و یا از آنها اطلاعات جمع آوری میکند.
مسائل مطرح شده باعث میشود تا بیشتر به اهمیت استفاده از SSL در سایت های تجاری پی ببریم. در صورت استفاده از این گواهی از حمله هایی مانند آنچه گفته شد جلوگیری میشود و علاوه بر تصدیق اصل بودن سایت با رمز گذاری اطلاعات بین کاربران و سایت آنها از یک ارتباط امن و قابل اعتماد، مطمئن میشوند و معنای آن اینست که اطلاعات کاربران بدون دستکاری و یا دسترسی دیگران، جعل و غیره جابه جا میشود.
بستن *نام و نام خانوادگی * پست الکترونیک * متن پیام |
جهت ارتباط با مدیریت کلیک کنید
[طراحی سایت و تبلیغات در گوگل با] ایران وب سایت