6
Implementasi Kriptografi Untuk Pengamanan Data Sensitif Pada Aplikasi Rekam Medis Charisma Putra J*, Bambang Setiawan, Radityo Prasetianto Wibowo Jurusan Sistem Informasi, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember, Surabaya, Indonesia *Email:[email protected] Abstrak Rekam medis adalah data yang bersifat sangat pribadi dan menjadi salah satu informasi penting yang harus dimiliki oleh seorang pasien. Rekam medis berisi tentang catatan-catatan kesehatan pasien seperti identitas pasien, riwayat penyakit pasien, diagnose, dan tindakan dokter. Rekam medis dianggap sebagai data rahasia yang hanya boleh dibuka oleh pihak-pihak tertentu. Salah satu cara untuk menyimpan dan menjaga kerahasiaan data rekam medis adalah dengan menggunakan metode kriptografi. Dengan kriptografi, data-data sensitif yang ada pada rekam medis dapat diamankan. Rekam medis juga erat kaitannya dengan unit bisnis lain seperti Instalasi Rawat Jalan dan Rawat Inap. Sampai saat ini, Rekam Medis yang ada masih terbagi antara Rekam Medis Rawat Jalan dan Rawat Inap tetapi belum terintegrasi diantara keduanya. Metode yang dirujuk untuk melakukan pengamanan data adalah dengan menggunakan sebuah algoritma kriptografi, yaitu sebuah algoritma yang digunakan untuk melakukan enkripsi dan dekripsi. Dengan penerapan algoritma ini data sensitif pada Rekam Medis dapat dijaga kerahasiannya dan tidak mempengaruhi terhadap kecepatan akses aplikasi. Adapun untuk melakukan pengintegrasian dengan aplikasi lain, teknologi yang diterapkan dalam penelitian ini adalah Enterprise Service Bus (ESB). Dengan ESB, suatu aplikasi dapat diintegrasikan satu sama lain meskipun dikembangkan dengan menggunakan bahasa pemrograman yang berbeda. Hasil penelitian ini adalah penerapan kriptografi pada aplikasi rekam medis tidak banyak mempengaruhi performa aplikasi berdasarkan selisih waktu proses antara aplikasi sebelum dan sesudah menerapkan kriptografi. Kata Kunci : Rekam Medis, Kriptografi, Enkripsi, Dekripsi, ESB 1. Pendahuluan Rekam medis (medical record) adalah data yang bersifat sangat pribadi dan menjadi salah satu informasi penting yang harus dimiliki oleh seorang pasien. Rekam medis berisi tentang catatan-catatan kesehatan pasien seperti identitas pasien, riwayat penyakit pasien, diagnose, dan tindakan dokter. Sampai saat ini, rekam medis yang ada masih menggunakan media kertas. Sistem konvensional ini sebenarnya memiliki kelemahan dalam pengamanan data. Karena sifatnya yang sangat rahasia dibutuhkan suatu ruang yang cukup aman dalam penyimpanan data rekam medis ini agar data-data yang ada dalam rekam medis dapat tersimpan dengan aman. Dari awal permasalahan inilah penulis mengembangkan suatu aplikasi rekam medis. Oleh karena rekam medis merupakan dokumen yang sifatnya rahasia dan hanya dapat diakses oleh pihak-pihak tertentu yang mempunyai hak akses terhadap rekam medis tersebut, aplikasi dikembangkan dengan mengimplementasikan pengamanan data menggunakan metode kriptografi sehingga keamanan pada data-data penting dapat terjaga kerahasiannya. Rekam medis juga erat kaitannya dengan unit bisnis lain seperti Instalasi Rawat Inap dan Rawat Jalan. Rekam medis pasien dibutuhkan oleh Rawat Inap pada saat dokter akan membutuhkan data pasien dan riwayat penyakit pasien pada saat akan melakukan diagnosa dan tindakan medis terhadap pasien. Begitu juga dengan Instalasi Rawat Jalan, rekam medis diperlukan oleh dokter untuk melakukan diagnosa penyakit terhadap pasien. Untuk mengatasi permasalah ini, aplikasi yang telah menerapkan kriptografi ini kemudian diintegrasikan dengan aplikasi lain yang saling berhubungan. Teknologi yang digunakan adalah Enterprise Service Bus (ESB) yaitu sebuah teknologi yang dapat memungkinkan aplikasi-aplikasi yang dikembangkan dapat terintegrasi dengan baik. 2. Tinjauan Pustaka Dalam pembangunan aplikasi, digunakan beberapa dasar dari beberapa sumber bacaan. A. Rekam Medis Dalam penjelasan Pasal 46 ayat (1) UU Praktik Kedokteran, yang dimaksud dengan rekam medis adalah berkas yang berisi catatan dan dokumen tentang identitas pasien, pemeriksaan, pengobatan, tindakan dan pelayanan lain yang telah diberikan kepada pasien.

Implementasi Kriptografi Untuk Pengamanan Data … · Implementasi Kriptografi Untuk Pengamanan Data Sensitif Pada Aplikasi Rekam Medis Charisma Putra J*, Bambang Setiawan, Radityo

  • Upload
    vodang

  • View
    227

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Implementasi Kriptografi Untuk Pengamanan Data … · Implementasi Kriptografi Untuk Pengamanan Data Sensitif Pada Aplikasi Rekam Medis Charisma Putra J*, Bambang Setiawan, Radityo

Implementasi Kriptografi Untuk Pengamanan Data Sensitif Pada Aplikasi Rekam Medis

Charisma Putra J*, Bambang Setiawan, Radityo Prasetianto Wibowo

Jurusan Sistem Informasi, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember, Surabaya, Indonesia

*Email:[email protected]

Abstrak Rekam medis adalah data yang bersifat sangat pribadi dan menjadi salah satu informasi penting yang harus dimiliki oleh seorang pasien. Rekam medis berisi tentang catatan-catatan kesehatan pasien seperti identitas pasien, riwayat penyakit pasien, diagnose, dan tindakan dokter. Rekam medis dianggap sebagai data rahasia yang hanya boleh dibuka oleh pihak-pihak tertentu. Salah satu cara untuk menyimpan dan menjaga kerahasiaan data rekam medis adalah dengan menggunakan metode kriptografi. Dengan kriptografi, data-data sensitif yang ada pada rekam medis dapat diamankan. Rekam medis juga erat kaitannya dengan unit bisnis lain seperti Instalasi Rawat Jalan dan Rawat Inap. Sampai saat ini, Rekam Medis yang ada masih terbagi antara Rekam Medis Rawat Jalan dan Rawat Inap tetapi belum terintegrasi diantara keduanya. Metode yang dirujuk untuk melakukan pengamanan data adalah dengan menggunakan sebuah algoritma kriptografi, yaitu sebuah algoritma yang digunakan untuk melakukan enkripsi dan dekripsi. Dengan penerapan algoritma ini data sensitif pada Rekam Medis dapat dijaga kerahasiannya dan tidak mempengaruhi terhadap kecepatan akses aplikasi. Adapun untuk melakukan pengintegrasian dengan aplikasi lain, teknologi yang diterapkan dalam penelitian ini adalah Enterprise Service Bus (ESB). Dengan ESB, suatu aplikasi dapat diintegrasikan satu sama lain meskipun dikembangkan dengan menggunakan bahasa pemrograman yang berbeda. Hasil penelitian ini adalah penerapan kriptografi pada aplikasi rekam medis tidak banyak mempengaruhi performa aplikasi berdasarkan selisih waktu proses antara aplikasi sebelum dan sesudah menerapkan kriptografi.

Kata Kunci : Rekam Medis, Kriptografi, Enkripsi, Dekripsi, ESB

1. Pendahuluan Rekam medis (medical record) adalah data

yang bersifat sangat pribadi dan menjadi salah satu informasi penting yang harus dimiliki oleh seorang pasien. Rekam medis berisi tentang catatan-catatan kesehatan pasien seperti identitas pasien, riwayat penyakit pasien, diagnose, dan tindakan dokter.

Sampai saat ini, rekam medis yang ada masih menggunakan media kertas. Sistem konvensional ini sebenarnya memiliki kelemahan dalam pengamanan data. Karena sifatnya yang sangat rahasia dibutuhkan suatu ruang yang cukup aman dalam penyimpanan data rekam medis ini agar data-data yang ada dalam rekam medis dapat tersimpan dengan aman. Dari awal permasalahan inilah penulis mengembangkan suatu aplikasi rekam medis. Oleh karena rekam medis merupakan dokumen yang sifatnya rahasia dan hanya dapat diakses oleh pihak-pihak tertentu yang mempunyai hak akses terhadap rekam medis tersebut, aplikasi dikembangkan dengan mengimplementasikan pengamanan data menggunakan metode kriptografi sehingga keamanan pada data-data penting dapat terjaga kerahasiannya.

Rekam medis juga erat kaitannya dengan unit bisnis lain seperti Instalasi Rawat Inap dan

Rawat Jalan. Rekam medis pasien dibutuhkan oleh Rawat Inap pada saat dokter akan membutuhkan data pasien dan riwayat penyakit pasien pada saat akan melakukan diagnosa dan tindakan medis terhadap pasien. Begitu juga dengan Instalasi Rawat Jalan, rekam medis diperlukan oleh dokter untuk melakukan diagnosa penyakit terhadap pasien. Untuk mengatasi permasalah ini, aplikasi yang telah menerapkan kriptografi ini kemudian diintegrasikan dengan aplikasi lain yang saling berhubungan. Teknologi yang digunakan adalah Enterprise Service Bus (ESB) yaitu sebuah teknologi yang dapat memungkinkan aplikasi-aplikasi yang dikembangkan dapat terintegrasi dengan baik.

2. Tinjauan Pustaka Dalam pembangunan aplikasi, digunakan

beberapa dasar dari beberapa sumber bacaan. A. Rekam Medis

Dalam penjelasan Pasal 46 ayat (1) UU Praktik Kedokteran, yang dimaksud dengan rekam medis adalah berkas yang berisi catatan dan dokumen tentang identitas pasien, pemeriksaan, pengobatan, tindakan dan pelayanan lain yang telah diberikan kepada pasien.

Page 2: Implementasi Kriptografi Untuk Pengamanan Data … · Implementasi Kriptografi Untuk Pengamanan Data Sensitif Pada Aplikasi Rekam Medis Charisma Putra J*, Bambang Setiawan, Radityo

Dalam Peraturan Menteri Kesehatan Nomor 749a/Menkes/Per/XII/1989 tentang Rekam Medis dijelaskan bahwa rekam medis adalah berkas yang berisikan catatan dan dokumen tentang identitas pasien, pemeriksaan, pengobatan, tindakan dan pelayanan lain kepada pasien pada sarana pelayanan kesehatan. (Konsil Kedokteran Indonesia, 2006)

B. Framework OHIS OHIS adalah suatu framework yang

memberikan solusi alternatif bagi pengembangan sistem informasi rumah sakit dengan hanya membuat desain perangkat lunak sebagai modul service dan membuat database untuk tiap modul untuk bisa mengimplementasikannya (Mahananto, P.W., N.A., & E.R., 2010). Dengan diterapkannya OHIS, pengembang bisa melakukan pembangunan aplikasi dimulai dari yang kecil ataupun menerapkan yang sudah kompleks sekalipun dikarenakan sudah adanya standar framework dalam penulisan kode pada setiap aplikasi baru yang akan dibuat. Selain itu, juga terdapat dukungan framework SOA didalam OHIS yang menggunakan teknologi webservice yang mampu mengintegrasikan antar modul pada framework OHIS. Hal yang juga penting pada framework ini adalah adanya service locator,service loader, dan service requester yang memungkinkan untuk terjadinya integrasi antar modul, seperti yang terdapat pada gambar 1 :

Gambar 1 Arsitektur Framework OHIS.

C. Definisi Informasi Sensitif Informasi sensitif adalah informasi

yang dapat menimbulkan kerugian terhadap privasi seseorang atau organisasi, apabila diketahui orang-orang yang tidak berkepentingan. (Setyorini, 2008).

Klasifikasi jenis informasi sensitf :

- Password - Identitas pengenal

Yaitu informasi sensitif yang berupa identitas sesorang misalnya no. kartu kredit, no. kartu atm, no. rekening bank.

- Informasi sensitif lain Yaitu informasi sensitif yang berupa catatan penting misalnya adalah rekam medik pasien, data konseling seseorang, tanggal lahir, tanggal kadaluarsa kartu kredit, teknik produksi, daftar gaji, formula suatu produk.

D. Kriptografi Kriptografi adalah ilmu dan seni

untuk menjaga keamanan pesan yang bertujuan untuk menjaga kerahasiaan informasi yang terkandung dalam data sehingga informasi tersebut tidak dapat diketahui oleh pihak yang tidak bertanggung jawab.

Dalam kriptografi terdapat dua konsep utama yakni enkripsi dan dekripsi. Enkripsi adalah proses dimana informasi/data yang hendak dikirim diubah menjadi bentuk yang hampir tidak dikenali sebagai informasi awalnya dengan menggunakan algoritma tertentu. Dekripsi adalah kebalikan dari enkripsi yaitu mengubah kembali bentuk tersamar tersebut menjadi informasi awal.

Dari hasil penelitian sebelumnya yang dilakukan oleh Setyorini, S.L (2008), didapatkan beberapa informasi penting yang berhubungan dengan pengimplementasian kriptografi untuk data sensitif. Setyorini, S.L (2008) melakukan suatu uji coba untuk menguji beberapa algoritma kriptografi untuk menentukan algoritma yang dapat diterapkan sesuai dengan kebutuhan. Adapun uji coba yang dilakukan adalah sebagai berikut:

- Berdasarkan kecepatan waktu proses Tabel 1 hasil uji coba berdasarkan kecepatan waktu proses

panjang

asal (karakter)

waktu proses

cipher

DES TripleDES AES RSA MD5

4 Enkripsi 0.175 0.372 0.158 0.444 0.019

Dekripsi 0.192 0.896 0.317 3.502

5 Enkripsi 0.161 0.227 0.155 0.504 0.018

Dekripsi 0.192 0.243 0.186 3.304

8 Enkripsi 0.205 0.26 0.191 0.561 0.018

Dekripsi 0.278 0.385 0.265 4.087

10 Enkripsi 0.276 0.339 0.207 3.778 0.019

Dekripsi 0.276 0.339 0.207 3.778

12 Enkripsi 1.216 0.287 0.209 3.086 0.018

Page 3: Implementasi Kriptografi Untuk Pengamanan Data … · Implementasi Kriptografi Untuk Pengamanan Data Sensitif Pada Aplikasi Rekam Medis Charisma Putra J*, Bambang Setiawan, Radityo

Dekripsi 1.216 0.287 0.209 3.086

16 Enkripsi 0.174 0.232 0.153 0.52 0.021

Dekripsi 0.213 0.579 0.192 3.11

19 Enkripsi 0.193 0.272 0.264 0.455 0.025

Dekripsi 0.227 0.524 0.223 3.302

25 Enkripsi 0.185 0.231 0.162 0.431 0.029

Dekripsi 0.201 0.274 0.19 3.41

53 Enkripsi 0.17 0.256 0.158 0.403 0.12

Dekripsi 0.191 0.269 0.186 3.05

125 Enkripsi 0.349 0.47 0.331 1.132 0.21

Dekripsi 0.602 0.907 0.372 3.737

- Berdasar panjang data luaran yang dihasilkan

Tabel 2 panjang data luaran yang dihasilkan panjang asal

(karakter)

panjang data luaran cipher

DES TripleDES AES RSA MD5

4 16 16 32 128 32

5 16 16 32 128 32

8 32 32 32 128 32

10 32 32 32 128 32

12 32 32 32 128 32

16 48 48 64 128 32

25 64 64 64 128 32

53 112 112 128 128 32

125 256 256 256 384 32

E. Java Cryptography Extension (JCE)

Java Cryptography Extension (JCE) adalah sebuah program aplikasi antarmuka (API) yang menyediakan kerangka seragam untuk pelaksanaan fitur keamanan di Java. Hal ini awalnya dikembangkan untuk melengkapi Java 2 Software Developer Kit (SDK), Standard Edition, versi 1.2.x dan 1.3.x, tetapi sejak itu telah diintegrasikan ke dalam versi Java 2 SDK, 1.4.

JCE mendukung beberapa aplikasi keamanan digital, seperti berikut: - Symmetric cipher - Asimetris cipher - Stream cipher - Blok cipher - Kunci generasi - Kunci penyimpanan - Kunci pencarian - Stream aman - Sealed benda - tanda tangan digital - Pesan Authentication Code (MAC)

algoritma (JCERefGuide, 2004)

JCE berisi set paket-paket yang menyediakan framework dan implementasi untuk enkripsi, key generation, key agreement, dan algoritma Message Authentication Code (MAC). (Setyorini, 2008)

F. Enterprise Service Bus ESB adalah infrastruktur perangkat lunak

yang berlaku sebagai lapisan perantara dari middleware yang menjembatani persyaratan yang tidak bisa dipenuhi oleh webservice, seperti :

• Integrasi antar webservice dan teknologi middleware yang berbeda,

• Tingkat keamanan, ketergantungan dan robustness yang tinggi

• Kontrol dan pengelolaan dari komunikasi dan servis dari webservice

Gambar 2 adalah arsitektur aplikasi apabila sudah terdapat ESB sebagai lapisan perantara:

Gambar 2 Arsitektur umum aplikasi setelah menggunakan ESB.

3. Pembahasan Pembangunan aplikasi Rekam Medis yang

selanjutnya disebut dengan RM dilakukan dengan menggunakan tools Netbeans, Framework ZK untuk membuat tampilan aplikasi, AES sebagai algoritma kriptografi dan JCE sebagai penyedia kriptografi dalam Java, SOAP untuk webservice dan WSO2 sebagai esb yang nantinya menjadi jembatan komunikasi antar aplikasi RM dengan aplikasi lainnya. Dalam pembangunan aplikasi RM ini dilakukan beberapa tahapan, yaitu:

• Studi literatur dan pembahasan • Survey dan pengambilan dokumen yang

diperlukan. • Perancangan desain system • Standarisasi web service • Pembuatan aplikasi

o Implementasi aplikasi o Implementasi kriptografi o Implementasi webservice o Impelentasi esb

• Pengujian sistem

Page 4: Implementasi Kriptografi Untuk Pengamanan Data … · Implementasi Kriptografi Untuk Pengamanan Data Sensitif Pada Aplikasi Rekam Medis Charisma Putra J*, Bambang Setiawan, Radityo

3.1. Studi literatur Studi literatur yang dilakukan dalam

pembuatan tugas akhir ini adalah pembelajaran dan pemahaman literatur yang berkaitan dengan permasalahan yang ada. Beberapa yang akan dipelajari seperti penerapan algoritma kriptografi pada aplikasi lain, cara membuat webservice, contoh sistem informasi rumah sakit, membuat sistem informasi menggunakan Java Persistance API(JPA), ZK, dan teknologi pendukung lainnya. Literatur didapatkan dari banyak sumber seperti buku, video tutorial dan halaman web

3.2. Survey dan pengambilan dokumen yang diperlukan

Tahapan ini menghasilkan informasimengenai proses bisnis dari RM yang nantinya akan diterapkan dalam aplikasi RM. Hasil dari tahapan ini menjadi acuan dalam pembuatan aplikasi.

3.3. Perancangan desain sistem. Tahapan ini menghasilkan 1)

Storyboard yang digunakan sebagai acuan untuk jalannya aplikasi RM dilihat dari desain tampilannya, 2) Domain model yang menunjukkan objek-objek yang digunakan dalam pembangunan aplikasi, 3) Diagram dan deskripsi use case yang menunjukkan alur yang mungkin terjadi ketika menggunakan aplikasi, 4) Diagram sequence yang menunjukkan jalannya aplikasi dilihat dari sisi aplikasi, 5) Test case merupakan rancangan yang digunakan dalam tahapan pengujian aplikasi dari sisi fungsional.

3.4. Standarisasi web service Pada tahapan ini menghasilkan katalog

servis yang berisi kebutuhan data aplikasi terhadap RM di mana RM bertindak sebagai serverPada tabel 3 dibawah ini adalah contoh dari hasil pembahasan standarisasi webservice.

Tabel 3. Servis katalog pada aplikasi IRNAClient Service

Servis Flow Servis

Rawat Inap dan Rawat Jalan

List data pasien

-Token (ip, code)-getListPasien -logout -(token)

Aplikasi Akuntansi

Detail pasien

-Token (ip, code)-getPasien(norm)-logout (token)

3.5. Pembuatan Aplikasi

Hasil dari tahapan sebelumnya digunakan dalam tahapan pembuatan aplikasi ini. 3.5.1. Implementasi aplikasi

Studi literatur yang dilakukan dalam pembuatan tugas akhir ini adalah pembelajaran dan pemahaman literatur yang berkaitan dengan permasalahan yang ada. Beberapa yang akan

penerapan algoritma kriptografi cara membuat webservice, contoh

sistem informasi rumah sakit, membuat sistem Java Persistance API

(JPA), ZK, dan teknologi pendukung lainnya. Literatur didapatkan dari banyak sumber seperti

website.

3.2. Survey dan pengambilan dokumen yang

Tahapan ini menghasilkan informasi yang nantinya akan

. Hasil dari tahapan ini menjadi acuan dalam pembuatan aplikasi.

3.3. Perancangan desain sistem. Tahapan ini menghasilkan 1) GUI

yang digunakan sebagai acuan untuk dilihat dari desain

yang menunjukkan objek yang digunakan dalam pembangunan

Diagram dan deskripsi use case yang menunjukkan alur yang mungkin terjadi ketika menggunakan aplikasi, 4) Diagram sequence yang menunjukkan jalannya aplikasi dilihat dari sisi aplikasi, 5) Test case merupakan rancangan yang

an aplikasi dari sisi

Pada tahapan ini menghasilkan katalog servis yang berisi kebutuhan data aplikasi lain terhadap RM di mana RM bertindak sebagai server.

dibawah ini adalah contoh dari hasil san standarisasi webservice.

. Servis katalog pada aplikasi IRNA Flow Servis Keterangan

Token (ip, code)

(token)

Mengirimkan daftar pasien

Token (ip, code) getPasien(norm) logout (token)

Mengirimkan detail pasien berdasar nomer RM

Hasil dari tahapan sebelumnya digunakan dalam tahapan pembuatan aplikasi ini.

• Struktur kelas tampilanPada implementasi pengembangan

aplikasi Rekam Medis (RM) menggunakan ZK. Fungsi kelas antar muka adalah sebagai membuat tampilan aplikasi yang nantinya akan digunakan oleh pengguna aplikasi. Gambar salah satu contoh kelas tampilan yang digunakan.

Gambar 3. Contoh potongan kode kelas tampilan.

3.5.2. Implementasi KriptografiBerdasarkan hasil penelitian

sebelumnya, algoritma kriptografi yang digunakan adalah algoritma AES. Algoritma ini telah termasuk dalam Java Cryptography Extensionmenjadi satu dengan paket Java 2 SDK.

Implementasi kriptografi pada aplikasi rekam medis dimulai dengan membuat sebuah mendefinisikan algoritma kriptografi yang akan digunakan, proses enkripsi yang mengubah data asli (bentuk ciphertex, dan proses dekripsi yang akan mengembalikan data dalam bentuk asli (plaintext

Gambar 4. potongan kode

3.5.3. Implementasi webservicePembuatan servis pada aplikasi ini

mengikuti servis katalog yang sudah dibahas pada bab sebelumnya. Berikut salah satu contoh potongan kode pada implementasi web servis sebagai server dapat dilihat pada gambar

Struktur kelas tampilan Pada implementasi pengembangan Rekam Medis (RM) penulis

menggunakan ZK. Fungsi kelas antar muka adalah sebagai membuat tampilan aplikasi yang nantinya akan digunakan oleh

Gambar 3 menunjukkan salah satu contoh kelas tampilan yang

. Contoh potongan kode kelas tampilan.

Implementasi Kriptografi Berdasarkan hasil penelitian

sebelumnya, algoritma kriptografi yang digunakan adalah algoritma AES. Algoritma ini telah termasuk dalam library Java Cryptography Extension (JCE) yang menjadi satu dengan paket Java 2 SDK.

Implementasi kriptografi pada aplikasi rekam medis dimulai dengan membuat sebuah class yang akan

inisikan algoritma kriptografi yang akan digunakan, proses enkripsi yang mengubah data asli (plaintext) ke dalam

dan proses dekripsi yang akan mengembalikan data ciphertext ke

plaintext).

. potongan kode kriptografi.

Implementasi webservice Pembuatan servis pada aplikasi ini

mengikuti servis katalog yang sudah dibahas pada bab sebelumnya. Berikut salah satu contoh potongan kode pada implementasi web servis sebagai server dapat dilihat pada gambar 5.

Page 5: Implementasi Kriptografi Untuk Pengamanan Data … · Implementasi Kriptografi Untuk Pengamanan Data Sensitif Pada Aplikasi Rekam Medis Charisma Putra J*, Bambang Setiawan, Radityo

Gambar 5. Contoh potongan kode untuk implementasi webservice

3.5.4. Implementasi esb Sesuai dengan tujuan pada tugas

akhir ini, aplikasi RM akan diintegrasikan dengan aplikasi lain menggunakan teknologi Enterprise Service Bus (ESB)Fungsi ESB adalah untuk melakukan pengintegrasian antar aplikasi yang ada melalui webservice antar aplikasi.gambar 6 dibawah ini adalah salah satu contoh penerpan esb pada aplikasi.

Gambar 6. Contoh penerapan esb.

3.6. Pengujian sistem Tahapan ini meluputi 2

pengujian yaitu 1) uji coba fungsional aplikasi menggunakan test case yang telah dibuat sebelumnya 2) uji coba non fungsional dengan menguji performa dari system. Hasil dari uji coba fungsional adalah aplikais telah menunjukkan pemenuhan kebutuhan

Uji coba Non Fungsional atau uji coba performa sistem. Untuk uji coba performa ini dilakukan terlebih dahulu dengan menggunakan Apache Benchmark untuk mendapatkan halaman yang memiliki request time paling lama, kemudian halaman yang paling lamtersebut diuji lagi dengan menggunakan fitur yang ada pada Netbeans 6.8 yaitu project. Dengan menggunakan fitur ini, dapat terlihat method mana yang membuat load time menjadi lama, sehingga bisa dilakukan optimasi lebih lanjut pada method atauTabel 4 adalah hasil uji performa dengan Apache Benchmark. Setting yang dilakukan pada saat melakukan uji coba adalah

. Contoh potongan kode untuk implementasi

Sesuai dengan tujuan pada tugas akan diintegrasikan

dengan aplikasi lain menggunakan Enterprise Service Bus (ESB).

ah untuk melakukan pengintegrasian antar aplikasi yang ada melalui webservice antar aplikasi.Pada

dibawah ini adalah salah satu contoh penerpan esb pada aplikasi.

. Contoh penerapan esb.

Tahapan ini meluputi 2 tahapan pengujian yaitu 1) uji coba fungsional aplikasi menggunakan test case yang telah dibuat sebelumnya 2) uji coba non fungsional dengan menguji performa dari system. Hasil dari uji coba fungsional adalah aplikais telah

pemenuhan kebutuhan fungsional. Uji coba Non Fungsional atau uji coba

performa sistem. Untuk uji coba performa ini dilakukan terlebih dahulu dengan menggunakan

untuk mendapatkan halaman yang memiliki request time paling lama, kemudian halaman yang paling lambat tersebut diuji lagi dengan menggunakan fitur yang ada pada Netbeans 6.8 yaitu profiler

Dengan menggunakan fitur ini, dapat terlihat method mana yang membuat load time menjadi lama, sehingga bisa dilakukan optimasi lebih lanjut pada method atau fungsi tersebut.

adalah hasil uji performa aplikasi RM . Setting yang

dilakukan pada saat melakukan uji coba adalah

menggunakan parameter artinya total request yang dilakukan adalah 1000 request, sedangkan untuk parameter ubah mulai dari 10 sampai 100 untuk bisa mendapatkan grafik dari halaman yang paling sedikit request per second nya

Tabel 4. Tabel hasil uji coba request per second.

Halaman yang diakses

10

Halaman login 33.6

halaman pasien 36.4 halaman anamnesa 20.43 halaman tindakan 33.81

Hasil lain yang didapatkan adalah perbandingan waktu yang diperlukan dalam satu request pada halaman yang diuji. Tabel 5 adalah perbandingan waktu satu request pada aplikasi Rekam Medis.

Tabel 5. Tabel hasil uji coba request per secondHalaman yang

diakses

concuren

10 50Halaman login 297.649 1989.003halaman pasien 274.716 1716.783halaman anamnesa 489.373 1913.343halaman tindakan 295.777 1577.943

Perbedaan kecepatan disebabkan pada banyaknya data dan hubungan antar tabel yang ada. Misalkan pada halaman anamnesa yang memiliki waktu request paling lama. Hal ini desebabkan pada di dalam halaman anamnesa terdapat beberapa tabel yang saling berhubungan seperti tabel pasien, anamnesa dan tindakan sehingga dibutuhkan waktu yang cukup lama jika dibandingakan dengan halaman lain seperti halaman pasien yang hanya berisi tabel pasien. Uji coba berikutnya adalah menguji pengaruh kriptografi dalam proses aplikasi RM.Hasil yang didapat pada uji coba kali ini menyebutkan bahwa selisih waktu antara aplikasi sebelum dan sesudah mengimplementasikan kriptografi tidak berbeda jauh. grafik perbandingan waktu proses antara aplikasi sebelum dan sesudah mengimplkriptografi.

menggunakan parameter –n sebesar 1000 yang artinya total request yang dilakukan adalah 1000

sedangkan untuk parameter –c diubah-ubah mulai dari 10 sampai 100 untuk bisa mendapatkan grafik dari halaman yang paling sedikit request per second nya :

. Tabel hasil uji coba request per second.

concurency level

50 100 1000

25.14 41.28 89.16

29.12 47.91 89.03

26.13 48.38 87.45

31.69 43.17 93.85

yang didapatkan adalah perbandingan waktu yang diperlukan dalam satu request pada halaman yang diuji. Tabel 5 adalah perbandingan waktu satu request pada aplikasi Rekam Medis.

. Tabel hasil uji coba request per second

concurency level

50 100 1000

1989.003 2422.684 11216.42

1716.783 2087.284 11232.02

1913.343 2067.004 11434.82

1577.943 2316.604 10654.819

Perbedaan kecepatan akses halaman disebabkan pada banyaknya data dan hubungan antar tabel yang ada. Misalkan pada halaman anamnesa yang memiliki waktu request paling lama. Hal ini desebabkan pada di dalam halaman anamnesa terdapat beberapa tabel yang saling berhubungan

i tabel pasien, anamnesa dan tindakan sehingga dibutuhkan waktu yang cukup lama jika dibandingakan dengan halaman lain seperti halaman pasien yang hanya berisi tabel pasien.

Uji coba berikutnya adalah menguji pengaruh kriptografi dalam proses aplikasi RM. Hasil yang didapat pada uji coba kali ini menyebutkan bahwa selisih waktu antara aplikasi sebelum dan sesudah mengimplementasikan kriptografi tidak berbeda jauh. Gambar 7 adalah grafik perbandingan waktu proses antara aplikasi sebelum dan sesudah mengimplementasikan

Page 6: Implementasi Kriptografi Untuk Pengamanan Data … · Implementasi Kriptografi Untuk Pengamanan Data Sensitif Pada Aplikasi Rekam Medis Charisma Putra J*, Bambang Setiawan, Radityo

Gambar 7 perbandingan aplikasi RM sebelum dan sesudah mengimplementasikan kriptografi 4. Kesimpulan

Dari pembahasan di atas, dapat diambil beberapa kesimpulan sebagai berikut.

1. Karakteristik data sensitif pada Rekam Medis terdiri dari identitas pasien, anamnesa diagnosa pasien, kondisi klinis pasien, dan tindakan dokter yang hanya berhak diketahui oleh yang berwenang untuk melihatnya.

2. Selisih waktu proses antara aplikasi rekam medis sebelum dan sesudah menerapkan kriptografi tidak berbeda jauh.

3. Aplikasi Rekam Medis terintegrasi dengan baik dengan aplikasi lain menggunakan Enterprise Service Bus (ESB).

4. Penerapan kriptografi pada aplikasi rekam medis sedikit mempengaruhi performa aplikasi, melainkan penggunaan framework ZK yang paling banyak mempengaruhi performa aplikasi

5. Daftar Pustaka [1]Chen, Henri (2008). ZK - Ajax without JavaScript. Apress. p. 125. ISBN 978-1590599013.

[2]Doug Rosenberg, Matt Stephens. Use Case Driven Object Modeling with UML Theory and Practice.

[3]Holil Noor Ali, A., P.W., Radityo., Er, Mahendrawati., & Nisafani, A. S. (n.d.). Restructuring Components of Integrated Health Information System In Outpatient and Inpatient Departement Using Service Oriented Architecture.

[4]JCERefGuide, January 2004, JavaTM Cryptography Extension (JCE) Reference Guide for the JavaTM 2 Platforms Standard Edition Development Kit (JDK) 5.0, Sun Microsystems, Inc.

http://java.sun.com/j2se/1.4.2/docs/guide/security/jce/JCERefGuide.html [5]Keith, M., & Schincariol, M. (2009). Pro JPA 2 Mastering the Java Persistence API (Expert Voice in Java Technology). i M. Keith, & M. Schincariol, Pro JPA 2 Mastering the Java Persistence API (Expert Voice in Java Technology) (ss. 13-15). New York: Appress.

[6]Kemastuti, E., Noor Ali, A. H., & Mahananto, F. (n.d.). Pembangunan Modul Rawat Inap (IRNA) Dan Pengintegrasian Dalam Purwarupa Sistem Informasi Rumah Sakit Terpadu (SIRST) Berbasis SOA.

[7]Mahananto, F., P.W, Radityo., Holil N.A, A., & Er, Mahendrawati. (n.d.). OHIS : SOA Based Grow-able Healthcare Information System.

[8]Nufus, H. (2009). Pembuatan Aplikasi Kriptografi Algoritma BASE64 Menggunakan JAVA JDK 1.6.

[9]Raja. (u.d.). article: 5-introduction-to-java-persistence-apijpa-1. Hämtat från javabeat: http://www.javabeat.net/articles/5-introduction-to-java-persistence-apijpa-1.html den 30 december 2010

[10]Setyorini, S.L (2008). Implementasi Kriptografi Untuk Pengamanan Informasi Sensitif Menggunakan Java Cryptography Extension.

[11]Sjamsuhidajat, Alwy, S. Manual Rekam Medis. Konsil Kedokteran Indonesia, 2006.

[12] Wolper, L.F,. Administrasi Layanan Kesehatan. EGC, Jakarta, 2001

[13]W3School. (n.d.). Introduction to Web Services. Retrieved from W3School: http://www.w3schools.com/webservices/ws_intro.asp