Identitas Kelompok
Bagian 1: Parameter Publik & Nilai Privat Diffie-Hellman
Skenario Kasus: Diasumsikan Mabes-TNI di Jakarta dan pasukan Kompi-TNI di Aceh ingin membentuk kunci rahasia bersama (shared secret key) untuk enkripsi simetris (AES / ChaCha20) melalui saluran komunikasi telepon yang tidak aman (dapat disadap pihak ketiga). Kunci rahasia bersama dibentuk menggunakan algoritma Diffie-Hellman Key Exchange.
1. Pihak Mabes-TNI dan Kompi-TNI bersepakat memilih bilangan prima besar n dan g di mana g < n.
2. Kompi-TNI memilih bilangan bulat acak privat x dan merahasiakannya.
3. Mabes-TNI memilih bilangan bulat acak privat y dan merahasiakannya.
Bagian 2: Perhitungan & Pertukaran Public Value Diffie-Hellman
Masing-masing pihak menghitung Public Value menggunakan kunci privatnya dan membagikan hasilnya melalui saluran komunikasi publik tidak aman.
• Kompi-TNI (Aceh): X = gˣ mod n
• Mabes-TNI (Jakarta): Y = gʸ mod n
X = gˣ mod n
Y = gʸ mod n
Bagian 3: Pembentukan Kunci Bersama (Shared Secret) & Analisis Diffie-Hellman
Setelah saling bertukar public value (X dan Y), masing-masing pihak menghitung Shared Secret Key (kunci simetris bersama) menggunakan public value pihak lain dan kunci privat masing-masing.
• Mabes-TNI menghitung: K = Xʸ mod n
• Kompi-TNI menghitung: K' = Yˣ mod n
• Syarat Validasi: K = K' (kedua pihak menghasilkan nilai kunci yang persis sama).
Tuliskan analisis komprehensif terkait: tujuan Diffie-Hellman, peran private/public value, mengapa kedua pihak menghasilkan kunci yang sama ((gˣ)ʸ = (gʸ)ˣ mod n), landasan keamanan Discrete Logarithm Problem, serta potensi ancaman Man-in-the-Middle (MitM) jika tanpa mekanisme autentikasi.
Bagian 4: RSA – Pemilihan Prima (p, q), Modulus (n) & Totien Euler (φ(n))
Skenario Kasus RSA: Untuk menerima pesan rahasia yang akan dikirim oleh Mabes-TNI di Jakarta dan dienkripsi menggunakan RSA, Kompi-TNI di Aceh terlebih dahulu membangkitkan pasangan kunci publik dan kunci privat.
1. Pilih dua bilangan prima besar p dan q (pada praktikum ini menggunakan 3 digit desimal).
2. Hitung Modulus Sistem: n = p × q.
3. Hitung Nilai Totien Euler: φ(n) = (p − 1) × (q − 1).
Bagian 5: RSA – Pemilihan Kunci Enkripsi Publik (e) & Koprima
Kompi-TNI memilih secara acak kunci enkripsi publik e yang memenuhi dua syarat utama:
1. 1 < e < φ(n)
2. gcd(e, φ(n)) = 1 (relatif prima / koprima terhadap totien φ(n)).
Bagian 6: RSA – Perhitungan Kunci Dekripsi Privat (d)
Kompi-TNI menghitung kunci dekripsi privat d yang memenuhi syarat e × d ≡ 1 mod φ(n) dan 0 ≤ d ≤ n. Perhitungan dapat dilakukan menggunakan Algoritma Euclidean atau rumus iteratif:
| k | φ(n) | e | 1 + k·φ(n) | d = [1 + k·φ(n)] / e | Status |
|---|
Bagian 7: RSA – Pasangan Kunci Publik (PU) & Kunci Privat (PR)
Setelah nilai e, d, dan n diperoleh, Kompi-TNI menyusun pasangan Kunci Publik (Public Key - PU) dan Kunci Privat (Private Key - PR).
• Kunci Publik Enkripsi: PU = {e, n} (Didistribusikan ke Mabes-TNI)
• Kunci Privat Dekripsi: PR = {d, n} (Disimpan sangat rahasia oleh Kompi-TNI)
Bagian 8: RSA – Pesan Plaintext (M) & Pengkodean ASCII Desimal 3 Digit
Mabes-TNI akan mengirimkan pesan rahasia M = SERANG PADA JAM X (di mana X adalah nomor kelompok Anda dalam kata bahasa Indonesia: SATU, DUA, TIGA, dll). Sesuai tabel ASCII, setiap karakter dikodekan dalam 3 digit desimal (dengan leading zero jika nilai < 100, misal SP = 032, A = 065).
Panjang Karakter: 20 karakter
| Index | Karakter | Kode Desimal Asli | Format 3 Digit (Leading Zero) |
|---|
Bagian 9: RSA – Pemecahan Plaintext Menjadi Blok Pesan 6 Digit
Dalam algoritma RSA, nilai pesan M yang dienkripsi harus memenuhi syarat 0 ≤ M < n. Karena modulus sistem n = 101461 (6 digit desimal dengan digit pertama 1), maka seluruh string kode desimal dipecah menjadi blok-blok berukuran 6 digit (tambahkan bilangan nol di belakangnya jika diperlukan untuk menggenapkan 6 digit).
Setiap blok pesan mᵢ harus berupa bilangan desimal 6 digit dan memenuhi mᵢ < n (101461).
Bagian 10: RSA – Enkripsi Pesan (C = Mᵉ mod n)
Mabes-TNI mengenkripsi setiap blok pesan mᵢ menggunakan Kunci Publik Kompi-TNI PU = {e, n} berdasarkan persamaan eksponensiasi modular:
Bagian 11: RSA – Dekripsi Pesan (M = Cᵈ mod n), Rekonstruksi & Pengumpulan
Kompi-TNI di Aceh menerima ciphertext C melalui saluran tidak aman dan mendekripsinya menggunakan Kunci Privat PR = {d, n} berdasarkan persamaan:
"000" (karakter NUL) yang ditambahkan pada tahap blok 6-digit secara otomatis diabaikan/dibuang saat konversi kembali ke teks ASCII asli.
Tuliskan analisis komprehensif terkait: cara kerja pasangan kunci publik dan privat RSA, peran pemfaktoran bilangan prima besar dalam menjamin keamanan kunci privat d, perbandingan algoritma asimetris RSA vs algoritma simetris, efisiensi perhitungan menggunakan pemecahan blok, dan penerapan praktisnya dalam keamanan informasi modern.