CodeShot

TLS 1.2 در مقابل TLS 1.3

TLS 1.2 برای برقراری اتصال به یک Handshake دو رفت‌وبرگشتی نیاز دارد و از الگوریتم‌های رمزنگاری قدیمی‌تر (بعضاً ناامن) هم پشتیبانی می‌کند، در حالی که TLS 1.3 با کاهش Handshake به یک رفت‌وبرگشت سریع‌تر است، الگوریتم‌های ضعیف و قدیمی را کاملاً حذف کرده و به‌صورت پیش‌فرض امن‌تر است.

ویژگیTLS 1.2TLS 1.3
رفت‌وبرگشت Handshake۲۱
الگوریتم‌های ضعیف قدیمیهمچنان مجازکاملاً حذف‌شده
سرعت اتصال اولیهکندترسریع‌تر

کِی از TLS 1.2 استفاده کنیم؟

وقتی باید با سیستم‌ها یا کلاینت‌های بسیار قدیمی سازگار باشید که هنوز TLS 1.3 را پشتیبانی نمی‌کنند.

کِی از TLS 1.3 استفاده کنیم؟

برای هر سیستم جدید؛ TLS 1.3 هم سریع‌تر (Handshake کوتاه‌تر) و هم امن‌تر (بدون الگوریتم‌های ضعیف قدیمی) است و امروز استاندارد توصیه‌شده است.

مثال TLS 1.2

# فعال‌سازی هر دو نسخه در Nginx
ssl_protocols TLSv1.2 TLSv1.3;

مثال TLS 1.3

# محدود کردن فقط به نسخه امن و سریع‌تر
ssl_protocols TLSv1.3;

اشتباه رایج

اشتباه رایج نگه‌داشتن پروتکل‌های بسیار قدیمی مثل TLS 1.0/1.1 «برای اطمینان» در کنار نسخه‌های جدید است؛ این نسخه‌ها آسیب‌پذیری‌های شناخته‌شده دارند و اکثر مرورگرها و استانداردهای امنیتی (مثل PCI DSS) دیگر آن‌ها را نمی‌پذیرند.

جمع‌بندی

همیشه TLS 1.3 را فعال کنید و TLS 1.2 را فقط در صورت نیاز واقعی به سازگاری با کلاینت‌های قدیمی نگه دارید؛ نسخه‌های زیر ۱.۲ باید کاملاً غیرفعال شوند.