7
1. Pendahuluan
Teknologi informasi merupakan aset perusahaan yang sangat berharga, yang akan membantu perusahaan dalam kegiatan operasionalnya sehari-hari. Dengan
adanya kemajuan teknologi informasi masalah keamanan dan kerahasiaan data merupakan hal yang sangat penting dalam suatu organisasi. Teknologi informasi
dipakai untuk mengelola data atau informasi, memproses, mendapatkan, menyusun, menyimpan data. Apalagi data tersebut berada dalam suatu jaringan
komputer yang terhubung dengan jaringan publik yaitu internet, tentu saja data yang sangat penting dapat disalahgunakan oleh pihak-pihak yang tidak
berkepentingan akan menimbulkan kerugian bagi organisasi. Oleh karena itu sangat diperlukan keamanan terhadap kerahasiaan sebuah informasi atau data.
Objek dalam penelitian adalah sebuah BUMN Badan Usaha Milik Negara yang bertanggung jawab atas ketenagalistrikan di Indonesia yakni PT. PLN
Persero Wilayah NTT Area Sumba yang menggunakan teknologi informasi dalam aktifitas perusahaan sehari-hari dengan mobilitas data yang sangat tinggi.
Data yang dimaksud adalah data keuangan pada perusahaan yang akan dikirimkan pada perusahaan di tingkat pusat sebagai laporan setiap periode yang telah
dijadwalkan.
Proses pendistribusian data keuangan menggunakan
e-mail
koorporat yaitu
e- mail
resmi PT. PLN Persero, akan tetapi seringkali
user
tidak menggunakannya karena
password e-mail
tersebut harus diganti secara berkala, dan
e-mail
tersebut lambat ketika digunakan, sehingga
user
sering menggunakan
e-mail public
yang bersifat pribadi. Tentu saja hal semacam ini menimbulkan resiko yang sangat besar
terkait kebocoran data. Mengingat sangat pentingnya data keuangan bagi perusahaan, maka diperlukan keamanan terhadap data keuangan.
Penelitian ini menekankan pada perancangan dan implementasi sistem menggunakan kriptografi. Alasan utama untuk menggunakan kriptografi adalah
karena kriptografi merupakan salah satu metode pengamanan data untuk menyandikan data sehingga yang dapat membaca data tersebut adalah pengirim dan
penerima. Data keuangan sebelum dikirim melalui
e-mail
, terlebih dahulu akan dienkripsi menjadi
ciphertext
. Maksud dari pengenkripsian data adalah untuk menjaga keamanan data keuangan yang akan dikrimkan, agar keamanan dan
integritas data keuangan tersebut dapat terjaga. Untuk itu diperlukan algoritma yang tepat berdasarkan kebutuhan sistem yang ada pada PT. PLN Persero Wilayah
NTT Area Sumba .
Algoritma yang digunakan adalah IDEA yang merupakan algoritma simetris pada kriptografi untuk proses enkripsi dan dekripsi dan juga algoritma ini dikenal
cukup tangguh dalam mengamankan informasi karena sampai saat ini belum ada yang berhasil menembus keamanan algoritma IDEA [1].
2. Tinjauan Pustaka
Pada penelitian sebelumnya telah dilakukan implementasi metode kriptografi IDEA untuk menjamin keamanan data dari pihak lain yang bisa menyebabkan
kerugian pada perusahaan. penelitian yang pertama adalah
Implementasi Kriptografi IDEA pada Priority Dealer untuk Layanan Pemesanan dan Laporan
Penjualan Handphone Berbasis Web
”.
Priority Dealer
melakukan penjualan
8
langsung pada konsumen
end user
setelah menerima barang dari distributor.
Priority Dealer
harus memberikan laporan hasil penjualan dan pemesanan kepada distributor, akan tetapi dalam pelaporannya,
priority dealer
masih memakai cara yang kuno, yaitu datang langsung ke distributor. Maka dirancang suatu
web
untuk mempermudah pertukaran informasi. Untuk menjamin keamanan data pada
web
, dibuatlah sistem pengamanan data menggunakan algoritma Kriptografi IDEA [2].
Penelitian berikutnya berjudul
Studi Perbandingan Algoritma IDEA dan Algoritma Blowfish
dalam penelitian ini membahas tentang algoritma IDEA dan Alforitma Blowfish dimana kedua algoritma tersebut merupakan algoritma
kriptografi simetris dengan kategori
cipher
blok. Kedua algoritma ini beroperasi dalam bentuk blok bit, dengan ukuran blok sebesar 64 bit. Kedua algoritma ini juga
dikenal sangat tangguh dalam mengamankan informasi. Penelitian ini bertujuan untuk membandingkan kinerja algoritma IDEA dan algoritma Blowfish, maka
dibuatlah sebuah program enkripsi dan dekripsi
file
dengan menggunakan bahasa pemrograman JAVA. Dari hasil uji coba program terhadap sampel
file
teks,
file
dokumen,
fileimage
,
file audio
, dan
file video
, terlihat bahwa algoritma IDEA lebih cepat dari algoritma Blowfish dan pemakaian memori kedua algoritma relatif sama
[1]. Pada penelitian sebelumnya yang berjudul
Integrating DNA Computing in IDEA
. Dalam penelitian ini membahas tentang mengintegrasikan Komputasi DNA pada algoritma IDEA dengan cara menambahkan lapisan DNA
cipher
pada Algoritma dasar IDEA.
Cipher
tersebut diubah ke dalam bentuk urutan DNA sehingga menyembunyikan keberadaan algoritma IDEA. Kemudian kuncinya
diperpanjang untuk membuatnya kebal terhadap serangan
criptoanalysis
. Hal ini membuat
pengiriman data
menjadi lebih
aman dan
efisien. Dalam
pengimplementasiannya digunakan matlab [3]. Pada penelitian ini akan dirancang dan diimplementasikan aplikasi untuk
enkripsi dan dekripsi dengan menggunakan algoritma IDEA pada data keuangan PT. PLN Persero Wilayah NTT Area Sumba dengan menggunakan bahasa
pemrograman C. Data keuangan yang akan dienkripsi dalam bentuk Ms. Excel. Alasan perlunya dibuat aplikasi ini untuk mengamankan data keuangan yang
merupakan rahasia perusahaan.
Sebelum terbentuknya PT. PLN Persero Cabang Sumba, pelayanan kelistrikan di Pulau Sumba dilayani oleh organisasi setingkat Cabang yang pada
waktu itu bernama PT. PLN Cabang Waingapu yang membawahi Ranting Waingapu dan Ranting Waikabubak. Krisis ekonomi yang melanda Indonesia pada
tahun 1998-an, maka pada tahun 2000, Manajemen PT.PLN melikwidasi PLN Cabang Waingapu menjadi setingkat Ranting, sehingga Ranting waingapu dan
Ranting Waikabubak menjadi unit di bawah Cabang Kupang.Dengan terbentuknya PT. PLN Persero Wilayah NTT sebagai suatu organisasi organisasi PLN setingkat
Wilayah yang mengelola usaha ketenagalistrikan di Provinsi NTT terlepas dari PT. PLN
Persero Wilayah
Bali Nusatenggara
serta perkembangansektor
ketenagalistrikan di Propinsi NTT secara umum dan Pulau Sumba secara khusus. Untuk lebih meningkatkan serta mengoptimalkan pelayanan PLN kepada pelanggan
di Pulau Sumba melalui SK GM PT. PLN Persero Wilayah NTT nomor: 127.K021GM.W.NTT2004 tanggal 25 Nopember 2004, dibentuk PT. PLN
9
Persero Cabang Sumba dengan Ranting Sumba Timur dan Ranting Sumba Barat sebagai unit di bawahnya yang terpisah dari Cabang Kupang [4].
Teknik yang digunakan untuk membuat aplikasi dalam mengamankan data keuangan, yaitu kriptografi yang merupakan ilmu yang mempelajari teknik-teknik
matematika yang berhubungan dengan aspek keamanan informasi, seperti kerahasiaan, integritas data, serta otentikasi [5]. Menurut definisi Scheiner
kriptografi adalah ilmu dan seni untuk menjaga keamanan pesan. Kata seni di dalam definisi scheiner berasal dari fakta sejarah bahwa ada masa-masa awal
sejarah kriptografi, setiap orang mungkin mempunyai cara yang unik untuk merahasiakan pesan [5].
Teknik matematika yang dimaksud oleh Menezzes, yaitu Algoritma kriptografi yang merupakan langkah-langkah logis bagaimana menyembunyikan
pesan dari orang-orang yang tidak berhak atas pesan tersebut [5]. Dalam algoritma kriptografi terdapat enkripsi, dekripsi,
cipher
dan kunci. Enkripsi merupakan proses menyandikan
plaintext
menjadi
ciphertext
. Sedangkan dekripsi merupakan proses mengembalikan
ciphertext
menjadi
plaintext
semula.
Cipher
merupakan aturan untuk
enciphering
dan
deciphering
, atau fungsi matematika yang digunakan untuk enkripsi dan dekripsi. Kunci
key
merupakan parameter yang digunakan untuk transformasi
enciphering
dan
deciphering
. Kunci biasanya berupa
string
atau deretan bilangan [5].
Ada empat tujuan mendasar dari ilmu kriptografi ini yang juga merupakan aspek keamanan informasi yaitu :
1. Kerahasiaan, adalah layanan yang ditujukan untuk menjaga agar pesan tidak dapat dibaca oleh pihak-pihak yang tidak berhak. Di dalam kriptografi, layanan
ini direalisasikan dengan menyandikan pesan menjadi
ciphertext
. 2. Integritas data, adalah layanan yang menjamin bahwa pesan masih asliutuh
atau belum pernah di manipulasi selama pengiriman. Untuk menjaga integritas data, sistem harus memiliki kemampuan untuk mendeteksi manipulasi data oleh
pihak-pihak yang tidak berhak, antara lain penyisipan, penghapusan, dan pensubsitusian data lain kedalam data yang sebenarnya.
3. Autentikasi, adalah layanan yang berhubungan dengan identifikasi atau pengenalan, baik secara kesatuan sistem maupun informasi itu sendiri. Dua
pihak yang saling berkomunikasi harus dapat mengontetikasi satu sama lain sehingga ia dapat memastikan sumber pesan.
4. Non-repudiasi, atau nirpenyangkalan adalah layanan untuk mencegah entitas yang berkomunikasi melakukan penyangkalan, yaitu pengirim pesan melakukan
pengiriman atau penerima pesan menyangkal telah mengirim pesan [5]. Algoritma IDEA merupakan kriptografi kunci simetris, maka menggunakan
kunci yang sama untuk proses enkripsi maupun dekripsi. Sebanyak 52 sub kunci 16-bit untuk proses enkripsi diperoleh dari sebuah kunci 128-bit. sub kunci
digunakan pada proses enkripsi dan dekripsi [6]. Algoritma IDEA juga merupakan algoritma
block cipher
yang bekerja dengan panjang
plaintext
64 bit dan
ciphertext
64 bit
.
Algoritma IDEA menggunakan operasi campuran dari tiga operasi aljabar yang berbeda, yaitu: operasi XOR
, Operasi penjumlahan modulo 2
16
⊞, dan
10
operasi perkalian modulo 2
16
+ 1 ⊙, dan semua operasi dilakukan pada sub blok
16 bit. Proses Algoritma IDEA dapat dilihat pada Gambar 1.
Gambar 1 Proses Algoritma IDEA [7]
Untuk operasi algoritma IDEA menggunakan kunci panjangnya 128 bit. Karena algoritma IDEA bekerja dalam bentuk
block cipher
, maka kunci yang digunakan akan dibagi dalam 52 sub kunci.
11
Gambar 2 Pembentukan subkunci Algoritma IDEA [6]
Gambar 2 menjelaskan panjang kunci untuk algoritma IDEA adalah 128-bit, atau sama dengan 16 bit yang dibagi dalam delapan partisi. Artinya panjang kunci
maksimal untuk IDEA adalah 16 karakter. Kunci dibagi menjadi 52 sub kunci yaitu enam sub kunci tiap putaran untuk delapan kali putaran, dan empat sub kunci untuk
transformasi akhir.
Sub kunci dibentuk dengan cara membagi kunci 128 bit menjadi delapan sub kunci masing
– masing sebesar 16 bit. Bentuk sub kunci untuk delapan putaran awal adalah K
1
, K
2
, K
3
, K
4
, K
5
, K
6
, K
7
, K
8
. Kemudian sub kunci tersebut diputar sebanyak 25 bit ke kiri dan dibagi lagi menjadi delapan sub kunci K
9
, K
10
, K
11
, K
12
, K
13
, K
14
, K
15
, K
16
. Sub kunci enkripsi yang terbentuk bisa dilihat pada Tabel 1.
12
Tabel 1. Sub Kunci Enkripsi IDEA
Tabel 2. Sub Kunci Dekripsi IDEA
Tabel 2 dapat dilihat pembentukan kunci dekripsi didasarkan pada kunci enkripsi yang telah dibentuk sebelumnya, dengan kata lain kunci pada proses
dekripsi merupakan turunan dari kunci enkripsi. Terdapat Perbedaan pada sub kunci yang dipakai pada proses enkripsi dan proses dekripsi. Perbedaan pertama,
yaitu pada urutan penggunaan sub kunci. Perbedaan kedua, pembentukan sub kunci dekripsi menggunakan operasi
invers
perkalian modulo 2
16
+ 1 pada sub kunci K
49
, K
52
, K
43
, K
46
, K
37
, K
40
, K
31
, K
34
, K
25
, K
28
, K
19
, K
22
, K
13
, K
16
, K
7
, K
10
, K
1
, K
4
dan menggunakan operasi
invers
penjumlahan modulo 2
16
untuk sub kunci K
50
, K
51
, K
45
, K
44
, K
39
, K
38
, K
33
, K
32
, K
27
, K
26
, K
21
, K
20
, K
15
, K
14
, K
9
, K
8
, K
2
,K
3.
Pengujian sistem aplikasi menggunakan pengujian
alpha
dan
beta
. Pengujian
Alpha
bertujuan untuk identifikasi dan menghilangkan sebanyak mungkin masalah sebelum akhirnya sampai ke
user
. Pengujian
Beta
evaluasi sepenuhnya oleh pengguna.
Pengguna diberitahukan
prosedur evaluasi,
diamati proses
penggunaannya, lalu dinilai dan dilakukan revisi [8]. Putaran Ke-1
K
1
, K
2
, K
3
, K
4
, K
5
, K
6
Putaran Ke-2 K
7
, K
8
, K
9
, K
10
, K
11
, K
12
Putaran Ke-3 K
13
, K
14
, K
15
, K
16
, K
17
, K
18
Putaran Ke-4 K
19
, K
20
, K
21
, K
22
, K
23
, K
24
Putaran Ke-5 K
25
, K
26
, K
27
, K
28
, K
29
, K
30
Putaran Ke-6 K
31
, K
32
, K
33
, K
34
, K
35
, K
36
Putaran Ke-7 K
37
, K
38
, K
39
, K
40
, K
41
, K
42
Putaran Ke-8 K
43
, K
44
, K
45
, K
46
, K
47
, K
48
Tranformasi K
49
, K
50
, K
51
, K
52
Putaran Ke-1 K
49 -1
-K
50
-K
51
K
52 -1
K
47
K
48
Putaran Ke-2 K
43 -1
-K
44
-K
45
K
46 -1
K
41
K
42
Putaran Ke-3 K
37 -1
-K
38
-K
39
K
40 -1
K
35
K
36
Putaran Ke-4 K
31 -1
-K
33
-K
32
K
34 -1
K
29
K
30
Putaran Ke-5 K
25 -1
-K
26
-K
27
K
28 -1
K
23
K
24
Putaran Ke-6 K
19 -1
-K
21
-K
20
K
22 -1
K
17
K
18
Putaran Ke-7 K
13 -1
-K
15
-K
14
K
16 -1
-K
11
K
12
Putaran Ke-8 K
7 -1
-K
9
-K
8
K
10 -1
K
5
K
6
Tranformasi K
1 -1
-K
2
-K
3
K
4 -1
13
3. Metode dan Perancang Sistem