TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384ECDHEkey exchangeRSAauthAES-256-GCMencryptionSHA384hasheach piece is a separate algorithm choiceTLS 1.3 simplified by separating key exchange from cipher

Suite Sandi TLS

11 min bacaKriptografi

Setiap koneksi TLS menegosiasikan cipher suite — kombinasi spesifik algoritma yang digunakan untuk pertukaran kunci, autentikasi, enkripsi, dan integritas. Namanya terlihat seperti sup alfabet (TLS_AES_256_GCM_SHA384, ECDHE-ECDSA-CHACHA20-POLY1305) namun mengkodekan properti keamanan koneksi. Membacanya memperjelas apa yang sebenarnya terjadi ketika browser Anda menampilkan gembok.

Badan artikel selengkapnya disediakan dalam bahasa Inggris di bawah ini.

A TLS cipher suite adalah kombinasi algoritma kriptografi yang digunakan untuk melindungi koneksi TLS. Selama jabat tangan TLS, klien dan server menegosiasikan rangkaian sandi mana yang akan digunakan berdasarkan dukungan masing-masing. Pilihan menentukan pertukaran kunci, otentikasi, enkripsi, dan integritas untuk sisa koneksi.

Membaca nama cipher suite TLS 1.2

Formatnya adalah: TLS_KEXAUTH_WITH_CIPHER_MAC atau dalam konvensi OpenSSL KEX-AUTH-CIPHER-MAC.

Contoh: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 dipecah menjadi:

  • ECDHE — pertukaran kunci menggunakan kurva elips Diffie-Hellman ephemeral (memberikan kerahasiaan penerusan)
  • RSA — server mengautentikasi menggunakan sertifikat RSA
  • AES_256_GCM — enkripsi massal menggunakan AES dengan kunci 256-bit dalam mode GCM (enkripsi yang diautentikasi)
  • SHA384 — MAC jabat tangan dan KDF menggunakan SHA-384

TLS 1.3 penyederhanaan

TLS 1.3 membersihkan penamaan cipher suite secara signifikan. Cipher suite sekarang hanya menentukan cipher dan hash simetris. Pertukaran kunci dan otentikasi dinegosiasikan secara terpisah. Namanya terlihat seperti:

  • TLS_AES_256_GCM_SHA384 — AES-256-GCM dengan SHA-384
  • TLS_AES_128_GCM_SHA256 — AES-128-GCM dengan SHA-256
  • TLS_CHACHA20_POLY1305_SHA256 — ChaCha20-Poly1305 dengan SHA-256
  • TLS_AES_128_CCM_SHA256 — AES-128 dalam mode CCM dengan SHA-256
  • TLS_AES_128_CCM_8_SHA256 — sama dengan MAC 8-byte, sebagian besar untuk perangkat yang dibatasi

TLS 1.3 hanya memiliki total lima rangkaian sandi standar. TLS 1.2 memiliki ratusan kemungkinan kombinasi.

Apa arti setiap bagian

Pertukaran kunci:

  • RSA — kunci RSA server mengautentikasi dan menukar kunci. Tidak ada kerahasiaan ke depan. Dihapus di TLS 1.3.
  • DHE — Diffie-Hellman sementara. Teruskan kerahasiaannya ya. Digunakan di TLS 1.2; diintegrasikan ke dalam jabat tangan di TLS 1.3.
  • ECDHE — Elliptic Curve Diffie-Hellman singkat. Teruskan kerahasiaannya ya. Cepat. Default modern.

Authentication (TLS 1.2):

  • RSA — server memiliki sertifikat RSA
  • ECDSA — server memiliki sertifikat kurva elips
  • DSS — sertifikat DSA (kebanyakan bersifat historis)
  • PSK — kunci yang dibagikan sebelumnya (jarang; untuk IoT dan beberapa skenario VPN)

Bulk cipher:

  • AES_128_GCM, AES_256_GCM — AES-GCM dengan Kunci 128 atau 256-bit, enkripsi terautentikasi
  • CHACHA20_POLY1305 — Cipher aliran ChaCha20 dengan Poly1305 MAC, alternatif modern untuk AES
  • AES_128_CBC, AES_256_CBC — AES-CBC dengan HMAC terpisah, pola lama (secara bertahap bertahap out)
  • 3DES_EDE_CBC — Triple DES, tidak digunakan lagi
  • RC4 — sandi aliran rusak, tidak lagi ada di suite modern mana pun

Hash untuk jabat tangan:

  • SHA256, SHA384 — keluarga SHA-2, standar modern
  • SHA — SHA-1, tidak digunakan lagi
  • MD5 — panjang tidak digunakan lagi

Suite yang direkomendasikan pada tahun 2026

Panduan konfigurasi TLS Mozilla adalah referensi standar industri. Profil modern saat ini menyarankan:

  • TLS 1.3 saja. Jika basis klien Anda mendukungnya (pada dasarnya semua yang modern mendukungnya), tidak ada fallback TLS 1.2.
  • Cipher suites: TLS_AES_128_GCM_SHA256, TLS_AES_256_GCM_SHA384, TLS_CHACHA20_POLY1305_SHA256.
  • Jika TLS 1.2 harus didukung: ECDHE+AES-GCM dan ECDHE+ChaCha20 hanya suite.

Untuk kompatibilitas klien lama, diperlukan lebih banyak suite, termasuk beberapa tanpa kerahasiaan. Profil "perantara" Mozilla mencakup ~95% klien dengan tetap menjaga keamanan yang wajar.

Apa yang dihapus dan alasannya

Konfigurasi TLS modern dihapus:

  • Pertukaran kunci non-ephemeral (RSA biasa, DH statis). Tidak ada kerahasiaan penerusan.
  • CBC-mode cipher (di TLS 1.2 dengan negosiasi ulang). Riwayat serangan (BEAST, Lucky 13).
  • 3DES, RC4. Secara kriptografis rusak atau terlalu lambat.
  • MD5, SHA-1 untuk jabat tangan. Serangan tabrakan.
  • Suite anonim. Tidak ada otentikasi server, rentan terhadap MITM.
  • EXPORT-grade suites. Artefak sejarah kontrol ekspor kripto; lemah secara desain.

Serangan FREAK dan Logjam pada tahun 2015 mengeksploitasi browser yang masih menegosiasikan suite tingkat EKSPOR untuk kompatibilitas. Server arus utama menghapusnya setelah itu; beberapa situs ekor panjang masih memilikinya bertahun-tahun kemudian.

Memeriksa dukungan sandi server

Alat:

  • SSL Labs SSL Server Test (ssllabs.com) — analisis komprehensif TLS situs publik konfigurasi.
  • testssl.sh — pemindai baris perintah.
  • nmap --script ssl-enum-ciphers — enumerasi cepat.
  • OpenSSL s_client dengan berbagai tanda untuk pengujian manual.

Untuk server Anda sendiri, jalankan ini secara berkala; konfigurasi melayang seiring waktu seiring pembaruan paket.

Pertanyaan yang sering diajukan

Haruskah saya mengkhawatirkan cipher suite sebagai pengguna?
Browser modern menangani negosiasi. Rangkaian sandi yang dipilih ditampilkan saat Anda mengeklik gembok dan memeriksa sertifikat. Bagi sebagian besar pengguna, ini ada di belakang layar.
Mengapa TLS 1.3 memiliki sedikit rangkaian sandi?
Ratusan kombinasi TLS 1.2 mempermudah kesalahan konfigurasi yang rentan. TLS 1.3 sengaja dipangkas menjadi sekumpulan kecil kombinasi yang dapat dipahami dengan baik, semuanya dengan kerahasiaan dan enkripsi yang diautentikasi.
Apa perbedaan antara AES-128-GCM dan AES-256-GCM?
Panjang kunci. AES 128-bit cepat dan dianggap aman tanpa batas waktu terhadap musuh klasik; 256-bit memberikan margin terhadap kemajuan kriptografi di masa depan dan melawan musuh yang sadar kuantum. Keduanya baik-baik saja untuk penggunaan saat ini.
Kapan saya harus menggunakan ChaCha20-Poly1305 vs AES-GCM?
ChaCha20 lebih cepat pada perangkat keras tanpa akselerasi AES-NI (ponsel lama, IoT). AES-GCM lebih cepat pada perangkat keras modern dengan AES-NI. Browser menegosiasikan yang paling sesuai; server harus menawarkan keduanya.
Apakah cipher suite mempengaruhi kinerja?
Secara sederhana. AES-GCM yang dipercepat perangkat keras pada dasarnya gratis di CPU modern. Overhead jabat tangan (pertukaran kunci) mendominasi enkripsi massal untuk koneksi pendek. Untuk koneksi volume tinggi yang tahan lama, pilihan sandi massal tidak terlalu berpengaruh.
Penjelasan TLS Cipher Suites: Membaca Menu Kriptografi