Review : Algoritma Kriptografi Untuk
Pengembangan Aplikasi Telepon Anti Sadap
di Android
Ryan Ari Setyawan1, Selo Sulistyo2, Bimo Sunafri Hantono3 Laboraturium Sistem Elektronis
Jurusan Teknik Elektro dan Teknologi Informasi, Fakultas Teknik, Universitas Gadjah Mada Jl. Grafika No.2 Yogyakarta - 55281
[email protected], [email protected], [email protected]
ABSTRAK
Keamanan komunikasi suara melalui telepon saat ini masih sangat rentan terhadap serangan. Berbagai teknik penyadapan atau serangan dan ancaman dapat dilakukan oleh pihak ketiga, baik melalui teknik eavesdropping maupun cryptanalisis. Hal tersebut menunjukan kebutuhan akan adanya keamanan yang terjamin sangat diperlukan. Penerapan algoritma kriptografi yang memiliki karakteristik keamanan yang baik sangat diperlukan. Dalam paper ini dibandingkan tiga algoritma kriptografi, yang nantinya dipakai dan digunakan untuk pengembangan aplikasi telepon anti sadap dengan memiliki keamanan yang baik.
Dari hasil review maka dapat disimpulkan bahwa algoritma TEA merupakan algoritma yang paling sesuai untuk pengembangan aplikasi telepon anti sadap.
ABSTRACT
The security of voice communication over the telephone is still very vulnerable to attack. Various techniques or attacks and threats tapping can be done by third parties, either through eavesdropping techniques and cryptanalisis. It shows the need for security is indispensable guaranteed. Implementation of cryptographic algorithms that have good safety characteristics is indispensable. In this paper compared three cryptographic algorithms, which will be worn and used for development of secure phone call application by having good security.
From the review it can be concluded that the TEA algorithm is an algorithm that is most appropriate for the development of secure phone call application.
Kata Kunci : serpent, tiny encryption algorithm, twofish, SIP, VoIP.
I. PENDAHULUAN
Teknologi komunikasi suara saat ini telah berkembang pesat, kemajuan teknologi yang seiring dengan meningkatnya kebutuhan manusia, menjadi salah satu peran penting. Misalnya dalam penggunaan telepon dalam keseharian, sudah menjadi keseharian seseorang dapat berinteraksi serta saling tukar informasi dengan yang lain.
Penggunaan telepon menjadi salah satu kebutuhan karena manusia dapat berkomunikasi dengan harga terjangkau.
Teknologi yang saat ini sedang terkenal adalah teknologi telepon melalui internet yang memiliki keunggulan tanpa ada batas jarak tempuh dan biaya rendah. Teknologi internet tersebut telah merevolusi telekomunikasi dengan mendukung layanan komunikasi suara, Voice over Internet Protocol (VoIP) adalah salah satu teknologi yang paling menonjol [1]. VoIP digunakan sebagai Internet Protocol Telepon, dengan adanya teknologi yang maju, kebutuhan akan melakukan komunikasi yang tanpa batas sangat dibutuhkan dengan memanfaatkan teknologi yang tepat guna. Salah satu protokol yang digunakan dalam VoIP adalah Session Initiation Protocol (SIP) dimana karakteristiknya cocok untuk komunikasi multimedia seperti suara.
Namun seiring berkembangnya teknologi tidak mengartikan bahwa komunikasi yang dilakukan telah memiliki keamanan yang sudah terjamin. Beberapa teknik penyadapan dilakukan oleh pihak lain baik dengan cara menanamkan software khusus untuk menyadap, misalnya jika pengguna melakukan komunikasi melalui jaringan GSM teknik penyadapan dapat dilakukan melalui software Spied-on Phone[2]. Mekanisme penyadapan dapat dilihat pada Gambar 1.
Switch
PSTN Jaringan Mobile
Msc dan BSS
Penyadapan IAM
Page
Page Response ACM
Ring Back Signal
Jawab ANM
Spied-on Phone
Gambar 1. Mobile-Phone Eavesdropping[2]
Gambar 1. Merupakan mekanisme penyadapan dengan memasang software spied-on phone terlebih dahulu pada
handphone. Kinerja dari spied-on phone tersebut penyadap dapat mendengar setiap percakapan dan korban tidak akan mengalami gangguan saat komunikasi dilakukan[3].
Teknik penyadapan atau serangan oleh pihak lain juga dapat dilakukan dengan cara mencoba memecahkan enkripsi, yakni dengan teknik pencarian kunci. Contohnya adalah dengan melakukan pencarian kesalahan kunci pada enkripsi, jika salah satu kunci pada enkripsi rusak maka kunci yang sebenarnya dapat dicari melalui bruto force dengan kompleksitas 216 putaran ke sepuluh dengan matriks Maximum Distance Separable[4]
Dari permasalahan tersebut tentu sangatlah diperlukan komunikasi yang aman dan nyaman oleh pengguna, tanpa ada serangan pihak lain yang dapat merugikan. Dengan demikian dibutuhkan suatu solusi pendekatan melalui penggunaan metode yang sesuai untuk pengembangan aplikasi telepon yakni dengan melakukan enkripsi secara end-to-end.
Dalam paper ini akan dibahas lebih lanjut mengenai teknik serangan dan ancaman, VolP, SIP dan tiga algoritma kriptografi yakni algoritma serpent, algoritma twofish dan tiny encryption algorithm (TEA).
1.1 Teknik Serangan dan Ancaman
Teknik serangan atau ancaman dapat dilakukan oleh pihak lain dengan berbagai macam cara, baik melalui eavesdropping maupun melalui teknik pencarian kunci yakni cryptanalisis. Pada penelitian [2] bahwa teknologi komunikasi seluler dapat di modifikasi untuk dapat melakukan penyadapan dengan menanamkan software terlebih dahulu didalam ponsel. Teknik penyadapan tersebut dinamakan eavesdropping. Dalam penelitian [5], teknik serangan digunakan dengan menggunakan cryptanalisis, yakni dengan cara memberikan plaintext terlebih dahulu sekitar (100-(50/2n))% bit secara acak dan unik, penelitian tersebut membuktikan bahwa kemanan di jaringan VoIP sangat lemah terhadap serangan bruto force.
Teknik penyerangan juga dapat dilakukan dengan menggunakan serangan DoC (Denial-of-Convenience) yang dilakukan pada penelitian [6], dengan membuat sebuah titik akses Wi-Fi palsu, penyerangan dapat dilakukan ketika smartphone melakukan koneksi ke Wi-Fi tersebut. Beberapa penelitian tersebut membuktikan bahwa berbagai cara dapat dilakukan untuk melakukan penyerangan terhadap komunikasi yang dilakukan. Keamanan data sangat diperlukan dalam melakukan komunikasi, solusinya adalah dengan melakukan penyamaran data dengan cara melakukan enkripsi secara end-to-end.
Selain teknik penyerangan yang telah diuraikan diatas, berbagai ancaman lainpun masih banyak terjadi, seperti interception. Interception merupakan ancaman bagi para pengguna karena pihak lain yang tidak sah dapat memperoleh layanan untuk mengakses data pengguna. Seperti pada penelitian [7], membahas mengenai voice interception and how preven it, menjelaskan bahwa yang popular pada saati ini adalah interception pada telepon, pihak lain dapat memperoleh hak akses untuk dapat mengakses layanan data para pengguna, dimana cara yang lebih efektif adalah dengan mengakses informasi panggilan untuk dapat mengakses data melalui data transit.
Ancaman juga dapat dilakukan oleh pihak lain dengan cara membuat ganguan ketika komunikasi yang dilakukan
rusak atau hilang sehingga pengguna tidak dapat mengakses layanan tersebut, ancaman yang dilakukan oleh pihak lain ini termasuk klasifikasi dari ancaman berupa interruption[8].
Modification[8] merupakan ancaman yang dilakukan dengan cara melibatkan perubahan data yang tidak sah, sehingga data yang dikirimkan ke pengguna tidak sesuai dengan aslinya. Serta ancaman berikutnya adalah fabrication [8] yang merupakan ancaman yang dapat dilakukan oleh pihak lain dengan cara menyusup saat melakukan komunikasi.
Solusi yang ditawarkan dalam paper adalah dengan cara melakukan penyamaran atau melakukan enkripsi data untuk dapat meminimalisir berbagai teknik serangan dan ancaman yang telah diuraikan di atas. Sebelum membahas mengenai proses enkripsi, terlebih dahulu akan membahas mengenai VoIP. VoIP sangat diperlukan sebagai media jaringan dan SIP sebagai signaling untuk dapat melakukan komunikasi suara melalui internet.
1.2 Voice over Internet Protocol (VoIP)
Layanan Voice over Internet Protocol (VoIP) telah banyak digunakan, VoIP digunakan untuk melakukan komunikasi dengan teknologi kompresi digital suara[9], communication protocol dan wireless network. VoIP merupakan teknologi yang mengubah data sinyal suara analog menjadi data digital, kinerja VoIP dengan menerapkan codec suara untuk kompres suara paket data dan mentransfer data suara terkompresi melalui internet protocol (IP). Komunikasi telepon melalui VoIP menjadi lebih murah karena menggunakan frekuensi (bandwith) dengan sistem kompresi yang tingkatnya lebih besar dibanding kompresi di selular. Di Global System for Mobile Communication (GSM) suara normal dikodekan dalam 64 kilobit dapat ditekan sampai 13,3 kilobit per detik dan kualitas suara lebih baik. Namun di dalam VoIP kompresi suara dilakukan dari kanal 13,3 kilobit menjadi 8 kilobit dan nantinya akan lebih kecil lagi.[1].
Codec Codec
Internet
Hacker
IP Router IP Router
A/D atau D/A A/D atau D/A
Pengguna A
Pengguna B IP
Header UDP Header
RTP Header
Data Suara
Paket Suara
Gambar 2. Skema dasar kinerja VoIP [10]
Keuntungan dari VoIP yaitu biaya rendah, deployment, operation dan maintenance yang mudah dibandingkan dengan telepon konvensional. VoIP dapat digunakan untuk aplikasi seperti telepon, video, pesan instan, dan game online. Namun kelemahan menggunakan tekologi VoIP adalah masalah keamanan, karena VoIP ini bekerja melalui
internet dan hardware yang digunakan kebanyakan sama, ini yang menjadi VoIP sangat rentan terhadap serangan. Mekanisme VoIP dapat dilihat pada Gambar 2
VoIP merupakan salah satu bagian dari metode pengiriman suara menggunakan teknik paket voice. Metode paket voice yang lainnya adalah Voice over ATM dan Voice over frame relay. Semua jaringan paket voice menggunakan saran paket jaringan, dari arsitektur tersebut dapat ditinjau dari dua segi yang berbeda yaitu voice agent dan packet network itu sendiri. Voice agent sangat menentukan kualitas suara yang ditransmisikan pada jaringan VoIP. VoIP juga memiliki dua komponen yaitu voice coding dan signaling[10]
1. Voice coding
Suara manusia dan semua suara yang dapat didengar merupakan sinyal analog. PSTN mentransmisikan sinyal analog memiliki banyak kelemahan. PSTN merubah sinyal suara dari telepon dirubah menjadi format digital. Untuk menghemat bandwith international telephony union (ITU) mengeluarkan beberapa standar [11]:
G.711 voice coding PCM dengan bandwith 64 Kbps
G.726 voice coding ADPCM dengan bandwith 40, 32, 24 dan 16 Kbps
G.728 voice coding CELP dengan bandwith 16 Kbps
G.729 voice coding ADPCM dengan bandwith 32 Kbps
G.723.1 digunakan untuk aplikasi multimedia dengan bandwith 5,3 dan 6,3 Kbps.
2. Signaling
Signalling merupakan bagian lain dari voice agent yang bertugas untuk melakukan inisialisasi percakapan. Jaringan VoIP ataupun packet voice application yang fungsional harus mampu menyediakan layanan dimana pemanggil cukup menggunakan mekanisme panggilan yang ada untuk terhubung ke voice agent dan kemudian mampu dihubungkan ke telepon tujuan yang terhubung pada voice agent yang lain. Terdapat dua model signalling pada jaringan packet voice [11]:
Transport model– Pada model ini, dua voice agent
saling terhubung satu sama lain dalam konfigurasi point-to-point.
Translate model– Pada model ini, sejumlah voice
agent dapat terhubung ke jaringan yang mengerti metode signalling yang digunakan. Voice agent harus mampu melakukan mapping dari nomor telepon menjadi IP, Frame Relay, atau ATM address sesuai dengan teknologi yang digunakan melalui servis lain yang mampu menunjukkan voice agent yang terhubung ke nomor telepon tujuan.
1.3 Protokol SIP
Selain VoIP, protokol yang dibahas dalam paper ini adalah Session Initiation Protocol (SIP). SIP adalah protocol signaling lapisan aplikasi yang menggunakan berbasis text message untuk membangun, memodifikasi dan mengakhiri komunikasi multimedia antara dua pengguna atau lebih. Dalam SIP, identitas pemanggil ditangani oleh Transmission Control Protocol (TCP) atau user datagram
protocol (UDP) [12]. SIP didefinisikan sebagai communication procedur untuk signalling dan call control dari VoIP. SIP terdiri dari registar server, proxy server dan user agent seperti pada Gambar 3.
User Agent Registrar
Proxy
Redirecr Server
Proxy
Location Service
Proxy
User Agent
Gambar 3. Arsitektur SIP[12]
Mekanisme otentikasi yang diusulkan dalam SIP spesifikasi otentikasi berbasis HTTP. SIP adalah klien protocol server sehingga otentikasi, sebagian besar SIP menggunakan protocol digest sebagai mekanisme otentikasi[13]. Mekanisme otentikasi SIP dijelaskan pada Gambar 4.
Compute response = F(nonce, username,password, realm)
Generate the nonce value
Authentication : Compute response = F(nonce, username,password, realm) and compare with response
REQUEST
CHALLENGE
Nonce, realm
REQUEST
Nonce, realm, username, response
CLIENT SERVER
Gambar 4. Prosedur Otentikasi SIP[13]
Pada Gambar 4. dijelaskan bahwa mekanisme otentikasi di SIP adalah sebagai berikut :
Langkah 1. Client server : REQUEST
Client mengirimkan request ke server Langkah 2. Server client : CHALLENGLE (nonce,
realm)
Server mengirimkan message response ke nonce value dan realm ke client. Response sebagai error message requesting authentication.
Langkah 3. Client server : RESPONSE (nonce, realm, username response)
Client merespon, dengan menerima nonce value baru, yakni username dan password. Kemudian client mengirimkan kembali request message dengan response value, username, nonce value dan realm.
Langkah 4. Sesuai dengan username, server melakukan validasi password client. Kemudian server memverifikasi apakah nonce adalah benar, jika sudah benar server melakukan komputasi F (nonce, username, password, realm). Jika semua cocok maka server mengotentikasi identitas dari klien.
1.4 Keamanan VoIP and SIP
Keuntungan dari VoIP adalah biaya yang murah, operasi yang mudah dan integrasi aplikasi data yang baik untuk komunikasi suara melalui jaringan telepon. Namun VoIP sangat rentan terhadap serangan karena paket suara yang dikirimkan melalui internet publik yang mudah diketahui oleh pihak lain[14]. Perlunya enkripsi dalam paket data VoIP sebelum dikirimkan sangat dibutuhkan.
VoIP secure for end-to-end [15]menggunakan elliptic-curve dengan memakai kunci dinamis. Performance yang didapatkan adalah 400 paket data voice yang dikirimkan masih membutuhkan delay waktu yang cukup lama yakni antara 5-160ms. Sedangkan yang diperlukan dalam komunikasi suara adalah data yang kontinyuitas dan real-time.
Begitupun juga penggunaan Session Initiation Protocol (SIP) yang banyak digunakan dalam komputasi mobile[16][17]. SIP juga tidak lepas dari serangan oleh pihak lain, misalnya penggunaan algoritma Elliptic Curve Cryptographic (ECC) untuk mengetahui kecepatan dan ukuran blok chiper yang digunakan [18].
II. METODE
Berdasarkan beberapa hal yang telah diuraikan sebelumnya dalam paper ini, salah satu solusinya adalah dengan cara melakukan enkripsi. Tujuannya agar pengguna merasa aman dan nyaman dalam melakukan komunikasi suara melalui telepon.
Untuk mencapai tujuan tersebut diperlukan studi tentang algoritma yang sesuai. Dalam hal ini perlu dilakukan tentang kelebihan dan kekurangan beberapa algoritma enkripsi yang ada untuk aplikasi VoIP. Dalam paper ini akan dibandingkan algoritma serpent, algoritma twofish dan Tiny Encryption Algorithm (TEA). Ketiga algoritma tersebut merupakan algoritma Advanced Encryption Standard (AES) yang memiliki peringkat terbaik[19].
2.1 Algoritma Serpent
Merupakan algoritma AES memiliki desain yang sangat konservatif dan implementasi yang efisien. Algoritma ini merupakan algoritma yang sangat kuat, yang sampai saat ini belum ada laporan serangan dari kriptanalisis yang berhasil merusaknya. Algoritma ini juga tidak dipatenkan sehingga penggunaannya tidak memerlukan biaya.
Serpent mengenkripsi 128-bit plaintext P ke 128-bit chipertext C dalam 32 putaran di bawah kendali 33 dari 128-bit subkeys K0 K1, K2,... K32. Pengunaan yang mendukung kunci sebesar 128, 192, atau 256 bit[20]. Chiper ini
berbentuk Substitution-Permutation (SP-Network) yang merupakan rangkain operasi matematis yang saling berhubungan. SP-Network mengubah blok bit masukan menjadi suatu bit keluaran.
Kekurangan algoritma serpent diantaranya dapat di analisis dengan membuat serangan melalui metode Rectangle Algebraic dengan serangan 10 putaran serpent-256[21]. Metode tersebut menganalisis bahwa 10 putaran sepent-256 membutuhkan 22 x 2144 x 210 = 2155 pairs of selective plaintext, 2155 waktu dari 10 putaran enkripsi dan 2155 waktu dari 10 putaran deskripsi. Memori yang tersimpan adalah 2131.8 menebak grup kunci untuk 10 bit dari 10 putaran serpent 256 kunci enkripsi.
Algoritma serpent walaupun dikatakan sangat kuat pada penelitian [20], namun berbagai serangan tersebut dengan melalui metode Rectangel masih dapat digunakan untuk mencari kunci walaupun dengan membutuhkan waktu yang lama.
2.2 Algoritma Twofish
Algoritma twofish terdiri dari 128 bit block chiper yang mampu menerima variabel panjang kunci sampai 256 bit. Struktur twofish menggunakan struktur Feistel-like 16-putaran dengan tambahan pada whitening pada masukan dan keluaran. Satu-satunya unsur non-feistel adalah 1 bit rotasi. Perputaran dapat dipindah ke dalam fungsi F untuk membuat stuktur feistel murni, namun memerlukan suatu tambahan perputaran kata-kata yang tepat sebelum keluaran whitening [22]. Struktur algoritma twofish dapat dilihat pada Gambar 5.
⊕
P (128 bits)
⊕ ⊕ ⊕
F S-Box c PHT S-Box 1
S-Box 2 S-Box 3
S-Box c S-Box 1 S-Box 2 S-Box 3
MDS
MDS
<<<8
+ +
+ +
⊕
⊕ <<<8
C (128 bits)
⊕ ⊕ ⊕ ⊕
K1 K2 K3
K3
K4
K4 K4
Gambar 5. Diagram blok algoritma twofish [22]
Enkripsi dan deskripsi algoritma twofish seperti pada Gambar 5, proses yang pertama kali dilakukan yakni Plaintext dipecah menjadi empat kata 32-bit. Pada langkah whitening masukan terdapat xor dengan empat kunci. Pada
setiap putaran, dua kata-kata pada sisi kiri digunakan sebagai masukan kepada fungsi g. Fungsi g terdiri dari empat byte-wide S-Box key-dependent yang diikuti dengan matrik MDS. Hasil kedua fungsi g dikombinasikan menggunakan Pseudo Hadamard Transform (PHT)[22], dan ditambahkan dua kunci.
2.3 Algoritma TEA
Algoritma TEA merupakan algorithma yang mudah untuk digunakan dalam bahasa pemrograman dan bahasa mesin[23]. Tujuan dari algoritma TEA adalah meminimalkan memory dan memaksimalkan kecepatan. Desain Algoritma TEA ditargetkan untuk embedded dan mobile systems yang ditujukan untuk lebih spesifik di memori dan kecepatan[24]. Operasi dasar TEA sangat sederhana dan mudah dipahami, TEA pada dasarnya adalah sebuah blok plaintext menjadi dua bagian yakni Left [0] dan Right [0] dengan chipertext yang direpresentasikan dengan C (Left[64], Right[64]).
INPUT
L0
F
-R0
F
-L0 = R0 + f ( R01k(0)k(1),sum) R1 = L0 + f ( L1k(2)k(3),sum)
F
+
F
+
Ln+1 = Rn + f ( R1k(0)k(1),sum) Rn+1 = Rn + f ( R1k(0)k(1),sum)
F F
+ +
OUTPUT K(2)&K(3)
Round 2
K(0)&K(1)
Round
K(2)&K(3)
Round i+1
K(2)&K(3)
Round i
K(2)&K(3)
Round 32
K(2)&K(3)
L16 R16
Gambar 6. Algoritma TEA [24]
Pada Gambar 6, proses diawali dengan input-bit teks terang sebanyak 64-bit. Kemudian 64-bit teks terang tersebut dibagi menjadi dua bagian, yaitu sisi kiri (L0) sebanyak 32-bit dan sisi kanan (R0) sebanyak 32-bit. Setiap bagian teks terang akan dioperasikan sendiri-sendiri. R0 (z) akan digeser kekiri sebanyak empat kali dan ditambahkan dengan kunci k(0). Sementara itu z ditambah dengan sum (delta) yang merupakan konstanta. Hasil penambahan ini XOR-kan dengan penambahan sebelumnya. Kemudian di-XOR-kan dengan hasil penambahan antara z yang digeser kekanan sebanyak lima kali dengan kunci k(1). Hasil tersebut kemudian ditambahkan dengan L0 (y) yang akan menjadi R1[24].
Sisi sebelah kiri akan mengalami proses yang sama dengan sisi sebelah kanan. L0 (y) akan digeser kekiri sebanyak empat kali lalu ditambahkan dengan kunci k(2). Sementara itu, Y ditambah dengan sum (delta). Hasil penambahan ini di-XOR-kan dengan penambahan sebelumnya. Kemudian di-XOR-kan dengan hasil penambahan antara Y yang digeser ke kanan sebanyak lima kali dengan kunci k(3). Hasil tersebut kemudian ditambahkan dengan R0 (Z) yang akan menjadi L1[24].
Karakteristik algoritma ini walaupun sangat sederhana namun memiliki tingkat keamanan yang cukup baik yakni sistem penyandian menggunakan proses feistel network. Hal tersebut dimaksudkan untuk menciptakankan sifat non-lineritas serta pergeseran dua arah (ke kiri dan ke kanan) menyebabkan semua bit kunci bercampur secara berulang-ulang. Teknik tersebut dapat mencegah penggunaan exshautive search yang dilakukan cryptanalisis secara efektif.
Berdasarkan penjelasan mengenai tiga algoritma kriptografi yang telah diuraikan di atas maka dihasilkan perbandingan karakteristik tiga algoritma kriptografi dengan panjang bit sama yakni 128-bit seperti pada Tabel 2.1
Tabel 2.1 Perbandingan karakteristik algoritma enkripsi
Serpent
a. 128 bit
b. 32 putaran jaringan SP
c. Menggunakan konvensi little endian
d. Pencampuran kunci : pada setiap putaran 128-bit subkey Ki di XOR kan dengan Bi secara langsung
e. S-Box : kombinasi 128-bit input dan kunci sebagai 32-bit.
f. 32-bit dari salinan s-box diekseskusi sehingga menghasilkan Si (Bi⊕ Ki)
g. Mengalami Transformasi linear h. Proses deskripsi berbasis feistel chiper
Twofish
a. 128 bit
b. Dibagi menjadi 4 bagian, masing-masing 32 bit c. Menggunakan konvensi little-endian
d. Dua bagian bit akan menjadi kanan, dan dua bagian bit lainnya akan menjadi bagian kiri.
e. Bit Input Akan di XOR kan dulu dengan 4 bagian kunci
f. Mengalami proses whitening
g. Menggunakan struktur feistel network terdiri dari 16 iterasi
h. Proses deskripsi berbasis feistel chiper
TEA
a. 128 Bit
b. Dibagi menjadi dua bagian yakni 64 kiri dan 64 kanan c. Pergeseran (Shift), masing-masing 64 bit digeser ke
kiri 4 kali dan digeser ke kanan 5 kali.
d. Penambahan, setelah digeser maka akan ditambahkan kunci k[0], k[3], sedangkan Y dan Z awal ditambah sum (delta)
e. Setelah ditambah masing-masing register mengalami XOR dengan satu putaran.
f. Key Schedule, k(0) dan k(1) digunakan untuk round ganjil sedangkan k(2) dan k(3) konstan digunakan untuk genap
g. Proses deskripsi berbasis feistel chiper namun kunci penggunaanya dibalik.
Ada trade off antara kecepatan dan tingkat keamanan. Tingkat keamanan direpresentasikan panjang bit, dengan panjang bit yang sama TEA menggunakan memori yang lebih sedikit, dan kecepatan lebih maksimal.
Pada Tabel 2.1 tampak algoritma yang paling sesuai untuk mengembangkan aplikasi telepon anti sadap di smartphone android adalah algoritma TEA, karena karakteristik algoritma TEA memiliki kemampuan untuk memaksimalkan kecepatan serta meminimalkan memory. Teknik pergeseran, penambahan, peng-XOR-an dan key schedule pada TEA bertujuan untuk menghindari exshautive search yang dilakukan secara efektif oleh kriptanalisis.
III. KESIMPULAN
Kontribusi utama penelitian ini adalah rekomendasi algoritma yang paling sesuai untuk pengembangan aplikasi telepon anti sadap di android, yaitu algoritma TEA. Algoritma yang direkomendasikan memiliki tingkat keamanan yang cukup baik (128-bit) yakni memiliki teknik pergeseran, penambahan, peng-XOR-an dan key schedule untuk menghindari exshautive search yang berpengaruh pada penggunaan memori yang lebih sedikit dan kecepatan lebih besar dibandingkan algoritma lainnya.
Perlu diketahui mekanisme pengiriman paket data yang sebenarnya terjadi pada telepon adalah secara real-time. Eksplorasi mengenai performa dari algoritma TEA yang diusulkan nantinya akan dilakukan penelitian berikutnya.
DAFTAR PUSTAKA
[1] H. P. Singh, S. Singh, J. Singh, and S. A. Khan, “VoIP: State of art for global connectivity - A critical review,” J. Netw. Comput. Appl., vol. 37, no. 1, pp. 365–379, 2014.
[2] Yi-Bing Lin and Meng-Hsun Tsai, “Eavesdropping Through Mobile Phone,” Veh. Technol. IEEE Trans., vol. 56, no. 6, pp. 3596–3600, Nov. 2007.
[3] G. Cattaneo, G. de Maio, and U. Ferraro Petrillo, “Security issues and attacks on the GSM standard: A review,” J. Univers. Comput. Sci., vol. 19, no. 16, pp. 2437–2452, 2013.
[4] S. Das and J. Bhaumik, “A Fault Based Attack on MDS-AES.”
[5] C. Li, S. Li, D. Zhang, and G. Chen, “Cryptanalysis of a data security protection scheme for VoIP,” Vis. Image Signal Process. IEE Proc. -, vol. 153, no. 1, pp. 1–10, Feb. 2006.
[6] G. R. Mendez, M. A. M. Yunus, and S. C.
Mukhopadhyay, “A WiFi based smart wireless sensor network for monitoring an agricultural environment,” Instrum. Meas. Technol. Conf. I2MTC 2012 IEEE Int., pp. 2640–2645, May 2012.
[7] S. Bransfield-Garth, “Voice interception and how to prevent it,” Comput. Fraud Secur., vol. 2009, no. 8, pp. 11 – 13, 2009.
[8] B. Jung, I. Han, and S. Lee, “Security threats to Internet: a Korean multi-industry investigation,” Inf. Manage., vol. 38, no. 8, pp. 487 – 498, 2001.
[9] B. Son, E. Nahm, and H. Kim, “VoIP encryption module for securing privacy,” Multimed. Tools Appl., vol. 63, no. 1, pp. 181–193, 2013.
[10] S. Kukkar, “Secure Voip Call on Android Platform,” GJCST-E Netw. Web Secur., vol. 12, no. 12, 2012. [11] K. Kim and C. Wang, “Enterprise VoIP in Fixed
Mobile Converged Networks,” in Multimedia Analysis, Processing and Communications, Springer, 2011, pp. 585–621.
[12] H.-L. Yeh, T.-H. Chen, and W.-K. Shih, “Robust smart card secured authentication scheme on SIP using Elliptic Curve Cryptography,” Comput. Stand. Interfaces, vol. 36, no. 2, pp. 397–402, 2014. [13] L. Wu, Y. Zhang, and F. Wang, “A new provably
secure authentication and key agreement protocol for {SIP} using {ECC},” Comput. Stand. Interfaces, vol. 31, no. 2, pp. 286 – 291, 2009.
[14] S. K. Talha and B. I. A. Barry, “Evaluating the impact of AES encryption algorithm on Voice over Internet Protocol (VoIP) systems,” Comput. Electr. Electron. Eng. ICCEEE 2013 Int. Conf., pp. 686–691, Aug. 2013. [15] C.-H. Wang and Y.-S. Liu, “A dependable privacy
protection for end-to-end VoIP via Elliptic-Curve Diffie-Hellman and dynamic key changes,” J. Netw. Comput. Appl., vol. 34, no. 5, pp. 1545 – 1556, 2011. [16] T. Bessis, V. K. Gurbani, and A. Rana, “Session
initiation protocol firewall for the IP multimedia subsystem core,” Bell Labs Tech. J., vol. 15, no. 4, pp. 169–187, 2011.
[17] S. A. Baset, V. K. Gurbani, A. B. Johnston, H. Kaplan, B. Rosen, and J. D. Rosenberg, “The session initiation protocol (SIP): An evolutionary study,” J. Commun., vol. 7, no. 2, pp. 89–105, 2012.
[18] Q. Pu and S. Wu, “Secure and efficient SIP
authentication scheme for converged VoIP networks,” Int. Arab J. Inf. Technol., vol. 9, no. 6, 2012.
[19] J. Nechvatal, E. Barker, L. Bassham, W. Burr, M. Dworkin, J. Foti, and E. Roback, “Report on the development of the Advanced Encryption Standard (AES),” J. Res. Natl. Inst. Stand. Technol., vol. 106, no. 3, pp. 511–577, 2001.
[20] B. Najafi, B. Sadeghian, M. Saheb Zamani, and A. Valizadeh, “High speed implementation of serpent algorithm,” in Proceedings of the International Conference on Microelectronics, ICM, 2004, pp. 718– 721.
[21] Wenlue Chen, Boli Li, and Zhihua Hu, “Rectangle Algebraic Attack of Serpent Encryption Algorithm,” Intell. Inf. Process. Trust. Comput. IPTC 2010 Int. Symp., pp. 573–576, Oct. 2010.
[22] Pil-Joong Kang, Seon-Keun Lee, and Hwan-Yong Kim, “Study on the design of MDS-M2 Twofish
cryptographic algorithm adapted to wireless communication,” presented at the Advanced
Communication Technology, 2006. ICACT 2006. The 8th International Conference, 2006, vol. 1, p. 4 pp.–695. [23] S. J. Shepherd, “The Tiny Encryption Algorithm,”
Cryptologia, vol. 31, no. 3, pp. 233–245, 2007. [24] S. A. Y. Hunn, S. Z. binti Md Naziri, and N. binti Idris,
“The development of tiny encryption algorithm (TEA) crypto-core for mobile systems,” presented at the Electronics Design, Systems and Applications (ICEDSA), 2012 IEEE International Conference on, 2012, pp. 45–49.