• Tidak ada hasil yang ditemukan

Implementasi Algoritma One Time Pad pada Mikrokontroler Atmega32 untuk Keamanan Password Sistem Kendali Pintu Berbasis Android

N/A
N/A
Protected

Academic year: 2017

Membagikan "Implementasi Algoritma One Time Pad pada Mikrokontroler Atmega32 untuk Keamanan Password Sistem Kendali Pintu Berbasis Android"

Copied!
14
0
0

Teks penuh

(1)

2.1. Kriptografi

Ditinjau dari segi terminologinya, kata kriptografi berasal dari bahasa Yunani yaitucrypto yang berarti secret (rahasia) dan graphia yang berarti writing (tulisan). Jadi kriptografi adalah ilmu dan seni untuk menjaga keamanan pesan ketika pesan dikirim dari suatu tempat ke tempat lain. Maka secara termonologi kriptografi merupakan langkah-langkah logis bagaimana menyembunyikan pesan dari orang-orang yang tidak berhak atas pesan tersebut (Ariyus, 2008).

2.1.1. Jenis-jenis algoritma kriptografi

Algoritma Kriptografi dibagi tiga berdasarkan kunci yang dipakai, yaitu algoritma simetri (menggunakan satu kunci untuk proses enkripsi dan dekripsi), algoritma asimetri (menggunakan kunci yang berbeda untuk proses enkripsi dan dekripsi), dan fungsihash(Ariyus, 2008).

2.1.1.1. Algoritma simetris

(2)

Jika kunci tersebut diketahui oleh orang lain maka orang tersebut dapat melakukan enkripsi dan dekripsi pada pesan (Sadikin, 2012). Yang termasuk algoritma kunci simetris adalah hill cipher, vigenere cipher, caesar cipher, OTP, DES, RC2, RC4, RC5, IDEA, Twofish, Magenta, FEAL, SAFER, LOKI, CAST, Rijndael (AES), Blowfish, GOST, A5, Kasumi dan lain-lainnya.

Gambar 2.1 Skema Kriptografi Simetris

2.1.1.2. Algoritma asimetris

Kunci yang digunakan dalam algoritma asimetri (asymmetric cryptosystems) untuk melakukan enkripsi dan dekripsi berbeda (Smart, 2004). Algoritma asimetris disebut juga dengan kriptografi kunci publik karena algortima ini memiliki kunci yang berbeda untuk enkripsi dan dekripsi, dimana enkripsi menggunakan public key dan untuk dekripsinya menggunakan private key. Public key dan private key harus saling berpasangan secara matematis. Dengan memberikanpublic key, pembuat kunci berhak memberikan dan mendapatkanpublic keyagar pesan aman dan hanya bisa dibaca oleh si pembuat kunci. Dalam kriptografi kunci asimetri, hampir semua algoritma kriptografinya menggunakan konsep kunci publik, seperti Rivest-Shamir-Adleman (RSA), El-Gamal, Rabin dan sebagainya (Harahap, 2014). Kecuali algoritma Pohlig˗Hellman karena kunci enkripsi maupun kunci dekripsinya bersifat rahasia.

Gambar 2.2 Kriptografi Asimetris

2.1.2. Algoritma One Time Pad

Algoritma ini ditemukan pada tahun 1917 oleh Mayor Joseph Mauborgne dan Gilbert Vernam. Cipher ini termasuk ke dalam kelompok algoritma kriptografi simetri

Algoritma

Enkripsi AlgoritmaDekripsi

Kunci Rahasia

Teks

(3)

(Prameswara, 2013). One Time Pad berisi deretan karakter kunci yang dibangkitkan secara acak dan setiap kunci hanya bisa dipakai sekali pakai.

Pemilihan kunci harus secara acak dan kunci hanya bisa digunkan satu kali saja agar algoritma One Time Pad tidak mudah dipecahkan (Mollin, 2007). Panjang stream karakter kunci sama dengan panjang pesan. One Time Pad (pad = kertas bloknot) berisi barisan karakter-karakter kunci yang dibangkitkan secara acak. Satu pad hanya digunakan sekali (one time) saja untuk mengenkripsi pesan, setelah itu pad yang telah digunakan dihancurkan. Panjang kunci One Time Pad = panjang teks asli sehingga tidak ada kebutuhan untuk mengulang penggunaan kunci selama proses enkripsi.

Aturan enkripsi yang digunakan persis sama seperti pada kode Vigenere. Enkripsi: ci = (pi + ki) mod 26...(2.1)

Bila diketahui teks asli: “ONETIMEPAD”

Dengan kunci: “TBFRGFARM”

Diasumsikan A= 0, B = 1, . . . , Z=25.

Maka akan didapat teks-kode : “IPKLPSFHGQ” yang mana diperoleh sebagai

(4)

Sistem One Time Pad tidak dapat dipecahkan karena beberapa alasan yaitu barisan kunci acak + teks asli yang tidak acak = teks kode yang seluruhnya acak. Mendekripsi teks kode dengan beberapa kunci berbeda dapat menghasilkan teks asli yang bermakna sehingga kriptanalis tidak punya cara untuk menentukan teks asli mana yang benar.

Algoritma ini memiliki beberapa kelemahan, yaitu : Kunci yang dipakai haruslah benar-benar acak. Menggunakan pseudorandom generator tidak dihitung, karena algoritma ini memiliki bagian yang tidak acak. Panjang kunci juga harus sama dengan panjang pesan, sehingga hanya cocok untuk pesan berukuran kecil. Selain itu, karena kunci dibangkitkan secara acak, maka tidak mungkin pengirim dan penerima membangkitkan kunci yang sama secara simultan, dan karena kerahasiaan kunci harus dijamin, maka perlu ada perlindungan selama pengiriman kunci. Oleh karena itu, algoritma ini hanya dapat digunakan jika tersedia saluran komunikasi kedua yang cukup aman untuk mengirim kunci (Prameswara, 2013).

2.1.3. Blum Blum Shub generator

Blum Blum Shub generator merupakan algoritma pembangkit bilangan yang cukup sederhana. BBS diperkenalkan pada tahun 1986 pada Lenore Blum, Manuel Blum, dan Michael Shub (Schneier, 1996) . Berikut ini algoritma dari BBS :

1. Pilih dua bilangan primapdanq, di manap danqkeduanya kongruen 3 modulo 4. p≡ 3 (mod 4) danq≡ 3 (mod 4)

2. Hasilkan bilangan bulat blumndengan menghitungn= p x q.

3. Pilih lagi sebuah bilangan acak s sebagai seed, bilangan yang dipilih harus memenuhi kriteria:

a. 2 ≤s<n.

b.sdannrelatif prima. 4. Hitung nilaix0=s2modn.

5. Hasilkan bilangan bit acak dengan cara : a. Hitungxi =xi-12modn.

b. Hasilkanzi= bit - bit yang diambil darixi.

(5)

6. Bilangan bit acak dapat digunakan langsung atau diformat dengan aturan tertentu, sedemikian hingga menjadi bilangan bulat.

2.2. Mikrokontroler ATMega32

Mikrokontroler adalah chip yang berisi berbagai unit penting untuk melakukan pemrosesan data (I/O, timer, memory, Arithmatic Logic Unit (ALU) dan lainnya) sehingga dapat berlaku sebagai pengendali dan komputer sederhana (Susilo, 2010).

Mikrokontroler AVR (Alf and Vegard’s Risc processor) standar memiliki 8 bit, dimana semua instruksi dikemas dalam kode 18-bit dan sebagian besar instruksi dieksekusi dalam 1 (satu) siklus clock. AVR berteknologi RISC (Reduced Instruction Set Computing), dengan menggunakan jumlah instruksi yang lebih sedikit, memungkinkan lahan pada chip (silicon real-estate) digunakan untuk meningkatkan kemampuan chip. Keuntungan dari RISC adalah kesederhanaan desain, chip yang lebih kecil, jumlah pin sedikit dan mengonsumsi sedikit daya (Budiharto, 2010).

Mikrokontroler Keluarga AVR secara umum dikelompokkan menjadi 6 (enam) kelompok, yaitu :

a. Keluarga ATtini : biasanya bentuk dimensinya kecil, ukuran memori kecil, jumlah pin masukan dan keluaran juga sedikit.

b. Keluarga AT90Sxx : Merupakan mikrokontroler yang pertama kali dibuat oleh Atmel Corp.

c. Keluarga ATMega : Merupakan pengembangan mikrokontroler AT90Sxx dengan fitur yang lebih banyak.

d. Keluarga AT86RFxx : Merupakan mikrokontroler berorientasi desain minimal. e. Keluarga AT90USBxx : Merupakan mikrokontroler yang berorientasi

pemrograman USB

f. Keluarga AVR 32 Bit contohnya AP7000, UC3Axxxx, UC3Bxxx, UC3Lxx, dsb : Merupakan mikrokontroler dengan register dan instruksi dengan panjang 32 bit.

(6)

Gambar 2.3 Arsitektur ATMega32 Fitur-fitur yang dimiliki oleh ATMega32 adalah sebagai berikut : a. Performa tinggi, mikrokontroler berdaya rendah.

b. Mikrokontroler dengan arsitektur RISC 8 bit.

1. 131 kode instruksi dalam bahasa assembly, hampir semua membutuhkan satu clockuntuk eksekusi.

2. Mempunyai 32 x 8 bit register kerja kegunaan umum.

3. Pengoperasian full static, artinya clock dapat diperlambat, bahkan dihentikan sehingga chip berada dalam kondisi sleep. CMOS juga lebih tahan terhadap noise.

(7)

5. Terdapat rangkaian pengali 2 (dua) kali untuk siklus kerjanya di dalam chip. c. Flash EEPROM (Electrically Eraseable Programmable Read Only Memory)

sebesar 32 kilobyte yang dapat diprogram ulang dan dengan kemampuan Read While Write.

d. Ketahanan hapus-tulisFlash ROM adalah 10.000 kali dengan pengaturan pilihan kodebootdanLock Bityang independen.

e. Memori SRAM sebesar 2kilobyteyang dapat dihapus-tulis 100.000 kali.

f. penguncian kode program untuk keamanan perangkat lunak agar tidak dapat dibaca.

g. Memori yangnon-volatileEEPROM sebesar 1024 byte.

h. Memiliki 2 buah timer/counter 8 bit sebanyak 2 buah dan sebuah timer/counter 16 bit dengan opsi PWM sebanyak 4 kanal.

i. Memiliki 8 kanalAnalog to Digital Converter10 bit dengan jenissingle ended. j. Kemasan TQFP ADC dapat diatur 7 buah kanal jenis diferensial dan khusus 2

kanal dengan penguatan yang dapat diatur melalui registernya sebesar 1x, 10x atau 20x.

k. Antarmuka komunikasi serial USART yang dapat diprogram dengan kecepatan maksimal 2,5 Mbps.

l. Antarmuka SPImaster/slave.

m. Watchdog timerdengan osilator di dalam chip yang dapat diprogram. n. Komparator Analog di dalam chip.

o. Pendeteksian tegangan gagal yang dapat diprogram. p. Osilator RC internal yang terkalibrasi.

q. Sumber interupsi internal dan eksternal.

r. Pilihan Mode sleep : idle, pereduksi noise ADC, penghematan daya konsumsi, penurunan daya, kondisistandby.

s. 32 Pin masukan dan keluaran terprogram.

t. Terdapat pilihan kemasan PDIP 40 pin,TQFP 44 kaki, QFN/MLF 44 titik. u. Tegangan pengoprasian

(8)

2. 0 – 16 MHz untuk ATMega32

w. Konsumsi daya pada 1 MHz, 3 Volt, suhu 25oC untuk ATMega32L.

1. Aktif : 1,1 Miliampere 2. Mode idle: 0,35 Miliampere

3. Mode power down: kurang dari 1 Mikroampere ATMega32 dapat dilihat pada Gambar 2.4 :

Gambar 2.4 Konfigurasi Pin ATMega32

Tabel 2.1 Konfigurasi Pin ATMega32

Nomor Pin Nama Fungsi

10 VCC Catu daya positif

11, 31 GND Catu daya negative/ground

30 AVCC Catu daya positif untuk ADC internal

32 AREF Pin untuk tegangan referensi AADC

(9)

(a) (b) Gambar 2.5 (a)Flash Program Memory, (b)Data Memory

Untuk dapat menggunakan atau mengoperasikan mikrokontroler ATMega32, harus dibuat sistem minimum yang meliputi komponen antara lain : sumber tegangan (Vcc) sebesar 5V DC, Ground (Gnd) dan sistem reset. Mikrokontroler ATMega32 memiliki clock generator internal sebesar 1 MHz, sehingga mikrokontroler ini dapat bekerja langsung tanpa harus menggunakanclock external.

(10)

Tabel 2.2 Koneksi Pin Port Paralel dan ATMega32 Port Paralel ATMega32

No pin Nama pin No pin Nama pin

7 D5 9 Reset

8 D6 8 SCK

9 D7 6 MOSI

10 S6 7 MISO

25 Ground 11 Ground

2.3. LCD Karakter 16 x 2

LCD (liquid crystal display) adalah piranti output untuk sistem komputer atau mikrokontroler yang dapat menampilkan karakter standar yang telah tersimpan dalam ROM pada LCD tersebut. Karakter yang dapat ditampilkan sebanyak 32 karakter yang tersusun dalam 16 kolom dan dua baris, sehingga sering disebut LCD 16x2. LCD memiliki 16 pin dan memerlukan tegangan 5V DC. Gambar 2.6 menunjukkan bentuk dan susunan pin LCD dan keterangan dari setiap pin diberikan pada tabel 3 (Suyadhi, 2010).

Gambar 2.6 Susunan Pin LCD Karakter 16x2

Sebelum menggunakan modul LCD ini, power supply 5V DC harus diberikan sebagai sumber arusnya seperti yang ditunjukkan Gambar 2.7.

(11)

Tabel 2.3 Keterangan Pin LCD Karakter 16x2 (Iswanto, 2009)

No pin Nama pin Level Fungsi

1 Vss - Ground

2 Vdd - Power supply untuk chip LCD

3 Vo 0V – 5V Power supply untuk LCD

4 RS H/L Register Selection

5 R/W H/L Read atau Write

6 E H→L Enable

15 LEDA - Power supply untuk LED (+)

16 LEDK - Power supply untuk LED (-)

Untuk menampilkan karakter pada LCD ada beberapa algoritma yang harus dijalankan. Algoritma ini dilakukan dengan memberikan nilai logika 0 atau 1 pada pin yang bersangkutan. Algoritma untuk penampilan karakter ini antara lain:

1. MengaturdisplayLCD,cursordanblink.

Tabel 2.4 Pengaturan Display LCD

E RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

1→0 0 0 0 0 0 0 1 D C B

Keterangan:

(12)

2. Mengatur karakter yang akan ditampilkan

Tabel 2.5 Pengaturan Karakter LCD (Usman, 2008)

E RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

1→0 0 0 Nilai berdasarkan CGROM

Keterangan: Nilai dari DB0 sampai DB7 yang dimasukkan nantinya akan mengatur tampilan karakter yang berkorespondensi dengan kode karakter CGROM pada chip LCD. Kode karakter CGROM diberikan pada gambar 8.10 yang terdiri dari kolom yang menunjukkan DB6 – DB7 dan baris yang menunjukkan DB0 – DB3.

(13)

2.4. Bluetooth

Bluetooth didefinisikan sebagai sebuah arsitektur protokol ber-layer yang mengandung protokol inti, pengganti kabel dan protokol telepon serta protokol adaptasi. Pada bagian selanjutnya akan dibahas lebih lanjut mengenai masing-masing blok dari arsitektur protokol sebagaimana yang terlihat pada gambar.

Gambar 2.9 Bagian – bagianbluetooth

Layer paling dasar dari arsitektur bluetooth adalah bluetooth radio. Bluetooth beroperasi pada industrial Scientific and Medical (ISM) band antara 2,40 sampai dengan 2,48 GHz. Terdapat tiga kelas dari transmitter yang dibedakan dari output power dan jangkauan transmisi yang dimiliki.Bluetoothradio menggunakan modulasi Gaussian Frequenscy Shift Keying (GFSK) dalam melakukan transmisinya. Baseband layer adalah lapisan fisik dan berada diatas bluetooth radio. Baseband layer menangani masalah channel. Untuk menghindari terjadinya interferensi dari sinyal lain yang berada pada band 2,4 GHz seperti WLAN, bluetooth menggunakan prinsip frekuensi hopping. Setiap perangkat bluetooth mempunyai alamat hardware yang khusus dan sebuah bluetooth clock. Sebuah algoritma tertentu digunakan untuk menghitung frekuensi hopping yang digunakan berdasarkan pada hardware address dari perangkat yang menjadimastersdanclock.

(14)

pengiriman dan penerimaan data. Di mana pada skema ini perangkat master melakukan transmisi pada slot watu genap dan perangkat slave melakukan transmisi pada slot waktu ganjil. Link Manager berfungsi untuk menjalankan link setup , authentication, link configuration dan aspek lainnya dari hubungan radio antara master dan slave. Selain itu juga berfungsi untuk menemukan lonk manager lainnya dan melakukan komunikasi dengan menggunakan link manager protokol. Untuk memastikan hardware yang berbeda dapat saling mendukung, maka perangkat bluetooth menggunakan Host Controller Interface (HCI) sebagai tatap muka antara host bluetooth(contohnya komputer) danbasebanddanlink manager.

Logical Link Control and Adaption Protocol (L2CAP) adalah lapisan yang berbeda di atas baseband protokol dan melayani protokol yang di atasnya dengan kemampuan protokol multiplexingdanpacket augmentationsertareassembly(SAR). Fungsi SAR diperlukan untuk mendukung protokol yang menggunakan paket data yang lebih besar daripada yang dapat didukung oleh baseband. Paket L2CAP yang besar dibagi kedalam beberapa paket baseband yang lebih kecil sebelum dipancarkan dan paket-paket tersebut akan disusun kembali setelah diterima menjadi paket L2CAP. Service Discovery Protocol pada dasarnya berfungsi untuk menyediakan perangkat (tools) yang dibutuhkan oleh sebuah aplikasi untuk memperoleh informasi dari sebuah perangkat bluetooth,layanan bluetooth apa saja yang tersedia dan untuk menentukan karakteristik dari layanan yang tersedia.Port serialmerupakan salah satu dari layanan komunikasi yang sering digunakan.

Gambar

Gambar 2.2Kriptografi Asimetris
Gambar 2.3Arsitektur ATMega32
Gambar 2.4Konfigurasi Pin ATMega32
Gambar 2.5(a) Flash Program Memory, (b) Data Memory
+5

Referensi

Dokumen terkait

Jadi dari uraian tersebut diatas bisa ditarik kesimpulan secara singkat bahwa manusia hakikatnya adalah makhluk biologis, psikolsogi dan sosial yang memiliki

Solcca cajro csciiertiicpKcn ofcripni in i bsayDitltii kosMJll tca-t: caulitea yna&lt;j aqya bcdopl teroteca ' dolna. csnccrl fcateJ»fcaiica oton litcra tar-11 twrotor

Dalam implementasinya, KP3 bersama-sama dengan Pejabat Penyidik Pegawai Negeri Sipil (PPNS) dibantu oleh Penyuluh Pertanian Lapangan (PPL) terma- suk Tenaga Harian

Murabahah merupakan salah satu bentuk penghimpun dana yang dilakukan oleh perbankan syariah, baik untuk kegiatan usaha. secara umum, nasabah pada perbankan syariah

Penelitian ini menggunakan premis dasar bahwa konsep Bangsa Malaysia adalah sebuah identitas nasional Malaysia yang coba dibangun oleh Mahathir Muhammad sebagai akibat dari

Mahasiswa dapat menganalisis Bagaimana perusahaan dan para pebisnis menanggapi tantangan- tantangan baru terhadap Bisnis dan Etika 2 Kompetensi Dasar : Mahasiswa dapat

Alasan selanjutnya adalah analisis isi dapat menunjukkan berita pada DetikNews telah memenuhi syarat verifikasi dan ralat yang tercantuk pada Pedoman Pemberitaan

imunisasi pada penelitian ini didukung oleh penelitian Prusty et al yang menemukan alasan ketidaklengkapan imunisasi anak yang paling banyak diutarakan responden secara