TLS (Transport Layer Security) dan SSH (Secure Shell) adalah protokol dunia nyata yang memanfaatkan saluran dua arah untuk komunikasi yang aman. Berikut cara mereka menggunakan saluran dua arah:
TLS (Keamanan Lapisan Transportasi)
TLS adalah protokol kriptografi yang digunakan untuk komunikasi aman melalui internet. Ia menggunakan saluran dua arah untuk memastikan kerahasiaan dan integritas data yang dipertukarkan antara klien dan server.
1. Jabat Tangan: Jabat tangan TLS adalah proses di mana klien dan server membuat sambungan aman. Selama proses ini, mereka bertukar pesan yang menyertakan nomor versi, nomor acak, dan kunci kriptografi. Jabat tangan ini merupakan proses dua arah, dimana kedua belah pihak mengirim dan menerima data.
2. Enkripsi Data: Setelah jabat tangan selesai, klien dan server menggunakan kunci kriptografi yang telah ditetapkan untuk mengenkripsi dan mendekripsi data. Proses enkripsi dan dekripsi ini juga bersifat dua arah, karena kedua belah pihak mengirim dan menerima data terenkripsi.
3. Pertukaran Kunci: TLS menggunakan protokol pertukaran kunci untuk bertukar kunci kriptografi dengan aman antara klien dan server. Pertukaran kunci ini juga bersifat dua arah, karena kedua belah pihak mengirim dan menerima kunci.
SSH (Shell Aman)
SSH adalah protokol akses jarak jauh aman yang memungkinkan pengguna mengakses dan mengelola server jarak jauh dengan aman. Ia menggunakan saluran dua arah untuk komunikasi yang aman antara klien dan server.
1. Koneksi Awal: Klien SSH memulai koneksi ke server dengan mengirimkan permintaan untuk membuat koneksi aman. Server merespons dengan pesan yang menyertakan kunci publiknya dan informasi lainnya. Koneksi awal ini merupakan proses dua arah, dimana kedua belah pihak mengirim dan menerima data.
2. Otentikasi: Setelah koneksi awal dibuat, klien dan server saling mengautentikasi satu sama lain menggunakan kriptografi kunci publik. Proses autentikasi ini juga bersifat dua arah, karena kedua belah pihak mengirim dan menerima pesan autentikasi.
3. Enkripsi Data: Setelah klien dan server diautentikasi, mereka menggunakan kunci rahasia bersama untuk mengenkripsi dan mendekripsi data. Proses enkripsi dan dekripsi ini juga bersifat dua arah, karena kedua belah pihak mengirim dan menerima data terenkripsi.
Baik di TLS dan SSH, saluran dua arah digunakan untuk memastikan kerahasiaan dan integritas data yang dipertukarkan antara klien dan server. Protokol ini menggunakan saluran dua arah untuk membuat koneksi aman, bertukar kunci kriptografi, dan mengenkripsi dan mendekripsi data.
Kutipan:[1] https://tosc.iacr.org/index.php/ToSC/article/view/602/543
[2] https://www.scaler.com/topics/golang/direction-channel-in-golang/
[3] https://blog.devtrovert.com/p/go-channels-explained-more-than-just
[4] https://www.naukri.com/code360/library/direction-channel-in-golang
[5] https://eprint.iacr.org/2017/161.pdf