HTTP dan HTTPS adalah kode bahasa protokol yang sering kita jumpai bagi pengguna internet, karena di setiap link yang mengacu pada sebuah website pasti menggukannya. Kode ini juga sering kita jumpai ketika hendak melakukan browsing atau membuka halaman website tertentu. Kita di minta untuk mengetik kode tersebut di awalnya dan diakhiri dengan titik dua (:) dan dua garis miring (//) ketika kita melakukan browsing halaman website yang diinginkan.
HTTP disebut protokol Stateless karena setiap perintah dijalankan secara independen, tanpa pengetahuan tentang perintah yang datang sebelumnya. Ini adalah alasan utama yang sulit untuk menerapkan situs Website yang bereaksi secara cerdas untuk input pengguna.
Sesi http
Sebuah sesi HTTP adalah urutan transaksi permintaan dan respons jaringan dengan menggunakan protokol HTTP. Sebuah klien HTTP akan memulai sebuah permintaan. Klien tersebut akan membuka sebuah koneksiTransmission Control Protocol (TCP) ke sebuah port tertentu yang terdapat dalam sebuah host (umumnya port 80 atau 8080). Server yang mendengarkan pada port 80 tersebut akan menunggu pesan permintaan klien. Saat menerima permintaan, server akan mengirimkan kembali baris status, seperti “HTTP/1.1 200 OK”, dan pesan yang hendak diminta, pesan kesalahan atau informasi lainnya.
2. HyperText Transfer Protocol Secure (HTTPS)
HyperText Transfer Protocol Secure (HTTPS) memiliki pengertian yang sama dengan HTTP, hanya saja HTTPS memiliki kelebihan fungsi di bidang keamanan (secure). HTTPS di temukan oleh Netscape Communication Corporation. HTTPS menggunakan Secure Socket Layer (SSL) atau Transport Layer Security(TLS) sebagai sublayer dibawah HTTP aplikasi layer yang biasa. HTTP di enkripsi dan deskripsi dari halaman yang di minta oleh pengguna dan halaman yang di kembalikan oleh web server. Kedua protokol tersebut memberikan perlindungan yang memadai dari serangan eavesdroppers, dan man in the middle attacks. Pada umumnya port yang digunakan HTTPS adalah port 443. Tingkat keamanan tergantung pada ketepatan dalam mengimplementasikan pada browser web dan perangkat lunak server dan didukung oleh algorithma penyandian yang aktual. Oleh karena itu, pada halaman web digunakan HTTPS, dan URL yang digunakan dimulai dengan ‘https://’.
Https dapat menjamin keamanan dalam Autentikasi server yaitumemungkinkan peramban dan pengguna memiliki kepercayaan bahwa mereka sedang berbicara kepada server aplikasi sesungguhnya.Https juga mampu dalam menjaga kerahasiaan data dan Integritas data.
B. Perbedaan antara HTTP dengan HTTPS
Beberapa perbedaan utama antara http dan https, dimulai dengan port default, yang 80 untuk http dan 443 untuk https. Https bekerja dengan transmisi interaksi yang normal http melalui sistem terenkripsi, sehingga dalam teori, informasi tidak dapat diakses oleh pihak selain klien dan server akhir. Ada dua jenis umum lapisan enkripsi: Transport Layer Security (TLS) dan Secure Socket Layer (SSL), yang keduanya menyandikan catatan data yang dipertukarkan.
C. Cara Kerja HTTP dan HTTPS
Https bukan protokol yang terpisah, tetapi mengacu pada kombinasi dari interaksi HTTP normal melalui Socket Layer terenkripsi SSL (Secure) atau Transport Layer Security (TLS) mekanisme transportasi. Hal ini menjamin perlindungan yang wajar dari penyadap dan (asalkan dilaksanakan dengan benar dan otoritas sertifikasi tingkat atas melakukan pekerjaan mereka dengan baik) serangan.
Port default TCP https: URL adalah 443 (untuk HTTP tanpa jaminan, defaultnya adalah 80). Untuk mempersiapkan web-server untuk koneksi https penerima harus sebagai administrator dan membuat sertifikat kunci publik untuk server web. Sertifikat ini dapat dibuat untuk server berbasis Linux dengan alat seperti Open SSL yang ssl atau gensslcert SuSE. Sertifikat ini harus ditandatangani oleh otoritas sertifikat satu bentuk atau lain, yang menyatakan bahwa pemegang sertifikat adalah siapa yang mereka ajukan. Web browser pada umumnya didistribusikan dengan penandatanganan sertifikat otoritas sertifikat utama, sehingga mereka dapat memverifikasi sertifikat yang ditandatangani oleh mereka.
Bila menggunakan koneksi https, server merespon koneksi awal dengan menawarkan daftar metode enkripsi mendukung. Sebagai tanggapan, klien memilih metode sambungan, dan klien dan sertifikat server pertukaran untuk otentikasi identitas mereka. Setelah ini dilakukan, kedua belah pihak bertukar informasi terenkripsi setelah memastikan bahwa kedua menggunakan tombol yang sama, dan koneksi ditutup. Untuk host koneksi https, server harus memiliki sertifikat kunci publik, yang embeds informasi kunci dengan verifikasi identitas pemilik kunci itu. Sertifikat Kebanyakan diverifikasi oleh pihak ketiga sehingga klien yakin bahwa kuncinya adalah aman.
D. Keuntungan mengubah HTTP menjadi HTTPS?
Untuk mengamankan komunikasi antara browser dengan web server. Mengapa? Ilustrasi singkat berikut akan menjawabnya: Ketika anda mengakses sebuah web server yang menggunakan protokol HTTPS, halaman yang dikirimkan pada anda telah dienkripsi dulu oleh protokol ini. Dan semua informasi yang anda kirimkan ke server (registrasi, identitas, nomor pin, transfer pembayaran) akan dienkripsi juga sehingga tidak ada yg bisa mencuri dengar (eavesdropping) data-data anda ketika proses transaksi sedang berlangsung. Maka transaksi data anda menjadi lebih safe. Protokol HTTPS bisa anda temukan pada situs-situs perbankan, ecommerce, form registrasi, dsb. Karena di area bisnis inilah rentan sekali terjadi eavesdropping oleh pihak ketiga. Untuk itulah anda membutuhkan sertifikat SSL.
Beberapa variasi kemungkinan halaman dan form URL yang perlu diperhatikan adalah:
- Halaman form di http://prohighschool.blogspot.com/formlogin.html dan tag form login dalam bentuk <form action=http://prohighschool.blogspot.com/dologin.php>. Ini benar-benar tidak aman karena tidak ada enkripsi sama sekali.
- Halaman di http://prohighschool.blogspot.com/formlogin.html , tag form login dalam bentuk <form action=https:/prohighschool.blogspot.com/dologin.php . Ini pun tetap tidak aman karena formlogin bisa diubah dengan mitm attack.
- Halaman di https://prohighschool.bogspot.com/formlogin.html , tag form login dalam bentuk <form action=http://prohighschool.blogspot.com/dologin.php>. Form login tidak bisa diserang, namun password dikirimkan tanpa terenkripsi. Sama saja bohong.
- Halaman di https://prohighschool.blogspot.com/formlogin.html, tag form login dalam bentuk <form action=https://prohighschool.blogspot.com/dologin.php>. Ini baru aman, form login tidak bisa diserang, dan password terenkrip.
Page Url Form Url Status
HTTP HTTP Not secure, nothing encrypted.
HTTP HTTPS Not secure, vulnerable to mitm attack.
HTTPS HTTP Not secure, form data not encrypted.
HTTPS HTTPS Maximum Security
itulah pengertian, fungsi, dan perbedaan HTTP dengan HTTPS, sekian terimakasih..