GNU/Linux >> Belajar Linux >  >> Linux

Apa itu Shared Key Exchange (Cara Kerja VPN, Bagian 3)

Artikel dalam seri “Cara Kerja VPN” ini menjelaskan cara kerja pertukaran kunci bersama. Jika Anda sudah tersesat, jangan panik! Rangkaian artikel ini menjelaskan konsep dan metode di balik VPN tanpa perlu mempelajari lebih dalam tentang matematika yang mendukungnya.

Jika Anda benar-benar baru mengenal konsep VPN, lihat pengantar ini. Jika Anda sudah tahu sedikit tentang cara kerja VPN dan ingin tahu lebih banyak, seri ini cocok untuk Anda. Setiap artikel membahas satu aspek tentang bagaimana VPN membantu mengamankan data dengan menceritakan sebuah kisah yang berfungsi sebagai metafora untuk mekanisme logis yang terlibat. Kisah-kisah ini melibatkan Adam dan Burt yang mencoba menyimpan rahasia dan orang ketiga, Cesar, mencoba menemukan rahasia mereka dengan jahat. Karena VPN tidak memiliki kesetaraan dunia fisik yang sempurna, beberapa elemen mungkin melampaui batas kredibilitas (misalnya, Cesar memiliki akses ke sinar duplikator). Ingat, ini hanya cerita…

Setiap artikel juga memiliki bagian yang dapat diperluas (ditunjukkan dengan ikon roda gigi), yang berisi penjelasan yang sedikit lebih mendalam yang agak lebih teknis tetapi tetap menghindari tersesat dalam matematika. Bagian ini mengikat peristiwa cerita sedikit lebih banyak ke komponen atau langkah enkripsi atau otentikasi, tetapi tidak diperlukan untuk mendapatkan pemahaman dasar tentang topik tersebut.

Pertukaran Kunci Bersama

Dalam petualangan sebelumnya, teman kita Adam dan Burt telah mencoba merahasiakan proyek buku komik mereka dari pengintaian Cesar dengan mengamankan pesan yang mereka tukarkan dengan kunci bersama dan sistem pasangan kunci publik/pribadi yang lebih rumit. Setiap sistem memiliki kekuatan dan kelemahannya masing-masing. Tapi anak laki-laki perlu istirahat dari proyek ini, dan beruntung bagi mereka, ada pameran yang berlangsung di dekatnya. Mereka memasuki juru masak cabai, dan karena mereka suka merahasiakan kreasi mereka, mereka menemukan cara untuk merahasiakan resep mereka, bahkan saat mereka menyiapkannya di depan penonton. Resepnya akan sangat aman; bahkan mereka tidak akan mengetahuinya!

Titik Awal yang Terkenal

Untuk melakukan hal ini, Adam dan Burt masing-masing perlu mengembangkan sebagian dari resep tanpa mengetahui apa pun tentang kontribusi pihak lain. Jika tak satu pun dari mereka tahu seluruh resep, tidak ada yang bisa mengungkapkannya. Namun, mereka menyepakati bahan dasar yang sama (campuran bahan dasar tomat, bumbu cabai, daging sapi, dan kacang-kacangan). Tidak perlu merahasiakan bagian ini–sebagian besar kontestan lain memulai dengan basis yang sama, jadi mereka hanya mendapatkan sedikit upaya untuk mengaburkan bahan-bahan ini.


Menegosiasikan pertukaran kunci.

Fakta bahwa kedua pihak dapat memulai negosiasi ini melalui media publik yang tidak aman adalah salah satu ide inti dan cerdas di balik metode inisiasi enkripsi. Sebelum enkripsi apa pun dapat terjadi, perlu ada lalu lintas yang tidak terenkripsi antara rekan-rekan, jika tidak, keduanya tidak akan tahu cara mendekripsi pesan di masa mendatang. Langkah awal ini memungkinkan satu host memberi tahu yang lain bahwa ia ingin memulai negosiasi metode enkripsi dengan menawarkan beberapa nilai awal ke rumus matematika terkenal (yang, dalam contoh ini, adalah basis dari cabai). Keajaiban yang sebenarnya datang di langkah selanjutnya.

Menyemaikan Kuncinya

Adam dan Burt telah secara mandiri dan diam-diam menyiapkan sebagian bumbu dan bahan tambahan yang disegel dalam kertas nasi buram kantong yang akan larut setelah direndam dalam cabai. Dalam masakan ini, kantong Adam berisi tomatillo, chipotle, cabai rawit, dan kayu manis; Burt memiliki bumbu Cajun, bir, jinten, oregano, dan saus Worcester*. Adam memasukkan paketnya ke dalam panci dan mengaduknya, mencicipi cabainya sampai dia yakin kantongnya telah larut dan mengeluarkan bahan-bahannya. Burt melakukan hal yang sama dengan potnya. Pada titik ini, Adam dan Burt memiliki dua cabai yang berbeda.

* (jika Anda bertanya-tanya mengapa ini belum larut dari bir, katakanlah Burt telah membekukan cairan apa pun sebelum memasukkannya ke dalam kantong yang dapat larut.)


Membuat kunci bersama.

Dalam proses pertukaran kunci yang sebenarnya, "bahan" ini sebenarnya adalah bilangan prima yang sangat besar. Dalam proses pertukaran kunci, bilangan prima besar ini dihasilkan secara acak. Semakin besar angka yang digunakan untuk memasukkan ke dalam pertukaran kunci ini, semakin sulit menggunakan teknik brute force untuk memecahkannya. Ukuran angka-angka ini disebut kelompok bit. Sekelompok bilangan prima dengan panjang yang sama dalam bit biner (misalnya, 1024 atau 2048 atau bahkan panjang bit yang lebih besar) semuanya termasuk dalam kelompok yang sama. Semakin besar kelompok bit, semakin kuat proses pertukaran kunci ini dan semakin tahan terhadap analisis dan potensi kompromi.

Menyelesaikan Exchange

Sekarang mereka mengganti pot yang mereka inginkan, jadi Burt ada di pot Adam mulai, dan sebaliknya. Mereka masing-masing mengambil kantong lain yang identik dengan yang mereka mulai dan menambahkan kantong kedua ini ke panci yang telah dimulai yang lain (jadi Adam menambahkan tomatillo, chipotle, cabai rawit, dan kayu manis ke dalam panci Burt mulai dengan bumbu Cajun, bir , jinten, oregano, dan saus Worcester; dan Burt menambahkan kantongnya ke panci yang dimulai Adam). Setelah masing-masing dari mereka mengaduk potnya masing-masing dan melarutkan kantong untuk mengeluarkan bahan rahasianya, mereka dapat yakin bahwa setiap pot sekarang berisi cabai yang sama.


Pertukaran Kunci Diffie-Hellman.

Dalam istilah matematika, algoritme yang mengatur pertukaran kunci bersama bersifat komutatif–dapat dilakukan dalam urutan apa pun dan mendapatkan hasil yang sama. Juga, perhatikan bahwa baik Adam maupun Burt tidak memiliki sarana untuk merekonstruksi kunci itu sendiri. Masing-masing hanya mengetahui nilai acak masing-masing berkontribusi pada algoritma. Dan, karena masing-masing juga menghasilkan salinan kunci setelah negosiasi selesai, masing-masing juga memiliki salinan kunci terakhir tanpa harus dikirimkan melalui jaringan.

Pertukaran kunci atau negosiasi bersama ini disebut Diffie-Hellman Key Exchange, dinamai sesuai nama penulis makalah yang pertama kali merinci metode ini, Whitfield Diffie dan Martin Hellman. Pekerjaan mereka dibangun di atas pekerjaan sebelumnya yang dilakukan oleh Ralph Merkle, sehingga telah disarankan (oleh Hellman sendiri) metode ini disebut Diffie-Hellman-Merkle Key Exchange. Dalam konfigurasi sebenarnya, Anda akan sering melihat metode ini diterapkan sebagai Grup DH, grup berbeda yang sesuai dengan kunci dengan panjang berbeda dalam bit biner.

Rasa Kompleks

Selama persiapan, juri mana pun bisa melihat dan mengambil sampel dari pot awal atau pot perantara. Bahkan jika Cesar, yang berniat mempelajari resep rahasia, berperan sebagai juri, dia tidak akan bisa merekonstruksi resep terakhir yang digunakan Adam dan Burt dengan andal. (Contoh ini mengasumsikan bahwa Cesar tidak memiliki kemampuan untuk membedakan semua rasa individu yang termasuk dalam cabai. Untuk mencoba mengidentifikasi bahan dan jumlahnya melalui analisis laboratorium akan cukup mahal dalam waktu dan energi yang diinvestasikan untuk membuatnya tidak mungkin.)


Potensi Kerentanan.

Jika penyerang ingin mengkompromikan komunikasi apa pun yang dienkripsi dengan kunci ini, serangan penyadapan man-in-the-middle tipikal tidak akan cukup. Namun, seorang penyerang dapat memasukkan dirinya sebagai man-in-the-middle transit. Jika penyerang mengatur dirinya sendiri sehingga semua komunikasi antara dua host harus melalui dia, dia bisa melakukan negosiasi Diffie-Hellman dengan setiap rekan. Setiap sisi koneksi hanya akan tahu apakah kunci yang berhasil dinegosiasikan, tetapi tidak dengan siapa. Dalam posisi ini, man-in-the-middle akan dapat melihat seluruh percakapan—bahkan, dia harus mendekripsi lalu lintas masuk dan mengenkripsi ulang sebelum mengirimkannya ke sisi lain untuk mempertahankan kesan bahwa setiap end masih memiliki koneksi "aman".

Mungkin juga penyerang mencoba melakukan serangan man-in-the-middle untuk menurunkan versi grup DH ke grup yang panjang bitnya jauh lebih kecil dan kurang aman. Penyerang itu kemudian dapat mengumpulkan data yang dienkripsi dengan lemah dan melakukan serangan brute force offline terhadap enkripsi untuk memecahkannya dalam waktu yang wajar. Serangan seperti FREAK dan Logjam menggunakan semacam metodologi penurunan versi untuk melemahkan pertukaran kunci Diffie-Hellman.

Selengkapnya di Seri Cara Kerja VPN:

Bagian 1:Algoritma Enkripsi Simetris
Bagian 2:Kriptografi Kunci Publik
Pelajari lebih lanjut tentang layanan hosting VPS dan harga hosting VPS kami.


Linux
  1. Apa itu NGINX? Bagaimana cara kerjanya?

  2. Apa itu Server Web, dan Bagaimana Cara Kerja Server Web?

  3. Apa itu DNS dan Bagaimana Cara Kerjanya?

  1. Apa itu Kriptografi Kunci Publik (Cara Kerja VPN, Bagian 2)

  2. Bagaimana rm bekerja? Apa yang rm lakukan?

  3. Bagaimana cara mengetahui kemampuan linux apa yang dibutuhkan suatu proses untuk bekerja?

  1. Apa itu Makefile dan bagaimana cara kerjanya?

  2. Bagaimana Cara Kerja Input Keyboard Dan Output Teks?

  3. Bagaimana cara kerja nomor SO (objek bersama)?