1. Pengenalan
Mesin
Enigma (berasal dari kata Latin, aenigma yang bermakna teka-teki)
adalah sebuah mesin rotor elektromekanik yang digunakan untuk
mengenkripsi suatu pesan dan mendekripsikan kembali pesan tersebut.
Mesin Enigma dipatenkan oleh seorang insinyur asal Jerman yang bernama
Arthur Scherbius, yang kemudian digunakan oleh militer dan pemerintah
Jerman Nazi sebelum dan selama Perang Dunia II. Dan kemudian yang paling
terkenal adalah versi Mesin Enigma yang dipakai oleh Wehrmacht
(angkatan bersenjata Jeman Nazi). Nazi sendiri mulai menggunakan mesin
ini sejak tahun 1928. Pada awalnya Nazi menganggap bahwa Enigma adalah
mesin kriptografi teraman di dunia. Namun pihak sekutu terus berusaha
keras untuk memecahkan kode cipher yang dihasilkan oleh Enigma, sehingga
pada akhirnya, pada tahun 1932, metode dekripsi untuk mesin ini
ditemukan oleh tim matematikawan muda yang diberi tugas oleh badan
intelijen Polandia yang terdiri dari Marian Rejewski, Jerzy Rozycki, dan
Henryk Zygalski. Pihak Nazi yang menyadari hal ini pun mendesain ulang
Enigma pada tahun 1939, sehingga metode tersebut tidak dapat digunakan
kembali. Namun berbekal metode dari Polandia, Britania dan Perancis
berhasil membuat mesin pemecah kode untuk mesin Enigma yang baru ini,
yang diperkenalkan dengan nama bombe.
Keberhasilan
pemecahan kode mesin Enigma ini sendiri terbukti menjadi faktor penting
kemenangan Sekutu pada Perang Dunia II, dan berhasil memperpendek
lamanya Perang Dunia II. Adapun jauh sebelum itu, bahkan jauh sebelum
adanya komputer, kriptografi serupa telah dilakukan, dan biasanya memang
dilakukan dalam rangka menyembunyikan pesan yang dikirim dalam perang.
2. Sejarah Awal Mulanya Enigma
Mesin
Enigma yang termasuk dalam mesin kriptografi mekanik-elektrik yang
berbasis rotor ini ditemukan oleh seorang Jerman bernama Arthur
Scherbius di Berlin pada tahun 1918. Di mana di saat itu orang-orang
memang sedang gemar menggunakan electrical connection untuk
mengotomastisasi pekerjaan mengkonversi huruf menggunakan tabel. Waktu
itu, awalnya Arthur Scherbius ingin memproduksi dan memperjualbelikan
secara komersil mesin enigma buatannya itu ke khalayak umum, terutama
yang bergerak di bidang bisnis, namun ternyata keadaan berkata lain,
karena akhirnya mesin ini dibutuhkan oleh angkatan bersenjata Jerman ,
dan saat itu memang sedang saatnya Perang Dunia II. Dan angkatan laut
Jerman berhasil membuat mesin cipher Shcerbius pada tahun 1926 yang
merupakan modifikasi dari enigma versi komersial, dan berhasil membuat
enigma versi militer pada tahun 1930. Dan pada akhirnya sejak
pertengahan 1930, angkatan bersenjata Jerman hampir semua telah memakai
enigma.
3. Desain dan Mekanisme Enigma
Desain enigma versi militer yang banyak dipakai oleh angkatan bersenjata Nazi terdiri dari bagianbagian sebagai berikut :
1. Papan ketuk
2. Lampu
3. Stecker Board
4. Scrambler
5. Entry Wheel
6. Rotor
7. Reflector (Umkerwalz)
Dengan bagian yang paling penting adalah rotor, karena rotorlah mekanisme utama dalam pengenkripsian yang dilakukan :
Adapun bagian-bagian dari rotor tersebut dengan penomoran sesuai dengan gambar di atas adalah :
1. nger notches,
2. alphabet ring,
3. shaft,
4. catch,
5. core containing cross-wirings,
6. spring loaded contacts,
7. discs,
8. carry notch.
4. Cara Kerja Enigma
Enkripsi
yang dilakukan enigma sebenarnya adalah substitusi, di mana sebuah
huruf digantikan dengan tepat sebuah huruf juga, hanya saja substitusi
dilakukan beberapa kali. Dan walau hanya dengan substitusi, sebuah pesan
akan sulit sekali didekripsi jika tidak dengan alat yang sama, dengan
pengaturan posisi yang sama, tipe substitusi yang sama, dan kode kunci
yang sama. Dan semua substitusi tersebut dilakukan dengan wiring (sambungan listrik melalui kawat).
Arti dari wiring tersebut adalah jika misal A pada left rotor terhubung dengan D pada middle rotor, maka jika A pada left rotor teraliri listrik, maka D pada middle rotor akan
teraliri listrik juga. Sedangkan secara sederhana cara kerja dari
mekanisme wiring tersebut adalah wiring tersebut menunjukkan subsitusi
dari tombol yang ditekan, yang dilakukan dengan cara memasang lampu.
Jadi misal sesuai contoh di atas jika tombol / saklar A ditekan, maka
lampu D akan menyala. Kemudian hal tersebut dilakukan ulang namun dengan
mengganti rotor yang sedang digunakan. Kemudian dilakukan pergeseran
pada rotor setiap kali ada tombol yang ditekan. Begitu seterusnya selama
pesan diketik. Dan dengan adanya reflector jalannya arus dapat dibalikkan dari right rotor ke left rotor,
yang efeknya adalah kemungkinan yang meningkat 26 kali dari substitusi
huruf. Relector ini menyebabkan Enigma tidak perlu mengubah state jika
sedang ingin mengenkripsi sebuah pesan ataukah ingin mendekripsikannya.
Namun Reflector ini menyebabkan kelemahan pada mesin Enigma ini,
di mana terjadi resiprok di mana jika misal huruf M dienkripsikan
menjadi T, maka huruf T akan dienkripsikan menjadi huruf M pada rotor
yang sama, dan sebuah huruf tidak akan mungkin bisa dienkripsi menjadi
dirinya sendiri.
Sedangkan
rotor untuk enigma ada beberapa, walaupun yang dapat dipakai dalah satu
waktu pada satu enigma adalah 3 buarh saja, yang diberi nama L (left), M
(middle), dan R (right). Sedangkan jenis-jenis rotor yang ada diberi
nama rotor I, rotor II, rotor III, dan seterusnya. Di bawah ini adalah
beberapa jenis rotor yang pernah digunakan oleh enigma Rotor
ABCDEFGHIJKLMNOPQRSTUVWXYZ
I EKMFLGDQVZNTOWYHXUSPAIBRCJ
II AJDKSIRUXBLHWTMCQGZNPYFVOE
III BDFHJLCPRTXVZNYEIWGAKMUSQO
IV ESOVPZJAYQUIRHXLNFTGKDCMWB
V VZBRGITYUPSDNHLXAWMJQOFECK
VI JPGVOUMFYQBENHZRDKASXLICTW
VII NZJHGRCXMYSWBOUFAIVLPEKQDT
VIII FKQHTLXOCBJSPDZRAMEWNIUYGV
Pada setiap rotor tersebut dikenal adanya istilah Turnover,
yaitu posisi di mana sebuah rotor mulai bergerak menggeser rotor di
sampingnya. Rotor R akan selalu bergerak 1 huruf setiap kali tombol
ditekan., dan jika turnover dari rotor R tersebut adalah S, maka rotor R tersebut akan menggeser rotor M sejauh 1 huruf jika sudahmencapai posisi turnovernya (posisi di huruf S). Setiap jenis rotor mempunyai turnover masingmasing.
Adapun peran besar juga disumbangkan oleh plugboard. Plugboard sendiri
adalah sebuah papan yang mengganti arus dari huruf awal ke huruf yang
diinginkan dengan cara meneruskan arus tersebut dengan kabel. Seperti
yang terlihat di Gambar 2, di situ terlihat bahwa huruf Adi hubungkan
dengan huruf J, dan huruf S dihubungkan dengan huruf Q, jadi semua A,
akan menjadi J, dan sebaliknya demikian juga, semua huruf J akan berubah
menjadi huruf A. Hal tersebut juga terjadi antara huruf S dan huruf Q.