Hybrid cryptosystem pada HTTPS menggabungkan kriptografi simetris dan asimetris. Kriptografi asimetris digunakan untuk pertukaran kunci rahasia, sedangkan kriptografi simetris untuk komunikasi. Dengan menggabungkan kelebihan masing-masing sistem, HTTPS dapat menjamin otentikasi, kerahasiaan, dan integritas data secara aman.
Devsecops: membangun kemampuan soc di dalam devsecops pipeline - Dedi Dwianto
HTTPS Hybrid Kriptosistem Analisis
1. Analisis Hybrid Cryptosystem
pada Hypertext Transfer Protocol Secure (HTTPS)
Aris Munandar 1), Sigit Purnama2)
aahackcrypt@gmail.com1), sigitpurnama.cm@gmail.com2)
Sekolah Tinggi Sandi Negara
Jl. Raya H. Usa Desa Putat Nutug Ciseeng, Parung, Bogor 16330
Abstrak
Pada era ini peranan teknologi jaringan dan internet sangat besar. Dengan itu, perlunya suatu
keamanan yang dapat menjamin terhadap akses layanan di internet. Salah satu penunjang interaksi user
terhadap akses layanan di internet adalah Hypertext Transfer Protocol (HTTP). Namun pemanfaatan HTTP
terhadap suatu layanan di internet memungkinkan munculnya resiko serangan-serangan pada sistem HTTP
yang mengancam keamanan dan privasi penggunaan layanan di internet. Oleh karena itu digunakan layanan
Hypertext Transfer Protocol Secure (HTTPS) dengan memanfaatkan fungsi kriptografi untuk pengamanan dari
segi authentication user dan confidentiality data yang ditransmisikan. Pada paper ini akan dibahas analisis
hybrid cryptosystem (hybrid key) pada HTTPS yang merupakan perpaduan antara publickey cryptosystem dan
symmetric cryptosystem.
Kata kunci : Hypertext Transfer Protocol Secure (HTTPS), Hybrid cryptosystem.
1. Pendahuluan
Pada era ini khususnya dalam perkembangan cryptosystem (kriptografi simetris dan asimetris)
teknologi internet, berbagai kemudahan dapat atau yang dikenal sebagai hybrid cryptosystem
dirasakan oleh manusia. Pemanfaatan layanan di (perpaduan sistem kriptografi).
internet yang meluas untuk suatu kepraktisan dan
Hybrid cryptosystem atau hybrid key, secara
kecepatan dalam era teknologi informasi ini,
umumnya memiliki konsep keamanan terhadap
memungkinkan kerawanan terhadap keamanan
komunikasi client dan server dalam suatu jaringan
informasi dan privasi dapat terjadi. Maka perlunya
internet dengan menggunakan kriptografi simetris.
suatu keamanan yang dapat menjamin terhadap
Peranan kriptografi asimetris, hanya ditujukan dalam
akses layanan di internet, contohnya keamanan
share session key atau key exchange (pertukaran
bertransaksi. Salah satu penunjang interaksi user
kunci) dalam arti untuk menyepakati dan saling
terhadap akses layanan di internet adalah Hypertext
bertukar kunci rahasia yang akan dipakai saat
Transfer Protocol Secure (HTTPS).
berkomunikasi. Jadi pertukaran kunci rahasia
Pada dasanya HTTPS menggunakan peranan dilakukan dalam keadaan ter-enkripsi dengan
kriptografi dengan perpaduan terhadap suatu kriptografi asimetris namun saat komunikasi
cryptosystem baik itu symetric maupun asymetric menggunakan kriptografi simetris.
2. 2. Hypertext Transfer Protocol Secure (HTTPS) Pendekatan HTTPS dapat dikatakan sederhana,
karena saat client membuat koneksi ke server,
Berdasarkan RFC 2660, HTTPS (Hypertext
melakukan negosiasi koneksi SSL, kemudian
Transfer Protocol Secure) adalah protokol yang
mengirim HTTP tersebut melalui aplikasi SSL.
berorientasi terhadap keamanan message (pesan)
dalam suatu komunikasi. HTTPS dirancang agar
dapat berdampingan dengan model pesan HTTP dan
mudah diintergrasikan dengan HTTP dalam suatu
jaringan.
HTTPS menyediakan layanan keamanan
yang dapat digunakan dengan bebas untuk
transaction confidentiality (kerahasiaan
bertransaksi), authenticity/integrity and non-
repudiability of origin (otentikasi dan keaslian
maupun anti penyangkalan) [1].
Dalam impementasinya, HTTPS
digunakan sebagai layanan keamanan pada suatu
Gambar 2 Koneksi pada HTTPS
website yang memiliki data atau informasi yang
bersifat rahasia baik yang dimiliki user maupun
Dari gambar diatas diketahui bahwa
admin dari website tersebut. Suatu website yang
protokol SSL beroperasi antara transport layer
menggunakan layanan HTTPS, dapat diketahui
dan aplication layer.
dengan adanya indikator ikon gembok pada browser,
dan dapat terlihat pada address bar di browser 2.1 Protokol Secure Socket Layer (SSL)
dengan URL “https://”.
Protokol SSL adalah sebuah protokol
HTTPS merupakan protokol HTTP yang
keamanan yang digunakan untuk menjaga
menggunakan Secure Socket Layer (SSL) yang
pengiriman data web server dan pengguna situs
merupakan sublayer dibawah HTTP aplication
website tersebut, yang secara de facto saat ini-
layer.
merupakan standar untuk mengamankan
komunikasi dan transaksi di Internet. SSL sudah
diterapkan di semua browser dan Web server.
Oleh karena itu, SSL memainkan peran utama
dalam e-commerce dan kegiatan e-bisnis pada
website [2].
Dalam perkembangannya, suatu protokol
SSL belum ditunjukan terhadap UDP (User
Datagram Protocol) namun masih berupa
protokol kriptografi yang menawarkan enkripsi,
otentikasi dan integritas kontrol untuk TCP.
Gambar 1 HTTPS dalam Model TCP/IP
3. Dalam arti SSL merupakan protokol connection- 3.1 Peranan Hybrid Key Sebagai
oriented dan hanya bekerja dengan koneksi TCP Pengamanan Key Exchange dan
yang berorientasi sama (bersifat connection- Komunikasi Client-Server.
oriented), tidak dengan UDP yang bersifat
Key exchange (Pertukaran kunci)
connectionless [3].
adalah suatu metode dalam kriptografi
SSL menggunakan peranan sistem
dimana kunci kriptografi dipertukarkan
kriptografi dalam penerapannya. Sistem
antara pengguna yang
kriptografi ini digunakan dalam suatu key
memungkinkan penggunaan suatu
exchange (pertukaran kunci) maupun sesi
algoritma kriptografi.
komunikasi antara client dan server. Peranan
Jika Alice dan Bob ingin bertukar
sistem kriptografi yang digunakan SSL,
pesan yang terenkripsi, masing-masing
khususnya dalam sesi key exchange adalah
harus dilengkapi kunci untuk menyandikan
Hybrid Cryptosystem.
pesan yang akan dikirim dan mendekripsi
pesan yang diterima [5]. Dalam
3. Hybrid Cryptosystem
implementasinya ada berbagai macam
Cryptosystem dibagi menjadi symmetric
teknik key exchange, namun dalam paper
cryptosystem dan public key cryptosystem
ini lebih dikhususkan terhadap key
tergantung pada kunci yang digunakan.
exchange dengan sistem kriptografi simetris
Symmetric crytosystem efisien dalam proses
dan key exchange dengan sistem kriptografi
enkripsi dekripsi namun memiliki kelemahan
asimetris.
pada proses pendistribusian kunci sedangkan
Dibawah ini merupakan suatu
public key cryptosystem kurang efisien pada saat
proses masing–masing key exchange
proses enkripsi-dekripsi dikarenakan
dengan simetris dan asimetris. Namun
membutuhkan waktu yang lebih lama
diasumsikan key exchange ini melalui
dibandingkan pada sysmmetric cryptosystem.
jaringan/saluran terbuka bukan suatu
Namun demikian, public key secure channel dan tidak melibatkan pihak
cryptosystem memiliki keuntugan dimana tidak ketiga (trent).
diperlukan proses distribusi kunci dikarenakan
kunci yang digunakan untuk proses enkripsi-
dekripsi ditempatkan pada public directory, oleh
karena itu pada saat ini hybrid cryptosystem
digunakan secara luas dikarenakan
menggabungkan keuntungan yang terdapat
kepada kedua cryptosystem tersebut [4].
Gambar 4 Key exchange dengan sistem
kriptografi simetris
4. Dibawah ini merupakan penjelasan macam kunci, yaitu public dan private.
dari gambar diatas: Maka kerahasiaan kunci yang digunakan
1. Alice ingin berkomunikasi secara rahasia dalam proses komunikasi dapat terjamin
dengan Bob keamanannya.
2. Alice mengirim secret key kepada Bob
Secara analoginya Alice dan Bob
3. Bob menerima secret key dari Alice dan masing-masing harus sudah mempunyai
masing-masing pihak telah memiliki secret
kunci public dan private. Bila Alice ingin
key yang sama.
mengirim pesan ke Bob, maka Alice harus
4. Alice dan Bob dapat berkomunikasi secara meng-enkripsi pesannya dengan public key
rahasia dengan menggunakan kunci yang milik Bob. Untuk membaca pesan Alice,
bersifat sama, baik untuk mengenkripsi Bob bisa men-dekripsinya dengan private
atau dekripsi suatu pesan key Bob sendiri.
Key exchange menggunakan sistem
kriptografi simetris memiliki keunggulan Jadi, yang perlu diperhatikan bahwa
dari segi kecepatan. Hal tersebut karena kunci untuk enkripsi dan dekripsi selalu
sistem kriptografi simetris tidak berlawanan. Lawan dari public key adalah
membutuhkan komputasi yang rumit dan private key, lawan private key adalah public
kunci yang digunakan untuk men-enkripsi key yang bersifat umum [6].
dan dekripsi bersifat sama.
Namun sistem ini memiliki
kelemahan terhadap kesulitan dalam
melakukan pertukaran kunci. Secara
analoginya, bila Alice ingin berkomunikasi
dengan Bob menggunakan kriptografi
simetris. Sebelum bisa berhubungan,
keduanya harus menyepakati bersama kunci
yang akan dipakai. Bagaimana cara
menegosiasikan kunci tersebut? Apakah
dikirim melalui sms, email atau telepon?
Sedangkan diketahui bahwa sms, email dan
telepon rentan terhadap aktifitas snifing Gambar 5 Key exchange dengan
(penyadapan). sistem kriptografi Asimetris
Permasalahan mengenai
kerahasiaan kunci dari simetric
Namun sistem kunci asimetris
cryptosystem (sistem kunci simetris)
teryata memiliki kelemahan terhadap man
tersebut maka munculah suatu Public Key
in the midle attack. Secara umum man in
Cryptosystem (sistem kunci asimetris).
the middle attack merupakan suatu
Secara umumnya dengan penggunaan dua
serangan yang bermain ditengah-tengah
5. suatu komunikasi antara dua belah pihak 6. Sebelum tiba di Bob, pesan Alice di-
atau lebih yang berpura-berpura sebagai dekripsi oleh Aries dengan kunci private
pihak yang terlibat dalam komunikasi Aries (karena sebelumnya pesan di-enkripsi
tersebut. dengan kunci publik Aries).
7. Agar Bob tidak curiga, pesan yang telah di-
dekripsi itu, di-enkripsi lagi dengan kunci
publik Bob yang sebelumnya sudah dicatat
oleh Aries, kemudian setelah itu pesan
tersebut dikirinmkan lagi ke Bob.
8. Bob men-dekripsi pesan tersebut dengan
kunci private-nya, dan pesan tersebut dapat
dibaca oleh Bob. Bob tidak menyadari
bahwa telah terjadi kebocoran terhadap
pesan tersebut.
Dalam skenario tersebut, Aries telah
sukses berperan sebagai Man-in-the-Middle yang
menyadap pesan dari Alice ke Bob tanpa disadari
oleh keduanya.
Gambar 6 Man In The Middle Attack
Dalam HTTPS komunikasi yang
Secara analoginya bila Alice ingin
terjadi semua dalam keadaan ter-enkripsi. Seperti
mengirim pesan ke Bob. Aries sebagai orang
yang telah dijelaskan sebelumnya, masing-
ke-3 ingin mendengarkan pesan dari Alice ke
masing sistem kriptografi memiliki keunggulan
Bob. Berikut penjelasan gambar mengenai man
dan kelemahan. Keunggulan sistem kriptografi
in the middle attack diatas:
simetris adalah kecepatannya yang tinggi namun
1. Sebelum bisa mengirim pesan rahasia. memiliki kerawanan dalam segi pendistribusian
Alice meminta Bob untuk mengirimkan kuncinya. Sedangkan keunggulan kriptografi
kunci publiknya. asimetris adalah kemudahan dalam pertukaran
2. Bob mengirim kunci publiknya ke Alice. kunci, namun dalam segi kecepatannya masih
3. Sebelum tiba di Alice, kunci publik Bob kurang bila dibandingkan dengan sistem
dicatat Aries dan diganti dengan kunci kriptografi simetris disamping itu, sistem
publiknya sendiri, lalu diteruskan ke Alice. kriptografi asimetris memerlukan banyak
4. Alice tidak menyadari, mengira kunci sumberdaya maupun biaya yang besar.
publik yang diterimanya adalah kunci
Oleh karena itu, HTTPS memadukan
publik Bob, namun sebenarnya kunci
kedua jenis cryptosystem (sistem kriptografi),
publik itu milik Aries.
yang dikenal dengan istilah hybrid key atau
5. Alice meng-enkripsi pesannya dengan
hybrid cryptosystem dan menggunakan peranan
kunci publik Aries (mengira kunci publik
pihak ke-3. Secara analoginya, Alice ingin
Bob), dan mengirimkannya ke Bob.
6. berkomunikasi dengan Bob dalam keadaan pesan terhadap server atau mengakses suatu website untuk
terenkripsi, namun diasumsikan tidak layanan yang bersifat finansial tentunya memerlukan
menggunakan peranan pihak ke-3 dan kedua keamanan dan perlu memastikan bahwa website
belah pihak telah memiliki public key dan private yang sedang diakses adalah benar sebagai pemilik
key masing-masing maupun public key setiap yang sah, bukan suatu teknik phising atau sejenis
pihak yang tergabung dalam suatu komunikasi. fake website (website palsu).
Contohnya, Alice telah memiliki public key Bob
Dari gambar 7 mengenai key exchange
maupun sebaliknya, dalam prosesnya:
dengan hybrid key, adanya penjelasan bahwa
1. Bila Alice ingin berkomunikasi dengan diasumsikan tidak melibatkan pihak ketiga atau
Bob, sebelumnya Alice telah memiliki pihak terpercaya, namun dalam penerapan terhadap
public key Bob suatu proses HTTPS di jaringan internet,
2. Alice mengirimkan pesan berisi secret key keterlibatan pihak ketiga sangat diperlukan. Hal ini
(kunci rahasia) yang akan digunakan dalam karena, harus adanya suatu pihak yang dapat
proses komunikasi dengan dienkripsi menjamin terhadap keaslian suatu web-server dalam
terlebih dahulu dengan public key Bob arti bahwa website yang sedang diakses oleh client
3. Bob mendapatkan secret key tersebut merupakan website yang sah atau dalam kriptografi
dengan cara mendekripsi pesan dikenal dengan istilah authentication (otentikasi)
menggunakan private key miliknya baik terhadap entity authentication (identitas dari
4. Alice dan Bob telah sama-sama memiliki pihak yang berkomunikasi), data, public key dll.
secret key yang akan digunakan dalam
Pihak ketiga/ pihak terpercaya, dalam kasus
proses komunikasi rahasia
ini adalah certification authority (CA), memiliki
tugas, diantaranya:
“Mengeluarkan certificate (sertifikat),
menyediakan dan menjamin otentikasi public key
suatu pihak. Dalam sistem berbasis sertifikasi hal ini
termasuk mengikat public key pada nama-nama yang
berlainan melalui sertifikat yang telah disahkan,
mengelola nomor-nomor seri sertifikat dan
penarikan/pembatalan sertifikat” (Jelajah Kriptologi
hal 214).
Mekanisme Kerja perananan hybrid key dan
keterlibatan certification authority (CA) dalam
Gambar 7 Key exchange dengan hybrid key
penerapannya terhadap proses HTTPS di era
teknologi internet ini, dijelaskan sebagai berikut: [8]
Dalam penerapannya di HTTPS, hybrid key
digunakan pada keamanan terhadap key exchange 1. Client mengakses layanan finansial dari
dan komunikasi client-server. Client atau dapat juga suatu website, maka client menuliskan
sebagai web browser saat melakukan koneksi
7. alamat di address bar dengan awalan URL: yang dikirim oleh server selama sesi
“https://” komunikasi akan dienkripsi.
2. Client mengirimkan perintah 10. Server mengirim perintah FINISHED,
CLIENT_HELLO ke server Perintah ini termasuk digest untuk
3. Server merespon dengan mengirim perintah menvalidasi dari semua perintah handshake
SERVER_HELLO SSL yang mengalir antara server dan
4. Server mengirim perintah CERTIFICATE klien.
Perintah ini termasuk sertifikat server dan 11. Pada tahap terakhir ini, klien dapat
rantai sertifikat sebagai opsional dimulai mengirim secret key (kunci rahasia
dengan sertifikat dari certification authority simetris) yang telah disepakati ke server
(CA) yang mengeluarkan sertifikat server setelah menyandikannya dengan public key
yang berisi data public key server,data-data (kunci public) yang diterima dalam
server dll. sertifikat server SSL. secret key yang
Catatan: Daftar CA yang dipercaya telah dienkripsi hanya dapat didekripsi dengan
terdaftar di dalam web browser. Jika menggunakan private key server. Jadi,
sertifikat digital ditandatangi oleh salah hanya server yang dapat mendekripsi
satu CA di dalam daftar tersebut, maka pesan.
client dapat memverifikasi public key
server.
5. Server mengirim perintah
SERVER_DONE yang mengindikasi
bahwa server telah menyelesaikan tahap
handshake.
6. CERTIFICATE_VERIFY, client
menginformasikan server bahwa sertifikat
server telah diverifikasi mulai dari identitas
server, masa berlaku public key-nya, tanda
tangan/ pengesahan dari CA, dll.
7. Client mengirimkan perintah
CHANGE_CIPHER_SPEC, adanya proses
menyepakati Cipher (algoritma enkripsi).
8. Client mengirimkan perintah FINISHED,
Perintah ini dikirim untuk memvalidasi Gambar 8 Penerapan Hybrid key pada
bahwa tidak ada perintah yang dikirim Proses HTTPS
sebelumnya.
9. Server mengirim perintah Dari proses diatas saat ini client dapat
CHANGE_CIPHER_SPEC. Perintah ini menggunakan layanan finansial yang disediakan
menunjukkan bahwa semua data berikutnya suatu website dalam proses transaksi yang ter-
enkripsi dengan tidak meninggalkan faktor
8. kecepatan. Hal tersebut dikarenakan, dalam proses [4] Soohyun, et al. An Efficient Hybrid
transaksi/komunikasi menggunakan sistem Cryptosystem Providing Authentication for
kriptografi simetris dan asimetris hanya pada sesi Sender’s Identity. Sungkyunkwan University
key exchange (pertukaran kunci) secret key (kunci Korea, 2003.
rahasia/simetris) tersebut. [5] http://en.wikipedia.org/wiki/Key_exchange
diakses tanggal 6 April pukul 20.15 WIB.
[6] Menezes, Alfred J., Oorschot Paul C.,
4. Kesimpulan
Vanstone Scott A.,Handbook of Applied
Hybrid cryptosystem pada HTTPS khususnya Cryptography, CRC Press, 1996.
terhadap interaksi antara client / web browser dan [8] EventHelix.com, SSL Tutor.pdf diakses
server digunakan sebagai solusi keamanan yang tanggal 10 April pukul 07.30 WIB.
menggabungkan keuntungan yang terdapat kepada
kedua cryptosystem antara symmetric cryptosystem
dan publickey cryptosystem. Public key dan private
key pada publickey cryptosystem hanya digunakan
untuk proses handshaking dan key exchange. Hal ini
dilakukan untuk dua alasan:
1. Public key cryptosystem berbasis komputasi
sangat mahal sehingga penggunaannya harus
diminimalkan.
2. Mekanisme kunci rahasia yang dibutuhkan
untuk komunikasi client server.
Sedangkan symmetric cryptosystem
digunakan sebagai keamanan saat proses
komunikasi antara client dan server berlangsung
setelah proses handshaking dan key exchange
selesai.
DAFTAR PUSTAKA
[1] RFC 2660 Tentang Hypertext Transfer
Protocol Secure (HTTPS), 1999.
[2] www.entrust.com. Understanding Digital
Certificates & Secure Sockets Layer. A
Fundamental Requirement for Internet
Transactions, May 2007.
[3] Schmeh, Klaus. Cryptography and Public
Key Infrastructure on the Internet, Willey &
Sons, inc 2003.