Perancangan dan Implementasi E-Library Menggunakan Digital Rights Management System pada Android OS
Artikel Ilmiah
Peneliti : Delberth J. Beti (672009164) Yos Richard Beeh, S.T., M.Cs.
Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga April 2016
Perancangan dan Implementasi E-Library Menggunakan Digital Rights Management System pada Android OS
Artikel Ilmiah
Diajukan kepada Fakultas Teknologi Informasi untuk memperoleh Gelar Sarjana Komputer
Peneliti: Delberth J. Beti (672009164) Yos Richard Beeh, S.T., M.Cs.
Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga April 2016
`
`
Lembar Persetujuan
`
`
`
`
Perancangan dan Implementasi E-Library Menggunakan Digital Rights Management System pada Android OS 1)
Delberth J. Beti, 2) Yos R. Beeh Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Jl. Diponegoro 52-60, Salatiga 50711, Indonesia Email: 1)
[email protected], 2)
[email protected]
Abstract The library provides information and knowledge. The weakness of traditional libraries such as limited copies of books and storage space as well as the vulnerability of the book presents a digital library that generates knowledge access services without the limitation of time and space. However, the activities of copyright infringement of digital works such as piracy and illegal copying rife in its implementation. Based on the problem, designed an e-library application on Android which has a Digital Rights Management (DRM) system to control and protect the digital work therein. This research uses Research & Development method to develop the e-library application. The test results indicate that the DRM system developed can be implemented on the application of e-library of Android and be able to control and guarantee the copyrights of digital therein. Keywords: Library, E-Library, DRM, Android.
Abstrak Perpustakaan merupakan penyedia informasi dan pengetahuan. Kelemahan perpustakan tradisional seperti terbatasnya eksemplar buku dan ruang penyimpanan serta rentannya kondisi buku menghadirkan perpustakaan digital yang menghasilkan layanan akses pengetahuan tanpa batas waktu maupun ruang. Namun kegiatan pelanggaran hak cipta karya digital seperti pembajakan dan penduplikasian marak terjadi dalam pelaksanaannya. Berdasarkan masalah tersebut, dirancang sebuah aplikasi e-library pada Android yang memiliki sebuah sistem Digital Rights Management (DRM) untuk mengontrol dan melindungi karya digital didalamnya. Penelitian ini menggunakan metode Research & Development untuk mengembangkan aplikasi e-library. Hasil pengujian menunjukkan bahwa sistem DRM yang dikembangkan dapat diimplementasikan pada aplikasi e-library Android dan dapat mengontrol serta menjamin hak cipta karya digital didalamnya Kata Kunci : Perpustakaan, Perpustakaan Digital, DRM, Android.
1)
Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi Universitas Kristen Satya Wacana, Salatiga. 2) Staff pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana, Salatiga.
1
`
1.
Pendahuluan
Perpustakaan merupakan sebuah penyedia informasi dan ilmu pengetahuan. Perpustakaan juga memendam tanggung jawab untuk memelihara ilmu pengetahuan yang terdapat dalam eksemplar-eksemplar pustaka tersebut. Dalam pelaksanaannya terdapat beberapa permasalahan yang dihadapi yang diantaranya adalah ketersediaan eksemplar yang terbatas bagi pembaca, ruang dan tempat yang terbatas bagi koleksi buku yang terus berlipat ganda, sukarnya menjaga kondisi buku yang kadang termakan usia ataupun rusak dalam proses penggunaanya serta sulitnya mengganti eksemplar yang hilang karena kelalain pengguna [1]. Masalahmasalah ini terus menjadi tantangan bagi perpustakaan dalam pengelolaannya. Pendekatan teknologi informasi dapat menangani masalah-masalah ini yaitu dengan suatu perpustakaan digital yang tidak dikekang oleh ruang dan waktu. Perpustakaan digital atau Electronic Library merupakan suatu koleksi terfokus objek-objek digital, baik itu teks, video dan audio, yang bersamaan dengan itu juga terdapat metode-metode untuk mengakses dan mengambil, untuk menyeleksi, mengatur dan memelihara objek-objek digital tersebut [2]. Dengan perpustakaan digital, buku tidak dibatasi dengan ruangan fisik, kondisi buku tetap terjamin, jumlah eksemplar yang tidak terbatas, dan kemudahan dalam mengakses informasi yang terdapat didalamnya. Hasilnya biaya pengadaan dan pengelolaan koleksi menjadi lebih murah. Kemajuan teknologi di bidang mobile, juga mendorong keoptimalan perpustakaan digital dalam memudahkan pegguna untuk mengakses informasi kapan dan di mana saja. Konsep DRM atau Digital Rights Management hadir untuk mengatasi masalah rentannya aksi pelanggaran hak cipta pada perpustakaan digital. Dimana karya digital dapat dengan mudah duplikasikan tanpa persetujuan dari penulis. DRM berfungsi mengontrol dan melindungi informasi dari karya cipta tersebut sehingga informasi dapat digunakan sebagaimana mestinya. Penerapan teknologi DRM digunakan untuk membatasi hak akses informasi meskipun karya digital tersebut dimiliki pada perangkat pengguna sehingga meminimalisir kemungkinan aksi pelanggaran hak cipta seperti pembajakan dan penduplikasian konten digital yang terdapat di dalamnya. Berdasarkan latar belakang tersebut, maka dapat dirumuskan permasalahan yaitu bagaimana merancang dan mengimplementasikan E-Library menggunakan Digital Rights Management System (DRM) pada Android OS. Penelitian ini dibuat dengan tujuan agar dapat menghasilkan sebuah aplikasi e-library pada mobile Android yang dapat mengatur alur hidup karya digital dan lisensi di dalamnya nya serta dapat melindungi asset di dalamnya akan aksi yang melanggar hak cipta seperti pembajakan suatu karya digital. Penelitian ini memiliki tiga batasan masalah yaitu, tipe e-book yang digunakan berupa file EPUB, menggunakan web service berupa RESTful API berbasis HTTP, dan aplikasi yang dihasilkan terbatas pada platform Android.
2
`
2.
Tinjauan Pustaka
Penelitian sebelumnya yang pernah dilakukan berjudul “Library mobile applications in university libraries”. Chiao-Chen Chang, 2013, mencatat bahwa UCLA (Universitiy of California, Los Angeles) telah mengembangkan suatu aplikasi perpustakaan berbasis mobile Android yang memungkinkan pengguna untuk melakukan hal-hal umum seperti mencari katalog buku, melihat deskripsi serta ketersediaan buku dan mengetahui jam kerja serta kontak perpustakaan. Aplikasi tersebut juga dilengkapi fitur khusus dengan memanfaatkan GPS yang terdapat pada smartphone untuk mengarahkan ke tempat lokasi buku [3]. Penelitian tentang sistem informasi perpustakaan berbasis mobile juga dilakukan oleh Singgih Lukman Anggana dan Stephanus Eko Wahyudi, 2016, pada penelitiannya yang berujudul “Enhancing University Library Services with Mobile Library Information System”. Penelitian ini bertujuan untuk meningkatkan pengalaman pengguna dalam menggunakan pelayanan perpustakaan baik itu perpustakaan tradisional maupun perpustakaan hybrid dengan menggunakan aplikasi mobile pada Android. Aplikasi tersebut memungkinkan pengguna untuk mencari dan melihat ketersedian buku dan juga meminjam buku dari perpustakaan universitas yang adalah perpustakan Universitas Ciputra [4]. Digital Library mempunyai tiga karakteristik utama yaitu menggunakan teknologi yang mengintegrasikan kemampuan untuk menciptakan, mencari, dan menggunakan informasi dalam berbagai bentuk di dalam sebuah jaringan digital yang tersebar luas. Memiliki koleksi yang mencakup data dan metadata yang saling mengaitkan berbagai data, baik di lingkungan internal maupun eksternal. Merupakan kegiatan mengoleksi dan mengatur sumberdaya digital yang dikembangkan bersama komunitas pengguna jasa untuk memenuhi kebutuhan informasi komunitas tersebut. Sebab itu, perpustakaan digital merupakan integrasi berbagai institusi seperti perpustakaan, museum, arsip, dan menyediakan informasi secara meluas ke berbagai komunitas [5]. Menurut Supriyanto & Mushin, perpustakaan digital mempunyai berbagai manfaat seperti sebagai repository atau tempat penyimpanan karya digital, sebagai tempat preservasi/perawatan, sebagai media promosi/etalase hasil karya civitas akademika [6]. Perpustakan digital juga secara ekonomis lebih menguntungkan dibandingkan dengan perpustakaan tradisional. Terdapat empat alasan yaitu institusi dapat berbagi koleksi digital, koleksi digital dapat mengurangi kebutuhan terhadap bahan cetak pada tingkat lokal, penggunaannya akan meningkatkan akses elektronik, dan nilai jangka panjang koleksi digital akan mengurangi biaya berkaitan dengan pemeliharaan dan penyampaiannya [7]. Kemajuan dalam bidang teknologi informasi dan komunikasi juga memudahkan seseorang untuk melakukan aksi yang melanggar hak cipta digital seperti melakukan duplikasi, menyebarkan bahkan menjual secara ilegal karyakarya digital tersebut. Penelitian berjudul “Application of Digital Rights Management in Library” menyebutkan bahwa terdapat suatu teknik yang dapat mencegah aksi yang melanggar hak cipta digital yaitu dengan memperbolehkan distributor karya digital tersebut untuk mengontrol bagaimana pengguna dapat mengakses informasi. Teknologi ini adalah Digital Rights Management (DRM),
3
`
yang membutuhkan beberapa bentuk enkripsi untuk mengontrol akses informasi, DRM bekerja untuk melindungi serta mengatur siklus hidup data, aturan penggunaan, pembayaran (dalam kasus penjualan karya digital) dan kendalakendala yang terjadi pada retribusi data. Pengguna membutuhkan sebuah lisensi untuk membuka selubung dari data tersebut yang kemudian akan memberi akses untuk melihat konten yang dipilih. Hal tersebut berupa kunci individu kepada pengguna yang berfungsi untuk membuka enkripsi dari konten yang dipilih. DRM tidak memberikan full access kepada pengguna namun membatasi agar pengguna tidak dapat menyalin, mencetak dan menyebarkan kembali karya digital tersebut [8]. Kekuatan pendorong DRM berasal dari segi industri, dimana sering terjadi pelanggaran hak digital seperti pembajakan. Contoh perlindungan akan karya digital antara lain perlindungan akan buku digital (eBook), musik elektronik, dan film digital. Beberapa perusahaan Internasional mengembangkan dan memproduksi sistem DRM sendiri seperti WMRM dari Microsoft, Helix DRM dari Helix Network, Content Server dari Adobe dan EMMS Dari IBM. Sistem-sistem DRM dapat diklasifikasikan ke dalam bermacam kategori menurut standar yang berbeda seperti teknik perlindungan yang dipilih, maupun objek yang dilidungi. Objek yang dilindungi dapat berupa software, eBook, gambar digital, media stream, dan konten pada perangkat mobile. Sistem DRM pada eBook yang dilindungi mempunyai dua jenis aplikasi yaitu toko buku online (Amazon, GooglePlay Books, eReader) dan perpustakaan digital (netLibrary, Apabi). Toko buku online menjual eBook langsung kepada pengguna sementara perpustaan digital menyediakan layanan peminjaman dan kedua sistem ini harus menjaga hak-hak digital karya tersebut terhadap kemungkinan pelanggaran dari pihak ketiga. Penelitian pada DRM selalu mencakup arsitektur, keamanan konten, ekspresi hak dan otentikasi. Sistem-sistem yang diimplementasi berbeda-beda pada setiap titiknya namun sistem-sistem DRM memiliki karakteristik yang sama. Arsitektur DRM pada umumnya terdiri dari tiga komponen utama yaitu content packaging server, license server dan client.
Gambar 1 Arsitektur Umum DRM [9]
4
`
Alur arsitektur DRM pada umumnya bisa dilihat pada Gambar 1. DRM Packager pada content packaging server mengenkripsi konten dan mentrasfernya kepada client dan keterangan lisensi konten ditransfer ke license server. DRM Controller menerima dan menentukan cara pengguna mengakses konten tersebut, melalui ketentuan yang telah disisipkan dalam format paket yang permintaannya membutuhkan otorisasi. Jika tidak ditemukan lisensi pada mesin tersebut maka DRM Controller akan melakukan permintaan lisensi pada License Server dengan mengirimkan paket atribut pengguna dan konten tersebut. License Server memeriksa paket atribut pengguna dan konten yang terkait, membuat lisensi, kemudian dikemas dan ditransfer secara aman kepada DRM Controller. Penelitian ini menggunakan kembali DRM Packager untuk melakukan proses pemaketan konten buku, kemudian digunakan DRM License Generator untuk mengatur lisensi untuk pembatasan hak akses suatu buku yaitu lama pinjam buku dan stok eksemplar yang tersedia serta atribut identitas pengguna. DRM Controller pada penelitian ini terdapat pada aplikasi yang bertugas untuk membaca dan menjalankan paket buku dan lisensi yang telah dihasilkan. Keamanan Konten. Perlindungan konten digital pada umumnya didasarkan pada teknologi enkripsi, yaitu mengenkripsi konten digital sebelum didistribusikan. Sehingga pengguna ilegal tidakdapat mengakses informasi tersebut meskipun sudah berhasil mencegat konten selama transmisi data berlangsung. Cara lainnya adalah dengan Digital Watermarking. Cara ini dapat melindungi hak cipta dan integritas informasi. Digital Watermarking diterapkan dalam bidang-bidang kontrol dan monitor jarak jauh, otentikasi pemilik, verifikasi kepemilikan, pelacakan operasi, identifikasi konten, pembatasan pengopian dan kontrol perangkat. Pernyataan hak bekerja dengan Rights Expression Language (REL). Salah satu contoh pada area ini adalah proyek INDECS. Salah satu distribusi dasar dalam proyek ini yaitu memisahkan dan mengidentifikasi tiga entitas inti yaitu pengguna, konten, dan hak. Pengguna dapat berupa apapun baik itu pemegang hak karya maupun konsumen, konten juga dapat beragam jenisnya, dan entitas hak merupakan sebuah pernyataan perizinan, pembatasan, dan kewajiban antara entitas pengguna dan konten. Otentikasi merupakan bagan mendasar dari setiap sistem DRM karena merupakan fondasi dari manajemen hak. Sistem DRM memverifikasi kebenaran dan validitas identitas pengguna kemudian menentukan apakah layak diberikan otorisasi atau tidak. Teknik otentikasi yang sering digunakan adalah teknik konfirmasi password dan pembatasan perangkat. EPUB atau Electronic Publication merupakan suatu format standar publikasi dan dokumen digital yang berbasiskan standar web. EPUB mendefinisikan sebuah sarana yang mempresentasikan dan mengemas encoding terstruktur dan konten web yang ditingkatkan secara semantik (seperti XHTML, CSS, SVG, gambar, dan resource lainnya) untuk didistribusi dalam format sebuah file tunggal. EPUB memungkinkan penerbit-penerbit untuk memproduksi dan mengirim publikasi digital melalui sebuah file tunggal melalui distribusi dan menawarkan konsumen interoperabilitas antara software maupun hardware ebook lainnya [10]. EPUB bersifat reflowable sehingga tampilan teks dari publikasi digital tersebut dapat beradaptasi dengan sendirinya terhadap perangkat output itu sendiri. Selain bersifat
5
`
open source, EPUB dalam mengatur desain tampilan menggunakan CSS dan gambar vektor serta menggunakan XML out-of-line dan inline yang berguna memperluas fungsi EPUB sehingga dapat mendukung konten audio dan video. Penelitian ini menggunakan EPUB sebagai tipe file buku terpilih. Setiap isi file buku EPUB baik itu konten buku, file metadata dan gambar yang terdapat di dalamnya akan melalui proses enkripsi dan akan didekripsikan kembali pada proses pembacaan. Android adalah sebuah sistem operasi yang digunakan pada smartphone dan komputer tablet yang bersifat open source. Android tumbuh pesat dalam perkembangannya dan terus mendominasi hingga saat ini. StatCounter mencatat bahwa Android merupakan sistem operasi yang paling banyak digunakan secara global pada tahun 2015. Gambar 2, menunjukkan bahwa Android unggul dengan minimal 59% penggunaan dari sistem operasi lainnya. Android terus merilis sistem operasi versi baru setiap tahunnya dan setiap versi baru tersebut memuat fitur-fitur baik itu hasil interoperabilitas dengan fitur baru pada hardware maupun hasil pengembangan dari versi sebelumnya.
Gambar 2 Grafik Pengguna Smartphone Secara Global Tahun 2015 [11]
3.
Metode dan Perancangan Sistem
Metode penelitian yang digunakan adalah Metode Research & Development (R&D). Langkah-langkah penelitian dalam metode ini dapat dijabarkan seperti Gambar 3 yaitu, (1) Potensi dan Masalah, (2) Pengumpulan data, (3) Desain Produk, (4) Validasi Desain, (5) Revisi Desain, (6) Ujicoba produk, (7) Revisi Produk, (8) Ujicoba pemakaian, (9) Revisi Produk, (10) Produksi Masal.
Gambar 3 Langkah-Langkah Penggunaan Metode Research & Development [12]
6
`
Tahap pertama memuat potensi yang dapat diangkat dari masalah yang diteliti. Berdasarkan penelitian-penelitan sebelumnya baik itu penelitian ChiaoChen Chang, 2013, dan Anggana & Wahyudi, 2016. Aplikasi mobile yang diintegrasikan pada pelayanan perpustakaan hanya berupa sistem informasi perpustakaan pada perpustakaan hybrid dimana, pengguna dapat mencari ketersediaan buku, lokasi buku, deskripsi buku, meminjam buku serta melihat denda keterlambatan peminjaman namun belum ada fitur yang memungkinkan pengguna untuk meminjam buku digital dari perpustakaan tersebut. Potensi dari penelitian sebelumnya adalah minat pengguna perpustakaan melalui aplikasi mobile cukup besar dan dengan pengimplementasian e-library lebih lanjut pada aplikasi mobile, minat pengguna untuk membaca dapat meningkat seiring dengan mudahnya mengakses informasi dari perpustakaan. Pengimplementasikan fungsifungsi e-library seperti meminjam, membaca dan mengembalikan buku digital melalui perangkat pribadi pengguna dibutuhkan sebuah jaminan keamanan akan aset digital yang digunakan. Rentannya aset digital terhadap aksi pelanggaran hak cipta seperti penduplikasian dan pembajakan menjadi suatu rintangan bagi pengimplementasian e-library pada mobile. Pengumpulan data adalah tahap pengumpulan informasi yang dapat digunakan untuk perancangan yang diharapkan dapat mengatasi masalah yang dihadapi. Pada penelitian ini masalahnya adalah bagaimana melindungi aset digital yang akan diimplementasi pada e-library terhadap pelanggaran hak cipta. Pengumpulan informasi yang dilakukan adalah bersifat studi literatur dimana informasi solusi yang dikumpulkan berasal dari penelitian sebelumyan. Penelitian Ashis Kumar Pal, 2014, tentang perlindungan hak otoritas dan penggunaan wajar terhadap bahan bacaan digital dalam “Application of Digital Rights Management in Library”, mencatat bahwa Digital Rights Management (DRM) pada dasarnya adalah sarana pengiriman konten namun DRM sering dianggap sebagai sebuah ukuran proteksi teknis, yaitu sarana teknis yang memungkinkan pemiliki hak untuk mengirimkan konten digital dengan cara yang terkontrol, mencegah pengguna memiliki akses terhadap konten kecuali pengguna tersebut memenuhi persyaratan dari pemilik hak, serta mencegah pengguna mengakses konten dengan cara lainnya yang telah diberikan oleh pemegang hak konten digital. Pal juga menuturkan bahwa perpustakaan saat ini telah terlibat pada manajemen perizinan dan hak, dan dengan DRM perpustakaan dapat terbantu dalam mengelola layanan mereka. Pengimplementasian DRM mengangsurkan vendor buku untuk memberikan persetujuan agar buku tersebut dapat digunakan dalam e-library. Pembatasan hak akses atau lisensi yang diberikan dapat bervariasi menurut keingininan vendor buku seperti lama buku tersebut dapat dipinjam, berapa banyak stok digital yang dapat dipinjamkan, dan berapa banyak isi buku yang dapat diakses oleh pengguna. Tahap desain produk memuat perancangan sistem e-library dengan menggunakan sistem DRM. Perancangan sistem dibuat dengan menggunakan Unified Modelling Language (UML). Use case diagram digunakan untuk menggambarkan tindakan-tindakan yang dapat dilakukan oleh aktor. Terdapat dua aktor dalam sistem e-library yaitu pengguna dan admin. Use case diagram sistem dapat dilihat pada Gambar 4. Aktivitas yang dilakukan pengguna terjadi pada aplikasi perangkat mobile Android dimana, pengguna dapat mencari buku dengan
7
`
menggunakan kata kunci, meminjam buku, membaca buku serta mengatur preferensi baca, melihat buku yang dipinjam dan mengembalikan buku. Terdapat aktivitas lain yang dapat dilakukan seiring dengan kegiatan pengguna, seperti pengaturan preferensi baca saat membaca buku. Aktivitas yang dilakukan oleh Admin terjadi pada web sedangkan aktivitas oleh server dilakukan pada web server sistem ini. Admin dapat melihat dan memanajemen data buku, admin juga dapat melihat dan memanajemen data pengguna, admin juga dapat melihat data transaksi buku serta melakukan logout <<extend>>
update data pengguna
edit data transaksi buku
lihat data transaksi update data buku transaksi buku
<<extend>>
lihat buku yang sedang dipinjam
logout
<<extend>>
<
>
edit data pengguna
lihat data buku transaksi buku
delete data pengguna
Admin
kembalikan buku
<>
tambah data pengguna
cari buku
baca buku <>
lihat data pengguna
<>
Pengguna
pinjam buku
<>
tambah buku dekripsi data
edit data buku
<<extend>>
kata kunci buku <<extend>>
update data buku
atur preferensi baca
delete data buku
Gambar 4 Use Case Diagram Sistem
Desain arsitektur system pada penelitian ini ditunjukkan pada Gambar 5. Sistem terdiri dari dua bagian yaitu aplikasi e-library pada perangkat Android dan aplikasi admin berbasis web. Aplikasi Android akan dapat berkomunikasi dengan server dengan menggunakan koneksi internet. Server kemudian dapat berkomunikasi dengan database server dan terdapat sistem DRM yang bertugas untuk memaketan buku dengan enkripsi, memberi lisensi serta mengatur pembatasan hak akses lainnya. Aplikasi web admin dapat berkomunikasi dengan server yang bertugas untuk mengelola data buku maupun data pengguna.
Gambar 5 Desain Arsitektur Sistem
8
`
Activity Diagram, digunakan untuk menggambarkan aliran aktivitas yang terjadi dalam sistem. Aktivitas utama pada penelitan ini terjadi pada saat pengguna meminjam buku, membaca buku dan mengembalikan buku. Rincian aktivitas pinjam buku dapat dilihat pada Gambar 6. Pertama pengguna memilih Cari Buku dan sistem akan menampilkan buku-buku yang dapat dipinjam, kemudian pengguna dapat memasukan kata kunci pencarian dan setelah melewati validasi kata kunci kunci tersebut akan diproses dan ditampilkan hasil pencariannya. Pengguna dapat memilih buku untuk dipinjam dan sistem akan memulai proses packaging dan mengenkripsi isi buku digital tersebut dan sebelum melakukan penambahan data transaksi buku, dilakukan penentuan lama pinjam berdasarkan jenis karya digital tersebut, setelah itu dilakukan pengurangan jumlah stok buku terkait pada database serta menjadwalkan trigger otomasi pengembalian buku. Saat buku telah siap maka paket buku tersebut akan ditransfer kepada pengguna dan sistem akan menyimpan paket buku tersebut pada penyimpanan dan database lokal serta mendaftarkan data buku ke trigger otomasi pengembalian pada service aplikasi. Buku yang baru dipinjam tersebut akan ditampilkan pada fragment koleksi buku yang dipinjam pengguna. Pengguna
Sistem
Start Menampilkan Koleksi Buku Yang Tersedia
Pilh Buku dari Koleksi Pinjam
Input Kata Kunci Pencarian
false input valid? true
Tampilkan Hasil Pencarian Memilih Buku Untuk Dipinjam Menyiapkan dan mengenkripsi konten buku Menentukan lama pinjam berdasarkan jenis buku Menambah data transaksi peminjaman buku pada Database Server Mengurangkan jumlah stok buku yang dipinjam Set trigger di server untuk otomasi pengembalian buku Mentransfer Buku Digital ke pengguna Mendownload buku yang dipinjam Menyimpan file buku ke local directory Menambah data buku yang dipinjam pada local DB Set trigger pada service mobile untuk otomasi pengembalian buku Menampilkan fragment koleksi buku yang sedang dipinjam End
Gambar 6 Activity Diagram Pinjam Buku
Rincian aktivitas membaca buku dapat dilihat pada Gambar 7. Awalnya pengguna memilih buku dari koleksi buku yang dipinjam, setelah itu pengguna
9
`
memilih membaca buku pada dialog konfirmasi. Sistem akan mengambil stream dari file buku yang terpilih, melakukan proses extract file buku tersebut, dan mendekripsi s erta membaca file metadata dari buku tersebut yang mengandung info serta konten buku lainnya seperti judul, penulis, sampul buku, dan kumpulan file-file terurut yang mengandung isi-isi buku. Sistem akan menampilkan halaman awal setelah mendapatkan list file isi buku. Sistem akan mendekripsi dan membaca file konten bagian buku terkait lalu menampilkan konten tersebut sehingga dapat dibaca oleh pengguna ketika dilakukan kegiatan navigasi dalam membaca buku. Pengguna
Sistem
Start Pilh Buku dari Koleksi Pilih Baca Buku Mengambil Stream File Buku Extract Isi File Buku
Mendekripsi dan Membaca File Metadata Dari Buku Mengambil data buku dan path-path isi buku lainnya Menampilkan Halaman Awal Buku Melakukan Navigasi Halaman Buku Mendekripsi dan Membaca File Konten Bagian Buku Terkait
Menampilkan Konten Bagian Buku Terkait End
Gambar 7 Activity Diagram Baca Buku
Rincian aktivitas pengembalian buku dapat dilihat pada Gambar 8. Proses pengembalian buku dimulai dengan pengguna memilih buku dari koleksi pinjam dan memilih kembalikan buku. Sistem akan melakukan konfirmasi dan jika terkonfirmasi maka file buku pada local directory akan dihapus, dilakukan penghapusan data buku yang dipinjam pada local database dengan status buku sudah dikembalikan, lalu mengirim request untuk menjalankan protokol pengembalian buku dengan parameter id_buku dan id_pengguna. Server akan melakukan update status transaksi buku pada database server, menambah jumlah stok dari buku yang dikembalikan, menghapus file buku terenkripsi untuk pengguna pada directory server, dan setelah itu maka sistem mobile akan menampilkan koleksi buku yang dipinjam dengan ketiadaan buku yang baru saja dikembalikan.
10
`
Pengguna
Sistem
Start Pilh Buku dari Koleksi Pinjam
false
Pilih Kembalikan Buku Konfirmasi true Menghapus file buku di local directory Delete data pinjam buku pada local DB Kirim request untuk menjalankan protokol pengembalian buku pada server update status transaksi buku pada database server Menambah jumlah stok buku yang dikembalikan Menampilkan fragment koleksi buku yang sedang dipinjam
.
End
Gambar 8 Activity Diagram Pengembalian Buku
Diagram terakhir yang dirancang adalah class diagram yang menunjukkan struktur dan deskripsi obyek, class, package, dan relasi satu sama lain. Class diagram yang dirancang pada penelitian ini dapat dilihat pada Gambar 9.
Gambar 9 Class Diagram Aplikasi
Gambar 9 menunjukkan bahwa terdapat enam class utama pada aplikasi ini yang berisi kode-kode untuk meminjam, membaca dan mengembalikan buku. Class Resource merepresentasikan objek dari konten buku dan pada class ini dilakukan pembacaan buku yang melewati proses dekripsi data dari konten buku tersebut. Class Book merupakan representasi suatu buku yang lengkap yang berisi beberapa objek class Resource yang merepresentasikan berbagai jenis konten buku. Class Account adalah representasi dari data akun pengguna yang akan diperlukan untuk 11
`
pengaksesan layanan web dalam system dan class Transaction merupakan representasi data transaksi dalam peminjaman dan pengembalian buku. Class BookModel merupakan representasi data informasi suatu buku. Class BookView berfungsi untuk menangani proses membaca buku, dimana terdapat objek class Book dan fungsi-fungsi lainnya untuk menyiapkan file buku serta penanganan dalam interaksi pengguna dan sistem dalam membaca buku. Class BorrowBookTask berfungsi untuk menangani proses peminjaman buku, dimana dilakukan proses download buku, penambahan data buku ke local database dan penambahan pemicu untuk otomasi pengembalian. Class ReturnBookTask berfungsi untuk menangani proses pengembalian buku, dimana sistem akan melakukan request kepada server bahwa pengguna telah mengembalikan buku yang dipinjam serta melakukan penghapusan data serta file buku yang dipinjam. Class SqlLiteLibraryService berfungsi untuk menangani proses pengakesesan data pada local database, dengan menggunakan objek-objek dari class model yaitu class Transaction dan Account. SqlLiteLibraryService juga membantu class BookView, BorrowBookTask dan ReturnBookTask dalam penyediaan kontrol data buku terhadap local database serta juga menangani proses pengambilan . Perancangan user interface dilakukan agar aplikasi pembuatan aplikasi lebih mudah dan terarah. Terdapat lima rancangan UI yang akan dipakai pada implementasi seperti ditunjukkan pada Gambar 10, yaitu halaman utama (A), halaman cari buku (B), halaman pinjam buku (C), halaman pilih baca atau kembalikan buku (D) dan halaman membaca buku (E). A
B
C
D
E
Gambar 10 Rancangan User Interface (A) Halaman Utama (B) Halaman Cari Buku (C) Halaman Pinjam Buku (D) Halaman Baca Atau Kembalikan Buku (E) Halaman Baca Buku
Tahap validasi desain merupakan proses kegiatan untuk menilai rancangan produk. Kegiatan validasi dapat dilakukan dengan cara menghadirkan tenaga ahli untuk menilai desain yang dirancang sehingga dapat diketahui kelemahan dan kekuatannya. Tenaga ahli yang dihadirkan adalah staf bagian Teknologi dan Sistem Informasi PU-Universitas Kristen Satya Wacana. Hasil analisa terhadap desain dirancang didapatkan bahwa diperlukannya pembatasan jumlah stok suatu karya digital yang kerap menjadi persyaratan dari vendor buku dan diperlukannya pengelompokan kategori atau jenis karya digital agar dapat menjadi acuan lama pinjam suatu karya. Berdasarkan hasil analisa oleh tenaga ahli ditemukan beberapa kelemahan dari desain produk sebelumnya sehingga perlu dilakukan proses revisi desain. Revisi desain terjadi pada desain peminjaman dan pengembalian buku. Revisi proses peminjaman buku yaitu dilakukan pemeriksaan pada awal proses dengan
12
`
kondisi, jika stok buku yang dicari kosong maka status buku tersebut menjadi tidak tersedia untuk dipinjam dan jika stok buku tersedia untuk dipinjam maka stok buku tersebut akan berkurang dan lama waktu peminjaman akan ditentukan berdasarkan jenis dari karya digital tersebut yaitu berjenis buku digital atau berjenis artikel digital. Revisi pada proses pengembalian buku yaitu terdapat penambahan jumlah stok buku terkait saat terjadi proses pengembalian buku. Tahap selanjutnya merupakan tahap uji coba produk, namun sebelumnya hasil perancangan perlu diimplementasikan menjadi aplikasi android. Implementasi dilakukan dengan bantuan IntelliJ IDEA sebagai alat bantu pengkodean serta pembangunan basis data. Aplikasi ini diimplementasikan dengan bantuan aplikasi PageTurner yang bersifat open source yang berfungsi sebagai pembaca dokumen digital yaitu EPUB dan dilakukan pengkodean untuk pengamananan data dengan metode AES (Advanced Encryption Standard) serta diimplementasikan sebuah web service bersifat REST (Representational State Transfer) yang berfungsi menyediakan fungsi-fungsi e-library seperti peminjaman dan pengembalian buku. Tahap implementasi ini menghasilkan prototype aplikasi yang kemudian akan dilakukan uji coba dan perbaikan produk sehingga menjadi aplikasi yang siap digunakan untuk pengguna pada umumnya. Tahap uji coba terhadap prototype aplikasi dilakukan sebagai evaluasi sekaligus untuk melakukan perbaikan-perbaikan. Ditemukan bahwa proses peminjaman, pengembalian serta baca buku berjalan dengan baik. Pembacaan data tercatat cukup lama pada perangkat Android yang hanya mempunyai 1 core processor dan berjalan dengan sistem operasi yang lama seperti sistem operasi Gingerbread serta terdapat kesalahan dalam proses parsing gambar pada bagian reader. Revisi produk dari prototype pertama yaitu penyesuaian panjang iterasi dalam proses pembangkitan kunci pada proses enkripsi AES terhadap minimum requirement pada perangkat Android, yaitu Android dengan 1 core processor dan berjalan pada sistem operasi berjenis Gingerbread. Perbaikan juga dilakukan pada proses parsing gambar dengan cara mengganti metode parsing data sehingga dapat membaca data konten gambar terenkripsi dan menampilkannya pada bagian reader dari aplikasi. Tahap selanjutnya dilakukan uji coba pemakaian prototype aplikasi dengan bantuan responden yaitu mahasiswa-mahasiswa pengguna PU-UKSW dan staf bagian Teknologi dan Sistem Informasi PU-UKSW. Hasil uji coba ditemukan bahwa responden merasa bahwa DRM pada prototype aplikasi cukup baik dalam mengatur alur buku baik itu menjaga keamanan buku akan penduplikasian dan pembatasan lainnya seperti lama pinjam dan stok buku yang tersedia. Responden juga merasa cukup puas akan kinerja dan fungsionalitas dari aplikasi seperti fungsi pinjam buku dan reader untuk membaca buku yang memiliki tampilan yang mudah dimengerti dan kinerja yang cepat dalam memproses buku untuk dibaca. Terdapat saran dari responden staf PU-UKSW yaitu aplikasi dapat menyediakan fungsionalitas untuk melihat buku yang paling banyak dipinjam dalam kurun waktu berbeda. Tahap revisi produk dilakukan apabila dalam pemakaiannya, aplikasi terdapat kekurangan dan kelemahan. Diperlukan pemantauan serta evaluasi yang bersifat
13
`
berkelanjutan sehingga dapat dilakukan penyempurnaan dan pembuatan produk baru lagi. Dikarenakan prototype aplikasi dapat melayani proses e-library serta angsuran keamanan karya digital di dalamnya dan belum ditemukan kekurangan serta kelamahan pada prototype ini maka belum diperlukannya revisi produk terhadapat prototype terakhir dari aplikasi yang dihasilkan. Tahap produksi masal, dilakukan setelah produk dinyatakan efektif dan layak untuk diproduksi masal. Diperlukan kerja sama baik pihak penyedia karya digital sebagai pemasok sumber informasi yang akan digunakan sebelum aplikasi dapat diproduksi masal. Bentuk produksi masal aplikasi berupa executable APK yang dapat diperbanyak, diunduh dan dipasangkan pada perangkat pengguna. 4.
Hasil dan Pembahasan
Tampilan aplikasi dikembangkan kembali dari aplikasi open source PageTurner yang merupakan sebuah aplikasi reader pada Android. Gambar 11 menunjukkan tampilan utama antar muka aplikasi. Terdapat tampilan koleksi buku yang dipinjam (A), tampilan menu aplikasi (B), tampilan dialog detail buku (C) serta tampilan saat buku sedang dibaca (D). A B C D
Gambar 11 Tampilan Antar Muka Aplikasi (A) Tampilan Koleksi Buku (B) Tampilan Menu Aplikasi (C) Tampilan Dialog Detail Buku (D) Tampilan Saat Buku Dibaca
Aplikasi yang dihasilkan memiliki fungsi utama yaitu dapat mengamankan karya digital yang digunakan yaitu dengan pembatasan karya digital yang dipinjam terhadap satu perangkat tertentu. Kode Program 1 menunjukkan proses yang terjadi dalam persiapan peminjaman buku. Terdapat proses penentuan waktu pengembalian, penambahan data peminjaman pada database serta proses enkripsi buku yang dipinjam sebelum buku yang dipinjam ditransferkan kepada pengguna. Kode Program 1 Pseudocode Proses Peminjaman Buku Pada Sistem Server 1 2 3 4 5 6 7 8 9
SET idBook to idSelectedBook CALL GeneratedEncryptedEPUB with idBook and idUser RETURNING urlFile CALL DateNow RETURNING dateNow SET dateBorrow to dateNow CALL GetBookType with idBook RETURNING bookType CALL GenerateDueDate with bookType RETURNING dateDue SET stateBook to CONSTANT_ON_LOAN CALL CreateLoanRecord with idBook, idUser, dateBorrow, dateDue and stateBook RETURNING idBookLoan CALL GetBookStock with idBook RETURNING bookStock
14
`
10 11 12 13 14
SET bookStock to bookStock – 1 CALL UpdateBookStock with bookStock CALL SetReturnTrigger with idBookLoan and dateDue CALL GetBookData RETURNING bookData CALL SendRespondToUser with bookData and urlFile
Proses enkripsi lebih lanjut dijelaskan pada Kode Program 2 dimana terdapat proses pembangkitan kunci yang melibatkan kode imei dari pengguna sebagai sandi enkripsi, saltByte, panjang iterasi serta besar byte kunci. Kunci yang dihasilkan akan digunakan oleh cipher dalam mengenkripsi konten buku, yang kemudian konten data terenkripsi tersebut akan digabungkan dengan saltBytes dan ivBytes sebelum ditulis ke file agar dapat digunakan lagi pada saat proses dekripsi. Kode Program 2 Pseudocode Proses Enkripsi Buku 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
CALL GetBookFile with idBook RETURNING bookFile CALL UnzipBook with bookFile RETURNING pathBookContents CALL GetContents with pathBookContents RETURNING listContents CALL PrepareEncryptedPath RETURNING encryptedPath FOR each content in the listContents CALL GetUserIMEI with idUser RETURNING imeiUser SET iteration to 10000 SET keySize to 128 CALL GenerateSalt RETURNINIG saltBytes CALL GenerateSecretKey with saltBytes,imeiUser,iteration and keySize RETURNING secretKey CALL InitializeCipher with CONSTANT_ENCRYPT_MODE and secretKey RETURNING cipher CALL cipher.GetIVBytes RETURNING ivBytes CALL cipher.DoEncrypt with content RETURNING encryptedContentBytes CALL CombineBytes with saltBytes, ivBytes and encryptedContentBytes RETURNING combinedBytes CALL WriteToFile with encryptedPath, combinedBytes END FOR CALL ZipEpub with encryptedPath RETURNING bookEpubFile
Proses dekripsi dilakukan setiap kali diperlukan untuk membaca data konten buku baik itu konten yang berisi keterangan maupun informasi dari buku tersebut. Proses dimulai dengan mengambil kode IMEI dari perangkat. Data konten buku kemudian akan dipecah menjadi tiga bagian sehingga didapatkan data buku terenkripsi, salt dan IV. Dilakukan proses pembangkitan kunci sebelum cipher mendekripsikan data konten buku. Data konten yang berhasil didekripsikan kemudian dapat dikelola selanjutnya oleh sistem baik itu ditampilkan maupun sebagai informasi tentang buku tersebut. Ketidaksesuaian kunci yang dihasilkan seperti kode IMEI yang berbeda akan menghasilkan InvalidKeyException yang ditangani dengan menampilkan peringatan bahwa terjadi kesalahan dalam membuka buku. Kode Program 3 Pseudocode Proses Dekripsi Buku 1 2 3 4 5 6 7 8 9 10
CALL GetBookContent with idBook RETURNING bookContent CALL TelephonyManager.GetImei RETURNING imei CALL SplitBytes with bookContent RETURNING saltBytes, ivBytes and encryptedBytes SET iteration to 10000 SET keySize to 128 BEGIN CALL PrepareKeySpec with imei,saltBytes,iteration and keySize RETURNING keySpec CALL GenerateSecretKey with keySpec RETURNING secretKey CALL InitializeCipher with CONSTANT_DECRYPT_MODE,ivBytes and secretKey RETURNING cipher CALL cipher.DoDecrypt with encryptedBytes RETURNING decryptedBytes
15
`
11 12 13 14 15
CALL SetContentData with decryptedBytes EXCEPTION WHEN InvalidKeyException CALL ErrorHandler with InvalidKeyException.messages END
Pengujian dilakukan dengan melakukan wawancara pada responden mahasiswa-mahasiswa pengguna PU-UKSW dan staf bagian Teknologi dan Sistem Informasi PU-UKSW. Isi wawancara dengan responden berupa dialog kegunaan dan mekanisme dalam aplikasi seperti proses peminjaman yaitu pembatasan stok buku dan penentuan lama pinjam, fungsionalitas saat membaca serta layanan otomasi untuk pengembalian buku. Hasil wawancara ditemukan bahwa aplikasi dapat melakukan kegiatan peminjaman, pembacaan dan pengembalian buku dengan memiliki DRM untuk mengatur alur buku baik itu menjaga keamanan hak akses buku akan penduplikasian dan pembatasan lainnya seperti lama pinjam dan stok buku yang tersedia. Responden juga merasa cukup puas akan kinerja dan fungsionalitas dari aplikasi serta antarmuka dalam proses pinjam dan reader untuk membaca buku yang dapat dengan mudah dimengerti dan cukup menarik bagi pengguna untuk menggunakan aplikasi. 5.
Simpulan
Berdasarkan penelitian yang telah dilakukan didapatkan kesimpulan yaitu DRM dapat dimplementasikan pada e-library sebagai pengatur kelangsungan pengaksesan karya digital didalamnya. Sistem DRM didalamya dilengkapi dengan beberapa fungsi pembatasan hak akses seperti pembatasan jumlah stok buku dan lama pinjam serta memberikan jaminan keamanan akan karya digital yang digunakan didalamnya terhadap aksi pelanggaran hak cipta seperti pembajakan dan penduplikasian. Kode IMEI dari perangkat mobile diperlukan sebagai sandi proses enkripsi dan dekripsi yang berfungsi untuk pengamanan paket karya digital dan juga sebagai pembatas hak akses sehingga karya digital dapat bersifat ekslusif terhadap suatu perangkat pengguna.. Saran pengembangan yang dapat diberikan untuk penelitian selanjutnya adalah penambahan fungsi dinamis kepada vendor buku sehingga pihak vendor dapat memilih upaya yang dapat digunakan dalam pembatasan hak akses buku, seperti jumlah stok buku, lama pinjam dan jumlah isi buku yang dapat diakses. Pengguna dapat melihat buku-buku terpopuler yang dapat dikelompokkan berdasarkan kurun waktu tertentu, untuk mencapai hal ini perlu dipertimbangkan jumlah pinjam buku serta penggunan sistem rating buku karena jumlah pinjam buku dapat dipengaruhi dengan jumlah stok buku yang diberikan oleh vendor buku. 6.
Daftar Pustaka
[1]
Subrata, Gatot, 2009, Perpustakaan Digital, Artikel Pustakawan Universitas Negeri Malang, http://lib.mic.ac.id/perpus/Makalah/KM%20Perpustakaan2.pdf, Diakses pada 11 Februari 2016. Witten, Ian H., Bainbridge, David Nichols, 2010. How to Build a Digital Library, Second Edition. Burlington: Morgan Kaufmann.
[2]
16
`
[3]
Chang, Chiao-Chen, 2013, Library mobile applications in university libraries, Library Hi Tech 31: 478-492. [4] Anggana, Singgih Lukman, Stephanus Eko Wahyudi, 2016, Enhancing University Library Services with Mobile Library Information System. Proceedings of Second International Conference on Electrical Systems, Technology and Information 2015 (ICESTI 2015): 545-552. Springer Singapore. [5] Tedd, Lucy A, Andrew Lange, 2005, Digital Libraries : Principal and Practices in a Global Environment, Munich : K.G. Saur. [6] Supriyanto, Wahyu, Ahmad Muhsin, 2008, Teknologi Informasi Perpustakaan : Strategi Perancangan Perpustakaan Digital. Yogyakarta : Kanisius. [7] Chapman, Stephen, Anne R. Kennedy, 1996, Digital Conversion of Research Library Materials, D-Lib 2: 10. http://www.dlib.org/dlib/october96/cornell/10chapman.html, Diakses pada 11 Februari 2016. [8] Pal, Ashis Kumar, 2014, Application of Digital Rights Management in Library, DESIDOC Library & Information Technology 34.1: 11-15. [9] Wang, Shujuan, Qingtang Liu, 2008, ERDRM: A Digital Rights Management System Model for Educational Resources, Advances in Web Based LearningICWL 2008: 69-78. Springer Berlin Heidelberg [10] IDPF, 2015, EPUB, http://idpf.org/epub. Diakses pada 20 Februari 2016 [11] StatCounter, 2016, Top 8 Mobile & Tablet Operating Systems from Jan to Dec 2015, http://gs.statcounter.com/#mobile+tablet-os-ww-monthly201501-201512. Diakses pada 22 Februari 2016. [12] Sugiyono, 2006, Metode penelitian kuantitatif, kualitatif dan R&D, Bandung: Alfabeta.
17