Cara Kerja Mesin Enigma — Mesin Enkripsi Yang Sulit Dipecahkan

Fikri Mulyana Setiawan
7 min readJun 12, 2021

--

Gambar Mesin Enigma

Pada saat perang dunia ke-2, Tentara NAZI Jerman menggunakan cara khusus (dan sangat aman) untuk menyampaikan pesan rahasia mereka ke tentara mereka yang berada puluhan/ribuan mil jauhnya. Ada 2 alat utama yang mereka gunakan. Radio dan mesin enigma. Tentunya radio bukanlah alat yang baru kita dengar. Tapi apa itu mesin enigma?

Untuk menyampaikan pesan rahasia ( tentang strategi perang atau apapun itu), NAZI menggunakan radio, dan tentu saja musuh tidak boleh mengetahui pesan mereka. Akan tetapi, pesan yang dikirim lewat radio sangat mudah untuk “dilacak” dan didengar oleh musuh mereka. Hal itu sangat mudah dilakukan. Masalahnya adalah, tentara jerman tidak bisa mencegah musuh untuk membaca pesan mereka. Satu-satunya hal yang bisa mereka lakukan adalah mencegah musuh untuk memahami isi pesan mereka. Agar musuh tidak bisa memahami isi pesan mereka, tentara NAZI membuat kode yang hanya diketahui artinya oleh sesama mereka. sebuah kode yang begitu rumit sehingga pada masa itu muncul anggapan di antara para musuh bahwa kode tersebut mustahil untuk dipecahkan dan diketahui artinya. Ini mirip seperti sistem sandi yang sering kita pelajari dalam Pramuka. Untuk membuat kode tersebut, tentara jerman menggunakan sebuah alat. Alat itulah yang disebut dengan mesin Enigma.

Mesin enigma adalah mesin elektromekanik, yaitu mesin mekanik yang bekerja secara elektronik . Maksudnya adalah mesin enigma beroperasi melalui arus listrik, namun metode enkripsi (pengkode-an) nya dilakukan melalui sistem mekanik. Sistem mekanik-nya dilakukan untuk mengatur konfigurasi kabel listrik yang membawa arus listrik menuju lightboard. Hal ini akan saya jelaskan lebih lanjut nantinya.

Sebenarnya cara kerja dan metode pemecahan kode dari mesin enigma ini telah ditemukan oleh Kriptografer polandia, Marian Rejewski, Jerzy Różycki dan Henryk Zygalski. Namun Jerman mendesain ulang mesin ini sehingga metode tadi tidak bisa dipakai lagi. Jadi, bagaimana cara kerja mesin Enigma, sehingga disebut sebagai mesin enkripsi yang paling sukit dipecahkan?

Skema mesin enigma

Gambar di atas adalah skema dari mesin enigma. Mesin enigma terdiri dari 4 komponen utama, yaitu keyboard, plugboard, rotor, dan lightboard. Rotor mesin enigma terdiri dari 3 jenis, yaitu rotor statis, rotor dinamis dan reflektor. Rotor dinamis yang dipakai ada 3 buah. Jadi rotor yang dipakai terdiri dari 1 rotor statis, 3 rotor dinamis dan 1 reflektor.

Fungsi Komponen Mesin Enigma

Sekarang kita bahas fungsinya satu-persatu.

  1. Keyboard - fungsinya untuk mengetik pesan asli (plain text) yang ingin dijadikan kode
  2. Plugboard - plugboard terdiri dari kabel-kabel yang menghubungkan 1 huruf tepat ke 1 huruf lain. Misalnya kabel pertama menghubungkan huruf A dengan huruf H, kabel kedua menghubungkan huruf B dengan huruf X, dan seterusnya. Hal ini berlaku simetris, maksudnya adalah jika A dihubungkan dengan H, maka H dihubungkan dengan A.
  3. Rotor - fungsinya adalah untuk me-enkripsi output dari plugboard. Seperti yang saya sebutkan sebelumnya, terdapat 3 buah rotor dinamis. Setiap rotor dapat bergerak memutar sebanyak 26 kali dalam 1 putaran, sama banyaknya dengan jumlah huruf alfabet.
  4. Reflektor - fungsinya adalah untuk membawa output dari rotor kembali lagi ke rotor. Jadi rotor melakukan 2 kali enkripsi pada tiap kata yang diinput.
  5. Lightboard - fungsinya adalah untuk menampilkan hasil akhir dari proses enkripsi. Dengan kata lain, kode dari pesan rahasia nantinya akan diketaui dari lightboard ini. Disebut lightboard karena hasil akan ditampilkan lewat tombol keyboard dengan lampu. Huruf pada tombol yang lampunya bersinar adalah huruf hasil pengkodean yang kita inginkan.
Mesin Enigma tampak dari atas
Plugboard, source: root network security website
Rotor, source:telenet website
Lightboard, source :seangallaherapps.net

setiap komponen yang saya sebutkan tadi dihubungkan dengan kabel berarus listrik. Keyboard dihubungkan ke plugboard, plugboard dihubungkan ke rotor, rotor dihubungkan ke plugboard kembali, lalu plugboard dihubungkan ke lightboard.

Mekanisme Mesin Enigma

Saat sebuah tombol pada keyboard ditekan, arus listrik akan mengalir dari tombol tersebut ke plugboard. Misalkan huruf A ditekan. Lalu arus listrik huruf A akan menuju plugboard. Seperti yang saya bilang tadi, plugboard menghubungkan 1 huruf tepat ke 1 huruf lainnya. Misalkan kabel pada plugboard menghubungkan huruf A dengan huruf H. Saat listrik dari tombol A sampai ke plugboard, listrik ini akan diarahkan oleh kabel menuju huruf H. Jadi, output dari plugboard kali ini adalah huruf H.

Kemudian, output dari plugboard ini (listrik dari kabel huruf H) masuk ke rotor 1. Disinilah keunikan mesin ini muncul. Rotor berbentuk seperti roda. Setiap kali tombol pada keyboard ditekan, rotor 1 akan bergerak memutar 1 kali sedangkan rotor ke-2 dan ke-3 akan tetap diam. Jika rotor 1 telah bergerak 26 kali, saat itulah rotor ke-2 akan bergerak 1 kali. Jika rotor 2 telah bergerak sebanyak 26 kali, saat itulah rotor ke-3 bergerak 1 kali. Sistem rotor pertama, kedua dan ketiga ini mirip seperti sistem pada jarum jam. Jika jarum detik telah bergerak 60 kali (60 detik) maka jarum menit akan bergerak 1 kali. Jika jarum menit telah bergerak 60 kali (60 menit), jarum jam akan bergerak 1 kali.

Ilustrasi rotor, source: dokumentasi pribadi

Di dalam rotor terdapat kabel seperti ilustrasi di atas. Kabel dari plugboard, rotor 1 dan rotor 2 saling terhubung. Ketika rotor 1 bergerak 1 kali, kabel pada rotor 1 yang terhubung ke rotor 2 akan bergeser. Jika kita berpatokan pada gambar di atas, pada awalnya kabel huruf C pada rotor 1 dihubungkan ke kabel P pada rotor 2. Jika rotor 1 bergerak 1 kali, maka sekarang kabel huruf C pada rotor 1 akan terhubung ke kabel huruf Q pada rotor 2. Jika tombol keyboard ditekan kembali sehingga menghasilkan huruf C pada rotor 1, bisa saja output pada rotor 2 tidak lagi Q, karena rotor 2 juga telah bergerak. Bisa saja hasilnya sekarang adalah huruf R. Dengan sistem seperti ini, jika kita menekan tombol C 2 kali (CC), akan sangat mungkin bagi kita untuk mendapatkan hasil berupa 2 huruf yang tak sama. Saat menekan CC, bisa saja kita mendapat hasil QR atau QM, tergantung konfigurasi rotornya. Lihat, huruf pertama dan huruf kedua pada kata asli nya sama, tapi huruf pertama dan huruf kedua pada hasil kode nya berbeda.

Lanjut, setelah huruf C yang kita tekan sampai ke rotor, rotor 1 akan mengkode huruf ini menjadi huruf lain, lalu huruf lain tersebut masuk ke rotor 2,kemudian rotor 2 kembali mengkode-nya hinga terus ke rotor ketiga dan sampai ke reflektor. Output dari reflektor dibawa kembali oleh listrik menuju rotor 3,2, dan 1 kemudian menuju plugboard kembali. Di plugboard, huruf input akan diarahkan kembali ke huruf yang sesuai dengan konfigurasi kabel plugboard. Output dari plugboard yang berupa arus listrik inilah yang akan disalurkan ke lightboard. Jika output dari plugboard adalah huruf G, maka lampu G akan menyala.

Berapa Banyak Kemungkinan Kode Yang Muncul?

Kenapa pada masa lampau enigma disebut sebagai mesin pembuat kode yang tak mungkin dipecahkan? Itu karena jika kita mencoba satu-persatu kemungkinan kode yang muncul, akan perlu berjuta-juta tahun untuk mencoba setiap kombinasi kode sampai akhirnya kode tersebut berhasil dipecahkan. Ini tidak mungkin. Dunia terlanjur kiamat sebelum kita bisa menemukan Pemecahan kodenya. Memangnya, seberapa banyak kombinasi kode yang dapat dihasilkan oleh mesin enigma?
Kita dapat menghitungnya menggunakan konsep permutasi dan kombinasi sederhana
Pertama, kombinasi rotor. Rotor yang dimiliki mesin enigma yang dipakai NAZI Jerman ada 5 buah, namun hanya dipakai 3 buah. Kelima rotor tersebut dapat dipakai bergantian 3 buah sekaligus. Jadi kombinasi dari rotor = 5×4×3 = 60.

Kedua, kombinasi dari posisi awal tiap rotor. Rotor dapat bergerak 26 kali, sesuai jumlah huruf. Bisa posisi awal rotor berada pada huruf A, B, C, ataupun huruf lain. Karena jumlah huruf alfabet ada 26, maka posisi awal tiap rotor memiliki 26 kemungkinan. Karena ada 3 rotor yang dipakai, total kemungkinannya adalah 26×26×26 = 17.576 kemungkinan.

Ketiga, kombinasi dari plugboard. Huruf alfabet ada 26. Banyak cara untuk menyusun 26 huruf ini adalah 26! . Kabel pada plugboard hanya ada 10 buah, jadi hanya bisa membuat 10 pasangan huruf atau 20 huruf. Jadi hasil tadi dibagi 6! . Jadi kita punya 10 pasangan huruf yang dihubungkan lewat kabel. Kita tidak memperhitungkan/mempedulikan posisi/urutan setiap pasangan. Karena itu, hasil tadi dibagi lagi dengan 10! . Urutan huruf huruf pada tiap pasangan huruf juga tidak kita pedulikan. Karena itu, hasil tadi kita bagi lagi dengan 2^10 ( pangkat 10 karena ada 10 pasangan). Jadi, kombinasi untuk plugboard adalah :

Jadi, kombinasi total yang dapat dibuat adalah :

Ya, ada 158.962.555.217826.360.000 kemungkinan kode yang dapat muncul.
Tidak ada cukup waktu bagi para musuh NAZI saat itu untuk mecoba kodenya satu-persatu. karena itulah kode yang dihasilkan enigma disebut sebagai kode yang mustahil dipecahkan. Akan tetapi, kode ini ternyata bisa dipecahkan oleh seorang matematikawan asal inggris (britania raya) bernama Alan Turing. Bagaimana caranya? Anda dapat mengetahui caranya pada tulisan saya berikutnya !

--

--

Fikri Mulyana Setiawan

Programmer And Science Enthusiast . Programmer of fikrinotes.netlify.app website . Love To Work With Computer And Mechanical System