• Tidak ada hasil yang ditemukan

BAB 2 LANDASAN TEORI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 2 LANDASAN TEORI"

Copied!
15
0
0

Teks penuh

(1)

BAB 2

LANDASAN TEORI

Pada bab ini, akan dibahas dasar teori, penelitian terdahulu, kerangka pikir dan hipotesis yang mendasari penyelesaian permasalahan pengamanan pesan pada SMS dengan Algoritma XXTEA.

2.1. Short Message Service (SMS)

SMS merupakan sebuah layanan komunikasi yang ada pada telepon seluler untuk mengirim dan menerima pesan-pesan pendek. SMS pertama kali dikenalkan pada tanggal 3 Desember 1982. SMS pertama di dunia dikirimkan menggunakan jaringan GSM milik operator telepon bernama Vodafone. SMS pertama ini dikirimkan oleh ahli bernama Neil Papwort kepada Richard Jarvis menggunakan komputer (Dwi P, et al. 2012). Jumlah karakter maksimum pada pesan SMS adalah 160 karakter (huruf, angka atau simbol dalam abjad Latin). Untuk huruf lain, seperti Cina, ukuran SMS maksimum adalah 70 karakter (Rayarikar, et al. 2012).

2.1.1. Cara Kerja SMS

Proses cara kerja SMS dilakukan oleh 2 sisi yaitu sender dan receiver, sender mengirim pesan SMS yang kemudian ditangkap oleh Base Transceiver Station (BTS) yang kemudian dilanjutkan ke Base Station Controller (BSC) setelah itu proses akan dikerjakan oleh Mobile Switching Center (MSC) yang bertugas sebagai Gateway dan yang terakhir proses dilakukan oleh Short Message Service Center (SMSC) yang bertugas store dan forwading SMS. Alur kerja SMS, dapat dilihat pada gambar 2.1.

(2)

Gambar 2.1 Cara Kerja SMS (Rayarikar, et al. 2012)

Menurut Dwi P. (2012), tugas dari masing-masing perangkat dapat dijelaskan sebagai berikut:

1. BTS

BTS berfungsi sebagai perangkat tranceiver untuk melakukan komunikasi dengan semua handset (MS) yang aktif dan berada dalam area cakupannya (cell). BTS melaksanakan proses modulasi/demodulasi sinyal, equalisasi sinyal dan pengkodean error (error coding). Beberapa BTS dapat terhubung dengan sebuah BSC (Base stasion Controller), sementara itu radius cakupan dari suatu cell berkisar antara 10 sampai 200 m untuk cell terkecil hinggal beberapa kilometer untuk cell terbesar. Sebuah BTS biasanya dapat melayani 20–40 komunikasi panggilan secara bersamaan.

2. BSC

BSC menyediakan fungsi pengaturan pada beberapa BTS yang dikendalikannya. Diantaranya fungsi handover, konfigurasi cell site, pengaturan sumber daya radio, serta tuning power dan frekuensi pada suatu BTS. BSC merupakan simpul (konmsentrator) untuk menghubungkan dengan core network. Dalam jaringan GSM umumnya sebuah BSc dapat mengatur 70 buah BTS.

(3)

3. MSC

MSC berfungsi melakukan fungsi switching dan bertanggung jawab untuk melakukan pengaturan panggilan, call setup, release, dan routing. MSC juga melakukan fungsi billing dan sebagai gateway ke jaringan lain.

4. SMSC

SMSC berfungsi menyampaikan pesan SMS antar Mobile Station(MS)/ HP, dan juga melakukan fungsi store-and-forwarding SMS jika nomor penerima sedang tidak dapat menerima pesan. Didalam jaringanya sebuah operator dapat mempunyai lebih dari satu perangkat SMSC, sesuai besar trafik SMS jaringan tersebut.

2.2. Keamanan SMS

Ada beberapa risiko yang dapat mengancam keamanan pesan pada layanan SMS salah satunya adalah SMS interception. Celah keamanan terbesar pada layanan komunikasi SMS adalah pada saat SMS tersebut sedang dikirim melalui jaringan SMS tersebut. SMS bekerja pada jaringan nirkabel yang memungkinkan terjadinya pencurian isi pesan SMS ketika dalam proses transmisi dari pengirim ke penerima. Kasus ini disebut SMS interception. Hal ini dikarenakan SMS yang dikirim akan disimpan di SMSC, sehingga dapat dibaca oleh siapa saja yang dapat mengakses SMSC (Fajar, et al. 2014).

Di Indonesia, pemberian informasi SMS yang diterima dan dikirim oleh provider kepada badan hukum diatur oleh Pasal 87 PP No. 52 Tahun 2000 tentang Penyelenggaraan Telekomunikasi, yang menyatakan dalam hal untuk keperluan proses peradilan pidana, penyelenggara jasa telekomunikasi dapat merekam informasi yang dikirim dan atau diterima oleh penyelenggara jasa telekomunikasi serta dapat memberikan informasi yang diperlukan. Walaupun melanggar privasi pelanggan.

Selain itu, aplikasi penyadapan seperti FlexiSpy. Aplikasi ini bisa memantau semua aktifitas yang di lakukan ponsel target. Mulai dari data SMS hingga percakapan telepon. Informasinya di kirim melalui kanal GPRS ke server FlexiSpy dan bisa di pantau tanpa si ketahui pemilik ponsel.

(4)

2.3. Android

Android adalah sistem operasi untuk telepon seluler berbasis Linux. Android menyediakan platform terbuka bagi para pengembang untuk membangun aplikasi yang dapat dijalankan di bermacam telepon seluler. Awalnya, Google Inc. membeli Android Inc. yang merupakan pendatang baru dalam teknologi telepon seluler. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan piranti keras, piranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia (Dwi P, et al. 2012).

Pada saat perilisan perdana Android, 5 November 2007, Android bersama Open Handset Aliance menyatakan mendukung pengembangan standar terbuka pada telepon seluler.

Fitur yang tersedia di Android antara lain:

– Framework aplikasi yang mendukung penggantian komponen dan reusable – Dalvik virtual machine

– Integrated browser

– Grafik berdasarkan OpenGL – SQLite untuk penyimpanan data – Multimedia support

– Linkungan Development yang lengkap dan kaya termasuk perangkat emulator, tools untuk debugging, profil dan kinerja memori, dan plugin untuk IDE Eclipse.

2.4. Kriptografi

Menurut Sadikin (2012), kriptografi adalah ilmu yang bersandarkan pada teknik matematika yang berurusan dengan keamanan informasi seperti kerahasiaan, keutuhan data dan otentikasi entitas.

Kriptografi terbagi atas dua kategori yaitu kriptografi klasik dan kriptografi modern. Kriptografi klasik adalah sistem kriptografi yang menggunakan penyandian kunci simetris dan menggunakan metode subtitusi (pergantian huruf) atau transposisi (pertukaran tempat). Dan kriptografi modern adalah sistem kriptografi yang menggunakan penyandian kunci asimetris (Sadikin, 2012).

(5)

Berikut ini adalah beberapa mekanisme yang berkembang pada kriptografi: 1. Fungsi Hash

Fungsi hash adalah fungsi yang melakukan pemetaan pesan dengan panjang sembarang ke sebuah teks khusus yang disebut message digest dengan panjang yang tetap. Fungsi hash pada umumnya digunakan untuk menguji keutuhan pada sebuah data.

2. Penyandian dengan kunci asimetris

Penyandian dengan kunci asimetris atau sering juga disebut dengan kunci publik adalah penyandian yang pada proses enkripsi dan dekripsinya memiliki kunci yang berbeda. Pada kunci yang digunakan untuk enkripsi bersifat publik (public key). Sedangkan kunci yang digunakan untuk dekripsi bersifat rahasia (private key). Beberapa jenis kriptografi dengan penyandian kunci asimetris antara lain RSA, Diffie-Helman, eL-Gamal, Knapsack, dan beberapa penerapan teknik Elliptic Curve.

3. Penyandian dengan kunci simetris

Penyandian dengan kunci simetris adalah penyandian yang pada proses enkripsi dan dekripsinya menggunakan sebuah kunci yang sama. Kunci yang digunakan pada proses enkripsi dan dekripsi bersifat rahasia. Beberapa jenis kriptografi dengan penyandian kunci simetris antara lain Data Encryption Standard (DES), 3DES, Advance Encryption Standard (AES), Blowfish dan International Data Encryption Algorithm (IDEA).

2.4.1. XXTEA

Correted Block TEA (atau biasa disebut dengan XXTEA) adalah cipher block yang dirancang untuk memperbaiki kelemahan dalam Block TEA sebelumnya (XTEA). XXTEA adalah operasi jaringan Feistel pada blok yang terdiri dari setidaknya dua buah kata 32 -bit dan menggunakan kunci 128-bit (Yarrkov, 2010). Algoritma XXTEA didesain oleh Roger Needham dan David Wheeler dari Laboratorium Komputer Cambridge, Algoritma ini dipublikasikan dalam laporan teknis pada bulan Oktober 1998. XXTEA juga merupakan sebuah algoritma enkripsi efektif yang mirip dengan DES yang dapat digunakan untuk aplikasi web yang membutuhkan keamanan. Ketika menggunakan algoritma ini, sebuah perubahan dari teks asal akan mengubah

(6)

sekitar setengah dari teks hasil tanpa meninggalkan jejak dimana perubahan berasal (Atmojo, 2012).

XXTEA beroperasi pada blok yang berukuran tetap yang merupakan kelipatan 32 bits dengan ukuran minimal 64 bits. Jumlah dari putaran lengkap bergantung pada ukuran blok, tetapi terdapat minimal 6 (bertambah terus hingga 32 untuk ukuran blok yang lebih kecil). Algoritma ini menggunakan lebih banyak fungsi pengacakan yang menggunakan kedua blok tetangganya dalam pemrosesan setiap kata dalam blok. Flowchart XXTEA, dapat dilihat pada gambar 2.4.1(Fernando, 2009)

Gambar 2.4.1 Flowchart XXTEA (Fernando, 2009)

Gambar 2.4.1 menampilkan proses pengacakan yang dilakukan pada satu iterasinya. Proses iterasi dalam XXTEA dilakukan dalam 2 kali iterasi yang dilakukan secara bersarang. Pada iterasi teratas, iterasi dilakukan sebanyak q, dimana:

q = 6 + 52/n

dengan n ≥ 1 dimana n adalah jumlah blok dari plaintext. Lalu, pada iterasi selanjutnya, iterasi dilakukan sebanyak n kali.

Proses pengacakan yang dilakukan dalam satu iterasi XXTEA adalah sebagai berikut:

1. Algoritma akan mengacak blok ke-r dari plaintext.

2. Proses akan mengambil Xr-1, Xr+1, DELTA, dan kata kunci sebagai input.

(7)

3. Pengacakan pertama: Xr-1<<2 di-XOR-kan dengan Xr+1>>5. 4. Pengacakan kedua: Xr-1>>3 di-XOR-kan dengan Xr+1<<4. 5. Hasil yang didapat dari tahap 4 dan 5 ditambahkan.

6. Pengacakan ketiga: Xr-1 di-XOR-kan dengan D yang merupakan perkalian antara konstanta DELTA yang bernilai 0x9E3779B dengan jumlah iterasi pertama yang telah dilakukan.

7. Pengacakan keempat: Xr+1 di-XOR-kan dengan salah satu blok kata kunci, yaitu blok ke-(r XOR D>>2).

8. Hasil yang didapat dari tahap ke 6 dan 7 ditambahkan. 9. Hasil yang didapat dari tahap 5 dan 8 di- XOR-kan.

10. Hasil yang didapat pada tahap 9 ditambahkan ke blok plaintext ke-r. XXTEA tidak memiliki batas ukuran blok, XXTEA dapat digunakan untuk mengenkripsi satu buah pesan utuh tanpa memerlukan mode operasi cipher. Meski XXTEA dapat mengenkripsi keseluruhan pesan atau file sekaligus, pada implementasinya XXTEA dapat dioperasikan dengan mode operasi untuk file-file yang berukuran sangat besar sehingga tidak bisa dibaca ke dalam memory sekaligus (Atmojo, 2012).

Kelebihan dari XXTEA menurut hatipoglu (2009) adalah: – Kunci 128 bit

– Panjang blok adalah kelipatan 32 bit dengan minimal blok adalah 64 bit – Hanya membutuhkan komputasi dan kebutuhan memori yang sangat rendah – Memberikan keamanan terbaik dilihat dari cycle ratio nya

– Mudah diimplementasikan

– Memberikan keamanan yang baik pada cycle yang lebih sedikit – Lebih efisien untuk pesan panjang

– Bebas dipublikasikan karena tidak membutuhkan lisensi atau hak paten

Selain itu, XXTEA sangat cocok untuk diaplikasikan ke perangkat-perangkat elektronik mobile seperti handphone karena proses enkripsi dan dekripsinya tidak memakan resource terlalu berat (Khandar, 2009).

2.5. SQLite

SQLite merupakan sebuah sistem manajemen database relasional yang bersifat ACID - compliant dan memiliki ukuran pustaka kode yang relatif kecil dan ditulis dalam

(8)

bahasa C. SQLite merupakan proyek yang bersifat public domain yang dikerjakan oleh D. Richard Hipp. Tidak seperti pada paradigma client-server umumnya, Inti SQLite bukanlah sebuah sistem yang mandiri yang berkomunikasi dengan sebuah program, melainkan sebagai bagian integral dari sebuah program secara keseluruhan. Sehingga protokol komunikasi utama yang digunakan adalah melalui pemanggilan API secara langsung melalui bahasa pemrograman. Mekanisme seperti ini tentunya membawa keuntungan karena dapat mereduksi overhead, latency times, dan secara keseluruhan lebih sederhana. Seluruh elemen database (definisi data, tabel, indeks, dan data) disimpan sebagai sebuah file. Kesederhanaan dari sisi disain tersebut bisa diraih dengan cara mengunci keseluruhan file database pada saat sebuah transaksi dimulai.

SQLite mengimplementasikan hampir seluruh elemen-elemen standar yang berlaku pada SQL-92, termasuk transaksi yang bersifat atomic, konsistensi database, isolasi, dan durabilitas (dalam bahasa inggris lebih sering disebut ACID), trigger, dan queri-queri yang kompleks. Tidak ada pengecekan tipe sehingga data bisa dientrikan dalam bentuk string untuk sebuah kolom bertipe integer. Beberapa kalangan melihat hal ini sebagai sebuah inovasi yang menambah nilai guna dari sebuah database, utamanya ketika digunakan dalam bahasa pemrograman berbasis script (PHP, Perl), sementara kalangan lain melihat hal tersebut sebagai sebuah kekurangan. Beberapa proses ataupun thread dapat berjalan secara bersamaan dan mengakses database yang sama tanpa mengalami masalah. Hal ini disebabkan karena akes baca data dilakukan secara paralel. Sementara itu akses tulis data hanya bisa dilakukan jika tidak ada proses tulis lain yang sedang dilakukan; jika tidak, proses tulis tersebut akan gagal dan mengembalikan kode kesalahan (atau bisa juga secara otomatis akan mencobanya kembali sampai sejumlah nilai waktu yang ditentukan habis). Hanya saja ketika sebuah tabel temporer dibuat, mekanisme penguncian pada proses multithread akan menyebabkan masalah . Update yang terkini dikatakan telah memperbaiki masalah ini. Sebuah program yang mandiri dinamakan sqlite disediakan dan bisa digunakan untuk mengeksekusi queri dan memanajemen file-file database SQLite (Nugroho, et Al. 2011).

(9)

2.6. Base64

Base64 adalah istilah umum untuk sejumlah skema pengkodean serupa yang mengkodekan data biner dan menerjemahkannya ke dalam representasi basis 64. Istilah Base64 berasal dari konten pengkodean MIME tertentu. Skema encoding base64 biasanya digunakan ketika ada kebutuhan untuk menyandikan data biner yang perlu disimpan dan ditransfer melalui media yang dirancang untuk menangani data tekstual. Hal ini untuk memastikan bahwa data tetap utuh tanpa perubahan selama pengiriman. Base64 digunakan umum dalam beberapa aplikasi termasuk email melalui MIME, dan penyimpanan data yang kompleks dalam XML.

Base64 menggunakan karakter A – Z, a – z dan 0 – 9 untuk 62 nilai pertama, sedangkan 2 nilai terakhir digunakan untuk symbol (+ dan /). beberapa metode encoding lain seperti uuencode dan binhex menggunakan 64 karakter yang berbeda untuk mewakili 6 binary digit, namun metode-metode tersebut tidak disebut sebagai encoding Base64 (Atmojo, 2012).

(10)

2.7. Kompleksitas Algoritma

Suatu masalah dapat mempunyai banyak algoritma penyelesaian. Algoritma yang digunakan tidak saja harus benar, namun juga harus efisien. Efisiensi suatu algoritma dapat diukur dari waktu eksekusi algoritma dan kebutuhan ruang memori. Algoritma yang efisien adalah algoritma yang meminimumkan kebutuhan waktu dan ruang. Dengan menganalisis beberapa algoritma untuk suatu masalah, dapat diidentifikasi satu algoritma yang paling efisien. Besaran yang digunakan untuk menjelaskan model pengukuran waktu dan ruang ini adalah kompleksitas algoritma.

Kompleksitas dari suatu algoritma merupakan ukuran seberapa banyak komputasi yang dibutuhkan algoritma tersebut untuk menyelesaikan masalah. Secara informal, algoritma yang dapat menyelesaikan suatu permasalahan dalam waktu yang singkat memiliki kompleksitas yang rendah, sementara algoritma yang membutuhkan waktu lama untuk menyelesaikan masalahnya mempunyai kompleksitas yang tinggi. Kompleksitas algoritma terdiri dari dua macam yaitu kompleksitas waktu dan kompleksitas ruang.

Kompleksitas waktu, dinyatakan oleh T(n) , diukur dari jumlah tahapan komputasi yang dibutuhkan untuk menjalankan algoritma sebagai fungsi dari ukuran masukan n, di mana ukuran masukan (n) merupakan jumlah data yang diproses oleh sebuat algoritma. Sedangkan kompleksitas ruang, S(n) , diukur dari memori yang digunakan oleh struktur data yang terdapat di dalam algoritma sebagai fungsi dari masukan n. Dengan menggunakan kompleksitas waktu atau kompleksitas ruang, dapat ditentukan laju peningkatan waktu atau ruang yang diperlukan algoritma, seiring dengan meningkatnya ukuran masukan ( n).

Kecenderungan saat ini, ruang (memori utama) yang disediakan semakin besar yang artinya kapasitas data yang diproses juga semakin besar. Namun, waktu yang

(11)

diperlukan untuk menjalankan suatu algoritma harus semakin cepat. Karena kompleksitas waktu menjadi hal yang sangat penting, maka analisis kompleksitas algoritma deteksi tepi akan dilakukan terhadap running time algoritma tersebut.

2.7.1. Notasi Asimptotik

Untuk nilai n cukup besar, bahkan tidak terbatas, dilakukan analisis efisiensi asimptotik dari suatu algoritma untuk menentukan kompleksitas waktu yang sesuai atau disebut juga kompleksitas waktu asimptotik. Notasi yang digunakan untuk menentukan kompleksitas waktu asimptotik dengan melihat waktu tempuh (running time) algoritma adalah notasi asimptotik (asimptotic notation). Notasi asimptotik didefinisikan sebagai fungsi dengan domain himpunan bilangan asli N = {0,1,2, 3,…. } (Cormen et al., 2009: 43).

Kompleksitas waktu asimptotik terdiri dari tiga macam. Pertama, keadaan terbaik (best case) dinotasikan dengan (Ω) (Big-Omega), keadaan rata-rata (average case) dilambangkan dengan notasi (Θ) (Big-Theta) dan keadaan terburuk (worst case) dilambangkan dengan (O) (Big-O).

Gambar 2.7.1.1 Contoh Grafik dari Notasi Asimptotik Ω

Gambar 2.7.1.1 menunjukkan notasi Ω menjadi batas bawah dari suatu fungsi f(n) agar berada dalam suatu faktor konstan. Dinyatakan f(n) =O(g(n)) jika terdapat

(12)

konstanta positif n0 dan c sedemikian sehingga pada n0 dan di kanan n0 , nilai f(n)

selalu berada tepat cg(n) pada atau di atas cg(n) .

Gambar 2.7.1.2 Contoh Grafik dari Notasi Asimptotik θ

Pada gambar 2.7.1.2, n0 merupakan nilai n minimum yang mungkin. Yaitu

menunjukkan notasi Θ membatasi suatu fungsi f(n) agar berada dalam faktor konstan. Dinyatakan f(n) = Θ (g(n)) jika terdapat konstanta positif n0, c1, dan c2 sedemikian

sehingga pada n0 dan di kanan n0, nilai f(n) selalu berada tepat pada c1 g(n), tepat pada

c2 g(n) , atau di antara c1 g(n) dan c2 g(n) .

Gambar 2.7.1.3 Contoh Grafik dari Notasi Asimptotik O

Gambar 2.7.1.3 menunjukkan notasi menjadi batas atas dari suatu fungsi f(n) agar berada dalam suatu faktor konstan. Dinyatakan f(n) = O (g(n)) jika terdapat konstanta

(13)

positif n0 dan c sedemikian sehingga pada n0 dan di kanan n0 , nilai f(n) selalu berada

tepat pada cg(n) atau di bawah cg(n). Kompleksitas waktu algoritma biasanya dihitung dengan menggunakan notasi O(g(n)), dibaca “big-O dari g(n) ”.

2.7.2. Kompleksitas Waktu Algoritma

Untuk menentukan kompleksitas waktu suatu algoritma, diperlukan ukuran masukan n serta running time algoritma tersebut. Pada umumnya, running time algoritma meningkat seiring dengan bertambahnya ukuran n. Sehingga, running time suatu algoritma dapat dinyatakan sebagai fungsi dari n .

Ukuran masukan n untuk suatu algoritma bergantung pada masalah yang diselesaikan oleh algoritma tersebut. Pada banyak kasus, seperti pengurutan, ukuran yang paling alami adalah jumlah item dalam masukan. Dalam kasus lain, seperti mengalikan dua bilangan bulat, ukuran input terbaik adalah jumlah bit yang diperlukan untuk mewakili masukan dalam notasi biner biasa.

Running time algoritma pada masukan n tertentu merupakan jumlah operasi atau langkah yang dieksekusi. Selanjutnya, jumlah waktu yang konstan diperlukan untuk mengeksekusi setiap baris pseudocode (kode semu). Satu baris dapat memiliki jumlah waktu yang berbeda dari baris lain. Namun asumsikan bahwa setiap pelaksanaan baris ke-i membutuhkan waktu sebesar ci, di mana ci adalah konstanta.

Dalam menentukan running time suatu baris pada pseudocode, kalikan konstanta ci dengan jumlah waktu yang diperlukan untuk mengeksekusi baris tersebut.

Untuk kasus di mana terdapat perintah loop while atau for dengan panjang , maka perintah tersebut dieksekusi dengan waktu n+1. Sedangkan untuk baris berisi komentar, dinyatakan sebagai baris yang tidak dieksekusi, sehingga jumlah waktu untuk baris tersebut adalah nol.

Selanjutnya, running time dari algoritma adalah jumlah dari running time setiap perintah yang dieksekusi. Sebuah perintah yang membutuhkan ci langkah n waktu

untuk dieksekusi akan memiliki pengaruh sebesar cin pada running time total (T(n) ).

Setelah diperoleh bentuk fungsi T(n) , dapat ditentukan bentuk dari algoritma tersebut dengan menggunakan notasi asimptotik O. Dengan ditentukannya bentuk algoritma, maka dapat diramalkan berapa besar peningkatan running time jika ukuran masukan ditingkatkan.

(14)

Suatu algoritma dikatakan anggota θ(g(n)) jika algoritma itu adalah anggota O(g(n)) dan anggota Ω(g(n)). Contoh : Karena T(n) = c1n2 + c2n adalah angota O( n2)

dan anggota Ω( ), maka T(n) adalah anggota θ (n2 ). Contoh : For i ← 1 to n do For j ← 1 to i do For k ← j to n do a ← a + 1 end for end for end for

Nilai big O, big Ω, dan big Θ dari algoritma di atas adalah sebagai berikut : Untuk i = 1,

Untuk j = 1, jumlah perhitungan = n kali Untuk i = 2,

Untuk j = 1, jumlah perhitungan = n kali Untuk j = 2, jumlah perhitungan = n–1 kali …

Untuk i = n,

Untuk j = 1, jumlah perhitungan = n kali Untuk j = 2, jumlah perhitungan = n –1 kali Untuk j = n, jumlah perhitungan = 1 kali.

T(n) = n2+(n-1)2 +(n-2)2 + ... + 1 = n(n + 1)(2n + 1)/6

= 2n3+3n2 + 1

Diperoleh T(n) ≤ 3untuk n ≥ 4 dan T(n) ≥ 2n3 untuk n ≥ 1.

2.8. Penelitian Terdahulu

Penelitian terhadap enkripsi SMS sudah pernah dilakukan. Yaitu dengan menggunakan algoritma Rabin yang dengan hasil waktu yang dibutuhkan untuk melakukan enkripsi terhadap isi SMS rata-rata sebesar 96,3 milidetik dan dekripsi

(15)

rata-rata sebesar 118 milidetik (Muko, et al. 2012 ). Kemudian dengan algoritma Vigenere yang dimodifikasi dengan fibonacci dan key tambahan sehingga memperkuat keamanan dan privasi(Anjari, et al. 2012).

Sedangkan, penelitian mengenai algoritma XXTEA atau Corrected Block Tea sudah pernah dilakukan. Yaitu oleh Sujatmika, dengan mengimplementasikan XXTEA pada virtual disk pada system operasi windows. Virtual disk tersebut dibuat dengan merepresentasikan file volume sebagai container dari virtual disk. Proses enkripsi pada isi virtual disk dilakukan sebelum proses unmounting virtual disk. Sedangkan proses dekripsi pada isi virtual disk, dilakukan setelah dilakukan proses mounting file volume. Algoritma XXTEA sendiri, berjalan pada blok 32 bit. Sehingga sebelum memasuki proses utama enkrip dan dekrip, file perlu diolah terlebih dahulu.

Selanjutnya, Atomojo (2012) mengimplementasikan XXTEA pada secure login website. Hasil yang di dapat ialah proses enkripsi pada sisi server,dan dekripsi pada sisi client telah menambah waktu akses website rata-rata18ms (0,018 sekon).

Berikut penelitian terdahulu disajikan dalam bentuk tabel:

Tabel 2.8 Penelitian Terdahulu

Judul Tahun Peneliti

Enkripsi SMS (Short Message Service) pada Telepon Selular Berbasis Android

2010 Becik Gati Anjari

Aplikasi Enkripsi SMS dengan Metode Rabin pada Android

2012 Gayuh Taruna Muko, et-al

Implementasi Enkripsi Dengan Algoritma XXTEA Pada

Virtual Disk Berbasis Windows

Arif rahman Sujatmika.

Perancangan Secure Login Website Menggunakan Algoritma Enkripsi XXTEA

Gambar

Gambar 2.1 Cara Kerja SMS (Rayarikar, et al. 2012)
Gambar 2.4.1 Flowchart XXTEA (Fernando, 2009)
Gambar 2.6 Nilai Value pada Base 64
Gambar 2.7.1.1 Contoh Grafik dari Notasi Asimptotik Ω
+3

Referensi

Dokumen terkait

The result of previous research showed that the influence of earnings management to the value of firm, as well as the application of IFRS to the value of firm, but not yet

Setelah terdefinisi satu persatu istilah yang terdapat pada judul penelitian sesuai di atas, jadi yang dimaksudkan peneliti dari judul Efektivitas Pembelajaran Berbasis Projek

Para guru, misalnya, membantu peserta didik me- lahirkan gagasan baru (invensi dan orisinal) dengan, antara lain, menata kelas yang memberi banyak kesempatan peserta didik

Kemudian Allah berkata, “Hendaklah ada benda-benda terang di langit untuk menerangi bumi, untuk memisahkan siang dari malam, dan untuk menunjukkan saat mulainya

Kode Kegiatan/ Output/ Sub Output/ Paket/ Sub Paket Vol Satuan Pemanfaat Tahun Atribut Kesiapan DED

The study aims to determine: (1) How The Implementation of The Principal Stress Management which takes place in Islamic Education; (2) The problems that cause

overhead conveyor (OHC), berdasarkan kebijakan perawatan yang diterapkan saat ini 32 mode kegagalan diatasi secara time directed (TD) yaitu kegiatan perawatan yang

Penambahan acidifier asam sitrat pada taraf 1,6 % pada pakan double step down ayam broiler dapat memberikan pengaruh terhadap persentase karkas ayam broiler