PGP


PENJELASAN MENGENAI PGP

Pada dasarnya, PGP merupakan program yang digunakan untuk mengenkripsi satu atau lebih dokumen. Dengan PGP tersebut, hanya orang – orang tertentu saja yang bisa membaca file – file enkripsi tersebut. Bagaimana PGP sebagai program enkripsi dokumen bisa digunakan untuk pengiriman e-mail? Sebenarnya, program PGP mengenkripsi isi mail yang kita tulis menjadi sebuah file. File tersebut dibaca oleh program mail yang kemudian dikirimkan ke tujuan.
Penerima e-mail harus menyimpan mail tersebut ke dalam sebuah file. File tersebut dideskripsi sehingga isi mail aslinya akan terlihat. Jadi, mail yang dikirimkan adalah dalam bentuk terenkripsi sehingga tidak dapat dibaca dengan mudah oleh orang – orang yang tidak memiliki akses membaca mail tersebut.
Kekuatan PGP terletak pada lamanya waktu yang diperlukan untuk membongkar kunci-kunci PGP. Untuk membongkar satu kunci PGP memerlukan waktu prosesor computer jutaan tahun bahkan milyaran tahun. Mungkin saja kecepatan processor computer berkembang 100 kali lipat dari sekarang, namun tetap membutuhkan waktu lebih dari 1000 tahun. Kalaupun berhasil di pecahkan, informasi tersebut tidak ada gunanya lagi. Selain itu kekuatannya juga terletak pada system kunci 1024 bit bahakan hingga 4096 bit. Kalau dihitung secara matematis, anda akan memiliki kunci kombinasi dengan angka sebesar 300 digit.

Alasan menggunakan PGP :

·         Dengan PGP, kita mendapatkan lebih dari sekedar privasi. Kita dapat memastikan bahwa e-mail ini memang berasal dari si pengirimnya dan bukan e-mail palsu dari pembuat surat kaleng yang mengatas namakan orang lain.

·         Sebaliknya, kita juga dapat memastikan bahwa e-mail ini memang berasal dari si pengirimnya tanpa dapat disangkal oleh si pengirim tersebut. Kita juga dapat memastikan bahwa e-mail yang kita terima atau kirim itu masih utuh tidak kurang satu karakter pun dan masih banyak keuntungan lainnya.

·         PGP dapat diperoleh secara gratis untuk penggunaan pribadi. Kita dapat mendownload softwarenya pada saat kita terhubung dengan internet. Semua kunci pribadi dapat kita peroleh dan tidak ada biaya tambahan yang dibebankan untuk pembuatan sertifikat maupun tanda tangan digital yang disertakan

Walaupun system enkripsi/dekripsi PGP sangat kuat, namun ada faktor-faktor di luar PGP yang bias melemahkannya. Misalkan data recovery dari swap file serta kehilangan private key dan pass-phrase. Selain itu, karena programnya adalah open source, maka siapa saja bisa mengambil source code dan menyisipkan semacam program kecil (untuk mengintip bahkan mencuri rahasia) dan kemudian menyebarkannya kembali secara umum. Untungnya, untuk mengatasi masalah ini PGP sudah dilengkapi dengan signature sehingga anda bisa memeriksa apakah PGP yang anda download adalah asli atau bukan.

METODE KERJA PGP

PGP bekerja dengan menggabungkan beberapa bagian yang terbaik dari kunci privat(simetrik) dan kunci public., sehingga sering disebut hybrid chryptosystem..Ketika seorang pengguna mengenkrip sebuah plaintext dengan menggunakan PGP, maka awal PGP akan mengkompress plaintext ini.. Data yang dikompress menghemat waktu, media transmisi dan yang lebih penting adalah keamanan kriptografi yang kuat. Kebanyakan teknik analisis sandi mengeksplotasi pola yang ditemukan dalam plaintext untuk men-crack chipper. Kompressi mengurangi pola-pola ini dalam plaintext dengan cara demikian perbaikan yang lebih baik untuk menghambat analisa kode-kode.
PGP membuat sebuah session key, yaitu sebuah kunci rahasia berupa bilangan acak pada saat itu. Session key ini berkerja dengan sangat aman, algoritma enkripsi konvesional yang cepat untuk meng-enkrip plaintext. Hasilnya adalah berupa chipper text. Sekali data dienkripsi, lalu session key ini dienkripsi lagi menggunakan kunci publik penerima.Session key yang terenkripsi kunci publik penerima dikirim dengan chipertext ke penerima Proses deskripsi bekerja sebaliknya, penerima menerima pesan lalu membuka pesan tersebut dengan kunci pribadinya, namun pesan tersebut masih terenkripsi dengan session key. Dengan menggunakan PGP, penerima mendekrip chipertextt yang terenkripsi secara konvensional.
Sebuah kunci (key) adalah sebuah nilai yang bekerja dengan sebuah algoritma kriptografi untuk menghasilkan sebuah chipertextt yang spesifik. Kunci pada dasarnya adalah bilangan yang besar. Ukuran kunci publik dan ukuran kunci rahasia kriptograpi tidak saling barhubungan. Sebuah kunci 80-bit konvensional memiliki kekuatan setara dengan kunci publik 1024-bit. Sebuah kunci 128-bit konvensional setara dengan kunci publik 3000-bit. Jadi semakin besar kunci semakin aman, tetapi algoritma yang digunakan tiap tipe kriptograpi sangat berbeda dan perbedaan ini seperti orang membandingkan antara apel dengan jeruk.
Sementara secara matematis kunci publik dan pribadi berhubungan. Sangat sulit mendapatkan kunci pribadi hanya dengan memberikan kunci publiknya, tetapi mendapatkan kunci pribadi selalu memungkinkan jika diberikan waktu yang cukup dan kekuatan komputasi cukup. Hubungan antara kunci public dan kunci pribadi dapat dijelaskan oleh algoritma RSA. Penjelasan mengenai algoritma RSA terdapat di akhir dari penjelasan mengenai metode kerja Kunci disimpan dalam bentuk terinkripsi. PGP menyimpan kunci dalam 2 file pada dihardisk, satu untuk kunci publik dan satunya lagi untuk kunci pribadi. File-file ini disebut dengan keyrings. Dalam menggunakan PGP, secara khusus akan ditambahkan kunci publik penerima ke keyring publik. Kunci pribadi disimpan pada keyring pribadi. Jika kehilangan keyring pribadi, maka tidak akan dapat melakukan dekripsi terhadap informasi yang telah terenkripsi pada ring tersebut  Prinsip – prinsip kerja dari PGP itu sendiri adalah :

1. PGP menggunakan teknik yang disebut Public-key encryption dengan dua kode yang saling berhubungan secara intrinsik, namun tidak mungkin untuk memecahkan satu dan yang lainnya.

2. Jika membuat suatu kunci, secara otomatis akan dihasilkan sepasang kunci yaitu public key dan secret key. Kita dapat memberikan public key ke manapun tujuan yang kita inginkan, melalui telephone, internet, keyserver, dsb. Secret key yang disimpan pada mesin kita dan menggunakan messager decipher akan dikirimkan ke kita. Jadi orang yang akan menggunakan public key kita (yang hanya dapat didekripsi oleh oleh secret key kita), mengirimkan messages kepada kita , dan kita akan menggunak an secret key untuk membacanya.

3. PGP menggunakan dua kunci yaitu kunci public (proses enkripsi) dan privet (proses deskripsi).

4. Menggunakan dua kunci tersebut dikarenakan adanya conventional crypto, disaat terjadi transfer informasi kunci, suatu secure channel diperlukan. Dan jika kita memiliki suatu secure channel, tapi mengapa kita menggunakan crypto? Namun dengan public-key syistem, tidak akan menjadi masalah siapa yang melihat kunci milik kita, karena kunci yang dilihat oleh orang lain adalah yang digunakan hanya untuk enkripsi dan hanya pemiliknya saja yang mengetahui kunci rahasia tersebut

Penjelasan Mengenai Algoritma RSA

Algortima RSA dijabarkan pada tahun 1977 oleh tiga orang : Ron Rivest, Adi Shamir dan Len Adleman dari Massachusetts Institute of Technology. Huruf RSA itu sendiri berasal dari inisial nama mereka (Rivest—Shamir—Adleman).

Besaran-besaran yang digunakan pada algoritma RSA:
1. p dan q bilangan prima (rahasia)
2. r = p q (tidak rahasia)
3. m = (p – 1)(q – 1) (rahasia)
4. PK (kunci enkripsi) (tidak rahasia)
5. SK (kunci dekripsi) (rahasia)
6. X (plainteks) (rahasia)
7. Y (cipherteks) (tidak rahasia)









Prosedur membuat pasangan kunci dapat dijelaskan melalui beberapa langkah di bawah ini

1. Hasilkan dua buah integer prima besar, p dan q untuk memperoleh tingkat keamanan yang tinggi pilih p dan q yang berukuran besar, misalnya 1024 bit.
2. Hitung m = (p-1)*(q-1)
3. Hitung n = p*q
4. Pilih d yg relatively prime terhadap m e relatively prime terhadap m artinya faktor pembagi terbesar keduanya adalah 1, secara matematis disebut gcd(e,m) = 1. Untuk mencarinya dapat digunakan algoritma Euclid.
5. Cari d, sehingga e*d = 1 mod (m), atau d = (1+nm)/e Untuk bilangan besar, dapat digunakan algoritma extended Euclid.
6. Kunci publik : e, n Kunci private : d, n

Misalkan B akan mengirim pesan ke A, maka yang harus dilakukan oleh B adalah:

1. Ambil kunci publik A yg otentik (n, e)
2. Representasikan message sbg integer M dalam interval [0,n-1]
3. Hitung C = M ^ e (mod n)
4. Kirim C ke A

Sedangkan untuk proses dekripsi, A harus menggunakan kunci pribadi d untuk menghasilkan
M = C^(d) (mod n)

SOCKET SECURE LAYER (SSL)


Secure socket layer
Secure socket layer  (SSL) dikembangkan oleh Netscape communication corp pada tahun 1994, SSL melindungi  transmisi HTTP dengan menambahkan laisan enkkripsi pengamanan. SSL tidak hanya melindungi data yang dikirim melalui internet agar tidk dapat dibajak oleh hacker atau cracker karna bisa menyakinkan pihak-pihak yang berkomunikasi bahwa lawan bicara mereka di internet dapat dipercaya (melalui penggunaan sertifikat digital).
SSL memberi 3 keamanan di antaranya :
Ø  Menjadikan saluran (kanal) sebagai saluran (kanal) privat. Enkripsi digunakan terhadap seluruh data setelah handshaking (protokol pembuka sebelum terjadi pertukaran data). Jadi, data-data yang dikirim melalui internet ke tempat tujuan akan terjamin keamanannya.
Ø  Kanal di auntentikasi, server selalu di auntentikasi dan client juga di auntentikasi untuk menjaga keamanan data yang akan dikirim melalui satu jaringan.
Ø  Karnel yang andal,dimanan setiap data yang disadap dan di modifikasi saat data dikirim oleh pihak yang tidak bertanggung jawab daat diketahui oleh pihak yang sedang berkirim data(dideteksi) dengan menggunakan message integrity(authentication)

Protokol SSL dibagi menjadi 3 baian,yaitu :
a.       Protokol SSL record yang melapiskan protokol transport (TCP) yang andal. Protokol SSL record digunakan untuk membungkus data yang dikirim dan diterima setelah protocol handshake digunakan untuk membangun parameter keamanan waktu terjadi pertukaran data.
b.      Protokol SSL handshke berfungsi membangun parameter kemanan  sebelum terjdi pertukaran data antara da sistem.pada round pertama,SLL akan melakukan koneksi antara client (C) dengan server (S). Jika server menerima handshake dari clien,maka server  akan mengirim pesan server_hello dan cient bisa menggunakan protokol tersebut.client bisa mengirim pesan tanpa permintaan server.
1.       C             ->            S     :    {      version     //   rand1//  sesion_id//chiper_list//compression_list}
Version : versi  dai SSL yang digunakan, rand1 : client akan mendapatkan keseptan untuk mengatur waktu untuk melakuan penanatanganan setifikat digital  dan diatur menjadi 28 bit secara random.session_id biasanya memiliki nilai 0 (mask ke sesi baru), chiper_list yang berarti bahwa client mmengerti permintaan terhadap  perintah tersebut sudah dpenuhi. Compressin_list : identifikasi kmpresi algoritma yang akan digunkan.
2.       S              ->            C    :     { version     //    rand2//sessin_d//chiper_list//compression}
Pada tahap dua server sudah mengerti apa yang dibutuhkan oleh client contoh : chiper akan memilih algoritma RSA pada round pertamadan  pada round ke duaakan dilakukan antetikasi terhadap algoritma tersebut, lalu server megirimkan client sertifikat X.509
3.       S  -> C :{server_cert}
Pada pesan berikutnya terjai pengaturan parameter, dan jika RSA sertifikat yang akan di tandaangani, server akan mengirim public key modulo dan oppenent yang digunakan untuk merahasiakan pesan tersebut menggunakakn fungsi satu arah (hash)
4.       S  ->  C  :  {mod//exp//{hash (rand1//rand2 //   mod//exp} Ks}
Rand1 dan rand 2 adlah  data random dari dua kali round dan pesan.  Fungsi hash pada  perintah di atas merupkan suatu rentetan dari  MD5 dan SHA-1 yang akan memberikan paraeter tanda tanga digital yang akan di enkripsi menggunakan private key Ks  oleh server.
5.       S  ->  C  :  { cert_type ,good+cert_authorities}
Cert_type sudah di identifikasi tipe dari sertifikat yang diminta. Good_cert_authorities identifikasi sertifikat authority’s yang akan di akses oleh server dan server akan mengirim pesan terakir kepada client pada sesi round kedua.
6.       S   ->   C  :  {end_round2}
Setelah round 2 berakir, maka round 3 masuk bahwa client sudah valid dengan sertifikat yang dikirim server dengan parameternya. Jika server memina sertifikat itu kembali,maka client wajib mengirim dengan sinyal dan menyatakan bahwa dia belum mendapatkan sertifikat.
7.       C  ->  S :  { client_cert}
Client akan mengirim esan kembali untuk melakukan pertukaran kunci menggunakan kunci public  dengn enchiper 28 byte secara random yang akan meghasilkan ” pre master secret”  server dan client yang akan menggunakan share master secret.
8.       C  ->  S   {pre}
Client mengakiri dengan sertifikasi pesan dan serer akan melakukan pengecekan terhadap semua pesan yang sudah dikirim apakah sudah diterima dengan benar.
9.       C   ->   S   :  {  hash// {master//opad//hash(messages//master//ipad))}
Master merupakanmaster secret komputer dari pre yang dikirim sebelumnya, sedangkan opad dan ipad adalah yang menjelaskan fngsi dari  HMAC (hash ceksum).
10.    C  ->   S   :   {   hash//master//opad//hash(messages//0x34C4E54//master//ipad)}
Server merespon dengan “ change chiper spec” dan pesan akan memberitahukan kepada client untuk menggunakan chiper yang sudah ditentukan oleh server.
S->  C  :  {hash//master//opad//hash  (messages//0x53525652//master//ipad}
Client dan server teah selesai melaukan pengiriman pesan.
c.       Protokol SSL alert akan memberian tanda kondisi sudah tiak terkoneksi lagi (jika pengirim mengirim pesan dan yang akan menerima sedang off-line, maka pesan akan dipending ampai penerima terkoneksi kembali).

SSL architecture

Protokol SSL didesian untuk bisa digunakan pada provider TCP yang dapat dipercaya layanan keamanannya. SSL  tidak hanya menggunakan satu protokol, tetapi dua layer (lapisan) protocol. SSl record protocol merupakan layanan keamanan dasar ke lapisan protocol yang lenih tinggi. Hypertext transfer protocl (HTTP) layanan tranfer data antara client dan server bisa beroperasi dengan SSL.

Kerberos protocol
Kerberos adalah protocol untuk keperluan auntetikasi yang dikembangkan dari proyek athena di universitas MT amerika, yang memilki nomor standard X509. Pada umumnya kerberos memiliki tiga fungsi dasar, di antaranya :
1.       Autentikasi
2.       Accounting
3.       Audit
Kerberos bertujuan mengatasi penyalahgunaan jaringan komputer, contohnya ketika banyak user yang terhubung dengan workstation dan banyak user yang ingin melakukan akses terhadap beberapa server tersebar di jaringan tersebut, administrator menginginkan server dapat membatasi akses terhadap pengguna yang tidak sah. Jikaingin mendapatkan kases ke server, user harus bisa membuktikan keaslian permintaan layan. Dalam kasus seperti itu, workstation tidak dapat dipercaya untuk melakukan identifikasi terhadap  user yang dapat menyebabkan ancaman keamanan seperti berikut :
Ø  User dapat menakses workstation dan sebenarnya dia tidak berhak terhadapa kases tersebut, atau berpura-pura menjadi user yang memilki hak terhadap jaringan tersebut.
Ø  User dapat merubah addres network dari suatu workstation.
Penyadapan komunikasi data dan panyadap dapat melakukan serangan balasan untuk mendapatkan izin mengakses server atau bisa jadi membuat komputer enjadi sibuk dengan menggunakan serangan “flood attack” yang sering juga disebut dengan spray, yakni membanjiri suatu jaringan dengan request sehingga mengurangi  kecepatan network dan host-host yang berada di dalamnya secara signifikan secara teruz menerus sehingga jaringan menjadi macet.
Protocol kerberos mengsumsi bahwa terdapat satu atau lebih server beberapa client dalam satu jaringan. Server akan memeriksa idntitas user yang menggunakan salah satu workstation. Pada dasarnya kerberos memiliki hukum protocol dasar, daintaranya adalah :
Ø  Autentikasi client supaya bisa mendapatkan tiket granting
Ø  Service granting memberikan layanan tiket granting
Ø  Service authentication : layanan autentikasi srver atau client untuk medapatkan layanan
Protocol kerberos memiliki 3 server dasar,yaitu :
Ø  Server utama
Ø  Server tiket greating service (TGS)
Ø  Server service ( server  file,server printer,server internet)
Kerberos versi  4 mengunakan algoritma dan encryption standard (DES) untuk keperluan layanan autentikasi.
A.      Autentikasi dialog sederhana
Jaringan yang tidak terlindungi, client bisa meminta layanan kepada srver. Hal itu akan menyebabkan kerahasiaan dan autentikasi suatu jarinan tidak terjamin. Untuk mengatasi hal itu, erver harus bisa meminta konfirmasi identitas client ketika meminta suatu layanan,jika terjadi interaksi antara client dan server. Alternatif dari masalah tersebut adalah dengan menggunakan authentication server (AS) yang berfungsi menympan semua ID user di dalam database.
C  -> AS                 : Idc//Pc//Idv
AS   ->  C               : ticket

C  -> V                   : Idc//ticket
Ticket  =  Ekv{ Idc//Adc//Idv
Catatan :
C             = client
AS           = authentication server
V             = server
IDc          = identifikasi user  yang ada di client
Idv          =  identifikasi  server
Pc           = password user yang ada di client
Adc        = alamat jaringan yang ada pada client
Kv           = sharing kunci rahasia antara AS dan C
Pada contoh di atas, user akan meakukan login terhadap workstation untuk memint akses ke server. Workstation akan meinta password dari user dan mengirimkan pesan yang berisi password, ID ke AS. Service server (srever ID) akan melakukan pencocokan password yang ada di dalam daabase. Jika password dan ID yang ditemukan cocok, maka uer akan mendaatkan izin untuk mengakses server.setelah client mendaatkan akses,maka AS akan membuat tiket yang sudah di share menggunakan kunci rahasia yang telah di enkripsi antara AS dan server ID.selanjutnya,tiket akan dikirim kebali ke client,tetapitiket terlebih dahulu di enkripsi dan client tidak akan bisa membacanya.
Setelah mendpatkan tiket,clien bosa meminta layanan kepada user.client akan mengirim pesan ke server yang berisi client ID. Jika cocok, server akan memberikan izin penuh bagi user untuk menggunakan layanan yang ada.


MD-5


Kriptografi berasak dari bahasa Yunani, crypto dan graphia. Crypto berarti secret (rahasia) dan graphia berarti writing (tulisan). Menurut terminologinya, kriptografi adalah ilmu dan seni untuk menjaga keamanan pesan ketika pesan dikirim dari suatu tempat ke tempat lain. Cukup banyak algoritma yang sering dipakai untuk meng-enkripsikan suatu informasi atau data. Untuk kesempatan ini, mungkin hanya menjelaskan tentang Hash function.

Data yang disimpan di dalam memori komputer perlu ditempatkan dalam suatu cara sedemikian sehingga pencariannya dapat dilakukan dengan cepat. Setiap data yang berupa record mempunyai field kunci yang unik yang membedakan suatu record dengan record yang lainnya. Fungsi Hash digunakan untuk menempatkan suatu record yang mempunyai nilai kunci k. fungsi hash yang paling umum berbentuk.

                                               h(k) = k mod m

yang dalam hal ini m adalah jumlah lokasi memori yang tersedia (misalkan memori bebentuk sel-sel yang diberi indeks 0 sampai m -1). Fungsi diatas menempatkan record dengan kunci k pada suatu lokasi memori yang berlamat h(k). 

Selanjutnya saya akan menjelaskan algoritma MD-5 dan SHA yang merupakan pengembangan varian dari fungsi hash.

MD-5

Merupakan fungsi Hash yang sering digunakan untuk mengamankan suatu jaringan komputer dan internet yang sengaja dirancang untuk tujuan sebagai berikut:

1. Keamanan  : Hal ini tidak bisa dielakkan karena tidak satupun sistem algoritma yang tidak dapat bisa dipecahkan. Serangan yang sering digunakan untuk menjebol algoritma Hash adalah dengan menggunakan serangan brute force

2. Kecepatan  : Software yang digunakan mempunyai kecepatan yang tinggi karena didasarkan sekumpulan manipulasi operan 32 bit.

3. Simple  : Tanpa menggunakan struktur data yang kompleks

MD5 digunakan untuk pengkodean password pada sistem operasi. MD5 mengolah masukan yang berbentuk blok 512 bit yang dibagi dalam 16 bentuk subblok yang masing-masing berukuran 32 bit, sedangkan keluaran terdiri dari 4 blok berukuran 32 bit, dari 4 blok keluaran digabungkan menjadi 128 bit.

MD-5 adalah salah satu aplikasi yang digunakan untuk mengetahui bahwa pesan yang dikirim tidak ada perubahan sewaktu berada di jaringan. Algoritma MD-5 secara garis besar adalah mengambil pesan yang mempunyai panjang variable diubah menjadi ‘sidik jari’ atau ‘intisari pesan’ yang mempunyai panjang tetap yaitu 128 bit. ‘Sidik jari’ ini tidak dapat dibalik untuk mendapatkan pesan, dengan kata lain tidak ada orang yang dapat melihat pesan dari ‘sidik jari’ MD-5

Langkah-langkah pembuatan message digest secara garis besar:

1. Penambahan bit-bit pengganjal (padding bits).
2. Penambahan nilai panjang pesan semula.
3. Inisialisasi penyangga (bufferMD.
4. Pengolahan pesan dalam blok berukuran 512 bit.

berikut contoh hasil MD5 :

Plain teks:

ini merupakan contoh hash MD5

Cipher teksnya menjadi :

13 D6 8B 6C EC 35 8D AE D8 29 21 64 BC 38 C5 8F

KRYPTOGRAPHY SIMETRIS DAN KRYPTOGRAPHY ASIMETRIS


KRIPTOGRAFI SIMETRIS
Algoritma Simetris (Algoritma Sandi Kunci Rahasia) Algoritma simetris, sering juga disebut dengan algoritma kunci rahasia atau sandi kunci rahasia. Adalah algoritma kriptografi yang menggunakan kunci enkripsi yang sama dengan kunci dekripsinya. Algoritma ini mengharuskan pengirim dan penerima menyetujui suatu kunci tertentu sebelum mereka saling berkomunikasi. Keamanan algoritma simetris tergantung pada kunci, membocorkan kunci berarti bahwa orang lain dapat mengenkripsi dan mendekripsi pesan. Agar komunikasi tetap aman, kunci harus tetap dirahasiakan.

            Sifat kunci yang seperti ini membuat pengirim harus selalu memastikan bahwa jalur yang digunakan dalam pendistribusian kunci adalah jalur yang aman atau memastikan bahwa seseorang yang ditunjuk membawa kunci untuk dipertukarkan adalah orang yang dapat dipercaya. Masalahnya akan menjadi rumit apabila komunikasi dilakukan secara bersama-sama oleh sebanyak n pengguna dan setiap dua pihak yang melakukan pertukaran kunci, maka akan terdapat sebanyak (n-1)/2 kunci rahasia yang harus dipertukarkan secara aman.

Contoh dari algoritma kriptografi simetris adalah Cipher Permutasi, Cipher Substitusi, Cipher Hill, OTP, RC6, Twofish, Magenta, FEAL, SAFER, LOKI, CAST, Rijndael (AES), Blowfish, GOST, A5, Kasumi, DES dan IDEA.

Contoh Kriptografi Simetris : 

            Perhitungan Matematis Dasar dari teknik hill cipher adalah aritmatika modulo terhadap matriks. Dalam penerapannya, Hill cipher menggunakan teknik perkalian matriks dan teknik invers terhadap matriks. Kunci pada hill cipher adalah matriks n x n dengan n merupakan ukuran blok. Jika matriks kunci kita sebut dengan K, maka matriks K adalah sebagai berikut :
Matriks K yang menjadi kunci ini harus merupakan matriks yang invertible, yaitu memiliki multiplicative inverse K-1 sehingga :
K.K-1 = 1
Kunci harus memiliki invers karena matriks K-1 tersebut adalah kunci yang digunakan untuk melakukan dekripsi.

Cara Enkripsi
Dengan mengkodekan atau mengubah setiap huruf abjad dengan integer sebagai berikut: A = 0,
B = 1, …, Z = 25
maka secara matematis, proses enkripsi pada hill cipher adalah:
C = K . P mod 26
C = Cipherteks | K = Kunci | P = Plainteks
Proses enkripsi pada hill cipher dilakukan per blok plainteks. Ukuran blok tersebut sama dengan ukuran matriks kuncinya. Perhatikan contoh dibawah ini!
P = D O D I S P U T R A ,dikodekan/diintegerkan menjadi
P = 3 14 3 8 18 15 20 19 17 0

            Karena matriks kunci K berukuran 2, maka plainteks dibagi menjadi blok yang masing-masing bloknya berukuran 2 karakter. Blok pertama dari plainteks P1,2 =[3;14] kemudian dienkripsi dengan kunci K dengan persamaan C = K . P mod 26. Karena perkalian tersebut menghasilkan lebih dari angka 25 maka dilakukan modulo 26 pada hasil yang lebih dari 25.
Karakter yang berkorespondensi dengan 21 dan 9 adalah V dan J. Setelah melakukan enkripsi semua blok pada plainteks P maka dihasilkan cipherteks C sebagai berikut:
P = D O D I S P U T R A
C = V J R N P W L U R X

Cipherteks yang dihasilkan oleh enkripsi hill chiper atau kode hill menghasilkan cipherteks yang tidak memiliki pola yang mirip dengan plainteks atau pesan aslinya.
Mancari K Invers dan Teknik Dekripsi Perhitungan matematis dekripsi pada hill chiper atau kode hill ini sama halnya dengan enkripsi. Namun matriks kunci harus dibalik (invers) terlebih dahulu dan kunci invers harus memenuhi persamaan K . K-1 = 1.
P=K-1.Cm26
Sebelum mendekripsi kita akan menginvers kunci K terlebih dahulu, untuk menginvers kita akan menggunakan persamaan [K | I] = K-1, proses invers ini kita akan kita lakukan dengan operasi baris/ row operation.


Dari perhitungan diatas didapatkan K invers :

            K invers ini sudah memenuhi persamaan K . K-1 = I, berdasarkan perkalian K dengan K-1 kemudian dimodulasi dengan 26 menghasilkan I = [1 0;0 1]. Setelah itu kita akan melakukan dekripsi terhadap chiperteks, kemudian dirubah menjadi integer terlebih dahulu. Dengan kunci dekripsi yang dimiliki, kriptanalis hanya perlu menerapkan persamaan (P = K-1 . C mod 26) pada cipherteks dan kunci, sehingga menghasilkan plainteks/ pesan asli (P = D O D I S P U T R A).
            Hill cipher/ kode hill merupakan algoritma kriptografi klasik yang sangat kuat dilihat dari segi keamanannya dnegan matriks kunci hill cipher harus merupakan matriks yang invertible, karena disitulah letak keunikan sekaligus kesulitan kode hill tersebut.

KRIPTOGRAFI ASIMETRIS

Algoritma Asimetris (Algoritma Sandi Kunci Publik)

            Algoritma Asimetris, sering juga disebut dengan algoritma kunci publik atau sandi kunci publik, menggunakan dua jenis kunci, yaitu kunci publik (public key) dan kunci rahasia (secret key). Kunci publik merupakan kunci yang digunakan untuk mengenkripsi pesan. Sedangkan kunci rahasia digunakan untuk mendekripsi pesan. Kunci publik bersifat umum, artinya kunci ini tidak dirahasiakan sehingga dapat dilihat oleh siapa saja. Sedangkan kunci rahasia adalah kunci yang dirahasiakan dan hanya orang-orang tertentu saja yang boleh mengetahuinya. Keuntungan utama dari algoritma ini adalah memberikan jaminan keamanan kepada siapa saja yang melakukan pertukaran informasi meskipun di antara mereka tidak ada kesepakatan mengenai keamanan pesan terlebih dahulu maupun saling tidak mengenal satu sama lainnya.

            Algoritma asimetris pertama kali dipublikasikan oleh Diffie dan Hellman pada tahun 1976 dalam papernya yang berjudul “New Directions in Cryptography”. Contoh dari algoritma asimetris adalah RSA, ElGamal, McEliece, LUC dan DSA (Digital Signature Algorithm).

 Contoh Kriptografi Asimetris

• Kunci Publik:

– Pilih bil. prima p = 7 dan q = 11, n = 7.11 =77
– F(n)=(p-1).(q-1)=6.10= 60 artinya
    F(n)={1,2,3,4,6,8,..,76}={x|gcd(x, n)=1}
– Pilih e dalam {x|gcd(x, 60)=1}, misalnya e=17
– Hapus p dan q dan Kunci Publik n=77, e=17

• Kunci Rahasia:

– d = e-1 mod F(n), d .e = 1 mod 60, d =53
– 53 . 17 mod 60 = 901 mod 60 = 1 mod 60

ENIGMA


ASAL USUL ENIGMA
Pada tahun 1917 Edward Hugh Hebern mengembangkan sebuah mesin kriptografi dengan menggunakan piringan putar dengan setiap piringan menampilkan chiper substitusi. Ide tersebut banyak dikembangan oleh negara lainnya. Pada tahun 1918, Arthur Scherbius mempatenkan sebuah mesin chiper yang menggunakan rotor. Pada tahun 1925, Scherbius juga membeli hak paten mesin yang sama dari Dutchman Koch untuk mengamankan patennya sendiri. Kesepakatan akhirnya didapatkan pada tahun 1927.
Mesin Enigma pertama diperdagangkan pada tahun 1923 dengan nama Enigma A. Mesin tersebut masih berukuran besar dan memiliki bobot yang cukup berat. Mesin ini juga dilengkapi dengan papan ketik yang juga memiliki bobot yang cukup berat, sekitar 50kg. Enigma B diluncurkan tidak lama setelah Enigma A beredar dengan spesifikasi yang sama. Enigma C dikembangkan dengan mendapatkan ide dari kerabat Scherbius, Willy Korn. Pengambangan dilakukan pada bagian pemamtul sehingga mesin tersebut dapat berukuran lebih kecil dan ringan. Tahun 1927 dikeluarkan Enigma D dengan mengganti papan ketik dengan panel lampu sehingga lebih praktis. Enigma D ini juga diperdagangkan dengan berbagai versi dan diperjualbelikan di Eropa untuk keperluan militer dan diplomatik.
Beberapa mata – mata masih dapat memecahkan kode enigma tersebut. Pemecah kode dari Inggris berhasil memecahkan kode enigma Spayol yang dioperasikan tanpa papan panel. Jepang juga menggunakan enigma versi T yang dikenal juga dengan nama enigma Tirpiz yang merupakan adaptasi dari enigma versi K. Jepang juga mengembangkan enigma sendiri dengan meletakkan mesin rotor secara horizontal.
Mesin Enigma Versi Militer
Tahun 1926, Jerman membeli mesin enigma untuk keperluan militer. Pada tahun 1928, Wehrmacht, Jerman Abwehr dan Luftwaffe membeli enigma versi mereka sendiri, enigma G yang dikenal dengan enigma Zahlwerk. Model ini memiliki kotak gigi yang berfungsi untuk memajukan rotor dan reflektor berputar. Mesin ini tidak dilengkapi papan steker, akan tetapi Wehrmacht memperbaharui mesin denga menambahkan papan steker dan mekanisme pemajuan rotor yang berbeda. Mesin ini kemudian diberi nama enigma I yang lebih dikenal dengan nama enigma wehrmacht. Pada awalnya mesin ini hanya memiliki 3 rotor, tahun 1939, mereka melengkapi mesin tersebut dengan 5 rotor.
Tahun 1934, angkatan laut Jerman mengadaptasi model ini dengan memperbanyak komponen rotor menjadi 8 buah. Tahun 1941, Abwehr menyatakan bahwa mwsin ini tidak dapat dipecahkan. Pada permulaan tahun 1942, model 4 rotor yang terkenal, M4, diperkenalkan di Kriegsmarine.
Pemecah Kode
Marian Rejewski, Henryk Zygalski dan Jerzy Rozicki berhasil memecahkan kode enigma dan mengembangkan mesin elektronis yang dinamakan Bombe untuk mempercepat proses pemechan kode. Ada 2 cela keamanan pada prosedur enigma Jerman, yaitu pengaturan awal yang sama dan penyandian 2 kali kunci pesan. 2 ketentuan tersebut merupakan cela yang dapat digunakan untuk melakukan kriptalisis. Tahun 1939, biro tersebut tidak dapat memecahkan kode enigma lagi dikarenakan terus ditingkatkannya perancangan mesin dan prosedur – prosedurnya.
Bletchley Park
Pemerintah dan sekolah penyadian di Bletchley Park awalnya memecahkan kode secara manual. Agustus 1940, Alan Turing dan Gordon Welchman merancang mesin Bombe yang merupakan alat mekanik elektronis dan dapat bekerja pada semua prinsip enigma yang ada. Pada awal tahun 1942, mesin 4 rotor yang dikenal dengan “SHARK” diperkenalkan di Kriegsmarine dan mempersulit Bletchley Park untuk memecahkan kodenya. Beberapa bulan kemudian, Bletchley Park berhasil mengembangkan mesin Bombe untuk memecahkan kode mesin enigma 4 rotor.
KOMPONEN MESIN ENIGMA
Mesin Enigma terdiri dari 5 komponen utama, yaitu :
# Rotor –> bagian terpenting dari enigma. Berdiameter sekitar 10cm berupa piringan yang terbuat dari karet  yang keras  dengan deretan kuningan yang berisi pin – pin yang menonjol yang berbentuk bundar.  Sebuah rotor menunjukkan sebuah enkripsi yang sederhana, 1 huruf di enkripsi menjadi huruf lainnya. Hasil enkripsi akan menjadi lebih rumit jika menggunakan lebih dari 1 rotor.
# Penggerak Rotor –> untuk menghindari chiper yang sederhana, beberapa rotor harus diputar  berdasarkan penekanan sebuah kunci. Hal ini dilakukan untuk memastikan kriptogram yang dibuat  merupakan sebuah transformasi perputaran rotor yang menghasilkan poloponik chiper. Alat yang  paling banyak digunakan untuk penggerakan rotor tersebut adalah mekanisme roda bergigi dan penggeraknya. Penggerak roda memutar rotor sebanyak 1 karakter ketika sebuah huruf diketikkan  pada papan kunci.
# Reflector –> digunakan untuk memstikan sebuah huruf tidak dikodekan pada dirinya sendiri dan untuk  menjadikan mesin ini reversible (jika sebuah huruf dienkripsi, hasil enkripsi huruf tersebut adalah  huruf semula). Reflector hanya terdiri dari 13 pasang huruf yang susunannya acak.
# Papan Steker –>digunakan untuk menukar 2 buah huruf dan untuk meningkatkan keamanan dari pesan  rahasia mesin enigma. Sebelum masuk ke proses penyandian, huruf yang telah ditentukan  pertukarannya akan di ubah dipapan ini.
# Kotak Enigma –> digunakan untuk menyimpan semua perlengkapan dari mesin ini. Biasanya kotak ini  dapat menampung 10 buah rotor, papan steker, dan papan ketik.
CARA KERJA MESIN ENIGMA
Mesin enigma bekerja berdasarkan perputaran rotor – rotor yang ada. Ketika sebuah huruf diketikkan di papan panel, urutan kerjanya :
1. Majukan rotor kanan sebanyak 1 huruf. Huruf yang diketikkan masuk ke rotor paling kanan dan pada rotor ini dicari padanan pada rotor kedua. Setelah itu masuk ke rotor kedua.
2. Pada rotor kedua, huruf hasil padanan dari rotor pertama dicari padanannya untuk rotor ketiga.
3. Pada rotor ketiga, dicari padanan untuk reflector.
4. Setelah masuk ke reflector, dicari pasangan huruf tersebut pada reflector, dan hasil pada reflector dikembalikan kepada rotor ketiga, kedua, kesatu, dan hasilnya menghasilkan huruf enkripsi.
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

                                        
                                                  Gambar Plugboard pada Enigma


Dengan bagian yang paling penting adalah rotor, karena rotorlah mekanisme utama dalam pengenkripsian yang dilakukan :


                                   




Rotor pada Enigma

Adapun bagian-bagian dari rotor tersebut dengan penomoran sesuai dengan gambar di
atas adalah :

1.      alphabet ring,
2.      shaft,
3.      catch,
4.      core containing cross-wirings,

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).



                         
                                                    Wiring pada Mesin Enigma




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.


                                          

Skema Cara kerja Enigma

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 sudah mencapai 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 digambar di situ terlihat bahwa huruf A dihubungkan 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.

Enkripsi Pada Enigma

Sebenarnya yang terjadi pada enigma pada sebuah enkripsi yang dia lakukan adalah sebuah permutasi panjang :

E = P R M L U L- 1M-1 R-1 P-1

Dengan R adalah right rotor, M adalah middle rotor, L adalah left rotor, P adalah plugboard, dan U adalah reflector. Dan E adalah hasil enkripsinya. Dan semuanya itu ditentukan oleh ketetapan yang ditentukan Jerman berbeda-beda untuk setiap jaringan yang ada dan untuk setiap harinya. Dan kesemuanya itu ditentukan Jerman dengan cara memberikan sebuah buku sebagai standar untuk masing-masing operator. Adapun hal-hal yang diatur adalah : pilihan rotor dan peletakan posisi dari rotor-rotor tersebut, pemilihan huruf awal dari setiap rotornya, posisi plug pada plugboard, dan tipe reflector yang digunakan. Misal pada suatu hari standar yang disebarkan oleh kurir-kurir Jerman ke setiap operator enigma mereka adalah sebagai berikut

25
                                                                     I III V
    B M X
DM OA MR IS NE IL KI UN

Maka kode tersebut dikeluarkan pada tanggal 30 pada bulan itu, kemudian rotor yang digunakan
untuk left rotor adalah I, untuk middle rotor adalah III, dan kemudian untuk right rotor adalah V. Dan baris berikutnya adalah posisi awal untuk masing-masing rotor, jadi B adalah posisi awal dari rotor I, M adalah posisi awal dari rotor kemudian baris terakhir menentukan huruf-huruf apa saja yang perlu disambungkan pada plugboard. Jadi untuk contoh ini huruf D dihubungkan dengan M, huruf O disambungkan dengan A, dan seterusnya.

Pemecahan Kode Mesin Enigma

Kode hasil enkripsi mesin enigma yang telah serumit itu dan bahkan diklaim oleh Jerman tidak mungkin dipecahkan tersebut ternyata tetap saja mempunyai kelemahan-kelemahan yang
pada akhirnya berakhir pada terpecahkannya kode enkripsi tersebut oleh pihak musuh. Kelemahan tersebut antara lain :

1. Fakta bahwa sebuah huruf tidak dapat dipetakan ke huruf itu sendiri, contohnya missal huruf ‘A’ sebagai input tidak mungkin menghasilkan huruf ‘A’ juga; sebagai output.

2. Operator harus melakukan setting untuk mendapatkan initial value. Di mana di kasuskasus tertentu, hal tersebut dapat terprediksi, dan kesalahan yang umum dilakukan oleh operator-operator tersebut adalah dalam memilih nilai yang dapat dengan mudah diprediksi sebagai initial value.

3. Penyandian bersifat resiprok, jadi bila huruf ‘A’ disandikan menjadi huruf ‘Z’, maka huruf ‘Z’ akan disandikan menjadi huruf ‘A’.

4. Kunci pesan dikirimkan 2 kali.

5. Posisi turnover pada setiap rotor unik, sehingga memungkinkan untuk ditebak rotor
mana saya yang digunakan.


Metode Permutasi Marian Rejewski

Marian Rejewksi adalah seorang matematikawan asal Polandia yang memang ditugaskan untuk memecahkan kode enigma. Saat itu Rejewski bisa mendapatkan pesan-pesan terenkripsi Jerman dengan menyadap sinyal komunikasi radio tentara Jerman. Sampai akhirnya dia berhasil mendapatkan 6 buah pesan terenkripsi pada hari yang berbeda. Dan dapat disusun dalam persamaan permutasi sebagai berikut :


A = S H R’ T’ R’-1 H-1 S-1
B = S H Q R’ Q-1 T’ Q R’-1 Q-1 H-1 S-1
C = S H Q2 R’ Q-2 T’ Q2 R’-1 Q-2 H-1 S-1
D = S H Q3 R’ Q-3 T’ Q3 R’-1 Q-3 H-1 S-1
E = S H Q4 R’ Q-4 T’ Q4 R’-1 Q-4 H-1 S-1
F = S H Q5 R’ Q-5 T’ Q5 R’-1 Q-5 H-1 S-1

Dengan S adalah permutasi yang berasal dari plugboard, H adalah permutasi yang berasal dari
hubungan antara socket pada plugboard dengan mesin, T adalah permutasi rotor, dan kemudian
yang terakhir, Q adalah permutasi sederhana yang memetakan sebuah huruf menjadi huruf berikutnya. Persamaan yang terdiri dari 6 persamaan dan 4 buah permutasi yang tidak diketahui tersebut tidak dapat terpecahkan, sampai pada saatnya Rejewksi berhasil mendapat bantuan berupa tabel kunci harian untuk bulan September dan Oktober 1932. Yang kemudian member petunjuk pada Rejewksi dalam memecahkan kode enigma.

Metode Grill

Metode ini adalah metode yang merupakan kelangsungan dari penemuan Rejewski. Yang mendekripsi pesan berdasarkan persamaan permutasi yang telah ditemukan oleh oleh Rejewski, dan akhirnya dengan mengetahui kebiasaan bahwa 3 huruf pertama kunci biasanya diset berjauhan oleh operator, akhirnya keenam persamaan permutasi tersebut dapat terpecahkan. Adapun urutan dari hal-hal yang dapat dipecahkan oleh Metode ini adalah pilihan roda kanan, kombinasi dari plugboard, baru kemudian posisi dari roda tengah dan kiri. Yang kesemuanya ini didapatkan dari percobaan ribuan kalo yang dilakukan untuk memecahkan kode enigma ini.

Metode Lembar Berlubang Zygalski

Metode ini berdasar fakta bahwa dari semua kemungkinan posisi rotor, 40% pasti permutasi AD. Yang kemudian berkahir dengan ditemukannya posisi roda pada setiap siklus. Namun pada akhirnya metode ini tidak berhasil untuk digunakan, karena banyaknya waktu dan biaya yang dibutuhkan untuk membuat kertas berlubang untuk setiap kombinasi roda.

Metode Katalog Karakteristik

Metode ini didasarkan pada fakta bahwa permutasi AD, BE, dan CF tidak ditentukan oleh kombinasi plugboard, dan hanya ditentukan oleh posisi-posisi roda rotor yang digunakan. Yang
kemudian dapat dimodelkan dalah bentuk permutasi disjungtif :

(a1a2a3a4a5a6a7a8a9a10a11a12a13)
(b1b2b3b4b5b6b7b8b9b10b11b12b13)

Dan setiap huruf dipetakan ke hurud berikutnya, dengan a13 dipetakan kembali ke a1.



Bombe

Alat yang dibuat oleh Alan Turing dari Inggris ini dirancang supaya walau Jerman mengubah standar operasi mereka, dengan teknik-teknik yang sudah ditemukan, tetap dapat memecahkan kode dari mesin enigma. Hal yang mendasari kerja bombe adalah sifat yang disebabkan oleh reflector pada mesin enigma, di mana terjadi enkripsi yang resiprok, yang kemudian berhasil diturunkan sehingga posisi dari roda-roda tersebut dapat ditebak dengan memperhitungkan hal tersebut, hanya saja waktu yang diperlukan cukup lama jika dilakukan secara manual seperto sebelum sebelumnya. Maka dibuatlah bombe sebagai alat mekanik untuk mengotomatisasi pekerjaan tersebut.