Back to IF4020 Kriptografi

Kriptografi Modern dan Operasi XOR

Questions/Cues

  • Apa yang membedakan kriptografi modern dari klasik?
  • Bagaimana pesan direpresentasikan sebagai bit, byte, dan heksadesimal?
  • Apa sifat-sifat operasi XOR dan mengapa begitu dominan?
  • Bagaimana cipher XOR sederhana bekerja dan mengapa ia tidak aman?
  • Apa dua kategori cipher berbasis bit?

Reference Points

  • IF4020 Kriptografi — Kriptografi Modern dan Stream Cipher (Slides 2-23)

Era Kriptografi Modern

Kriptografi modern adalah era setelah ditemukannya komputer digital (awal 1970-an). Komputer merepresentasikan data dalam biner, sehingga algoritma modern beroperasi dalam mode bit (klasik: mode karakter): kunci, plainteks, dan cipherteks diproses sebagai rangkaian bit, dan operasi XOR paling banyak dipakai.

Meski modern, algoritmanya tetap memakai dua teknik dasar klasik, yaitu substitusi dan transposisi (permutasi) (Cipher Transposisi - Columnar dan Rail Fence), tetapi dibuat jauh lebih kompleks agar sulit dikriptanalisis. Ditambah teknik lain: rotasi, kompresi, ekspansi, penjumlahan modulo, dan lain-lain.

Era ini juga melahirkan konsep baru: kriptografi kunci-publik, fungsi hash, protokol kriptografi, tanda tangan digital, pembangkit bilangan acak, skema pembagian kunci. Peta besarnya:

flowchart LR
    KL["Cryptology"] --> KG["Cryptography"]
    KL --> KA["Cryptanalysis"]
    KG --> SY["Symmetric ciphers"]
    KG --> AS["Asymmetric ciphers"]
    KG --> PR["Protocols"]
    KG --> HF["Hash functions"]
    SY --> BC["Block ciphers"]
    SY --> SC["Stream ciphers"]

Bit, Byte, dan Heksadesimal

Pesan dienkripsi bit-per-bit, byte-per-byte (1 byte = 8 bit), atau dalam kelompok bit. Sebagian algoritma mengkodekan pesan dalam heksadesimal (1 digit hex = 4 bit; 0000 = 0 … 1010 = A … 1111 = F).

  • Pesan 1001110101101010 dibagi blok 4-bit: 1001 1101 0110 1010 = 9D6A.
  • Teks ke biner (ASCII): Halo → 01001000 01100001 01101100 01101111.

Operasi XOR

Notasi . Tabel kebenaran: (bernilai 1 bila kedua bit berbeda). Sifat:

  1. (komutatif)
  2. (asosiatif)

Dari sifat 1: , sehingga XOR adalah inversnya sendiri. Itulah sebabnya enkripsi dan dekripsi memakai operasi yang sama. Untuk dua rangkaian bit, XOR dilakukan bit demi bit: .

Cipher XOR Sederhana

Sama seperti Vigenère (Vigenère Cipher dan Kriptanalisis Kasiski) tetapi dalam mode bit:

Contoh: plainteks 01100101 (e) kunci 00110101 (5) = cipherteks 01010000 (P); XOR lagi dengan kunci menghasilkan 01100101 (e) kembali.

Bila kunci lebih pendek dari pesan, bit kunci diulang periodik (seperti Vigenère). Contoh: plainteks 10010010101110101010001110001 dengan kunci 11011011011011011011011011011 menghasilkan 01001001110101110001010101010. Cipher ini bisa dipakai untuk file sembarang (PDF, gambar) byte demi byte.

Tidak aman: karena kuncinya berulang, ia mudah dikriptanalisis dengan metode yang sama seperti Kasiski. Kunci sepanjang pesan yang acak sejati, sekali pakai, menjadi one-time pad (One-Time Pad dan Perfect Secrecy).

Dua Kategori Cipher Berbasis Bit

Cipher alir (stream)Cipher blok (block)
Unitbit atau byte satu per satublok bit (mis. 128 bit = 16 byte)
Operasihanya XOR dengan keystreamkomputasi kompleks, berulang dalam putaran
BahasanStream Cipher dan LFSRKonsep Cipher Blok dan Mode Operasi

Summary

Kriptografi modern (sejak 1970-an) beroperasi pada bit/byte, memakai substitusi dan transposisi klasik yang dibuat lebih kompleks, ditambah rotasi, kompresi, ekspansi, dan penjumlahan modulo. Data direpresentasikan sebagai bit, byte (8 bit), dan hex (4 bit per digit). XOR () adalah operasi utama karena , komutatif, asosiatif, dan invers dirinya sendiri: , . Cipher XOR sederhana dengan kunci berulang adalah Vigenère versi bit dan mudah dipecahkan ala Kasiski; kunci acak sejati sepanjang pesan adalah OTP. Cipher berbasis bit dibagi menjadi stream cipher (bit/byte satu per satu, hanya XOR dengan keystream) dan block cipher (blok bit, putaran berulang). Berlanjut ke Stream Cipher dan LFSR.