TUGAS10[AGUSTINO] KRIPTOGRAFI MODERN_2103015128

KRIPTOGRAFI MODERN

Pendahuluan 

• Beroperasi dalam mode bit atau byte (algoritma kriptografi klasik beroperasi dalam mode karakter) 

→ kunci, plainteks, cipherteks, diproses dalam rangkaian bit/byte 

→ operasi bit xor paling banyak digunakan


• Tetap menggunakan teknik pada algoritma klasik: substitusi dan transposisi, tetapi lebih kompleks (Tujuan: sangat sulit dikriptanalisis) 

• Perkembangan algoritma kriptografi modern didorong oleh penggunaan komputer digital untuk keamanan pesan. 

• Komputer digital merepresentasikan data dalam biner


Rangkaian bit 

• Pesan (dalam bentuk rangkaian bit) dipecah menjadi beberapa blok 

• Contoh: Plainteks 100111010110

 Bila dibagi menjadi blok 4-bit 

1001 1101 0110

 maka setiap blok menyatakan 0 sampai 15: 

9 13 6


Bila plainteks dibagi menjadi blok 3-bit:

 100 111 010 110 

maka setiap blok menyatakan 0 sampai 7: 

4 7 2 6


  • Padding bits: bit-bit tambahan jika ukuran blok terakhir tidak mencukupi panjang blok 
  •  Contoh: Plainteks 100111010110 Bila dibagi menjadi blok 5-bit: 10011 10101 00010 Padding bits mengakibatkan ukuran cipherteks sedikit lebih besar daripada ukuran plainteks semula.

Representasi dalam Heksadesimal 

• Pada beberapa algoritma kriptografi, pesan dinyatakan dalam kode Hex:
 0000 = 0 0001 = 1 0010 = 2 0011 = 3 
0100 = 4 0101 = 5 0011 = 6 0111 = 7 
1000 = 8 1011 = 9 1010 = A 1011 = B 
1100 = C 1101 = D 1101 = E 1111 = F 

• Contoh: plainteks 100111010110 dibagi menjadi blok 4-bit: 
1001 1101 0110 
dalam notasi Hex adalah
 9 D 6

Operasi XOR

 • Paling banyak digunakan di dalam cipher modern 

• Notasi: 

 • Operasi: 

0  0 = 0  0  1 = 1 
1  0 = 1  1  1 = 0 

• Operasi XOR = penjumlahan modulo 2:

 0  0 = 0  0 + 0 (mod 2) = 0 
0  1 = 1  0 + 1 (mod 2) = 1 
1  0 = 1  1 + 0 (mod 2) = 1 
1  1 = 0  1 + 1 (mod 2) = 0

• Hukum-hukum yang terkait dengan operator XOR:
 (i) a  a = 0 
(ii) a  b = b  a 
(iii) a  (b  c) = (a  b)  c

Cipher dengan XOR 
• Sama seperti Vigenere Cipher, tetapi dalam mode bit 
• Setiap bit plainteks di-XOR-kan dengan setiap bit kunci.
 Enkripsi: C = P  K
 Dekripsi: P = C  K

Contoh: plainteks 01100101 (karakter ‘e’) 
              kunci 00110101  (karakter ‘5’)

               cipherteks 01010000 (karakter ‘P’) 
               kunci 00110101  (karakter ‘5’)

                plainteks 01100101 (karakter ‘e’)


• Jika panjang bit-bit kunci lebih pendek daripada panjang bit-bit pesan, maka bit-bit kunci diulang penggunaannya secara periodik (seperti halnya pada Vigenere Cipher)

• Contoh: 
  Plainteks : 10010010101110101010001110001
  Kunci : 11011011011011011011011011011
  Cipherteks: 01001001110101110001010101010 

Kategori cipher Berbasis Bit 

1. Cipher Alir (Stream Cipher) 
- beroperasi pada bit tunggal 
- enkripsi/dekripsi bit per bit

 2. Cipher Blok (Block Cipher)
 - beroperasi pada blok bit
(contoh: 64-bit/blok = 8 karakter/blok)
 - enkripsi/dekripsi blok per blok

SOAL ESSAY:


Pertanyaan 1:
Jelaskan perbedaan antara cipher alir (stream cipher) dan cipher blok (block cipher) dalam kriptografi modern.

Jawaban 1: Cipher alir (stream cipher) beroperasi pada bit tunggal, di mana setiap bit plainteks dienkripsi/dekripsi secara individu. Sedangkan cipher blok (block cipher) beroperasi pada blok bit, di mana blok-blok pesan dienkripsi/dekripsi secara keseluruhan. Dalam cipher blok, proses enkripsi/dekripsi dilakukan pada blok-blok data dengan ukuran yang tetap.

Pertanyaan 2:
Apa yang dimaksud dengan operasi XOR dalam kriptografi modern? Berikan contoh penggunaannya dalam enkripsi dan dekripsi.

Jawaban 2: Operasi XOR (Exclusive OR) adalah operasi logika dalam kriptografi modern. Operasi ini menghasilkan output 1 jika salah satu inputnya adalah 1, tetapi bukan keduanya. Contoh penggunaan XOR dalam enkripsi dan dekripsi adalah saat setiap bit plainteks di-XOR-kan dengan setiap bit kunci yang sesuai. Misalnya, dalam enkripsi, Ciphertext (C) diperoleh dengan melakukan operasi P ⊕ K, di mana P adalah plaintext dan K adalah kunci. Dalam dekripsi, Plaintext (P) dapat ditemukan dengan melakukan operasi C ⊕ K, di mana C adalah ciphertext dan K adalah kunci.

Pertanyaan 3:
Bagaimana representasi pesan dalam bentuk heksadesimal digunakan dalam kriptografi modern? Berikan contoh pengubahan pesan menjadi heksadesimal.

Jawaban 3: Representasi pesan dalam bentuk heksadesimal digunakan dalam kriptografi modern untuk mengubah rangkaian bit menjadi representasi yang lebih sederhana dan mudah dibaca. Dalam kode heksadesimal, setiap empat bit diwakili oleh satu digit heksadesimal (0-9 dan A-F). Sebagai contoh, jika plainteks dalam bentuk rangkaian bit adalah 1001 1101 0110, maka dalam notasi heksadesimal akan menjadi 9D6.

Pertanyaan 4:
Apa yang dimaksud dengan padding bits dalam kriptografi modern? Jelaskan mengapa padding bits digunakan.

Jawaban 4: Padding bits merujuk pada bit-bit tambahan yang ditambahkan pada blok terakhir pesan jika panjangnya tidak mencukupi untuk memenuhi panjang blok yang ditentukan. Padding bits digunakan untuk memastikan bahwa semua blok pesan memiliki panjang yang sama, yang penting dalam penggunaan cipher blok. Contoh jika panjang blok adalah 5-bit dan plainteks adalah 10011 10101, maka padding bits (misalnya 0) akan ditambahkan sehingga plainteks menjadi 10011 10101 000.

Pertanyaan 5:
Jelaskan bagaimana rangkaian bit pesan dibagi menjadi blok-blok dalam kriptografi modern. Berikan contoh pembagian blok untuk pesan dengan panjang bit tertentu.

Jawaban 5: Rangkaian bit pesan dibagi menjadi blok-blok dalam kriptografi modern untuk memfasilitasi proses enkripsi dan dekripsi. Panjang blok dapat berbeda-beda tergantung pada algoritma yang digunakan. Sebagai contoh, jika plainteks adalah 01100101, dan dibagi menjadi blok 4-bit, maka blok-bloknya adalah 0110 dan 0101. Jika plainteks dibagi menjadi blok 3-bit, maka blok-bloknya adalah 011, 001, dan 010.

Pertanyaan 6:
Apa tujuan utama pengembangan algoritma kriptografi modern? Mengapa penggunaan komputer digital menjadi faktor pendorong perkembangan tersebut?

Jawaban 6: Tujuan utama pengembangan algoritma kriptografi modern adalah untuk menciptakan sistem keamanan yang sangat sulit dikriptanalisis. Penggunaan komputer digital sebagai alat untuk keamanan pesan telah mendorong perkembangan algoritma kriptografi modern. Komputer digital memungkinkan pengolahan data dalam bentuk biner dan dapat digunakan untuk melakukan operasi enkripsi/dekripsi dengan kecepatan yang tinggi.

Pertanyaan 7:
Jelaskan peran operasi bit XOR dalam cipher modern. Mengapa operasi XOR sering digunakan dalam enkripsi?

Jawaban 7: Operasi bit XOR sering digunakan dalam cipher modern karena sifatnya yang menyebabkan perubahan dalam bit hasil enkripsi/dekripsi ketika salah satu atau kedua input berubah. Hal ini membuat cipher menjadi lebih kompleks dan sulit untuk dianalisis secara kriptanalisis. Selain itu, operasi XOR juga memiliki sifat yang berguna dalam manipulasi dan kombinasi bit dalam algoritma kriptografi modern.

Pertanyaan 8:
Apa hukum-hukum terkait dengan operator XOR dalam kriptografi modern? Jelaskan setiap hukum dengan contoh.

Jawaban 8: Hukum-hukum terkait dengan operator XOR dalam kriptografi modern adalah sebagai berikut: (i) a ⊕ a = 0: Operasi XOR antara suatu bit dengan dirinya sendiri akan menghasilkan 0. (ii) a ⊕ b = b ⊕ a: Operasi XOR adalah komutatif, artinya urutan operand tidak mempengaruhi hasilnya. (iii) a ⊕ (b ⊕ c) = (a ⊕ b) ⊕ c: Operasi XOR adalah asosiatif, artinya urutan operasi XOR pada tiga operand tidak mempengaruhi hasilnya.

Pertanyaan 9:
Bagaimana algoritma cipher dengan XOR bekerja dalam enkripsi dan dekripsi? Berikan contoh langkah-langkah enkripsi dan dekripsi menggunakan cipher XOR.

Jawaban 9: Algoritma cipher dengan XOR bekerja dengan mengenkripsi setiap bit plainteks dengan bit kunci yang sesuai menggunakan operasi XOR. Untuk enkripsi, ciphertext (C) diperoleh dengan melakukan operasi P ⊕ K, di mana P adalah plaintext dan K adalah kunci. Untuk dekripsi, plaintext (P) dapat ditemukan dengan melakukan operasi C ⊕ K, di mana C adalah ciphertext dan K adalah kunci. Proses ini dilakukan pada setiap bit secara berurutan.

Pertanyaan 10:
Jelaskan perbedaan penggunaan kunci pada cipher alir dan cipher blok dalam kriptografi modern. Bagaimana panjang kunci yang lebih pendek dari pesan ditangani dalam cipher alir dan cipher blok?

Jawaban 10: Perbedaan penggunaan kunci pada cipher alir dan cipher blok dalam kriptografi modern terletak pada cara kunci diterapkan pada proses enkripsi/dekripsi. Pada cipher alir, kunci digunakan secara bit per bit untuk mengenkripsi/dekripsi setiap bit plaintext secara individu. Sedangkan pada cipher blok, kunci digunakan pada seluruh blok plaintext dalam satu operasi enkripsi/dekripsi. Jika panjang kunci lebih pendek dari pesan, dalam cipher alir, kunci akan diulang secara periodik untuk memadankan panjang pesan. Sedangkan pada cipher blok, kunci mungkin harus diubah atau diperpanjang untuk memenuhi panjang pesan yang lebih besar dari panjang kunci.


Komentar

Postingan Populer