Apa Itu HTTPS dan TLS?

HTTPS itu HTTP yang dibungkus enkripsi. Pahami apa yang sebenarnya dikerjakan TLS: proses handshake, sertifikat, Certificate Authority, dan bagian mana saja yang benar-benar disembunyikan.

Diterbitkan 15 September 20268 menit bacaOleh ACY Partner Indonesia
Ilustrasi sampul Apa Itu HTTPS dan TLS?
300 × 250Slot Iklan TersediaPasang iklan Anda di sini

Kamu mungkin pernah memperhatikan ikon gembok kecil di sebelah alamat sebuah situs, dan barangkali sudah tahu artinya: koneksinya “aman.” Tapi sebenarnya apa yang terjadi di balik gembok itu? Saat kamu mengetik kata sandi di form login lalu menekan tombol kirim, ada sesuatu yang harus mengacak kata sandi tadi supaya tidak ada pihak di antara laptopmu dan server yang bisa membacanya. Sesuatu itu bernama TLS, dan HTTPS sebenarnya cuma HTTP biasa yang menumpang di atasnya.

Artikel ini melangkah satu tingkat lebih dalam dari penjelasan “HTTP vs HTTPS” yang biasa. Kita akan melihat apa yang sebenarnya dilakukan TLS, bagaimana “handshake” yang terkenal itu bekerja dengan bahasa sederhana, apa itu sertifikat dan siapa yang menerbitkannya, dan — yang penting — bagian mana dari lalu lintasmu yang dienkripsi dan mana yang tidak. Tidak perlu hitungan matematika kriptografi.

HTTPS Hanyalah HTTP yang Diberi Kunci

Mari luruskan dulu hubungannya, karena penamaannya memang membingungkan.

HTTP (HyperText Transfer Protocol) adalah bahasa yang dipakai browser dan server web untuk berkomunikasi: “beri saya halaman ini”, “ini halamannya”, “ini data form-nya”, dan seterusnya. Tanpa tambahan apa pun, HTTP mengirim semuanya dalam bentuk teks polos. Siapa pun yang bisa melihat lalu lintas jaringan — orang lain di Wi-Fi kafe yang sama, penyedia internetmu, atau router jahat di tengah jalan — bisa membaca setiap kata.

HTTPS adalah percakapan HTTP yang sama persis, hanya saja diletakkan di dalam terowongan terenkripsi yang aman. Huruf “S” berarti “Secure” (aman), dan keamanan itu disediakan oleh protokol terpisah bernama TLS.

Jadi susunannya kira-kira begini:

+---------------------------------------+
|  HTTP   (request/response sebenarnya) |
+---------------------------------------+
|  TLS    (mengenkripsi + memverifikasi)|
+---------------------------------------+
|  TCP/IP (mengantar byte-nya)          |
+---------------------------------------+

HTTP sama sekali tidak berubah. TLS hanya membungkusnya. Itulah sebabnya HTTPS kadang disebut sebagai “HTTP over TLS.”

TLS vs SSL — satu keluarga

Kamu akan sering melihat istilah SSL dipakai bergantian dengan TLS. SSL (Secure Sockets Layer) adalah protokol aslinya; TLS (Transport Layer Security) adalah penerusnya yang lebih modern. Versi-versi SSL lama sudah usang dan tidak aman, jadi sekarang semuanya sebenarnya memakai TLS — orang saja yang terbiasa tetap menyebutnya “SSL”. Ketika seseorang bilang “sertifikat SSL”, yang dia maksud hampir selalu sertifikat TLS.

Apa yang Sebenarnya Dijanjikan TLS

TLS bukan satu fitur tunggal; diam-diam ia memberikan tiga jaminan sekaligus. Memahami ketiganya secara terpisah membuat semua hal lain jadi lebih gampang dimengerti.

Jaminan Arti dalam bahasa sederhana Apa yang dicegah
Enkripsi Data diacak sehingga hanya kedua ujung yang bisa membacanya. Penyadapan (ada yang membaca lalu lintasmu).
Integritas Kalau data diubah di tengah jalan, kedua sisi akan tahu. Manipulasi (ada yang diam-diam mengubah halaman atau respons).
Autentikasi Server membuktikan bahwa ia benar-benar pihak yang diakuinya. Penyamaran (server palsu berpura-pura jadi bank-mu).

Yang ketiga inilah yang sering dilupakan orang. Enkripsi saja tidak cukup — kalau kamu mengenkripsi percakapan dengan penipu, kamu hanya menjaga rahasiamu tetap aman sambil menyerahkannya ke orang yang salah. TLS mengatasi ini lewat sertifikat, yang akan kita bahas sebentar lagi.

Handshake TLS, Langkah demi Langkah

Sebelum halaman web atau kata sandi apa pun dikirim, browser dan server menjalani percakapan persiapan singkat yang disebut handshake. Tugasnya adalah menyepakati cara mengenkripsi dan memastikan identitas server. Berikut alur konseptualnya — protokol aslinya punya lebih banyak detail, tapi bentuk besarnya seperti ini:

Browser (kamu)                              Server (example.com)
     |                                              |
     |  1. "Halo" — ini metode enkripsi yang        |
     |     saya dukung, plus sebuah angka acak.     |
     |--------------------------------------------->|
     |                                              |
     |  2. "Halo balik" — saya pilih satu metode,   |
     |     ini angka acak saya DAN sertifikat saya. |
     |<---------------------------------------------|
     |                                              |
     |  3. Saya cek sertifikatnya valid & tepercaya.|
     |     Lalu kita tukar kunci agar sama-sama     |
     |     punya KUNCI RAHASIA yang identik.         |
     |<-------------------------------------------->|
     |                                              |
     |  4. Selesai. Mulai sekarang semuanya         |
     |     dienkripsi dengan kunci rahasia bersama. |
     |=============== terenkripsi ==================|

Mari kita bedah tiap langkahnya dengan bahasa manusia.

Langkah 1: Halo

Browser membuka percakapan dengan memperkenalkan diri. Intinya ia berkata, “Hai, saya mau koneksi aman. Ini metode enkripsi (disebut cipher suite) yang saya bisa pakai, dan ini sebuah angka acak untuk membantu kita membuat kunci nanti.”

Langkah 2: Server Membalas dengan Sertifikatnya

Server menjawab, memilih satu metode enkripsi yang didukung kedua sisi, menambahkan angka acaknya sendiri, dan — ini bagian pentingnya — mengirim sertifikat-nya. Sertifikat adalah kartu identitas digital yang berkata “Saya example.com, dan ini buktinya.” Isi sertifikat akan kita lihat di bagian berikutnya.

Langkah 3: Pertukaran Kunci

Sekarang kedua sisi harus sama-sama memegang kunci rahasia yang identik tanpa pernah mengirim kunci itu melintasi jaringan secara terbuka (karena siapa pun yang mengintip bisa mencurinya). TLS modern memakai matematika yang cerdik (algoritma pertukaran kunci) yang memungkinkan kedua pihak menggabungkan bagian masing-masing dan secara terpisah sampai pada kunci bersama yang sama persis. Penyadap yang melihat setiap pesan yang dipertukarkan pun tetap tidak bisa menghitung kunci itu.

Kunci bersama ini disebut session key (kunci sesi), dan sifatnya sementara — ia hanya ada untuk satu koneksi ini saja.

Langkah 4: Saluran Terenkripsi

Begitu kunci sesi bersama sudah di tangan dan sertifikat sudah diverifikasi, terowongan aman pun terbuka. Setiap request dan response HTTP sejak titik ini dienkripsi dengan kunci sesi tersebut. Browser menampilkan gembok, dan aktivitas browsing-mu yang sebenarnya dimulai.

Kenapa mencampur dua jenis enkripsi?

Handshake memakai kriptografi berbasis sertifikat yang lambat (“asimetris”) secukupnya saja, cukup untuk menyepakati kunci sesi bersama yang cepat (“simetris”) dengan aman. Setelah itu, sebagian besar percakapan memakai kunci yang cepat tadi. Ini menggabungkan kelebihan keduanya: pemeriksaan identitas yang kuat di awal, kecepatan tinggi untuk data sesungguhnya.

Sertifikat dan Certificate Authority

Sertifikat adalah inti dari janji “autentikasi”. Bayangkan sertifikat seperti paspor untuk sebuah situs. Paspor baru bisa dipercaya karena diterbitkan dan dicap oleh pemerintah yang kamu percaya. Sertifikat TLS bekerja dengan cara serupa.

Apa Isi Sebuah Sertifikat

Sertifikat adalah berkas kecil yang antara lain berisi:

  • Nama domain tempat sertifikat itu berlaku (misalnya acy-partner.com).
  • Kunci publik situs tersebut (separuh dari sepasang kunci; kunci privat pasangannya tetap rahasia tersimpan di server).
  • Tanggal kedaluwarsa — sertifikat hanya berlaku untuk jangka waktu terbatas.
  • Tanda tangan digital dari organisasi yang menerbitkannya.

Item terakhir inilah yang membuatnya bisa dipercaya.

Siapa yang Menerbitkan: Certificate Authority

Certificate Authority (CA) adalah organisasi tepercaya yang seluruh tugasnya adalah memverifikasi bahwa sebuah situs benar-benar menguasai suatu domain, lalu menerbitkan dan menandatangani sertifikat untuknya. Browser dan sistem operasimu sudah dibekali daftar bawaan CA yang mereka percaya — ini disebut trust store.

Rantai kepercayaannya seperti ini:

Root CA (dipercaya oleh browser-mu)
   |
   |  menandatangani
   v
Intermediate CA
   |
   |  menandatangani
   v
sertifikat example.com

Ketika server menyerahkan sertifikatnya saat handshake, browser-mu memeriksa tanda tangan menaiki rantai ini. Kalau rantainya menuju kembali ke CA yang sudah dipercaya browser-mu, domainnya cocok, dan belum kedaluwarsa, sertifikat itu diterima. Kalau ada yang tidak beres — domain salah, kedaluwarsa, atau ditandatangani pihak yang tidak dipercaya browser — kamu akan mendapat peringatan menakutkan “Koneksi Anda tidak privat”.

Gembok bukan lencana keamanan

Gembok hanya berarti koneksinya terenkripsi dan sertifikatnya valid untuk domain tersebut. Gembok tidak berarti situsnya jujur atau aman. Situs penipuan pun bisa mendapatkan sertifikat yang valid. Selalu baca nama domain yang sebenarnya, bukan cuma gemboknya.

Inilah sebabnya kamu jangan pernah menerobos peringatan sertifikat di situs tempat kamu memasukkan data sensitif. Peringatan itu berarti TLS tidak bisa memastikan kamu sedang berbicara dengan server yang asli.

Apa yang Dienkripsi — dan Apa yang Tidak

Ada satu detail yang sering mengejutkan banyak developer. TLS mengenkripsi isi lalu lintas HTTP-mu, tapi tidak semua informasi tentang koneksi itu disembunyikan.

Terenkripsi (tersembunyi dari pihak di tengah):

  • Path dan query string lengkap pada URL — misalnya /account/settings?tab=billing.
  • Semua header HTTP, termasuk cookie dan token autentikasi.
  • Body request dan response — data form, kata sandi, JSON, HTML halaman, gambar, semuanya.

Tidak terenkripsi (masih terlihat oleh jaringan/ISP-mu):

  • Nama domain yang kamu tuju (misalnya acy-partner.com). Secara historis ini bocor lewat sebagian handshake dan lewat proses pencarian DNS.
  • Alamat IP server, karena jaringan membutuhkannya untuk mengarahkan paketmu.
  • Ukuran dan waktu lalu lintas secara kasar.

Jadi pengamat di jaringanmu bisa melihat bahwa kamu mengunjungi acy-partner.com, tapi tidak halaman mana yang kamu lihat, apa yang kamu ketik, atau apa yang dikirim balik. Model berpikir yang berguna:

Terlihat oleh jaringan:  "Seseorang terhubung ke acy-partner.com"
Disembunyikan TLS:       halaman, path, header, cookie,
                         kata sandimu, dan isi respons

Salah kaprah yang umum

Orang sering menyangka “HTTPS berarti tidak ada yang tahu ke mana saya pergi.” Tidak persis begitu. Situs yang kamu kunjungi biasanya terlihat; detail apa yang kamu lakukan di sana itulah yang terlindungi. Perbedaan ini penting ketika kamu memikirkan soal privasi.

Kenapa Developer Perlu Peduli

Kalau kamu membangun apa pun untuk web, TLS sudah bukan pilihan lagi. Browser menandai halaman HTTP polos sebagai “Tidak Aman”. Banyak fitur browser modern (geolokasi, service worker, API clipboard, dan lainnya) langsung menolak berjalan di halaman non-HTTPS. Mesin pencari pun lebih menyukai situs yang aman.

Kabar baiknya, sebagai developer kamu jarang harus mengimplementasikan TLS sendiri. Server web, platform hosting, atau CDN yang menangani handshake dan enkripsi untukmu. Tugas utamamu adalah memperoleh dan memasang sertifikat yang valid serta menjaganya jangan sampai kedaluwarsa — dan sekarang sudah ada alat yang menerbitkan serta memperbarui sertifikat secara otomatis dan gratis.

Rangkuman

Mari kita satukan semua bagiannya:

  • HTTPS adalah HTTP biasa yang diletakkan di dalam terowongan terenkripsi. Terowongan itu disediakan oleh TLS (pengganti modern dari SSL).
  • TLS memberikan tiga hal sekaligus: enkripsi (privasi), integritas (deteksi manipulasi), dan autentikasi (bukti identitas).
  • Handshake adalah percakapan persiapan singkat: halo, server menyodorkan sertifikat-nya, kedua sisi menyepakati session key bersama, lalu semuanya dienkripsi.
  • Sertifikat adalah kartu identitas digital sebuah situs, diterbitkan dan ditandatangani oleh Certificate Authority yang tepercaya. Browser-mu memeriksa rantai kepercayaan sebelum mempercayai situs itu.
  • TLS menyembunyikan path, header, cookie, dan body, tapi domain dan IP yang kamu tuju umumnya tetap terlihat.

Begitu konsep ini sudah nyantol, pertanyaan praktis berikutnya muncul dengan sendirinya: bagaimana caranya benar-benar memasang sertifikat ke situsmu sendiri, ada jenis apa saja, dan bagaimana proses perpanjangannya? Itulah ranah sertifikat SSL dan hosting — topik yang bagus untuk kamu telusuri berikutnya, sekarang setelah kamu paham apa sebenarnya yang dikerjakan oleh sertifikat itu.

Tag:httpstlsenkripsisertifikatweb-fundamentalskeamanan
728 × 90Slot Iklan TersediaPasang iklan Anda di sini

Artikel Terkait

Lihat Semua Artikel

Artikel yang Mungkin Kamu Suka

Ilustrasi DOM sebagai pohon dari node HTML
Dasar-Dasar Web / Browser

Apa Itu DOM?

Penjelasan DOM untuk pemula: pohon HTML yang hidup di memori browser. Pahami apa itu DOM, bagaimana pohonnya dibentuk, dan kenapa ia begitu penting.

15 Sep 20267 menit baca
Ilustrasi berjudul Apa Itu Web Browser dengan code chip fetch ke render
Dasar-Dasar Web / Browser

Apa Itu Web Browser?

Penjelasan sederhana soal web browser: program yang mengambil berkas dari web lalu menyusunnya menjadi halaman yang kamu lihat, satu tab dan satu klik setiap saat.

15 Sep 20268 menit baca
Ilustrasi engine browser menjalankan skrip lewat event loop
Dasar-Dasar Web / Browser

Cara Browser Menangani JavaScript

Penjelasan ramah pemula soal bagaimana browser membaca, mengubah, dan menjalankan JavaScript, kenapa hanya punya satu jalur utama, dan bagaimana cara memuat skrip memengaruhi tampilan halaman.

15 Sep 20268 menit baca
Sampul biru gelap bertuliskan Cara Kerja Browser dengan chip kode parse ke layout ke paint
Dasar-Dasar Web / Browser

Cara Kerja Browser: Gambaran Umum

Penjelasan ramah pemula tentang apa yang dilakukan browser dari kamu mengetik URL sampai halaman muncul: jaringan, parsing, render tree, layout, paint, compositing, dan mesin JavaScript.

15 Sep 20268 menit baca
Sampul Critical Rendering Path dengan chip timer first paint
Dasar-Dasar Web / Browser

Critical Rendering Path

Ikuti langkah persis yang dilakukan browser untuk mengubah HTML, CSS, dan JavaScript menjadi piksel pertama yang terlihat, dan pahami kenapa posisi CSS dan JS menentukan secepat apa halaman muncul.

15 Sep 20267 menit baca
Sampul Dasar Keamanan Browser dengan chip kode berlambang perisai same-origin
Dasar-Dasar Web / Browser

Dasar Keamanan Browser: Cara Browser Diam-Diam Melindungimu

Panduan ramah untuk pemula tentang cara browser menjaga keamananmu: same-origin policy, sandboxing antar-tab, gembok HTTPS, mixed content, dan pengantar lembut soal kenapa input bisa berbahaya.

15 Sep 202610 menit baca