IMPLEMENTASI ALGORITMA ENKRIPSI ABACUSIAN DAN CAESAR CIPHER PADA SMS DAN KOORDINAT LOKASI BERBASIS ANDROID MENGGUNAKAN APP INVENTOR
NASKAH PUBLIKASI
diajukan oleh Rifky Chandra Udayana 09.11.3327
kepada SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AMIKOM YOGYAKARTA YOGYAKARTA 2013
IMPLEMENTATION ABACUSIAN AND CAESAR CIPHER ENCRYPTION ALGORITHM IN SMS AND LOCATION COORDINATE BASED ON ANDROID USING APP INVENTOR IMPLEMENTASI ALGORITMA ENKRIPSI ABACUSIAN DAN CAESAR CIPHER PADA SMS DAN KOORDINAT LOKASI BERBASIS ANDROID MENGGUNAKAN APP INVENTOR Rifky Chandra Udayana Ema Utami Jurusan Teknik Informatika STMIK AMIKOM Yogyakarta ABSTRACT
Android is now the operating system with the most advanced developments, the number of devices that offer this operating system increasing rapidly due to the growing number of users, followed by ease of communication technology should be accompanied by increased security, especially security in the exchange of information, one of the easiest and most popular way to exchange information is through short message services (SMS) In general, SMS on mobile phones, especially Android, are particularly vulnerable to the risk of information theft, interception, and even the loss of important information, because frequently sent messages are personal and confidential. So, it can be concluded that it is necessary a cryptographic application in Android that important and confidential SMS delivery is expected can be safely delivered to the recipient, without fear of information leakage. Caesar Cipher and Abacusian encryption algorithm implementation for message delivery in Android could be one solution to the problem above, this application has a simple and attractive appearance, has two algorithms options and two languages, so the application is user friendly and can be a secure solution in exchange of information through SMS. Keywords: SMS, Encryption, Decryption, Android, Abacusian
1.
Pendahuluan
Dunia keamanan semakin berkembang seiring dengan pesatnya teknologi dan Informasi, perkembangan ilmu pengetahuan, banyak Informasi baru bermunculan, baik yang layak disebarluaskan atau dirahasiakan. Nyatanya, sebuah informasi kadang bisa bernilai sangat besar seperti halnya data nasabah suatu bank, organisasi, data pribadi dan strategi perusahaan atau bahkan yang lebih besar dan berskala internasional yang menyangkut hajat hidup suatu negara. Untuk mengamankan informasi tersebut, digunakanlah ilmu Kriptografi. Ilmu kriptografi sangat cepat berkembang, Tidak hanya bisa digunakan di komputer, tapi juga digunakan di beberapa perangkat dan sistem operasi, seperti Blackberry, Android, iPhone dan masih banyak lagi. Terutama disini adalah Android, sistem operasi yang dikembangkan oleh Google ini mengalami peningkatan jumlah pengguna dan tentu saja perangkat yang menggunakan sistem operasi ini menjamur dan sangat laris di pasaran, Setiap telepon selular membutuhkan komunikasi, SMS merupakan suatu bentuk komunikasi yang saat ini banyak digunakan oleh semua orang, karena efisien dan biayanya yang murah. SMS yang bersifat penting sangat diharapkan dalam pengirimannya dapat dikirimkan dengan aman kepada penerima. Penggunaan pesan pendek di sistem operasi android, baik melalui aplikasi SMS bawaan atau aplikasi pihak ketiga sangat mudah dan cepat, dan tanpa ragu lagi informasi baik yang penting atau tidak dengan mudahnya dikirimkan, akan tetapi dengan fasilitas sekarang sangat mungkin isi SMS dapat dibaca oleh pihak yang tidak diinginkan, misalnya ketika handphone hilang, dicuri atau di forward oleh orang lain yang menggunakan perangkat kita. Hal ini bisa berakibat kebocoran informasi, kesalahan penafsiran
informasi
dan
bahkan
yang
paling
parah
adalah
kejahatan
yang
menggunakan kartu kredit dan ATM, disinilah diperlukan cara agar suatu informasi yang penting tidak begitu saja bocor, apalagi status seseorang tidaklah sama dan memiliki tingkat informasi yang berbeda. Dunia kriptografi masa kini semakin dipermudah dengan adanya aplikasi kriptografi dimana pengguna tidak lagi membutuhkan waktu yang lama, rumit dan berpotensi menimbulkan kesalahan, dengan menggunakan algoritma yang ada, pengguna dapat dengan mudah meng-enkripsi sebuah teks hanya dengan sekali klik. Sayangnya jumlah aplikasi kriptografi yang ada saat ini sangat minim, terutama di sistem operasi android. Oleh karena itu penulis mencoba merancang sebuah aplikasi kriptografi untuk telepon selular berbasis Android dengan algoritma enkripsi yang kuat dan terdiri dari dua jenis key (kunci/Cipher), dalam aplikasi ini penulis juga menyertakan fitur untuk mengambil koordinat yang bisa dienkripsi, dilengkapi dengan peta dan petunjuk arah,
1
Algoritma yang digunakan di aplikasi ini menggunakan basis perhitungan matematika sehingga hasil dari teks yang terenkripsi cukup kuat, Aplikasi ini sangat berguna untuk mempermudah penyandian suatu informasi tanpa harus membutuhkan waktu yang lama, rumit dan memahami algoritma ataupun cara kerjanya. Aplikasi ini bernama WeSMS Encrypt.
2.
Landasan Teori
2.1
Pengertian Kriptografi Kriptografi berasal 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 yang lain. Dalam perkembangannya, kriptografi juga digunakan untuk mengidentifikasi pengiriman pesan dan tanda tangan digital dan keaslian pesan dengan sidik jari digital. (Dony Ariyus, 2005).
2.2 Tujuan Kriptografi Kriptografi bertujuan untuk memberi layanan keamanan. Yang dinamakan aspek – aspek keamanan sebagai berikut : 1. Kerahasiaan (confidentiality) Adalah layanan yang ditujukan untuk menjaga isi informasi dari siapapun kecuali yang memiliki otoritas. Di dalam kriptografi layanan ini direalisasikan dengan menyandikan plainteks menjadi cipherteks. Misalnya pesan “Ditunggu Bos jam 10 di jakarta” disandikan menjadi “rte8$jdsp)9$ 4sd{3@yhs7 uki?dj ds DfgDk8”. istilah lain yang senada dengan confidentiality adalah secrecy dan privacy. 2. Integritas data (data integrity) Adalah layanan yang berhubungan dengan penjagaan dari perubahan dara secara tidak sah. Dengan kata lain, aspek keamanan ini dapat diungkapkan sebagai pertanyaan: “Apakah pesan yang diterima masih asli atau tidak mengalami perubahan (modifikasi)?”. 3. Otentikasi (authentication) Adalah layanan yang berhubungan dengan identifikasi, baik secara kesatuan system maupun informasi itu sendiri. Dua pihak yang saling berkomunikasi harus saling memperkenalkan diri. Informasi yang dikirimkan melalui kanal harus diautentikasi keaslian, isi datanya, waktu pengiriman, dan lain-lain. 4. Nirpenyangkalan (non-repudiation)
2
Adalah
layanan
untuk
menjaga
entitas
yang
berkomunikasi
melakukan
penyangkalan, yaitu pengirim pesan menyangkal melakukan pengiriman atau penerima pesan menyangkal telah menerima pesan.
2.3
Algoritma Kriptografi
2.3.1
Caesar Cipher Disebut juga sebagai Shift cipher atau Cipher substitusi (substitution cipher),
Algoritma ini adalah salah satu dari algoritma kriptografi klasik, Sebelum komputer ada, kriptografi dilakukan dengan menggunakan pensil dan kertas. Algoritma kriptografi (cipher) yang digunakan saat itu, dinamakan juga algoritma klasik, adalah berbasis karakter, yaitu enkripsi dan dekripsi dilakukan pada setiap karakter pesan. Semua algoritma klasik termasuk ke dalam sistem kriptografi simetris dan digunakan jauh sebelum kriptografi kunci publik ditemukan.
2.3.2
Abacusian Adalah salah satu bentuk algortima modern dengan mengandalkan basis enkripsi
standar yang membutuhkan perhitungan matematika, Sesuai namanya “Abacusian” menggunakan perhitungan matematika dasar yang simpel, namun ini adalah tipe metode enkripsi super dimana algoritma tersebut memiliki urutan set karakter (charset) yang sesuai dengan aplikasi yang dirancang pada skripsi ini, menggunakan metode penentuan awal urutan kunci sehingga urutan kunci yang kita tuliskan belum tentu sama dengan urutan kunci yang digunakan aplikasi, ini berarti dalam penggunaanya, semakin kuat cipher, semakin bagus pula hasil teks yang terenkripsi, basis algoritma ini adalah hasil adopsi dari password di dunia internet.
2.4
Android Android adalah sistem operasi untuk telepon seluler yang berbasis Linux yang
dikembangkan oleh Android Inc kemudian diakuisisi oleh Google Inc. Android menyediakan platform open source bagi para pengembang untuk menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam piranti bergerak. Saat ini, android menjadi pesaing utama Apple pada sistem operasi smartphone dan tablet PC. Pesatnya pengembangan Android karena sistem operasi ini lengkap, market aplikasi android serta dukungan yang tinggi dari komunitas open source dunia.
2.5
GPS (Global Positioning System) GPS atau Global Positioning System dalam pengertian sederhana adalah salah
satu sistem yang membantu kita untuk mengetahui posisi kita berada saat ini. GPS bekerja dengan menstransmisikan sinyal dari satelit ke perangkat GPS (handphone atau
3
Android yang dilengkapi teknologi GPS misalnya). Untuk memperoleh detil posisi yang seakurat mungkin, GPS sebaiknya digunakan di ruang terbuka. Penggunaan GPS di dalam ruangan, hutan ataupun di tempat yang banyak gedung-gedung tinggi akan membuat GPS bekerja kurang akurat.
2.6
MIT App Inventor App Inventor
adalah sebuah aplikasi berbasis
web
yang dibuat dan
dikembangkan oleh Google, Dirilis pada 15 Desember 2010, pada awalnya penelitian dilakukan oleh google dengan tujuan sebagai komputasi pendidikan pada lingkungan pengembangan online, App Inventor berbentuk aplikasi Web yang memungkinkan pengguna untuk membuat aplikasi yang hebat dan bisa digunakan di telepon selular berbasis android dengan mengerti konsep programming tanpa harus menguasai bahasa pemrograman secara keseluruhan. (David Wolber: 2011) Beberapa aplikasi yang bisa dibuat oleh App Inventor antara lain Game dengan Grafis 2D dan Animasi, utility, Aplikasi Multimedia, GPS dan Navigasi, Pengamanan, bisnis dan komunikasi, bahkan Pengontrol robot seperti LEGO MINDSTORM NXT Begitu
juga
dengan
pengembangan
aplikasi
WeSMS
Encrypt
sebagai
implementasi algoritma enkripsi Caesar dan Abacusian pada SMS dan koordinat lokasi berbasis Android ini sepenuhnya menggunakan App Inventor.
3.
Analisis dan Perancangan Sistem
3.1
Analisis SWOT Analisis SWOT adalah metode perencanaan strategis yang digunakan untuk
mengevaluasi kekuatan (strengths), kelemahan (weaknesses), peluang (opportunities), dan ancaman (threats) dalam suatu proyek. Keempat faktor itulah yang membentuk akronim SWOT (strengths, weaknesses, opportunities, dan threats). Analisis SWOT dalam pengaplikasianya adalah bagaimana kekuatan (strengths) mampu mengambil keuntungan (advantage) dari peluang (opportunities) yang ada, selanjutnya bagaimana kekuatan (strengths) bisa menghadapi ancaman (threats) yang ada, dan terakhir adalah bagaimana mengatasi kelemahan (weaknesses) yang mampu membuat ancaman (threats) menjadi nyata atau menciptakan sebuah ancaman baru.
3.2
Analisis Kebutuhan Awal Aplikasi WeSMS Encrypt ini digunakan untuk mengirim dan menerima pesan dan
koordinat lokasi baik secara terenkripsi ataupun tidak, Untuk mengirim pesan secara terenkripsi, aplikasi ini mengenkripsi pesan menjadi ciphertext kemudian dikirim kepada
4
penerima dan mendekripsi pesan yang diterima menjadi plainteks, sehingga kondisi yang terjadi pada pengirim dan penerima SMS adalah: 1.
Setiap pengirim dan penerima SMS sudah menginstall aplikasi ini
2.
Pengirim dan penerima SMS harus memiliki kunci simetri yang sama
sesuai yang telah disepakati sebelum mengirim dan menerima SMS yang terenkripsi
3.3
Analisis Kelayakan Sistem Analisis kelayakan sistem digunakan untuk menentukan apakah pengembangan
aplikasi ini dapat diteruskan atau tidak. Hal ini dilakukan agar sistem yang dibuat benarbenar bermanfaat.
3.3.1
Analisis Sistem Operasi Pengembangan aplikasi ini ditujukan sepenuhnya untuk sistem operasi Android,
mengapa harus Android? Karena aplikasi ini memiliki fitur utama SMS yang dalam penggunaannya di Android dipermudah dengan adanya fungsi notifikasi dan lampu led notifikasinya. Dengan pulsa secukupnya, aplikasi ini dapat berjalan sepenuhnya. Selain itu, fitur sekunder aplikasi yang menjalankan fungsi GPS juga dibantu dengan canggihnya handset berbasis Android. Pertimbangan lain untuk implementasi algoritma ini adalah sistem android yang open source, lalu keberagaman pilihan perangkat dan hal ini hanya bisa didapat di Android. Pertimbangan sistem operasi lain memiliki beberapa kekurangan, seperti Blackberry dan iOS yang tidak open source, ataupun aplikasi berbasis web yang membutuhkan koneksi internet yang memadai. Dengan demikian, Android paling layak sebagai sistem operasi untuk aplikasi ini.
3.3.2
Analisis Kebutuhan Pengguna Kebutuhan pengguna terhadap fitur di aplikasi ini adalah keamanan dalam
mengirim dan menerima SMS, sehingga pesan yang dikirim dapat di enkripsi dengan salah satu metode enkripsi yang disediakan, beberapa fitur standar pada aplikasi SMS seperti pesan masuk, pesan terkirim dan draft pesan tidak dibutuhkan karena berkaitan dengan tujuan kriptografi diantaranya kerahasiaan dan nir-penyangkalan. Kemudian proses
pengambilan
koordinat
lokasi
yang
membutuhkan
GPS,
kemudian
mengirimkannya ke pengguna lain, proses pengiriman dapat dilakukan dengan aman. Fitur tambahan lain adalah dua bahasa yang dibutuhkan pengguna apabila ada sesuatu yang tidak dimengerti dalam aplikasi. Lalu fitur kritik dan saran juga bisa digunakan apabila pengguna ingin memberi masukan untuk aplikasi ini.
5
3.3.3
Analisis Kelayakan Operasional Operasional sistem ini tidak membutuhkan keterampilan khusus. Karena
sebagian masyarakat Indonesia telah terbiasa dengan smartphone terutama android yang mengalami peningkatan sangat pesat. Hal ini memungkinkan aplikasi ini dapat dijalankan oleh semua orang, Dengan ditunjang tampilan aplikasi yang user friendly, maka secara operasional, sistem ini layak.
3.3.4
Kebutuhan Perangkat Keras Spesifikasi perangkat keras yang dibutuhkan dalam pembuatan aplikasi WeSMS
Encrypt adalah:
3.3.5
1.
Intel Core i3-350.
2.
2GB Ram.
3.
250GB HDD.
4.
VGA On board.
5.
Smartfren Connex AC682UI v2.1.5.
Kebutuhan Perangkat Lunak Perangkat lunak yang dibutuhkan dalam pembuatan aplikasi WeSMS Encrypt
sebagai berikut:
3.3.6
1.
Google Chrome 4.0 atau lebih tinggi.
2.
MIT App Inventor v1.3.2.
3.
Java Runtime Environtment.
Kebutuhan Implementasi Sistem Kebutuhan implementasi sistem atau kebutuhan operasional yang dibutuhkan
untuk penggunaan aplikasi ini adalah: 1.
Sistem operasi android versi 2.2 (Frozen Yoghurt) atau lebih tinggi.
2.
Ram minimal 256 MB.
3.
Memiliki fitur GPS (Opsional)
4.
Memiliki pulsa yang cukup.
3.4 Perancangan Sistem Perancangan Sistem Meliputi: 1.
Perancangan proses yang meliputi flowchart dan data flow diagram.
2.
UML (Unified Modelling Language)
3.
Perancangan antarmuka.
4.
Perancangan Struktur Blok.
6
3.4.1
Flowchart
Gambar 3.1 Flowchart Aplikasi Flowchart dari aplikasi ini dapat dijelaskan pertama pengguna menjalankan aplikasi jika ada pesan masuk aplikasi akan memberikan pemberitahuan berupa tampilan menerima pesan kemudian dari pesan yang masuk pengguna dapat membacanya, jika pesan tersebut terenkripsi maka pengguna dapat mendekripsi dengan menggunakan kunci yang telah ditentukan sehingga pesan dapat terbaca.
7
3.4.2
DFD (Data Flow Diagram) Pada aplikasi WeSMS Encrypt, aliran arus data sistem akan dijelaskan secara
terstruktur oleh DFD yang dikembangkan hingga mencapai DFD level 1
Gambar 3.2 DFD Level 0 aplikasi WeSMS Encrypt
Gambar 3.3 DFD Level 1 aplikasi WeSMS Encrypt
3.4.3
Use Case Diagram Use
case
diagram
WeSMS
Encrypt
menceritakan
tentang
user
yang
menggunakan aplikasi ini secara optional bisa memilih untuk mengakses menu sesuai dengan yang diinginkan, Fungsi utama dari aplikasi ini semuanya terletak pada halaman pertama setelah dijalankan, sehingga loading cepat dan tidak bertele-tele.
8
Gambar 3.4 Use case WeSMS Encrypt
3.5
Perancangan Antarmuka Perancangan antarmuka adalah proses desain form sebagai interaksi antara
pengguna dan aplikasi
Gambar 3.5 Rancangan antarmuka tampilan utama
9
Gambar 3.6 Rancangan antarmuka form koordinat lokasi
3.6
Perancangan Struktur Blok Dalam pembuatan aplikasi android menggunakan App Inventor, dibutuhkan
koding yang berbentuk blok agar aplikasi bisa berjalan sesuai dengan rancangan. App Inventor Block Editor menyediakan berbagai macam fungsi yang bisa digunakan sesuai dengan kebutuhan pengguna, Misalkan untuk merancang sistem enkripsi menggunakan algoritma Caesar Cipher dan Abacusian Algorithm yang menggunakan fungsi matematika sebagai metode pergeseran karakter
4.
Implementasi dan Pembahasan
4.1
Implementasi Desain Implementasi merupakan salah satu tahapan dalam rekayasa perangkat lunak
setelah analisis dan perancangan sistem, di tahapan ini diketahui sejauh mana aplikasi dibangun, bagaimana keluaran dari aplikasi ini apakah sesuai dengan tujuan awalnya. Tampilan dari aplikasi kriptografi berbasis android yang dibuat menggunakan App Inventor ini terdiri dari beberapa tampilan, diantaranya Splash Screen, Main Screen, Menu About, Menu Koordinat Lokasi, Menu Help, Menu Pengaturan dan Pilih Menu. Dalam pembuatan aplikasi ini menggunakan software App Inventor, semua layar tidak menggunakan form terpisah, namun hanya menggunakan satu screen (Screen1), dan sebagai pembuat tampilan layar atau form dalam aplikasi ini menggunakan Vertical Arrangement, yaitu komponen yang berfungsi sebagai pembeda antar tampilan satu dengan yang lain. Berikut ini adalah hasil implementasi tampilan aplikasi WeSMS Encrypt pada lembar kerja designer
10
Tampilan utama aplikasi
mengatur proses enkripsi, dekripsi, mengirim dan
menerima pesan. Tampilan ini dibuka melalui splash screen dan melalui fungsi notifikasi yang terdapat pada aplikasi.
Gambar 4.1 Tampilan utama Aplikasi WeSMS Encrypt
Gambar 4.2 Penggalan blok kode halaman utama.
Aplikasi ini juga mendukung fungsi notifikasi, terdapat icon kecil pada notification bar sebagai pemberitahuan bahwa terdapat satu SMS diterima
11
Gambar 4.3 Contoh notifikasi pesan
Gambar 4.4 Tampilan form koordinat lokasi
12
Penggalan koding form koordinat lokasi
Gambar 4.5 Penggalan blok kode form koordinat lokasi
4.2
Pembahasan dan Pengujian Pengujian program bertujuan untuk menghindari kesalahan pada program yang
telah dibuat, pengujian program ini biasanya dilakukan selama pembuatan aplikasi dan setelah aplikasi selesai dibuat. Untuk mengetahui ada tidaknya kesalahan pada program yang dibuat, maka akan dilakukan pengujian pada seluruh modul program, metode pengujiannya adalah White box testing dan Black-box testing. 1. White-Box Testing White-box testing dilakukan selama masa coding program dengan cara mengikuti logika jalur program. Kesalahan dalam koding yang mungkin terjadi adalah Erroneous Blocks, yaitu gagalnya proses compile aplikasi karena ada blok yang hilang atau socket yang kosong. Solusinya dengan mengisi blok yang terdapat empty socket dan menghapus unattached block.
13
Gambar 4.6 Dua contoh kesalahan koding blok 2. Black-box Testing Pada uji coba WeSMS Encrypt, Black-box testing dilakukan untuk mengetahui apakah program yang dibuat sudah sesuai dengan kebutuhan fungsionalnya. Aplikasi ini diuji dari segi fitur dan elemen-elemen yang terdapat didalamnya dan mendapatkan hasil yang baik secara keseluruhan
5.
Kesimpulan dan Saran
5.1
Kesimpulan Kesimpulan yang didapat dari “Implementasi Algoritma enkripsi Abacusian dan
Caesar Cipher pada SMS dan Koordinat Lokasi Berbasis Android menggunakan App Inventor” adalah sebagai berikut: 1.
Aplikasi ini bernama WeSMS Encrypt yang mampu meningkatkan keamanan pengiriman dan penerimaan SMS dengan cara enkripsi dan dekripsi untuk smartphone dan tablet android.
2.
Aplikasi ini dibuat menggunakan App Inventor yang walaupun terhitung software baru, tapi mampu menghasilkan aplikasi yang berkualitas dan kompatibilitas perangkat yang sangat baik, dibuktikan pada pengujian berbagai smartphone dan tablet menggunakan layar 3.5 in hingga 7.0 in dan sistem operasi Android versi 2.2 (Frozen Yoghurt) atau yang lebih tinggi.
3.
Dengan dua pilihan cipher, maka pengguna memiliki pilihan untuk menentukan kekuatan sistem enkripsi, bila menggunakan kombinasi keduanya tentu bisa lebih baik.
4.
Koneksi internet dan fungsi GPS dibutuhkan pada aplikasi ini untuk dapat menjalankan
fungsi
sekunder
seperti
mengambil
menampilkan peta dan petunjuk arah (Directions).
14
koordinat
lokasi,
5.
Aplikasi ini mudah digunakan, terdapat beberapa fitur dan menu yang membantu, juga tersedia dalam dua bahasa yaitu Inggris dan Indonesia.
5.2
Saran
Pada penulisan skripsi ini tentu masih terdapat bug atau kekurangan yang dapat disempurnakan lagi pada pengembangan berikutnya, sehingga terdapat beberapa saran yang bisa menjadi pertimbangan agar Aplikasi enkripsi-dekripsi SMS ini menjadi lebih baik, diantaranya: 1.
Aplikasi enkripsi-dekripsi SMS ini dapat ditambahkan pilihan algoritma kriptografi yang digunakan, sehingga banyak pilihan pada pengguna.
2.
Penampilan aplikasi bisa menjadi daya tarik khusus, sehingga penambahan theme warna aplikasi membuat aplikasi tidak membosankan, terutama fitur SMS yang sering digunakan.
3.
Sementara ini hanya ada 95 karakter maksimal yang didukung pada metode enkripsi-dekripsi, guna memenuhi kebutuhan pengguna, aplikasi dapat ditambahkan beberapa karakter lainnya.
4.
Fitur bahasa Indonesia bisa lebih disempurnakan lagi.
15
DAFTAR PUSTAKA
Anonim. 2010. The Best Encryption Tools. Jakarta: Elex Media Computindo. Ariyus, Doni. 2008. Pengantar ilmu Kriptografi, Teori, analisis dan Implementasi. Yogyakarta: Penerbit Andi. Kloss, Jörg H. 2012. Android Apps with App Inventor: The Fast and Easy Way to Build Android Apps. Pearson Education, Inc. Rambe, Muhammad Januar. 2011. Analisis Dan Implementasi Keamanan E-Mail Menggunakan Algoritma RSA Sebagai Enkripsi Dan Dekripsi Pada Mozilla Thunderbird. Medan: USU. Safaat.H, Nazaruddin. 2012. Pemrograman Aplikasi Mobile Smartphone dan Tablet PC Berbasis Android. Bandung: Informatika Bandung. Wolber, David; dkk. 2011. App Inventor for Android: Create Your Own Android Apps. California: O'Reilly Media, Inc. Anonim. 2010. Explore MIT App Inventor. http://appinventor.mit.edu. diakses mulai tanggal 18 Oktober 2012.
16