• Tidak ada hasil yang ditemukan

Perancangan Sistem dengan Konsep DRM (Manajemen Lisensi Digital) dalam Studi Kasus Penjualan Lagu secara Online

N/A
N/A
Protected

Academic year: 2021

Membagikan "Perancangan Sistem dengan Konsep DRM (Manajemen Lisensi Digital) dalam Studi Kasus Penjualan Lagu secara Online"

Copied!
6
0
0

Teks penuh

(1)

Perancangan Sistem dengan Konsep DRM (Manajemen Lisensi

Digital) dalam Studi Kasus Penjualan Lagu secara Online

Royyana Muslim Ijtihadie1,Henning Titi Ciptaningtyas2,Trendyka Zabo3

Jurusan Teknik Informatika, Fakultas Teknologi Informasi Institut Teknologi Sepuluh Nopember (ITS), Surabaya 60111, Indonesia e-mail: royyana@if.its.ac.id1, henning@if.its.ac.id2, emailzabo@gmail.com3

Semakin berkembangnya teknologi saat ini membuka dan memberikan peluang bisnis yang menjanjikan di dalam penjualan konten digital secara online. Namun disisi lain, maraknya pembajakan terhadap konten-konten digital juga semakin tidak dapat dihindari. Digital Rights Management (DRM) merupakan suatu sistem yang menentukan hak akses terhadap suatu konten digital. Dengan DRM ini, konten digital hanya akan dapat diakses oleh client ataupun sistem yang dianggap terpercaya. Keutuhan akan konten itu sendiri juga terlindungi karena adanya proses enkripsi didalamnya. Sistem DRM ini akan digabungkan menjadi satu pada player untuk melindungi konten digital berupa lagu digital. Proses pada sistem DRM dibagi menjadi dua yaitu pelayanan DRM dan player. Pelayanan DRM akan melakukan verifikasi lisensi, enkripsi konten dan mengirimkan konten yang terenkripsi ke client. Player akan memutar konten digital tersebut menggunakan kunci yang dikirimkan kepada client ketika membeli konten digital.

Kata kunci: Digital Rights Management, konten digital, kunci

(1) PENDAHULUAN

egitu cepatnya perkembangan teknologi pada saat ini telah membuat internet menjadi salah satu kebutuhan personal atau instansi sebagai alat atau media untuk mempublikasikan, memperkenalkan bahkan mendekatkan dengan orang dari belahan dunia lainnya. Selain itu internet sekarang mudah dijangkau oleh berbagai orang mulai dari kalangan bawah sampai kalangan atas karena harganya yang relatif terjangkau.

Dengan alasan tersebut, banyak personal atau instansi yang bergerak di bidang entertainer juga memilih internet sebagai media untuk mengenalkan, memasarkan dan menjual hasil karyanya karena peluang bisnisnya yang cukup menggiurkan. Dengan adanya internet, biaya pengeluaran lebih hemat karena biaya pemeliharaan yang murah dan lebih praktis apabila dibandingkan dengan sebelum menggunakan internet, selain itu hasil karyanya bisa dilihat atau dinikmati oleh orang lain.

Akan tetapi, setiap hal positif perkembangan teknologi pasti ada efek negatifnya yaitu semakin tingginya tindakan kriminalitas di dunia maya seperti pembajakan. Sebagai contoh dari kenyataan yang ada sekarang bahwa setiap aplikasi software dibajak lebih dari satu kali. Kerugian secara materi pun tidak sedikit, pada tahun 1997 saja kerugian akibat pembajakan mencapai $12 milyar (berdasarkan Bussiness Software Alliance Report). Sedangkan pada tahun 2001, prediksi kerugian berkisar antara US $2,3 milyar hingga US $ 4,5 milyar. Menurut Recording Industry Association of America (RIAA), menunjukkan bahwa penjualan CD jatuh dari US $ 1,08 milyar (2000) menjadi US $ 968,58 juta (2001).

Oleh karena itu, untuk mencegah, mengurangi atau mengatasinya dibutuhkan sarana pengamanan data, terutama untuk konten digital di internet. Hal tersebut bisa dilakukan dengan cara memberikan perlindungan copyright terhadap konten digital. Teknologi Digital Rights Management (DRM) akan menjadi suatu komponen penting pada masa depan. DRM merupakan teknologi access control yang digunakan

hardware manufacture, publisher, dan pemegang copyright

untuk membatasi penggunaan media digital atau alat. Dengan teknologi ini, perlindungan copyright pada konten digital dapat dikontrol dan diatur dengan lebih baik.

(2) JARINGANKOMPUTER

Jaringan komputer adalah sebuah sistem yang terdiri atas komputer dan perangkat jaringan lainnya yang bekerja bersama-sama untuk mencapai suatu tujuan yang sama. Tujuan dari jaringan komputer adalah:

 Membagi sumber daya: contohnya berbagi pemakaian printer, CPU, memori, harddisk.

Komunikasi: contohnya e-mail, instant messaging,

chatting.

Akses informasi: contohnya web browsing.

Agar dapat mencapai tujuan yang sama, setiap bagian dari jaringan komputer meminta dan memberikan layanan (service). Pihak yang meminta layanan disebut

client dan yang memberikan layanan disebut server.

Arsitektur ini disebut dengan sistem client-server, dan digunakan pada hampir seluruh aplikasi jaringan komputer.

Pada dasarnya setiap jaringan komputer ada yang berfungsi sebagai client dan juga server. Tetapi ada jaringan yang

B

(2)

memiliki komputer yang khusus didedikasikan sebagai server sedangkan yang lain sebagai client. Ada juga yang tidak memiliki komputer yang khusus berfungsi sebagai server saja.

Pada bagian Client Server, semua data,resource dan lainnya berada dalam atau lebih tepatnya terpusat pada satu komputer yang biasanya disebut dengan server. Sedangkan komputer yang mengakses data dari komputer server disebut dengan client

Protokol adalah sekumpulan aturan-aturan yang berisikan tata cara untuk berkomunikasi antar komputer dalam jaringan. Berikut ini adalah protokol-protokol yang menjadi dasar teori, yaitu

TCP (Transmission Control Protocol)

TCP adalah suatu protokol yang berjalan pada lapisan transport. Karakteristiknya adalah :

Connection-oriented – harus saling berkomunikasi

dahulu sebelum terkoneksi, jadi jika salah satu tidak mengijinkan maka tidak akan terjadi koneksi.

Full Duplex – dapat mengirimkan data maupun

menerima data secara simultan atau langsung.

Reliable – data yang dikirimkan dipastikan sampai ke

tujuan dan dipastikan juga data yang diterima sesuai dengan data yang dikirimkan.

HTTP (Hypertext Transfer Protocol)

HTTP adalah sebuah protokol jaringan yang berada dan berjalan pada lapisan aplikasi. Sampai saat ini, ada dua versi HTTP, yaitu HTTP/1.0 yang menggunakan koneksi terpisah untuk tiap dokumen dan HTTP/1.1 yang menggunakan koneksi sama untuk tiap dokumen. HTTP/1.1 secara keseluruhan lebih cepat daripada versi 1.0 karena tidak membuang waktu untuk pembuatan koneksi yang berulang-ulang.

(3) JMF

JMF API merupakan sebuah framework yang mana fungsinya disini adalah memudahkan client untuk bekerja dengan data audio, MIDI, klip video, animasi dan media lainnya.

JMF mempunyai arsitektur sebagai berikut : Tahap input Tahap proses Tahap output

 Alat penerima  Data di dalam disk  Data jaringan

 Codec  Efek

 Rendering video  Disimpan dalam disk  Ditampilkan melalui jaringan

Gambar 1. Arsitektur JMF

Pada input stage, ada berbagai macam inputan untuk memasukkan data audio maupun video. Data dari input stage kemudian disampaikan ke processing stage,pada stage ini diproses codec dan efeknya. Setelah semua itu selesai, hasilnya disampaikan ke output stage dan ditampilkan dengan berbagai cara, misalnya dirender, disimpan atau ditampilkan ke dalam jaringan.

Player dalam JMF merupakan control terhadap data media yang akan dimainkan. Player ini diimplementasikan dalam sebuah interface bernama Player pada JMF.

(4) DRM

Metode Untuk melindungi konten digital, client harus mempunyai suatu fitur yang dianggap trusted system. Salah satu sistem yang dapat digunakan yaitu sistem Digital Rights Management (DRM).

DRM merupakan suatu teknologi yang digunakan untuk melindungi suatu konten digital dengan cara mengontrol / menentukan hak akses terhadap konten digital tersebut. Dengan diterapkan DRM, konten digital tidak dapat dimainkan di player lain atau diambil oleh orang lain. Hanya

client yang membeli konten digital tersebut yang dapat

memainkannya.

Secara garis besar gambaran dari sistem DRM dapat dilihat pada Gambar 2. Pada Gambar 2 nampak bahwa DRM terdiri dari 3 bagian yaitu lisensi file, file konten yang diproteksi dan trusted DRM system.

Konten hasil DRM Konten terenkripsi Metadata Kunci enkripsi Hash Aturan Sistem DRM Terpercaya Service DRM Aplikasi Konten yang terproteksi File lisensi

Gambar 2. Sistem DRM

Input untuk DRM berupa file konten yang diproteksi dan file lisensi. File konten yang diproteksi merupakan konten digital yang telah dienksripsi sebelumnya. Enkripsi isi berfungsi untuk melindungi isi konten sehingga tidak dapat digunakan oleh untrusted system.

Berdasarkan fungsinya DRM terdiri dari 3 bagian, yaitu DRM manager, Trusted Application Agent, dan Security Agents.

(3)

DRM manager ini bertanggungjawab terhadap fungsi inti DRM. Dalam menjalankan fungsinya DRM manager bekerja sama dengan security agent. Fungsinya yaitu melakukan validasi lisensi beserta isinya dan melakukan dekripsi dari konten yang diproteksi.

Trusted Application Agent

Trusted application agent ini digunakan ketika proses rendering content yang telah didekripsikan oleh DRM manager.

Security Agent

Security agent ini berfungsi dalam pengamanan content digital, yaitu menangani proses kriptografi dan managemen key.

(5) PEMROGRAMAN SOCKET

Biasanya, server berjalan pada komputer tertentu dan memiliki sebuah socket yang terikat pada port tertentu. Server hanya menunggu, mendengarkan ketika client membuat permintaan sambungan melalui socket.

Pada sisi client: client mengetahui nama host dari mesin dimana server sedang berjalan dan nomor port di mana

server mendengarkan. Untuk membuat permintaan sambungan, client mencoba untuk bertemu dengan server pada bagian server dan port server. Client juga perlu mengidentifikasikan dirinya ke server sehingga identitasnya terikat ke nomor port lokal yang akan digunakan selama hubungan ini. Hal ini biasanya diberikan oleh sistem.

Gambar 3. Client request kepada Server

Jika semuanya berjalan dengan baik, server menerima koneksi. Setelah diterima, server mendapatkan socket baru terikat port lokal yang sama dan juga memiliki titik akhir yang diatur ke alamat dan port dari client. Diperlukan socket baru sehingga dapat terus mendengarkan permintaan sambungan socket yang asli, sementara socket yang lama mengurus kebutuhan klien yang terhubung.

Gambar 4. Server merespon request dari Client

Di sisi client, jika koneksi diterima, socket berhasil dibuat dan client dapat menggunakan socket untuk berkomunikasi dengan server. Client dan server dapat berkomunikasi dengan menulis atau membaca dari socketnya.

Sebuah endpoint adalah kombinasi dari satu alamat IP dan satu nomor port. Setiap koneksi TCP diidentifikasikan secara unik oleh dua endpoint. Dengan begitu kita dapat memiliki beberapa sambungan antara host dan server.

Paket java.net di dalam platform Java menyediakan sebuah class, Socket, yang mengimplemen satu sisi dari sebuah koneksi dua arah antara program Java kita dengan program lainnya yang ada di dalam jaringan. Class Socket berada pada posisi atas implemen platform-dependent, menyembunyikan detail rincian sistem tertentu dari program Java kita. Dengan menggunakan class java.net.Socket meskipun mengandalkan code asli, program Java kita dapat berkomunikasi melalui jaringan dalam bentuk platform-independent.

Fungsi utama dari server adalah menunggu apakah ada permintaan request dan melayaninya jika request tersebut datang. Kode untuk mengimplementasikan server dijelaskan sebagai berikut :

1. Membuat sebuah server yang memonitor port tertentu. Ada empat cara yang berbeda untuk membuat sebuah instance dari ServerSocket, yaitu :

a. ServerSocket()

b. ServerSocket(int port)

c. ServerSocket(int port, int backlog)

d. ServerSocket(int port, int

backlog, InetAddress

bindAddr)

2. Menggunakan method accept() dari class ServerSocket.

3. Untuk membaca objek dari Socket maka digunakan method getInputStream() dan getOutputStream() dari class Socket. Fungsi utama client adalah menyambung ke server dan berkomunikasi dengan menggunakan socket. Kode untuk mengimplementasikan client sebagai berikut :

1. Membuat sebuah objek Socket. Dari tujuh konstruktor, ada tiga yang paling sering dipakai, adalah : a. Socket() b. Socket(inetAddress address, int port) c. Socket(java.lang.String host, int port)

2. Metodenya hampir sama dengan bagaimana

(4)

(6) RC4

Dalam kriptografi, RC4 merupakan stream chipper yang paling sering digunakan dan RC4 ini digunakan di protokol yang popular seperti SSL (untuk memproteksi trafik internet) dan WEP (untuk memproteksi jaringan wireless). RC4 dikatakan stream chipper karena memproses unit atau input data pada satu saat. Unit atau data pada umumnya adalah sebuah byte atau bahkan bit (byte dalam hal RC4). Algoritma ini tidak harus menunggu sejumlah input data tertentu sebelum diproses, atau menambahkan byte tambahan untuk

meng-encrypt.

RC4 merupakan enkripsi stream symmetric propierty yang dibuat oleh RSA Data Security, Inc (RSADSI). Penyebarannya diawali dari sebuah source code yang diyakini sebagai RC4 dan dipublikasikan secara anonymously pada tahun 1994. Algoritma yang dipublikasikan ini sangat identik dengan implementasi RC4 pada produk resmi. RC4 digunakan secara luas pada beberapa aplikasi.

Tingkat keamanan dengan menggunakan RC4 dengan menggunakan kunci 160 bit, anggap saja tidak ada kelemahan pada RC4 maka untuk memecahkannya, cara paling mungkin adalah menggunakan serangan brute-force, maka keamanan tergantung sepenuhnya pada panjang kunci. Dengan 160 bits terdapat 2160 kunci yang mungkin. Maka akan sangat membutuhkan waktu yang sangat lama untuk memecahkannya. Pada Tabel 1 dijelaskan berapa lama estimasi waktu untuk menyelesaikan kunci dengan menggunakan brute force.

Panjang key

Waktu yang digunakan Komputer high-end Jaringan Universitas Super komputer 40 bits, 7 chars

x minggu x jam x detik 64 bits, 11 chars x milenium x dekade x menit 80 bits, 14 chars tidak diketahui tidak diketahui x abad 128 bits, 22 chars tidak diketahui tidak diketahui x milenium

Tabel 1. Estimasi waktu brute force untuk RC4

(7) DESAIN SISTEM

Aplikasi yang dibangun dalam Tugas Akhir ini adalah aplikasi penerapan sistem DRM pada suatu konten digital via online. Konten digital ini diperoleh dari proses pembelian melalui web yaitu berupa lagu digital berformat .mp3. Awalnya lagu-lagu yang diletakkan pada server lagu sudah terenkripsi, lalu client dipersilahkan men-download player secara gratis dan client dapat memilih lagu-lagu mana saja yang disukai melalui web untuk di-download dengan cara

membayar, kemudian web akan memprosesnya dan mengirimkan kunci untuk lagu yang bersangkutan terlebih dahulu ke client dan setelah itu lagu tersebut akan dikirimkan ke client. Setiap lagu memiliki harga yang sama tetapi kuncinya berbeda-beda, sehingga diharapkan lagu yang diterima oleh tersebut tidak bisa dimainkan di player lain, hanya dapat dimainkan apabila client mempunyai kunci untuk membuka enkripsi pada lagu tersebut.

Aplikasi ini terdiri dari dua bagian yaitu

1. Aplikasi yang digunakan client untuk proses pembelian konten digital melalui web. Client akan memperoleh lisensi untuk lagu yang bersangkutan.

2. Aplikasi kedua adalah music player yang

di-download oleh client berfungsi sebagai sistem

DRM. Pada aplikasi ini akan dilakukan beberapa proses yaitu verifikasi lisensi, dekripsi konten dan memainkan konten digital tersebut. Jika serangkaian tahap verifikasi diatas berhasil maka

client dapat menikmati konten digital tersebut,

akan tetapi jika gagal, tidak akan bisa dimainkan sama sekali.

Rancangan Rancangan arsitektur yang akan digunakan pada aplikasi ini dapat dilihat pada Gambar 5.

Web User See Web Request Handshaking Process (Send header) Download Player Encrypted Content Decrypt Key File Content

Player Static Key Server

Static Key

File Content Encrypted Content

Key Generator

Encrypted Header Decrypted Header

Gambar 5. Arsitektur Aplikasi

Arsitektur pada Gambar 3.1 menunjukkan proses pada web, server, client dan player. Pada sisi server memiliki proses enkripsi header. Disini server mengirimkan ke client sebuah header yang telah dienkripsi, dimana header tersebut ketika sampai di sisi client akan dienkripsi dengan key statis. Setelah header terenkripsi, maka server secara otomatis mengirimkan file lagu terenkripsi yang diinginkan oleh client dan akan didekripsi menggunakan key yang didapat setelah header didekripsi.

Gambar 6 adalah proses bagaimana server lagu dan player dari client berkomunikasi.

(5)

Hi.. SERVER CLIENT Hi.. (Kirim Header) (OK) (Kirim Lagu) (OK) Bye Bye

Gambar 6. Komunikasi antara Server dengan Client

Sistem DRM-nya terletak pada sisi player yang mana player melakukan verifikasi terhadap konten dengan

menggunakan key yang sudah ada sehingga konten tersebut bisa dimainkan oleh player.

(8) IMPLEMENTASI DAN UJI COBA

Satu client mendownload dengan cara flood (menekan terus menerus) dalam 1 lagu untuk mencoba daya tahan dan respon server ketika ada beberapa request yang terus menerus.

Uji coba ini menggunakan add-ons salah satu browser, dimana akan direkam aktivitas yang dilakukan yaitu mendownload lagu dan nantinya akan di-looping sebanyak 100x.

Pada Gambar berikut ini akan dijelaskan bagaimana proses ini berjalan sampai nanti filenya muncul di player client.

.Dari uji coba di atas dengan menggunakan satu

client yang melakukan aktivitas looping, server dapat

memproses semua request yang ada dan mengirimkannya untuk disampaikan kepada client. Akan tetapi, ketika ada request yang menumpuk, maka request-request tersebut menghambat kinerja server. Hasilnya dapat dilihat pada Tabel 2. Uji ke Jumlah client Banyaknya request (looping) Server terhambat? 1 1 10 Tidak 2 20 Tidak 3 50 Ya 4 80 Ya 5 100 Ya

Tabel 2. Hasil uji coba untuk 1 client dengan 100 loop

Dari tabel di atas dapat dilihat ketika ada 10-20 request server masih sanggup untuk mengatasi permasalahan, tetapi ketika sudah diatas 20 request server mulai mengalami hambatan. Hambatan ini disebabkan menumpuknya request dan proses pengenkripsian dan pengiriman yang memakan waktu sehingga belum selesai satu request sudah dating request yang lain.

Uji coba skenario 2 hampir serupa dengan uji coba skenario 1, akan tetapi untuk skenario 2, clientnya ditambahkan satu lagi. Dengan menggunakan cara yang sama, akan dicoba daya tahan dan respon server ketika ada banyak request dari dua client yang berbeda.

Dari uji coba untuk skenario kedua dengan menggunakan 2 client yang melakukan aktivitas looping. Hasilnya dapat dilihat pada Tabel 3.

Uji ke Jumlah client Banyaknya request (looping) Server terhambat? 1 2 10 Tidak 2 20 Ya 3 50 Ya 4 80 Ya 5 100 Ya

Tabel 3. Hasil uji coba untuk 2 client dengan 100 loop

Dari tabel di atas dapat dilihat ketika ada 10 request dari 2 client, server masih sanggup mengatasi. Akan tetapi ketika ada 20 request dari 2 client secara bersamaan, maka kinerja server mulai tersendat. Dan permasalahan yang dihadapi juga sama seperti uji coba pertama dimana server sedang sibuk untuk memproses enkripsi dan pengiriman kepada client yang bersangkutan.

(6)

(9) KESIMPULAN

Berdasarkan aplikasi yang telah dibuat beserta ujicoba yang telah dilakukan, maka dapat ditarik kesimpulan sebagai berikut:

1. Lagu tidak dapat dimainkan di player yang lain, karena membutuhkan key lagu untuk mengenkripsinya.

2. Aplikasi ini sudah bisa menangani multi koneksi

client di waktu yang bersamaan.

3. Server mampu melayani banyak request untuk satu client.

4. Ketika ada banyak request dalam beberapa

client, maka respon server mulai melambat

karena proses pengenkripsian dan pengiriman konten.

(10) DAFTAR PUSTAKA

[1] Stallings, William. 16 November 2005.

“Cryptography and Network Security, 4th

edition”.

[2] Kurose, Jim, Keith Ross Addison-Wesley. Juli 2004.

“Computer Networking: A Top Down Approach Featuring the Internet, 3rd edition”.

[3] Sun Microsystems, Inc. 19 November 1999. “JavaTM

Media Framework API Guide”.

[4] Sun Microsystem, Inc. 2001. “Code Samples and

Apps”. (Online).

(http://java.sun.com/products/javamedia/jmf/2.1.1/sol utions/).

Trendyka Zabo, dilahirkan di Surabaya pada 14 September 1987, sebagai anak pertama dari tiga bersaudara. Penulis telah menempuh pendidikan formal di SDN Kalisari 1 Surabaya, SMPN 12 Surabaya, SMAN 1 Surabaya kemudian melanjutkan ke Teknik Informatika - ITS pada tahun 2005.

Selama masa perkuliahan sampai saat buku ini ditulis, penulis aktif sebagai pengurus Laboratorium Arsitektur Jaringan Komputer dan pernah menjadi asisten dosen Jaringan Komputer periode 2006/2007 dan 2008/2009 serta asisten dosen Komputer Client Server 2008/2009. Hobi penulis adalah olahraga, jalan-jalan dan bermain games. Penulis tertarik dengan jaringan komputer sehingga selama kuliah mengambil mata kuliah pilihan dan Tugas Akhir bidang minat Net Centric Computing. Penulis dapat dihubungi melalui

Gambar

Gambar 1. Arsitektur JMF
Gambar 3. Client request kepada Server
Gambar 5. Arsitektur Aplikasi
Gambar 6. Komunikasi antara Server dengan Client

Referensi

Dokumen terkait

d) &ood 'rids.. Dari kedua cara pengisian  packing   ini, jenis regular packing   lebih banyak  digunakan di industri, karena pressure drop nya yang rendah, laju alir

Bagi proposal yang memenuhi syarat administrasi dilanjutkan dilakukan penilaian substansi proposal : untuk skim penelitian Hibah Bersaing, Fundamental, Unggulan dan Bantuan

Berdasarkan analisis data hasil belajar melalui tes tulis individu yang dilakukan pada akhir siklus 1 dan siklus 2, dapat disimpulkan bahwa melalui model

Perbedaan hasil penelitian ini dengan penelitian sebelumnya adalah bahwa pada kedua obyek penelitian sebelumnya adalah perusahaan manufaktur yang yang merupakan

pengumpulan data dengan observasi, wawancara, dan dokumentasi. Pertama, teknik observasi yang digunakan penulis yaitu ikut membantu staf perpustakaan, sambil mengamati

Hasil: Pada penelitian ini dijumpai penderita tumor ganas THT-KL pada Januari 2009 sampai Desember 2011 sebanyak 40 penderita dimana tumor yang banyak ditemui adalah tumor

Hasil penelitian diketahui bahwa: (1) Kemampuan manajerial Kepala termasuk kategori cukup dengan skor rerata angket sebesar 69,96, kemampuan profesional guru termasuk

Sampel sponge yang memiliki potensi terbaik sebagai antibakteri adalah Unidentified (KKLWRF1-1) dengan konsentrasi sampel 0,65 mg/mL mampu menghambat pertumbuhan