تفاوت https و http چیست ؟
بخشهای http و https در ابتدای آدرس یا URL سایتها علامتهایی هستند که روش ارتباط با سرور را برای مرورگرهای اینترنتی از جمله فایرفاکس، گوگل کروم و اینترنت اکسپلورر مشخص میکنند.
به عبارت دیگر این علامتها به مرورگر میگویند برای دریافت اطلاعات از سایت هدف، باید از چه زبان و دستورالعملهایی استفاده کند.
این بخش از نشانی اصطلاحا پروتکل نامیده میشود. در پروتکل http اطلاعات به صورت متنی و با دستورالعملهای خاص به سرور ارسال میشوند و پاسخ نیز به صورت متنی و با اطلاعاتی خاص به مرورگر برگشت داده میشوند.
تفاوت http و https چیست ؟
پروتکل https تقریبا در تمامی موارد شبیه http عمل میکند. با این تفاوت که در پروتکل https اطلاعات متنی پیش از ارسال، کدگذاری میشوند و با استفاده از امضای الکترونیک نشانگذاری میگردند. این کار سبب میشود، اطلاعات فرستاده شده غیرقابل بازخوانی و غیرقابل تغییر باشند. چنانچه کسی اطلاعات ارسال شده از هر دو طرف را در میان مسیر استراق کند، نمیتواند آن را کدگشایی کند و چنانچه بخواهد به جای این اطلاعات مطالب دلخواه خود را جایگذاری کند، امضای الکترونیک ارسال شده نامعتبر میشود و در مقصد کدگشایی نخواهد شد.
برای رمزگزاری اطلاعات در پروتکل https الگوریتمهای مختلفی وجود دارند که از دهها سال قبل تا به امروز، توسعه و تغییر پیدا کردهاند.
سایر پروتکلهای متداول
برخی دیگر از پروتکلهای مشهور که برای کاربردهای دیگر جز مرور صفحات وب کاربرد دارند عبارتند از: ftp، file، pop، smtp، udp.
پروتکل https و سئو در گوگل
استفاده از پروتکل https تا حد زیادی تضمین میکند که اطلاعات ارسال و دریافت شده در اینترنت توسط افراد غیرمجاز قابل مشاهده و تغییر نخواهند بود. به همین دلیل موتور جستجوی گوگل به طور رسمی اعلام نموده که برای تشویق دارندگان سایتهای اینترنتی به استفاده از https، به این گونه سایتهای امتیار مثبت سئو تخصیص میدهد.
موانع موجود برای استفاده از https
به دلیل رمزگزاری تمامی اطلاعات ارسال و دریافت شده به سرور، همچنین نام دامنه و صفحات درخواست شده، در نگارش قدیمی https، امکان فعالسازی SSL روی هاستهای اشتراکی که از یک IP استفاده میکردند و قیمت مناسبتری دارند، وجود نداشت. زیرا هر دامنه از یک کلید رمزگزاری مختص به خود استفاده میکند و در نتیجه ارتباط با IP مشترک با چندین کلید متفاوت موجب سردرگمی برای رمزگشایی میشود.
برای حل مشکل فوق، پیوست جدیدی به نام SNI یا Server Name Indication به پروتکل SSL افزوده شد که نام دامنه را به صورت عادی همراه دادههای رمزگزاری شده به هاست اشتراکی ارسال میکند و پس از تعیین مقصد، اطلاعات به صورت رمزشده ارسال و دریافت میشوند.
مانع دیگر بر سر راه ایجاد سایتهای SSL، لزوم پرداخت وجه اضافی برای خرید گواهی امنیتی از شرکتهای ارائه دهندهی این خدمت است. بهای این گواهی برای حالتهای خاص گاهی بسیار گرانقیمت خواهد بود و تمامی صاحبان سایتها ممکن است برای پرداخت این مبالغ با مشکلاتی مواجه شوند.
برای حل این مشکل نیز، جامعهی متنباز یک سازمان به نام Let's Encrypt ایجاد کردند. این سازمان گواهی امنیتی را برای تمامی دامنههای اینترنتی به رایگان ارائه مینماید. البته هنوز برای برخی کاربرهای حرفهای میبایست به شرکتهای تجاری مراجعه شود.
اشکالهای عملکردی در هنگام استفاده از http
موتور جستجوی گوگل و مرورگرهای مختلف در تلاش هستند تا با ایجاد محدودیت یا نمایش هشدار، استفاده از پروتکل قدیمی http را محدود و کاهش دهند. برخی از این محدودیتها که تا کنون اعمال شدهاند عبارتند از:
- افزایش رتبهی سئو برای سایتهای https
- عدم امکان استفاده از برخی ویژگیهای مرورگر مانند دریافت مکان جغرافیایی کاربر در پروتکل http
- نمایش هشدار در هنگام مراجعه به صفحات حاوی اطلاعات شخصی که از طریق http بارگزاری میشوند
- نمایش هشدار در هنگام جابجایی بین صفحات http و https
نگارشهای مختلف پروتکل http
با گذشت زمان، تغییراتی در استاندارد http و سایر پروتکلهای اتفاق میافتد. این تغییرات برای سازگاری با دنیای جدید وب و یا افزایش کارایی و قابلیتهای موجود به انجام میرسد. پروتکل http نیز از این موضوع مستثنا نیست.
در این مسیر پیوستهایی مانند SPDY( اسپیدی ) برای افزایش سرعت درخواستهای http به صورت آزمایشی و محدود توسعه یافتند و مورد استفاده قرار گرفتند.
آخرین نگارش استاندارد http نگارش ۲ است که تغییراتی اساسی در شیوهی کدگذاری درخواستها و پاسخهای ارسال شده اعمال کرده است. در این نگارش، اطلاعات به جای متنی به صورت باینری یا دودویی ارسال و دریافت میشود که مزایای زیادی را برای وارد شدن به دنیای جدید وب ایجاد میکند.