Transport Layer Security (TLS) dan Secure Shell (SSH) keduanya protokol kriptografi yang digunakan untuk mengamankan komunikasi melalui jaringan, dan keduanya menggunakan saluran dua arah untuk memfasilitasi pertukaran data yang aman dan efisien. Penggunaan saluran dua arah memungkinkan komunikasi dua arah secara simultan dengan kerahasiaan, integritas, dan otentikasi. Di bawah ini adalah penjelasan terperinci tentang bagaimana TLS dan SSH menggunakan saluran dua arah dalam operasinya.
saluran dua arah di TLS
TLS terutama dirancang untuk mengamankan komunikasi antara aplikasi server klien melalui jaringan, seperti browser web yang terhubung ke server web. Protokol menetapkan saluran yang aman dan terenkripsi yang mendukung transmisi data dua arah.
- Ketika koneksi TLS dimulai, klien terhubung ke server yang diaktifkan TLS dan mengirim pesan "Klien Hello" yang mencakup algoritma enkripsi yang didukung, versi TLS, dan opsi komunikasi lainnya.
- Server merespons dengan pesan "server halo" yang memilih metode enkripsi yang kompatibel dan kemudian mengirimkan sertifikat digitalnya, yang berisi kunci publik server, yang dikeluarkan oleh Otoritas Sertifikat Tepercaya (CA).
- Klien memverifikasi keaslian sertifikat digital ini untuk memastikan server sah.
- Kedua belah pihak kemudian melakukan jabat tangan untuk membuat kunci sesi rahasia bersama. Ini umumnya dilakukan dengan menggunakan algoritma kriptografi asimetris seperti varian RSA atau diffie-hellman (fana DH fana, kurva elips DH, dll.). Jabat tangan memastikan bahwa kedua belah pihak menyetujui kunci sesi yang unik untuk sesi komunikasi itu.
- Setelah kunci sesi ditetapkan, TLS menggunakan algoritma enkripsi simetris untuk sisa sesi, memungkinkan enkripsi dan dekripsi data yang cepat dan aman.
- Saluran dua arah yang dibentuk oleh TLS memungkinkan data terenkripsi mengalir dengan aman baik dari klien ke server dan dari server ke klien.
- TLS juga memastikan integritas data menggunakan kode otentikasi pesan (Mac) sehingga setiap gangguan dengan data selama transmisi terdeteksi.
- Saluran dua arah ini memungkinkan penelusuran web interaktif, pengiriman formulir aman, dan aplikasi lain yang mengharuskan kedua belah pihak untuk mengirim dan menerima data terenkripsi secara bersamaan.
Singkatnya, TLS membuat saluran terenkripsi dua arah antara klien dan server di mana keduanya dapat secara bersamaan mengirim dan menerima data sambil menjaga kerahasiaan, integritas, dan otentikasi. Proses jabat tangan sebelum pertukaran data sangat penting untuk membuat kunci bersama yang aman dan memvalidasi identitas.
saluran dua arah di ssh
SSH adalah protokol yang dirancang terutama untuk memberikan login jarak jauh yang aman dan kemampuan manajemen melalui jaringan tanpa jaminan, tetapi juga mendukung berbagai layanan jaringan yang aman di luar akses shell yang adil, karena dukungan saluran dua arah yang fleksibel.
- SSH beroperasi pada model klien-server di mana klien memulai koneksi dan mengotentikasi dirinya ke server menggunakan kata sandi, kunci publik/pribadi, atau mekanisme otentikasi lainnya.
- Setelah diautentikasi, SSH menetapkan saluran komunikasi terenkripsi yang aman yang mendukung aliran data dua arah simultan.
- Secara internal, multiplex ssh beberapa saluran logis pada satu koneksi SSH. Saluran ini dapat membawa sesi terminal interaktif, transfer file (SCP/SFTP), dan Penerusan Port Jaringan (Tunneling) secara bersamaan.
- Sifat dua arah dari SSH berarti data dapat mengalir secara bebas di kedua arah pada saat yang sama  dari klien ke server dan server ke klien. Ini sangat penting untuk sesi interaktif real-time seperti eksekusi perintah jarak jauh, di mana perintah dikirim dari klien dan output dikembalikan dari server.
- SSH juga mendukung tunneling aman yang mengarahkan lalu lintas jaringan lainnya, seperti meneruskan port lokal ke layanan jarak jauh atau sebaliknya. Fitur tunneling ini mengeksploitasi saluran dua arah dengan merangkum lalu lintas antara kedua ujungnya di dalam koneksi SSH terenkripsi.
- Misalnya, penerusan port lokal memungkinkan klien untuk terhubung ke port lokal yang diteruskan melalui koneksi SSH ke port server jarak jauh, dan penerusan port jarak jauh memungkinkan server untuk mengekspos port pada jaringan klien. Kedua jenis penerusan adalah dua arah, memungkinkan data mengalir dengan aman di kedua ujung terowongan SSH.
- Multiplexing beberapa saluran pada koneksi SSH tunggal meningkatkan fleksibilitas, memungkinkan transfer file simultan, sesi terminal, dan port -forwarding dalam satu terowongan terenkripsi.
fitur bersama dan perbedaan dalam dua arah TLS dan SSH
Meskipun baik TLS dan SSH membentuk saluran dua arah yang memungkinkan komunikasi dua arah yang aman, tujuan dan strukturnya berbeda:
- TLS biasanya mengamankan satu koneksi lapisan aplikasi, mis., Lalu lintas web HTTPS, di mana klien dan server pertukaran pesan dienkripsi bolak-balik dalam satu saluran.
- SSH menciptakan lapisan transportasi yang aman yang mendukung beberapa saluran multiplexed dalam satu koneksi, memenuhi berbagai kasus penggunaan yang lebih luas termasuk login jarak jauh, transfer file, dan terowongan.
- Jabat tangan TLS berfokus pada memverifikasi identitas server (dan secara opsional identitas klien), menyetujui parameter enkripsi, dan menghasilkan kunci sesi, menekankan kerahasiaan dan integritas yang aman untuk data aplikasi.
- Jabat tangan SSH juga mencakup otentikasi klien dan menetapkan saluran yang aman tetapi melangkah lebih jauh dengan mendukung saluran multiplexing dan sesi interaktif.
- Kedua protokol menggunakan mekanisme pertukaran kunci asimetris untuk menetapkan kunci sesi bersama untuk enkripsi simetris tetapi SSH memungkinkan metode otentikasi yang lebih beragam (kata sandi, kunci publik, sertifikat).
- Keduanya mendukung kontrol aliran dua arah, penanganan kesalahan, dan pemeriksaan integritas memastikan komunikasi yang andal di bawah berbagai kondisi jaringan.
Operasi teknis saluran dua arah di TLS
- Saluran TLS beroperasi di atas lapisan transportasi yang andal (biasanya TCP) yang menyediakan aliran byte yang tidak terurut.
- Setelah jabat tangan menetapkan parameter kriptografi dan kunci sesi, enkripsi simetris seperti AES atau Chacha20 enkripsi semua pesan yang dikirimkan.
- Komunikasi dua arah dicapai oleh klien yang mengenkripsi data keluar dan server yang mendekripsi data yang masuk, dan sebaliknya.
- Setiap catatan TLS (unit pertukaran data) adalah integritas yang dilindungi dan dienkripsi, menjaga kerahasiaan di kedua arah.
- Protokol menggunakan nomor urutan dan Mac pada setiap catatan untuk mencegah replay dan gangguan.
- Koneksi TCP yang mendasari memungkinkan kontrol aliran yang memungkinkan pesan untuk dikirim dan diterima secara bersamaan tanpa kerugian.
- TLS 1.3 Peningkatan efisiensi dan keamanan dengan lebih sedikit perjalanan bundar jabat tangan dan pertukaran utama kerahasiaan wajib ke depan, meningkatkan pendirian saluran dua arah yang aman.
Operasi teknis saluran dua arah di SSH
- SSH mendekonstruksi koneksi aman ke beberapa saluran logis multiplexed pada satu koneksi TCP terenkripsi.
- Setiap saluran memiliki pengidentifikasi independen dan jendela kontrol aliran yang dikelola oleh protokol SSH.
- SSH menggunakan protokol lapisan transport untuk membuat terowongan terenkripsi melalui jabat tangan SSH yang melibatkan algoritma pertukaran utama seperti diffie-hellman.
- Protokol koneksi SSH berjalan di atas terowongan ini dan mengelola pembukaan, penggunaan, dan penutupan saluran.
- Transfer data dua arah terjadi pada setiap saluran secara terpisah, mendukung komunikasi dupleks penuh untuk perintah, data file, atau port yang diteruskan.
- SSH secara dinamis membuat dan menutup saluran dalam koneksi yang sama berdasarkan kebutuhan pengguna, memungkinkan sesi shell interaktif, SCP, SFTP, dan port forwarding untuk hidup berdampingan.
- Paket sekuensing dan pengakuan memastikan komunikasi yang andal, dengan transmisi saat dibutuhkan.
- Saluran multiplexed SSH dan kontrol aliran dua arah memberikan mekanisme yang fleksibel dan kuat untuk beragam operasi aman di luar transfer data sederhana.
Ringkasan peran saluran dua arah
-Di TLS, saluran dua arah mengamankan pertukaran data tingkat aplikasi (konten web, email, dll.) Memastikan kerahasiaan, integritas, dan verifikasi identitas pada awalnya, kemudian mengenkripsi semua data dua arah berikutnya secara transparan ke aplikasi.
- Di SSH, saluran dua arah adalah hal mendasar untuk memfasilitasi akses jarak jauh dan layanan jaringan yang aman, yang memungkinkan beberapa aliran bersamaan untuk berbagai penggunaan, semuanya dalam satu terowongan terenkripsi yang aman.
- Dayalityality di kedua protokol berarti bahwa tidak ada pihak yang terbatas hanya mengirim atau menerima klien dan server secara aktif dan aman terlibat dalam komunikasi dua arah.
Kemampuan saluran aman dua arah ini adalah apa yang memungkinkan Web yang aman di Internet Services yang aman melalui HTTPS (TLS), Administrasi Sistem Aman melalui SSH, dan jaringan yang aman, terowongan semua mengandalkan saluran yang dienkripsi dua arah yang kuat ini untuk komunikasi yang maju, andal, dan tepercaya.
***
Penjelasan terperinci ini mencakup bagaimana TLS dan SSH menggunakan saluran dua arah sehubungan dengan proses jabat tangan mereka, metode enkripsi, multiplexing saluran (dalam SSH), dan kontrol aliran, menyoroti kesamaan dan perbedaan mereka dalam tujuan dan operasi teknis. Untuk nuansa teknis lebih lanjut, sumber -sumber yang dikutip memberikan wawasan dan contoh tambahan.