پروتکل امن انتقال ابرمتن (HTTPS) نسخه ایمن HTTP است که پروتکل اولیه ای است که برای ارسال داده بین مرورگر وب و وب سایت استفاده می شود. و به منظور افزایش امنیت انتقال داده ها رمزگذاری شده است. این امر به ویژه هنگامی مهم است که کاربران داده های حساس را انتقال می دهند، مانند ورود به حساب بانکی، سرویس ایمیل یا ارائه دهنده بیمه سلامت.
هر وبسایتی، بهویژه آنهایی که نیاز به اعتبار ورود دارند، باید از HTTPS استفاده کنند. در مرورگرهای وب مدرن مانند کروم، وبسایتهایی که از آن استفاده نمیکنند متفاوت از آنهایی که هستند علامتگذاری میشوند. به دنبال قفلی در نوار URL بگردید تا نشان دهد صفحه وب امن است. مرورگرهای وب آن را جدی می گیرند. Google Chrome و سایر مرورگرها همه وبسایتهای غیر آن را بهعنوان غیر امن علامتگذاری میکنند.
HTTPS چگونه کار می کند؟
HTTPS از یک پروتکل رمزگذاری برای رمزگذاری ارتباطات استفاده می کند. این پروتکل امنیت لایه حمل و نقل (TLS) نامیده می شود، اگرچه قبلاً به عنوان لایه سوکت های امن (SSL) شناخته می شد. این پروتکل با استفاده از چیزی که به عنوان زیرساخت کلید عمومی نامتقارن شناخته می شود، ارتباطات را ایمن می کند. این نوع سیستم امنیتی از دو کلید مختلف برای رمزگذاری ارتباطات بین دو طرف استفاده می کند:
- کلید خصوصی:
این کلید توسط صاحب یک وب سایت کنترل می شود و همانطور که خواننده ممکن است حدس زده باشد خصوصی نگه داشته می شود. این کلید روی یک وب سرور زندگی می کند و برای رمزگشایی اطلاعات رمزگذاری شده توسط کلید عمومی استفاده می شود. - کلید عمومی:
این کلید برای همه کسانی که می خواهند با سرور به روشی امن تعامل داشته باشند در دسترس است. اطلاعاتی که توسط کلید عمومی رمزگذاری شده اند فقط با کلید خصوصی قابل رمزگشایی هستند.
چرا HTTPS مهم است؟ اگر وب سایتی HTTPS نداشته باشد چه اتفاقی می افتد؟
HTTPS از پخش اطلاعات وبسایتها به گونهای جلوگیری میکند که برای هر کسی که در شبکه جاسوسی میکند به راحتی قابل مشاهده باشد. هنگامی که اطلاعات از طریق HTTP معمولی ارسال میشود، اطلاعات به بستههایی از دادهها تقسیم میشوند که میتوانند به راحتی با استفاده از نرمافزار رایگان « sniffed» پیدا شوند. این باعث می شود که ارتباطات از طریق یک رسانه ناامن، مانند Wi-Fi عمومی، در برابر رهگیری بسیار آسیب پذیر باشد. در واقع، تمام ارتباطاتی که از طریق HTTP اتفاق میافتد، به صورت متن ساده رخ میدهند، و آنها را برای هرکسی که ابزارهای صحیح را در اختیار دارد، بسیار در دسترس قرار میدهد و در برابر حملات درون مسیری آسیبپذیر است.
با HTTPS، ترافیک به گونهای رمزگذاری میشود که حتی اگر بستهها sniffed شوند یا به شکل دیگری رهگیری شوند، به عنوان کاراکترهای بیمعنی مواجه خواهند شد. بیایید به یک مثال نگاه کنیم:
قبل از رمزگذاری:
“This is a string of text that is completely readable”
پس از رمزگذاری:
ITM0IRyiEhVpa6VnKyExMiEgNveroyWBPlgGyfkflYjDaaFf/Kn3bo3OfghBPDWo6AfSHlNtL8N7ITEwIXc1gU5X73xMsJormzzXlwOyrCs+9XCPk63
در وبسایتهای بدون HTTPS، ارائهدهندگان خدمات اینترنتی (ISP) یا سایر واسطهها میتوانند بدون تأیید مالک وبسایت، محتوا را به صفحات وب تزریق کنند. این معمولاً به شکل تبلیغات است، جایی که یک ISP که به دنبال افزایش درآمد است، تبلیغات پولی را به صفحات وب مشتریان خود تزریق می کند. جای تعجب نیست که وقتی این اتفاق می افتد، سود تبلیغات و کنترل کیفیت آن تبلیغات به هیچ وجه با صاحب وب سایت تقسیم نمی شود. HTTPS توانایی اشخاص ثالث تعدیل نشده را برای تزریق تبلیغات به محتوای وب حذف می کند.
HTTPS چه تفاوتی با HTTP دارد؟
از نظر فنی، HTTPS یک پروتکل مجزا از HTTP نیست. این به سادگی از رمزگذاری TLS/SSL روی پروتکل HTTP استفاده می کند. آن بر اساس انتقال گواهیهای TLS/SSL اتفاق میافتد، که تأیید میکند ارائهدهنده خاص همان چیزی است که آنها میگویند.
هنگامی که کاربر به یک صفحه وب متصل می شود، صفحه وب گواهینامه SSL خود را که حاوی کلید عمومی لازم برای شروع جلسه امن است ارسال می کند. سپس دو کامپیوتر، کلاینت و سرور، فرآیندی به نام دست دادن SSL/TLS را طی میکنند که مجموعهای از ارتباطات رفت و برگشتی است که برای ایجاد یک اتصال امن استفاده میشود.
HTTPS همان HTTP با رمزگذاری TLS است. و از TLS (SSL) برای رمزگذاری درخواستها و پاسخهای HTTP معمولی استفاده میکند و آن را ایمنتر و امنتر میکند. وبسایتی که از آن استفاده میکند، به جای http://، https://www.abc.com، در ابتدای URL خود https:// دارد.
چگونه یک وب سایت شروع به استفاده از HTTPS می کند؟
بسیاری از ارائه دهندگان میزبانی وب سایت و سایر خدمات گواهینامه های TLS/SSL را با پرداخت هزینه ارائه می دهند. این گواهی ها اغلب در بین بسیاری از مشتریان به اشتراک گذاشته می شود. گواهیهای گرانتری در دسترس هستند که میتوانند به صورت جداگانه در ویژگیهای وب خاص ثبت شوند.
همه وبسایتهایی که از Cloudflare استفاده میکنند، HTTPS را بهطور رایگان با استفاده از یک گواهی مشترک دریافت میکنند (اصطلاح فنی برای این گواهینامه SSL چند دامنهای است). راهاندازی یک حساب رایگان تضمین میکند که یک ویژگی وب بهطور مداوم حفاظت آن بهروز میشود.
چرا وب سایت ها باید از HTTPS استفاده کنند؟
در اینجا سه دلیل برای استفاده از آن وجود دارد که آنها را برای شما شرح میدهیم.
۱ - وب سایت هایی که از HTTPS استفاده می کنند برای کاربران قابل اعتمادتر هستند - وبسایتی که از HTTPS استفاده میکند مانند رستورانی است که «مجوز» را از بازرس ایمنی غذای محلی نشان میدهد: مشتریان بالقوه میتوانند اعتماد کنند که میتوانند از کسبوکار حمایت کنند، بدون اینکه اثرات منفی زیادی را تجربه کنند. و در عصر حاضر، استفاده از HTTP اساساً مانند نمایش یک علامت بازرسی ایمنی مواد غذایی "شکست خورده" است: هیچ تضمینی وجود ندارد که اتفاق وحشتناکی برای مشتری رخ ندهد.
HTTPS از پروتکل SSL/TLS برای رمزگذاری ارتباطات استفاده می کند تا مهاجمان نتوانند داده ها را بدزدند. SSL/TLS همچنین تأیید می کند که سرور وب سایت همان چیزی است که می گوید، و از جعل هویت جلوگیری می کند. این کار انواع متعدد حملات سایبری را متوقف می کند (دقیقاً مانند ایمنی مواد غذایی از بیماری جلوگیری می کند).
حتی اگر برخی از کاربران ممکن است از مزایای SSL/TLS آگاه نباشند، مرورگرهای مدرن مطمئن می شوند که بدون توجه به هر اتفاقی از قابل اعتماد بودن یک وب سایت آگاه هستند.
نکته : کروم و سایر مرورگرها همه وبسایتهای HTTP را بهعنوان «ناامن» علامتگذاری میکنند.
گوگل طی چند سال به تدریج اقداماتی را انجام داد تا وب سایت ها را به سمت استفاده از HTTPS سوق دهد. گوگل همچنین از آن به عنوان یک عامل کیفیت در نحوه بازگرداندن نتایج جستجو استفاده می کند. هرچه وب سایت ایمن تر باشد، احتمال اینکه بازدیدکننده با کلیک بر روی لینک ارائه شده توسط گوگل مرتکب اشتباه شود، کمتر می شود.
از ژوئیه ۲۰۱۸ با انتشار Chrome 68، تمام ترافیک HTTP ناامن در نوار URL بهعنوان «ناامن» علامتگذاری شده است. این اعلان برای همه وبسایتهای بدون گواهینامه SSL معتبر ظاهر میشود. سایر مرورگرها نیز از این روش پیروی کرده اند.
۲ - HTTPS هم برای کاربران و هم برای صاحبان وب سایت امن تر است - با HTTPS، داده ها در هر دو جهت در حال انتقال رمزگذاری می شوند: رفتن به سرور مبدا و ارسال از آن. این پروتکل ارتباطات را ایمن نگه می دارد تا افراد مخرب نتوانند مشاهده کنند که چه داده هایی ارسال می شود. در نتیجه وقتی کاربران آنها را در فرم وارد میکنند، نمیتوان نامهای کاربری و گذرواژهها را در حین انتقال به سرقت برد. اگر وب سایت ها یا برنامه های کاربردی وب مجبور به ارسال داده های حساس یا شخصی برای کاربران (به عنوان مثال، اطلاعات حساب بانکی) باشند، رمزگذاری از آن داده ها نیز محافظت می کند.
۳ - HTTPS وب سایت ها را احراز هویت می کند - کاربران برنامههای گرفتن تاکسی مانند اسنپ و تپسی مجبور نیستند از روی ایمان سوار ماشینهای ناآشنا شوند، فقط به این دلیل که راننده میگوید من شما را به صورت امن به مقصد میرسانم. در عوض، برنامهها اطلاعاتی درباره راننده، مانند نام و ظاهر، نوع خودرویی که رانندگی میکنند و شماره پلاک خودرو را به آنها میگویند. کاربر میتواند این موارد را بررسی کند و مطمئن شود که سوار ماشین مناسبی شدهاند، حتی اگر ماشینهای اشتراکی متفاوت باشند و قبلاً راننده را ندیدهاند.
به طور مشابه، وقتی کاربر به یک وبسایت هدایت میشود، کاری که در واقع انجام میدهد اتصال به رایانههای دوردستی است که درباره آنها اطلاعاتی ندارند و توسط افرادی که هرگز ندیدهاند نگهداری میشوند. یک گواهی SSL، که HTTPS را فعال می کند، مانند اطلاعات راننده در برنامه اسنپ است. این نشان دهنده تأیید خارجی توسط یک شخص ثالث قابل اعتماد است که یک وب سرور همان چیزی است که ادعا می کند.
این امر از حملاتی که در آن مهاجم جعل هویت یک وبسایت یا جعل میکند، جلوگیری میکند و باعث میشود کاربران فکر کنند در سایتی هستند که قصد دسترسی به آن را داشتند، در حالی که واقعاً در یک سایت جعلی هستند. احراز هویت HTTPS همچنین کمک زیادی به ظاهر قانونی وب سایت شرکت می کند و بر نگرش کاربران نسبت به خود شرکت تأثیر می گذارد.
https یکی از فاکتورهای سئو
قبلا هم حالت امن در فاکتورهای گوگل بود از سال 2022 گوگل در سرچ کنسول گزینه https را در بخش experience قرار داد تا ضرورت این مورد را در سایت ها اعلام کند. و اجبار برای امنیت بیشتر به صورت جدی تری انجام شود.
مفاهیم افسانه ای HTTPS
بسیاری از وب سایت ها در پذیرش HTTPS کند بوده اند. برای کشف چرایی این موضوع، باید به تاریخ نگاه کنیم.
زمانی که HTTPS در ابتدا شروع به کار کرد، اجرای صحیح آن سخت، کند و پرهزینه بود. اجرای صحیح آن دشوار بود، درخواستهای اینترنتی را کاهش داد و با نیاز به خدمات گواهی گران قیمت، هزینهها را افزایش داد. هیچ یک از این موانع درست باقی نمیماند، اما یک ترس پایدار همچنان برای بسیاری از صاحبان وبسایت وجود دارد، که مانع از جهش برخی از آنها به سمت امنیت بهتر شده است. بیایید برخی از افسانه های مربوط به آن را بررسی کنیم.
۱ - من اطلاعات حساس وبسایت خود را مدیریت نمیکنم، بنابراین به HTTPS نیازی ندارم - دلیل رایجی که وبسایتها امنیت را پیادهسازی نمیکنند این است که فکر میکنند این امنیت برای اهدافشان بیش از حد است. به هر حال، اگر با داده های حساس سروکار ندارید، چه کسی اهمیت می دهد که کسی جاسوسی کند؟ چند دلیل وجود دارد که این یک دیدگاه بیش از حد ساده در مورد امنیت وب است. به عنوان مثال، برخی از ارائه دهندگان خدمات اینترنتی در واقع تبلیغات را به وب سایت های ارائه شده توسط HTTP تزریق می کنند. این تبلیغات ممکن است با محتوای وب سایت مطابقت داشته باشد یا نباشد، و به طور بالقوه می تواند توهین آمیز باشد، جدای از این واقعیت که ارائه دهنده وب سایت هیچ ورودی خلاقانه یا سهمی از درآمد ندارد. پس از ایمن شدن سایت، این تبلیغات تزریقی دیگر امکان پذیر نیست.
مرورگرهای وب مدرن اکنون عملکرد سایت هایی را که امن نیستند محدود می کنند. ویژگی های مهمی که کیفیت وب سایت را بهبود می بخشد اکنون به HTTPS نیاز دارد. موقعیت جغرافیایی، اعلانهای فشاری و سرویسدهندگان مورد نیاز برای اجرای برنامههای کاربردی PWA همگی به امنیت بالایی نیاز دارند. این منطقی است؛ داده هایی مانند موقعیت مکانی کاربر حساس است و می تواند برای اهداف شرورانه استفاده شود.
۲ - من نمی خواهم با افزایش زمان بارگذاری صفحه به عملکرد وب سایتم آسیب بزنم - عملکرد عامل مهمی در تجربه کاربری و نحوه بازگرداندن نتایج گوگل در جستجو است. قابل درک است که افزایش تاخیر چیزی است که باید جدی گرفت. خوشبختانه، با گذشت زمان، بهبودهایی در HTTPS انجام شده است تا سربار عملکرد مورد نیاز برای راه اندازی یک اتصال رمزگذاری شده کاهش یابد.
هنگامی که یک اتصال HTTP رخ می دهد، تعدادی سفر باید بین مشتری درخواست کننده صفحه وب و سرور انجام شود. جدای از تأخیر معمولی مرتبط با یک ارتباط TCP، برای استفاده از HTTPS باید یک ارتباط TLS/SSL اضافی رخ دهد.
برای کاهش تأخیر کلی ایجاد یک اتصال، بهبودهایی در TLS اعمال شده است، از جمله از سرگیری جلسه TLS و شروع نادرست TLS. با استفاده از از سرگیری جلسه، سرور می تواند با از سرگیری همان جلسه برای درخواست های اضافی، اتصال را برای مدت بیشتری زنده نگه دارد. زنده نگه داشتن اتصال باعث صرفه جویی در زمان صرف شده برای مذاکره مجدد در مورد اتصال می شود، زمانی که کلاینت نیاز به واکشی مبدا ذخیره نشده دارد، و RTT کل را تا ۵۰% کاهش می دهد.
یکی دیگر از پیشرفتها در سرعت ایجاد یک کانال رمزگذاری شده، پیادهسازی فرآیندی به نام شروع نادرست TLS است که با ارسال دادههای رمزگذاریشده قبل از اتمام احراز هویت، تأخیر را کاهش میدهد.
در نهایت، TLS 1.3 بهبود عملکرد قابل توجهی را ارائه می دهد. ارتباط TLS در TLS 1.3 فقط به یک رفت و برگشت نیاز دارد - و اگر مشتری قبلاً متصل شده باشد، رفت و برگشت صفر است.
۳ - اجرای HTTPS برای من بسیار گران است - در یک حالت ممکن است این درست باشد، اما اکنون هزینه دیگر نگران کننده نیست. با روشهایی مانند Cloudflare به وب سایت ها امکان رمزگذاری رایگان حمل و نقل را ارائه داد. با بهبود امنیت اینترنت در کل، میتوانیم به امنتر و سریعتر کردن اینترنت کمک کنیم.
۴ - در حین انتقال سایت خود به HTTPS، رتبه جستجو را از دست خواهم داد - خطرات مرتبط با مهاجرت وب سایت وجود دارد، و انجام نادرست تأثیر منفی سئو ممکن است. مشکلات احتمالی شامل خرابی وب سایت، صفحات وب بدون خزیدن، و جریمه برای تکرار محتوا در صورت وجود همزمان دو نسخه از سایت است. گفتنی است، وب سایت ها را می توان با پیروی از بهترین شیوه ها به طور ایمن به HTTPS منتقل کرد.
دو مورد از مهمترین روشهای مهاجرت عبارتند از:
۱ - با استفاده از 301 redirects
۲ - قرار دادن مناسب تگ های متعارف
با استفاده از تغییر مسیرهای سرور 301 (ریدایرکت) در سایت HTTP برای اشاره به نسخه HTTPS، یک وبسایت به Google میگوید برای تمام اهداف جستجو و فهرستسازی به مکان جدید منتقل شود. با قرار دادن برچسبهای متعارف فقط در سایت HTTPS، خزندههایی مانند Googlebot میدانند که محتوای امن جدید باید در آینده متعارف در نظر گرفته شود.
اگر تعداد صفحات زیادی دارید و نگران هستید که خزیدن مجدد بیش از حد طول بکشد، با گوگل تماس بگیرید و به آنها بگویید که مایلید چقدر ترافیک را در وب سایت خود قرار دهید. سپس مهندسان شبکه نرخ خزیدن را افزایش میدهند تا به تجزیه سریع سایت شما و نمایهسازی آن کمک کنند.
پروتکل انتقال متن به شکل رمز گذاری چه نام دارد؟ جواب https