پروتکل https چیست ؟ | تفاوت http و https ؟
خب برای شروع توضیحات اول از همه از پیشنیاز https که http هستش شروع میکنیم و قدم به قدم توضیحاتمونو میریم پایین تر.
http چیست ؟
این پروتکل http مخفف Hyper Text Transfer Protocol هستش و وظیفه پردازش و انتقال اطلاعات بین سرویس گیرنده ( client ) و سرویس دهنده ( Server ) را دارد.
اگه بخوام به صورت سلیس و ساده بگم پروتکل http یک نوع قانون است که نحوه ارسال و دریافت داده بین سرویس دهنده و سرویس گیرنده را مشخص میکند.
سرویس دهنده و سرویس گیرنده چیست ؟


وقتی ما برای مثال ما آدرس codena.ir در مرورگر خود جستجو میکنیم ، بلافاصله درخواست ما به سمت نزدیکترین DNS هدایت داده میشود تا ip آدرس ما مشخص شود.
بعد از مشخص شدن و برگشت آدرس ip ، مرورگر ما یک درخواست http را با حالت GET سمت آدرس مورد نظر میفرستد و ارتباط برقرار می کند.
ما دقیقا به اون دستگاه یا وب سایت یا سروری که درخواست مرورگر ما را دریافت میکند سرویس دهنده میگویم .
اگر سرویس دهنده فعال باشد و به درستی درخواست ما را دریافت کند ، درجواب به مرورگر ما هرچیزی که در آن آدرس مشخص شده ( برای مثال یک وب سایت -> تگ های html ) را برمیگرداند .
در این سمت هم به دستگاه یا سیستم ما که جواب ارسال شده سمت سرویس دهنده را دریافت می کند ، سرویس گیرنده می گویم.
https چیست :


خب بلاخره به اصل داستان رسیدیم و آن هم پروتکل https و وظیفه آن است .
پروتکل https مخفف ( HyperText Transfer Protocol Secure ) هستش که در واقع یک نسخه رمزگذاری شده از http است که به عنوان پروتکل اصلی مورد استفاده برای انتقال دادهها از طریق شبکه جهانی وب شناخته میشود.
پروتکل https از ارتباط بین مرورگر (سرویس گیرنده ) و سرور ( سرویس دهنذه ) شما در برابر رهگیری و دستکاری مهاجمان محافظت میکند.
هکرها و افرادی که افکار شومی درباره شما دارند میتوانند اطلاعات حساس مانند ورود به اکانتها و جزییات را به دست آورند یا کد مخرب خود را را به جای پاسخ درخواستهای شما ارسال کنند. حملات احتمالی شبکه میتواند با یک روتر آسب پذیر یا ISP با امینت کم و غیرقابلاعتماد در هر جایی اتفاق بیفتد. بنابراین طبیعتا هر شبکه WiFi عمومی در هرجایی در معرض چنین حملاتی است. پس در این قسمت https به کمک و یاری شما میاید.


پروتکل https درخواستها و پاسخهای http شما را رمزگذاری میکند، بنابراین یک هکر به جای دست پیدا کردن به جزییات درخواست های شما ، فقط نویسههای و اطلاعات تصادفی را خواهد دید.
این پروسه به راحتی است و داده ها و اطلاعات شما قبل از ارسال رمزگزاری میشود و حتما مهاجم باید به هر دو کلید کلید عمومی (Public Key) و کلید خصوصی (Private Key) دسترسی داشته باشد.
شیوه رمزنگاری اطلاعات در SSL :


توضیح و بیان ساده به اینگونه است که SSL اطلاعات را به وسیله دو کلید رمزنگاری می کند ، 1 -> کلید عمومی ( Public Key ) و 2 -> کلید خصوصی ( Private Key ) که به اصطلاح PKI ) Public Key Infrastructure ) نامیده میشود.
بر این اساس پس از ارسال درخواست URL از طرف مرورگر (یا هر Client دیگری) به سرور در بستر اتصال امن، سرور یا همان سرویس دهنده کلید عمومی را به همراه پارامترهای شناسایی گواهی SSL خود با امضای دیجیتال در اختیار مرورگر قرار می دهد، کلید عمومی برای افراد سوم شخص دست یافتنی اما رمزنگاری شده و فاقد استفاده است، کلید خصوصی مقادیر رمزنگاری شده ای است که صرفا در اختیار سرور بوده و به صورت محفوظ نگهداری می شود.
و درآخر طی فرآیند برقراری ارتباط امن و به اصطلاح دست دادن -> (Handshake) بین دو طرف ، مرورگر وضعیت اعتبار گواهی را با بانکی که برایش تعریف شده می سنجد و در صورت مورد تایید بودن پیام پذیرش را به سرور ارسال می کند، در این هنگام سرور نشست SSL Encrypte را شروع کرده و با شروع نشست اطلاعات رمزنگاری شده رد و بدل می شوند.
بعضی از تفاوت های https با http :
- امن شدن ارسال و دریافت اطلاعات
- بهبود SEO وب سایت
- اعتماد بیشتر مشتریان
- سریعتر شدن درخواست ها