پروتکل HTTP پروتکلی ذاتن ناامن است، چرا که دادهها را بهشکل متنی ساده (رمزنگاری نشده) میان دو نقطه تبادل میکند. بهدلیل این ناامنی ذاتی، نسخهی دیگری از این پروتکل با نام HTTPS معرفی شد. HTTPS برای برقراری امنیت ارتباط میان دو نقطه از پروتکل TLS بهره میگیرد.
ابر آروان برای تضمین دسترسی کاربران به دادهها در کمترین زمان ممکن و با بیشترین امنیت، یکی از پشتیبانیکنندگان پروتکل TLS 1.3 در سطح جهانی است. بهبودهای عملکردی در این پروتکل، سبب شده تا افزونبر فراهم آمدن امنیت بیشتر نسبت به نسخههای قدیمیتر آن، تاخیر کاهش و سرعت دسترسی به دادههای امن افزایش چشمگیری یابد.
Transport Layer Security (TLS) پروتکلی است که بهواسطهی آن میتوان ارتباط مابین دو نقطه (همانند ارتباط میان مرورگر و web server) را امن کرد. پیش از معرفی TLS، این مسوولیت بهعهدهی پروتکل Secure Socket Layer (SSL) بود. اما نواقص عملکردی SSL همانند ضعف در احراز هویت پیامها و استفاده از الگوریتمهایی ضعیف در رمزنگاری دادهها، سبب شد تا این پروتکل بهمرور منسوخ و TLS جایگزین آن شود. آخرین نسخه از این پروتکل، TLS 1.3 است.
هنگام دسترسی به محتوای سایتی پشتیبانیکننده از HTTPS، ابتدا مرورگر و وبسرور باید بر سر کلیدی رمزنگاریشده به توافق برسند، سپس دادهها میان آن دو تبادل شوند. این فرآیند cryptographic handshake نام دارد و طی آن پیامهای خاصی میان مرورگر و وبسرور مبادله میشوند.
در TLS 1.2 در فرآیند handshake، پیش از شروع ارسال دادههای رمزنگاریشده میان مرورگر و وبسرور، به دو round-trip (RTT) اضافه احتیاج است. این دو عمل اضافه سبب بروز تاخیر درخور توجهی در load (بارگذاری) صفحه و تاثیر بد بر اپلیکیشنهای حساس بر تاخیر میشوند.
TLS 1.3 با پشتیبانی از فرآیند handshake جدید با نا 1-RTT mode سبب میشود تا مرورگر قادر به ارسال کلید رمزنگاری در نخستین پیام ارسالی در طول فرآیند handshake باشد و به این ترتیب، دو گام اضافهای که برای انجام این عمل میان مرورگر و سرور نیاز بود، حذف شوند.
حذف این دو مرحلهی اضافی، سبب افزایش سرعت در بارگذاری صفحه و از سوی دیگر حفظ منابع شبکه از جمله پهنای باند میشود.
از سوی دیگر TLS 1.3 برای بهبود بیشتر عملکرد از یک خاصیت جدید دیگر نیز، با نام 0-RTT Resumption mode پشتیبانی میکند. بهواسطهی این ویژگی، پس از برقراری ارتباط TLS میان یک مرورگر و وبسایتی پشتیبانیکننده از HTTPS برای نخستینبار، مرورگر و وبسرور، کلید رمزنگاریشدهی به اشتراک گذاشته در طی این ارتباط TLS را برای خود ذخیره کرده و هنگامیکه مرورگر برای بار دیگر قصد دسترسی به محتوای این وبسایت را داشته باشد، از همین کلید ذخیرهشده استفاده میکند. به این ترتیب مرورگر و سرور میتوانند در همان نخستین پیام، به تبادل دادههای رمزنگاریشده بپردازند. این خاصیت سبب میشود تا سرعت load صفحات وب پشتیبانیکننده از HTTPS، معادل load صفحات پشتیبانیکننده از HTTP شود.
TLS 1.2 از الگوریتمهای تبادل کلید متعددی بهره میگرفت که بسیاری از آنها در عمل بیفایده و بدون کاربرد بودند. در TLS 1.3 تمام این الگوریتمها بهجز Diffie-Hellman (DH) حذف شدهاند. حذف این الگوریتمها افزونبر سادهسازی پیکربندی TLS 1.3، سبب حذف بسیاری از پارامترهای غیرضروری مورد مذاکره (negotiate) میان مرورگر و سرور میشود.
از سوی دیگر، TLS 1.3 از الگوریتمهای ضعیفی همچونmode CBC و RC4 که در نسخههای قبلی TLS از آنها برای رمزنگاری پیامها استفاده میشد و در طی سالها، حفرهها و bugهای امنیتی بسیاری برای آنها شناسایی شده بود، پشتیبانی نمیکند.
در (امضای) TLS 1.3، sign کل فرآیند handshake، سبب میشود تا مهاجم امکان تغییر پارامترهای handshake همانند مذاکرات رمزها (cipher negotiation) همچنین حملات downgrade (یکی از انواع حملات MITM) را نداشته باشد.
از سوی دیگر در TLS 1.3، امضاها با روش جدیدی با نام RSA-PSS بهبودیافتهاند. به این ترتیب TLS 1.3 در برابر حملات رمزنگاری بر پایهی تاثیر بر طرح signature نیز ایمن است.