HTTP مخفف Hyper Text Transfer Protocol است که در سال 1991 مدتی بعد از ساخت اولین وبسایت پیادهسازی شد. HTTP مجموعهای از قوانینی است که برای انتقال فایلهایی از قبیل متن، صدا، تصویر و سایر فایلهای چندرسانهای از طریق درگاه وب استفاده میشود. این پروتکل وظیفه برقراری ارتباط میان سرویسدهندگان و سرویسگیرندگان را بر عهده دارد.
پروتکل HTTP بهعنوان یکی از مهمترین استاندارهای تعریف شده برای شبکه وب است و بدون آن شبکه جهانی به شکلی که امروز میشناسیم معنی نداشت. این پروتکل در بالاترین لایهTCP/IP به صورت کلاینت /سرور (Client/Server) قرار دارد که در این ارتباط مرورگرها و گاها نرمافزارها Clientها هستند و Serverها کامپیوترهایی هستند که خدماتی را به کلاینتها ارائه میدهند. هر تعامل بین Server وClient پیام نامیده میشود و طریقه ارتباط این دو با استفاده از پروتکل HTTP بدین صورت میشد که داده، از طریق بسترهای اطلاعاتی، بین سرور و کلاینت که معمولاً از طریق پورت 80 است ردوبدل میشود (داده به بخشهای کوچکتر شکسته و سپس هر کدام به ترتیب به مقصد فرستاده میشوند).
ذکر این نکته حائز اهمیت است که پروتکلTCP/IP امنیت داده و تضمین ارسال آنها را برعهده میگیرد. یکی از ویژگیهای کلیدی این پروتکل، Statelessبودن آن است. یعنی هر درخواستی که کاربر به سرور ارسال میکند با درخواستهای قبلی که ارسال کرده، ارتباطی ندارد. بهعنوانمثال فرض کنید در یک فروشگاه اینترنتی چند محصول را به سبد خرید خود اضافه کردهاید. هر بار که شما یک محصول جدید به سبد خرید خود اضافه میکنید، درخواست شما برای اضافهکردن محصول به سرور ارسال میشود و سرور به شما پاسخ میدهد. در این صورت اگر شما بعداً به سبد خرید خود بازگردید سرور HTTP نمیتواند تشخیص دهد که کدام محصولات قبلاً به سبد خرید شما اضافه شده، چون که اطلاعات را در خود نگهداری نمیکند. اینجاست که پای کوکیها به میان میآید. کوکیها فایلهای متنی همراه با دادههای کمحجم هستند که در کامپیوتر کاربران ذخیره میگردند و هنگامی که یک کاربر از یک وبسایت بازدید و استفاده میکند، این اطلاعات به سرور وبسایت فرستاده و موجب میشود اطلاعات کاربر فراموش نشود.
HTTPS چیست؟
این مسئله که پروتکل HTTP برای ارسال و دریافت اطلاعات در وبسایتها هستند صادق است؛ اما مسئله مهم در اینجاست که بهعنوان یک پروتکل امن شناخته نمیشود و همین امر موجب بهوجودآمدن پروتکل HTTPS شد (حرف S مختصر عبارت Secure است) .امروزهHTTPS از اهمیت ویژهای برخوردار است چرا که انتقال دادههای حساس مانند شماره کارتهای اعتباری، اطلاعات ورود به سیستم و… بهصورت ایمن از طریق اینترنت صورت میگیرد. این پروتکل دادهها را با فرمت رمزنگاری شده منتقل میکند و مانع از خواندن و تغییر مسیر دادن آنها توسط هکرها میشود. برای رمزنگاریاطلاعات در HTTPS دو پروتکل وجو داردSSL و TLS .روش رمزنگاری آنها به صورت نامتقارن است و از دو کلید عمومی Pubilk key و کلید خصوصی Private key استفاده میشود.
نکته قابلتوجه این است که سایتهایی که از HTTPS استفاده میکنند بهصورت خودکار یک تغییر آدرس خواهند داشت به این معنی که اگر کاربر HTTP را در مرورگر خود تایپ کند سرور آن را بهصورت خودکار بهHTTPS هدایت میکند و به کاربر این اطمینان را میدهد که از هر نوع سوءاستفاده در امان بماند.
گوگل در سال 2018 سایتهایی که از پروتکل HTTPS استفاده نمیکنند را به عنوان سایتهایی ناامن شناخته و به کاربران هشدار امنیتی مبنی بر عدم امنیت سایت را اعلام میکند. در همین راستا گوگل بهصورت صریح اعلام کرد سایتهایی که از HTTPS بهره میبرند امتیاز مثبت سئو به آنان تعلق میگیرد با اتخاذ این سیاستها گوگل در تلاش است استفاده از پروتکلHTTP را کاهش دهد.
گواهینامه SSL:
SSL مخفف Secure Sokets Layer یک گواهینامه دیجیتالی برای تأیید هویت وبسایت و مالک آن است. با استفاده از این لایه تبادل، بین کلاینت و سرور بهصورت رمزنگاری شده ایجاد میشود و از هکشدن اطلاعات حساس مانند تراکنشهای مالی، رمزهای عبور و غیره جلوگیری میگردد. با بروز رسانی SSL نام آن به TLS(Transport Layers Secuirity) تبدیل شد.
همانطور که در بالا اشاره کردیم برای رمزنگاری از دو کلید خصوصی و عمومی استفاده میشود. گواهینامه SSL یک کلید عمومی را ارائه میدهد که دستگاه کاربر برای رمزنگاری داده قبل از ارسال به وب سرور استفاده میکند، و سرور نیز دارای یک کلید خصوصی است که برای رمزگشایی داده استفاده میکند. این فرآیند تضمینکننده آن است که این اطلاعات توسط شخص دیگری قابل روئیت نیست.
نماد قفلی که در کنار آدرس مرورگر ،نمایش داده میشود نشاندهنده آن است که بر روی آن وبسایت گواهینامه SSL نصب است که این امر موجب افزایش اعتماد کاربران، جلوگیری از فیشینگ و دیگر مزایای آن میشود.
مراحل تغییر از HTTP به HTTPS:
1.خرید گواهینامه SSL از هاستینگ
2.تنظیم مجدد لینکهای داخلی از HTTP به HTTPS
3.ثبت نسخه HTTPS در گوگل سرچ کنسول
4.بروز رسانی نقشه سایت
5.تنظیم مجدد گوگل آنالتیکس
انواع گواهینامههای امنیتی برای SSL:
DV SSL (Domain Validation): این گواهی پایینترین سطح امنیت را به کاربران ارائه میدهد. سایتهایی که در ابتدای راه هستند و قصد ندارند هزینه سنگینی را بپردازند میتوانند از این نوع گواهینامه بهره ببرند .DV ssl یکی از سریعترین و ارزانترین گواهینامهها میباشد که مراحل اعتبارسنجی آن بسیار سریع و نیاز به یک ایمیل برای ثبت دامنه دارد.
OV SSL(Organiztion Validation): این نوع گواهی نامه به اشخاص حقیقی و صاحبان کسبوکار مانند سازمانهای دولتی، شرکتها و غیره تعلق میگیرد. مرکز صدور گواهینامه پس از بررسی قانونی بودن فعالیت شرکت یا سازمان اقدام به صدور گواهینامه و ثبت دامنه میکند که این امر ممکن است چند روز به طول انجامد. این گواهی علاوه بر تأمین امنیت سایت درصدد تامین اعتبار یک کسبوکار اینترنتی برمیآید.
EV SSL(Extended Validation): دریافت این گواهینامه بسیار شبیه به OV است، اما با اعتبار و امنیت بیشتر. معمولاً سازمانهای بزرگ از جمله گوگل از آن استفاده میکنند. این نوع گواهینامه اعتبارسنجی گسترده انجام میدهد که مزیت مهم آن نام کامل و رسمی شرکت در کنار نام دامنه در نوار آدرس مرورگر درج میگردد.