شبکه های کامپیوتری

مقدمه

اول به بررسی چیستی لایه انتقال و لایه امنیت انتقال میپردازیم

پروتکل امنیتی لایهٔ انتقال (Transport Layer Security)، بر پایه لایهٔ سوکت‌های امن(Secure Sockets Layer) که یکی از پروتکل‌های رمزنگاری است و برای تامین امنیت ارتباطات از طریق اینترنت است بنا شده‌است. برای اطمینان از هویت طرف مقابل و تبادل کلید متقارن از گواهی X.509 و رمزنگاری نامتقارن استفاده می کند. این پروتکل امنیت انتقال داده‌ها را در اینترنت برای مقاصدی چون کار کردن با پایگاه‌های وب، پست الکترونیکی، نمابرهای اینتزنتی و پیام‌های فوری اینترنتی به کار می‌رود. اگرچه TLS و SSL با هم تفاوت‌های اندکی دارند ولی قسمت عمده‌ای از این پروتکل کم و بیش یکسان مانده‌است. TLS و SSL درمدل TCP/IP عمل رمزنگاری را در لایه های پایینی لایه کاربرد انجام می دهند ولی در مدل OSI در لایه جلسه مقداردهی شده و در لایه نمایش کار می کنند: ابتدا لایه جلسه با استفاده از رمزنگاری نامتقارن تنظیمات لازم برای رمزنگاری را انجام می دهد و سپس لایه نمایش عمل رمزگذاری ارتباط را انجام می دهد. در هر دو مدل TLS و SSL به نمایندگی از لایه انتقال کار می کنند.

لایهٔ سوکت‌های امن (Secure Sockets Layer) یا اس‌اس‌ال (SSL) پروتکلی است که توسط شرکت Netscape برای ردّ و بدل کردن سندهای خصوصی از طریق اینترنت توسعه یافته‌است. SSL از یک کلید خصوصی برای به رمز درآوردن اطلاعاتی که بر روی یک ارتباط SSL منتقل می‌شوند استفاده می‌نماید. هر دو مرورگر Netscape Navigator و Internet Explorer (و امروزه تمام مرورگرهای مدرن) از این پروتکل پشتیبانی می‌نمایند. هم‌چنین بسیاری از وب‌سایت‌ها برای فراهم کردن بستری مناسب جهت حفظ کردن اطلاعات محرمانهٔ کاربران (مانند شمارهٔ کارت اعتباری) از این پروتکل استفاده می‌نمایند. طبق آن‌چه در استاندارد آمده‌است. URLهایی که نیاز به یک ارتباط از نوع SSL دارند با:https به جای:http شروع می‌شوند. SSL یک پروتکل مستقل از لایه برنامه‌است (Application Independent). بنابراین، پروتکل‌هایی مانند FTP، HTTP و شبکه راه دور قابلیت استفاده از آن را دارند. با این وجود SSL برای پروتکل‌های FTP، HTTP و آی‌پی‌سک بهینه شده‌است.درssl ازدوکلیدعمومی وخصوصی استفاده میشودهمچنین درssl ازدوحالت متقارن ونامتقارن نیز می توان نام بردکه می تواند همان بحث کلید عمومی واختصاصی باشد به اینصورت که دررمزنگاری متقارن ازدو کلیدعمومی توسط serverوclient استفاده میشود که در این صورت مطالب رمزنگاری شده ازامنیت برخوردارنخواهدشدزیراکلید مشترک مابین(سرورومشتری)توسط شخص ثالث میتواند استراق سمع یاهک شودبنابراین ازحالت نامتقارن استفاده می شوددر رمزنگاری نامتقارن ازدوکلیدBوAاستفاده میشودیعنی اگر مطالب باکلیدA رمزنگاری شوددیگر باهمان کلیدرمزگشایی نخواهد شدفقط باکلیدB که متناظرباکلیدA می باشدرمزگشایی خواهدشد.

 

تعریف

پروتکل TLS به برنامه‌های Client/Server اجازه می‌دهد که در شبکه از طریقی که از eavesdropping (شنود)، message forgery(جعل پیام) جلوگیری می‌کند با یکدیگر ارتباط برقرار کنند. authentication TLS (احراز هویت) و communications confidentiality(ارتباط مطمئن) در اینترنت را از طریق استفاده از cryptography(رمز نگاری) فراهم می‌کند.

Client باید برای Server مشخص کند که آیا می خواهد یک اتصال TLS داشته باشد با نه. دو راه برای رسیدن به این هدف وجود دارد: یک راه این است که از شماره پورت متفاوتی برای اتصال TLS استفاده شود (برای مثال پورت 443 پروتکل امن انتقال ابرمتن) و دیگر اینکه اختصاص یک پورت مشخص از طریق سرور به کلاینت، که کلاینت آن را درخواست کرده باشد با استفاده از یک مکانیسم پروتکل خاص (برای مثال STARTTLS).
زمانی که کلاینت و سرور تصمیم گرفتند از اتصال TLS استفاده کنند، به مذاکره با استفاده از روش handshaking می پردازند. سپس سرور و کلاینت بر روی پارامترهای مختلفی که برای ایجاد امنیت اتصال استفاده می شود به توافق می رسند:

  1. کلاینت اطلاعاتی را که سرور برای برقراری ارتباط با استفاده از SSL به ان نیاز دارد را ارسال می کند. مانند: شماره نسخه SSL کلاینت، تنطیمات رمزگذاری و سایر اطلاعاتی که سرور ممکن است به آن نیاز داشته باشد.
  2. سرور اطلاعاتی را که کلاینت برای برقراری ارتباط با استفاده از SSL به ان نیاز دارد را برایش ارسال می کند. مانند: شماره نسخه SSL سرور، تنطیمات رمزگذاری و سایر اطلاعاتی که کلاینت به آن نیاز دارد. سرور همچنین گواهینامه خود را برای کلاینت ارسال می کند و اگر کلاینت درخواست منبعی از سرور داشته باشد، کلاینت باید احراز هویت شود و باید گواهینامه کلاینت برای سرور ارسال شود.
  3. با اطلاعات دریافتی از سرور، کلاینت می تواند سرور را احرازهویت کند. اگر سرور تصدیق نشود، به کاربر هشدار داده می شود که عمل رمزگذاری و تصدیق نمی‌تواند انجام گیرد. اگر سرور به درستی تصدیق شد کلاینت به مرحله بعد می رود.
  4. با استفاده از اطلاعات به دست آمده، کلاینت یک pre-master secret ایجاد کرده و آن را ب سرور ارسال می کند.
  5. اگر سرور از کلاینت بخواهد هویتش را ثابت کند، کلاینت کلیه اطلاعات لازم و گواهی خود را برای سرور ارسال می کند.
  6. اگر کلاینت تصدیق نشود، ارتباط قطع می شود اما اگر به درستی تصدیق شود، سرور از کلید خصوصی خود برای یاز کردن pre-master secret استفاده می کند.
  7. کلاینت و سرور از master secret برای تولید کلید جلسات استفاده می کنندکه یک کلید متقارن است و برای رمزگذاری و رمزگشایی اطلاعات مبادله شده استفاده می شود.
  8. وقتی کلاینت پیغامی برای سرور ارسال می کند با استفاده از کلید جلسه آن را رمز می کند.
  9. وقتی سرور پیغامی برای کلاینت ارسال می کند با استفاده از کلید جلسه آن را رمز می کند.

اکنون SSL handshake کامل است و ارتباط شروع می شود. کلاینت و سرور از کلید جلسه برای رمزگذاری و رمزگشایی اطلاعاتی که برای هم می فرستند استفاده می کنند.
اگر یکی از قدم های بالا با شکست مواجه شود TLS دچار شکست شده و ارتباط برقرار نمی‌شود.
در قدم سوم مشتری باید گواهی سرور را به درستی چک کند تا باعث بروز مشکل نشود.

گرچه TLS و SSL با هم تفاوت‌های اندکی دارند ولی قسمت عمده‌ای از این پروتکل کم و بیش یکسان مانده‌است. TLS و SSL درمدل TCP/IP عمل رمزنگاری را در لایه های پایینی لایه کاربرد انجام می دهند ولی در مدل OSI در لایه جلسه مقداردهی شده و در لایه نمایش کار می کنند: ابتدا لایه جلسه با استفاده از رمزنگاری نامتقارن تنظیمات لازم برای رمزنگاری را انجام می دهد و سپس لایه نمایش عمل رمزگذاری ارتباط را انجام می دهد.

در هر دو مدل TLS و SSL به نمایندگی از لایه انتقال کار می کنند.

لایهٔ سوکت‌های امن (Secure Sockets Layer) یا اس‌اس‌ال (SSL) پروتکلی است که توسط شرکت Netscape برای ردّ و بدل کردن سندهای خصوصی از طریق اینترنت توسعه یافته‌است.

SSL از یک کلید خصوصی برای به رمز درآوردن اطلاعاتی که بر روی یک ارتباط منتقل می‌شوند استفاده می‌نماید. هر دو مرورگر Netscape Navigator و Internet Explorer (و امروزه تمام مرورگرهای مدرن) از این پروتکل پشتیبانی می‌نمایند.

هم‌چنین بسیاری از وب‌سایت‌ها برای فراهم کردن بستری مناسب جهت حفظ کردن اطلاعات محرمانهٔ کاربران (مانند شمارهٔ کارت اعتباری) از این پروتکل استفاده می‌نمایند.

طبق آن‌چه در استاندارد آمده‌است. URLهایی که نیاز به یک ارتباط از نوع SSL دارند با:https به جای:http شروع می‌شوند. SSL یک پروتکل مستقل از لایه برنامه‌است (Application Independent).

بنابراین، پروتکل‌هایی مانند FTP، HTTP و شبکه راه دور قابلیت استفاده از آن را دارند. با این وجود برای پروتکل‌های FTP، HTTP و آی‌پی‌سک بهینه شده‌است.

در ssl از دو کلیدعمومی و خصوصی استفاده میشود همچنین در ssl از دو حالت متقارن و نامتقارن نیز می توان نام برد که می تواند همان بحث کلید عمومی واختصاصی باشد به اینصورت که در رمزنگاری متقارن ازدو کلید عمومی توسط server و client استفاده میشود که در این صورت مطالب رمزنگاری شده از امنیت برخوردار نخواهد شد

زیرا کلید مشترک ما بین (سرور و مشتری) توسط شخص ثالث میتواند استراق سمع یا هک شود بنابراین ازحالت نامتقارن استفاده می شود در رمزنگاری نامتقارن از دو کلید B و A استفاده میشود یعنی اگر مطالب با کلید A رمزنگاری شود دیگر باهمان کلید رمزگشایی نخواهد شد فقط باکلید B که متناظر با کلید A می باشد رمزگشایی خواهد شد.

پروتکل امن SSL چیست؟

SSL یک پروتکل استاندارد و رایج امنیتی برپایه رمزگذاری است که در آن داده‌های رد و بدل شده بین سرویس دهنده (Server) و سرویس گیرنده (Client) توسط کلیدهای خاصی خصوصی و عمومی رمزنگاری (Encrypt) شده و در سمت دیگر رمزگشایی (Decrypt) می‌شود. امنیت در این پروتکل دو طرفه است؛ یعنی در هر دو طرف، فرایند رمزنگاری و رمزگشایی انجام می‌گیرد.

بسیاری از سرویس دهندگانی که اطلاعات و داده‌های حساس مانند اطلاعات کارت‌های بانکی (مثلاً در شبکه بانکی کشور)، کارت‌های شناسایی، رمزهای عبور مهم و ... را بین خود و سرویس گیرنده رد و بدل می‌کنند، از پروتکل‌های امنیتی مانند SSL استفاده می‌کنند.

وبسایت‌هایی که از پروتکل امن SSL جهت رمزگذاری داده‌ها استفاده می‌کنند، معمولاً از طریق پروتکل HTTPS (به جای حالت عادی و غیر امن آن یعنی HTTP) با سرویس گیرنده‌ها ارتباط برقرار می‌کنند. در مرورگرها، اینگونه وبسایت‌ها معمولاً با علامت قفل سبز (به معنای ارتباط امن سالم) نشان داده می‌شوند:

پروتکل امن SSL

مرورگر گوگل کروم درحال مرور صفحه با پروتکل SSL

پروتکل امن SSL

مرورگر فایرفاکس درحال مرور صفحه‌ای با پروتکل SSL

پروتکل امن SSL

مرورگر اپرا درحال مرور صفحه‌ای با پروتکل SSL

پروتکل امن SSL

مرورگر اینترنت اکسپلورر درحال مرور صفحه‌ای با پروتکل SSL

 

آیا پروتکل SSL واقعاً امن است؟

در این پروتکل، همان‌طور که گفته شد، داده‌ها بین سرویس دهنده و گیرنده رمزگذاری می‌شوند؛ به همین دلیل، داده‌ها در طول انتقال از کانال غیر امن مانند اینترنت، اینترانت و ...، حفاظت شده باقی می‌مانند. هرچند دسترسی به این داده‌ها ممکن است، اما به دلیل آن‌که رمزگذاری شده اند، برای بدست آوردن داده‌های رمزگشایی شده اصلی، باید کلید مورد استفاده در آن نشست ارتباطی امن (Secure connection session) را دانست. از این رو، این پروتکل عملاً غیرقابل نفوذ است. البته در دنیای هک و امنیت، چیز غیرممکنی وجود ندارد! برای مثال، ممکن است طی فرایندهای خاص، بسیار پیچیده و مهندسی شده، حتی بدون داشتن کلید نیز روزی بتوان داده‌های اصلی را بدست آورد یا مثلاً ممکن است کلیدهای مورد استفاده در فرایند رمزگذاری و رمزنگاری، از سمت سرویس دهنده پروتکل امن، به سرقت رفته باشند.

از سوی دیگر، داده‌ها فقط و فقط در طول مسیر انتقال از کانال مورد نظر رمزگذاری شده اند؛ یعنی داده‌های اصلی، در سمت سرویس دهنده و گیرنده توسط پروتکل SSL رمزنگاری نمی‌شوند. به همین دلیل، درصورتی که بدافزاری در هر یک از این سمت‌ها قرار بگیرد، می‌تواند داده‌های اصلی را به راحتی بدزدد. البته تاکنون گزارشی از سرقت اطلاعات از طریق کانال امن SSL منتشر نشده است بنابراین می‌توان آن را یک پروتکل "واقعاً امن" دانست.

تعدادی از ارائه دهندگان پروتکل امن SSL

شرکت‌های بسیاری اقدام به ارائه سرویس‌های پروتکل امن SSL کرده اند. با این حال، تعدادی از ارائه دهندگان، شرکت‌های زیر هستند:

  • Symantec
  • Entrust
  • Digicert
  • Google Internet Authority (مخصوص سرویس‌های خود گوگل)
  • TURKTRUST (سرویس محبوب در ایران)

مکانیزم های تشکیل دهنده SSL 

۱- تایید هویت سرویس دهنده 

با استفاده از این ویژگی در SSL، یک کاربر از صحت هویت یک سرویس دهنده مطمئن می شود. نرم افزارهای مبتنی بر SSL سمت سرویس گیرنده، مثلا یک مرورگر وب نظیر Internet Explorer از تکنیک های استاندارد رمزنگاری مبتنی بر کلید عمومی و مقایسه با کلیدهای عمومی یک سرویس دهنده، (مثلا یک برنامه سرویس دهنده وب نظیر IIS می تواند از هویت او مطلع شود و پس از اطمینان کامل، کاربر می تواند نسبت به وارد نمودن اطلاعات خود مانند شماره کارت های اعتباری و یا گذرواژه ها اقدام نماید. 

۲- تایید هویت سرویس گیرنده 

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

۳- ارتباطات رمز شده 

کلیه اطلاعات مبادله شده میان سرویس دهنده و گیرنده می بایست توسط نرم افزارهای موجود در سمت سرویس دهنده و سرویس گیرنده رمزنگاری (Encrypt) شده و در طرف مقابل رمزگشایی (Decrypt) شوند تا حداکثر محرمانگی (Confidentiality) در این گونه سیستم ها لحاظ شود. 

اجزای پروتکل SSL 

پروتکل SSL دارای دو زیرپروتکل تحت عناوین زیر می باشد: 

۱- SSL Rocord Protocol که نوع قالب بندی داده های ارسالی را تعیین می کند. 

۲- SSL Handshake Protocol که براساس قالب تعیین شده در پروتکل قبلی، مقدمات ارسال داده ها میان سرویس دهنده ها و سرویس گیرنده های مبتنی بر SSL را تهیه می کند. 

بخش بندی پروتکل SSL به دو زیرپروتکل دارای مزایای چندی است از جمله: 

اول: در ابتدای کار و طی مراحل اولیه ارتباط (Handshake) هویت سرویس دهنده برای سرویس گیرنده مشخص می گردد. 

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

سوم: در صورت لزوم، هویت سرویس گیرنده نیز برای سرویس دهنده احراز می گردد. 

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

پنجم: ارتباطات بر مبنای SSL رمزنگاری می شود. 

الگوریتم های رمزنگاری پشتیبانی شده در SSL 

در استاندارد SSL، از اغلب الگوریتم های عمومی رمزنگاری و مبادلات کلید (Key Exchcenge Algorithm) نظیرRSA, RC۴, RC۲,MD۵, KEA, DSA, DES و RSA Key Exchauge، SHA-۱،Skipjack و DES۳ پشتیبانی می شود و بسته به این که نرم افزارهای سمت سرویس دهنده و سرویس دهنده نیز از موارد مذکور پشتیبانی نمایند، ارتباطات SSL می تواند براساس هر کدام از این الگوریتم ها صورت پذیرد. البته بسته به طول کلید مورد استفاده در الگوریتم و قدرت ذاتی الگوریتم می توان آن ها را در رده های مختلفی قرار داد که توصیه می شود با توجه به سناریوهای موردنظر، از الگوریتم های قوی تر نظیر DES۳ با طول کلید ۱۶۸ بیت برای رمزنگاری داده ها و همچنین الگوریتم SHA-۱ برای مکانیزم های تایید پیغام MD۵ استفاده شود و یا این که اگر امنیت در این حد مورد نیاز نبود، می توان در مواردی خاص از الگوریتم رمزنگاری RC۴ با طول کلید ۴۰ بیت و الگوریتم تایید پیغام MD۵ استفاده نمود. 

نحوه عملکرد داخلی پروتکل SSL 

همان طور که می دانید SSL می تواند از ترکیب رمزنگاری متقارن و نامتقارن استفاده کند. رمزنگاری کلید متقارن سریع تر از رمزنگاری کلید عمومی است و از طرف دیگر رمزنگاری کلید عمومی تکنیک های احراز هویت قوی تری را ارایه می کند. یک جلسه SSL (SSL Session) با یک تبادل پیغام ساده تحت عنوان SSL Handshake شروع می شود. این پیغام اولیه به سرویس دهنده این امکان را می دهد تا خودش را به سرویس دهنده دارای کلید عمومی معرفی نماید و سپس به سرویس گیرنده و سرویس دهنده این اجازه را می دهد که یک کلید متقارن را ایجاد نمایند که برای رمزنگاری ها و رمزگشایی سریع تر در جریان ادامه مبادلات مورد استفاده قرار می گیرد. گام هایی که قبل از برگزاری این جلسه انجام می شوند براساس الگوریتم RSA Key Exchange عبارتند از: 

۱- سرویس گیرنده، نسخه SSL مورد استفاده خود، تنظیمات اولیه درباره نحوه رمزگذاری و یک داده تصادفی را برای شروع درخواست یک ارتباط امن مبتنی بر SSL به سمت سرویس دهنده ارسال می کند. 

۲- سرویس دهنده نیز در پاسخ نسخه SSL مورد استفاده خود، تنظیمات رمزگذاری و داده تصادفی تولید شده توسط خود را به سرویس گیرنده می فرستد و همچنین سرویس دهنده گواهینامه خود را نیز برای سرویس گیرنده ارسال می کند و اگر سرویس گیرنده از سرویس دهنده، درخواستی داشت که نیازمند احراز هویت سرویس گیرنده بود، آن را نیز از سرویس گیرنده درخواست می کند. 

۳- سپس سرویس گیرنده با استفاده از اطلاعاتی که از سرویس دهنده مجاز در خود دارد، داده ها را بررسی می کند و اگر سرویس دهنده مذکور تایید هویت شد، وارد مرحله بعدی می شود و در غیر این صورت با پیغام هشداری به کاربر، ادامه عملیات قطع می گردد. 

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

۵- اگر سرویس دهنده به گواهینامه سرویس گیرنده نیاز داشت می بایست در این گام برای سرویس دهنده ارسال شود و اگر سرویس گیرنده نتواند هویت خود را به سرویس دهنده اثبات کند، ارتباط در همین جا قطع می شود. 

۶- به محض این که هویت سرویس گیرنده برای سرویس دهنده احراز شد، سرویس دهنده با استفاده از کلید اختصاصی خودش مقدار Premaster Secret را رمزگشایی می کند و سپس اقدام به تهیه مقداری به نام Master Secret می نماید. 

۷- هم سرویس دهنده و هم سرویس گیرنده با استفاده از مقدار Master Secret کلید جلسه (Session Key) را تولید می کنند که در واقع کلید متقارن مورد استفاده در عمل رمزنگاری و رمزگشایی داده ها حین انتقال اطلاعات است و در این مرحله به نوعی جامعیت داده ها بررسی می شود. 

۸- سرویس گیرنده پیغامی را به سرویس دهنده می فرستد تا به او اطلاع دهد، داده بعدی که توسط سرویس گیرنده ارسال می شود به وسیله کلید جلسه رمزنگاری خواهد شد و در ادامه، پیغام رمز شده نیز ارسال می شود تا سرویس دهنده از پایان یافتن Handshake سمت سرویس گیرنده مطلع شود. 

۹- سرویس دهنده پیغامی را به سرویس گیرنده ارسال می کند تا او را از پایان Handshake سمت سرویس دهنده آگاه نماید و همچنین این که داده بعدی که ارسال خواهد شد توسط کلید جلسه رمز می شود. 

۱۰- در این مرحله SSL Handshake تمام می شود و از این به بعد جلسه SSL شروع می شود و هر دو عضو سرویس دهنده و گیرنده شروع به رمزنگاری و رمزگشایی و ارسال داده ها می کنند.

شیوه رمزنگاری اطلاعات در ssl به چه صورت است؟


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

چگونه از استفاده کردن یک سایت از پروتکل امن اطمینان حاصل کنیم؟


چند فاکتور در تعیین معتبر بودن گواهی یک سایت نقش دارند، اول از همه کلید کوچکی است که در مرورگرهای مختلف با کمی اختلاف در مکان و شکل، نشان داده می شود، برخی از مرورگرها در نسخه های جدید خود پس از برقراری یک اتصال امن، نوار آدرس را به رنگ سبز نیز نشان می دهند؛ فاکتور دیگر وجود عبارت https در ابتدای آدرس آن سایت است.

چرا در برخی از سایت ها، مرورگر تقاضای تایید اعتبار می کند؟


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

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


برای داشتن یک ارتباط امن در بستر HTTPS برای سایت خود، نیاز به گواهی معتبر ssl دارید، این گواهی از طریق نمایندگی ها و سرویس دهنده های هاست نیز قابل خریداری است، علاوه بر این به سروری با قابلیت پشتیانی از ssl و یک ip اختصاصی احتیاج خواهید داشت.
و در پایان 

تفاوت TLS و SSL

SSL مخفف Secure Sockets Layer می باشد. این پروتکل توسط کمپانی Netscape به عنوان اولین پروتکل امنیتی ابداع شد و بعدها این کمپانی توسط AOL خریداری شد. ( در صورت تمایل به منظور آشنایی بیشتر با پروتکل SSL می توانید مقاله SSL چیست را مطالعه نمایید.)
TLS مخفف Transport Layer Security و به معنای پروتکل امنیتی لایه انتقال می باشد. این نام به منظور جلوگیری از هر گونه مسائل حقوقی با Netscape تغییر یافت، بنابراین این پروتکل می تواند آزاد و رایگان باشد و به عنوان یک RFC که مخفف Request for Comments و به معنای درخواست برای نظرات است، منتشر شود.
TLS استاندارد ارتباط بسیار نزدیک با SSL رده 3.0 دارد و در منابع زیادی از آن به عنوان نام جدید SSL یاد شده و در برخی اوقات به عنوان SSL 3.1 شناخته می شود و بایستی در توسعه های جدید مورد استفاده قرار گیرد. برنامه های کاربردی که نیاز به سطح بالایی از قابلیت همکاری دارند بایستی با SSL 3.0 و TLS پشتیبانی شوند. از آنجایی که این دو پروتکل شباهت بسیار زیادی با هم دارند، تفاوت بین پروتکل TLS و پروتکل SSL 3.0 خیلی مشهود نمی باشد. اما به اندازه کافی عدم همکاری این دو پروتکل با هم قابل توجه است. ( اگرچه پروتکل TLS 1.0 مکانیسم ترکیبی دارد که به وسیله یک پروتکل TLS پیاده سازی شده می تواند به یک پروتکل SSL 3.0 بازگردد)
هر دو روش رمزگذاری کاملا مشابه هستند و در کلیات تفاوت زیادی ندارند با این حال هر کدام یک استاندارد مستقل است و TLS از الگوریتم رمز نگاری قوی تری استفاده می کند، همچنین یکی دیگر از تفاوتهای SSL با TLS پورتهای مورد استفاده می باشد. به طور روزمره بیشترین کاربرد TLS در رمزگذاری ایمیل می باشد هر چند از لحاظ تئوری تفاوتی با SSL ندارد و هر دو پروتکل امنیت را در لایه 7 application layer مدل OSI تامین می کنند.


HTTPS در حقیقت HTTP با پروتکل SSL/TLS است. SSL/TLS ایجاد امنیت می نماید و تونل دو طرفه ای برای رد و بدل اطلاعات باینری دلخواه است. HTTP پروتکلی برای ارسال درخواست ها و دریافت پاسخ هاست. هر درخواست و پاسخ شامل هدر (Header) هایی پر از جزئیات، دقیق و احتمالا شامل برخی مطالب است. HTTP به معنای تونل دو طرفه برای رد و بدل نمودن اطلاعات باینری دلخواه است و زمانی که در تونل فوق یک اتصال SSL/TLS برقرار گردد، به آن HTTPS گفته می شود.

چندنکته:


- اگرچه HTTPS و رمزنگاری ssl امن و قابل اطمینان است، اما به دلیل وجود محدودیتهایی، معمولا سرعت انتقال اطلاعات از این طریق نسبت به شیوه معمول یعنی HTTP پائین تر است، لذا برای افزایش کارایی، بهتر است تنها در صفحاتی از این پروتکل استفاده کنید که اطلاعات حساسی در آنها رد و بدل می شود.
- در استفاده از سرور HTTPS دقت داشته باشید که مخصوصا در مورد تصاویری که بارگذاری می شوند، آنها را با محتوایی که از قسمت HTTPS فراخوانی می شوند در یک صفحه قرار ندهید (یا لااقل به صورت آدرس کامل http://www قرار ندهید)، چرا که موجب می شود تا مرورگر کاربران برای هر تصویر، سوالی مبنی بر معتبر نبودن اتصال و ادامه دادن یا ندادن درخواست، از آنها داشته باشد و واضح است که این موضوع موجب نارضایتی کاربران خواهد شد.

 

 


موضوعات مرتبط: امنیت لایه های انتقال

شنبه 20 آذر 1395 | 21:30 | همیار |
صفحه قبل 1 2 صفحه بعد