Perlindungan Hak Cipta Perangkat Lunak dengan Online dan Offline Registering Freddy Ekoyanto Perkoso1, Mulya Agung2, dan Johnson Aldy3 Departemen Teknik Informatika Institut Teknologi Bandung Jalan Ganesha 10 Bandung 40132 E-mail :
[email protected],
[email protected],
[email protected]
Abstrak Paper ini mendeskripsikan cara perlindungan hak cipta perangkat lunak dengan menggunakan online registering dan offline registering. Mekanisme dari cara ini berpijak dari pemikiran cara menghasilkan serial key yang unik bagi tiap-tiap user, hal yang berbeda dengan perlindungan hak cipta perangkat lunak saat ini yang memberikan serial key yang sama bagi tiap-tiap versi perangkat lunak. Dalam paper ini juga akan dibahas mengenai proses secara mendetail dari cara yang kami ajukan ini. Diharapkan dapat memberikan bantuan dalam hal perlindungan hak cipta. Kata kunci: online registering, offline registering perlindungan hak cipta
1. Pendahuluan Proses perlindungan hak cipta perangkat lunak adalah proses yang sangat rumit. Hal ini disebabkan berkembangnya internet secara pesat dan juga akibat lemahnya perlindungan hak cipta di negara kita. Cara yang banyak dipakai sekarang ini adalah dengan memasukan serial number saat melalukan peng-install-an program, dimana serial number tersebut didapat dari kotak cd asli program tersebut ataupun didapat dari pendaftaran online melalui internet. Kelemahan dari metode-metode diatas adalah mudahnya penyebaran serial number yang dapat dipakai di komputer pribadi manapun sehingga pengguna tidak perlu membeli perangkat lunak yang asli melainkan dapat meminjam / membeli bajakan dari orang lain atau mencari versi trial-nya di internet dan
memasukan serial-number yang juga didapat dari internet untuk mendapatkan full versionnya. Dalam metode yang kami kembangkan, aplikasi dapat berbentuk trial dan disebarkan secara gratis baik melalui internet maupun cd sampel. Apabila pengguna aplikasi ingin mendapatkan aplikasi sebenarnya maka orang tersebut harus melakukan registrasi dan pembayaran baik secara online maupun offline. Kelebihan metode kami adalah saat pengguna ingin melakukan registrasi maka ia harus mengirimkan file registrasi kepada perusahaan pembuat perangkat lunak tersebut dari komputernya (online) atau melalui komputer lain yang terhubung ke internet (offline). File registrasi tersebut dihasilkan oleh aplikasi versi trial di komputer user dimana file tersebut dibuat berdasarkan spesifikasi secara spesifik dari pertangkat
Tugas Membuat Makalah Mata Kuliah IF5054 Kriptografi
keras komputer dimana aplikasi tersebut diinstall. File registrasi yang telah menjalani proses kriptografi itu kemudian diterima server vendor bersama bukti transaksi (credit card, transfer,dll) untuk diperiksa dan dicatat. Kemudian vendor akan megirimkan file aktivasi yang dapat di download oleh user yang kemudian digunakan untuk mengubah perangkat lunak versi trial menjadi full version pada komputer spesifik milik pendaftar. Diharapkan dengan cara tersebut maka penyebaran perangkat lunak secara ilegal dapat dicegah atau diminimalisir karena sebuah file aktivasi hanya dapat digunakan untuk komputer yang spesifik saja.
9. Proses pengiriman activation file ke user.
encripted
2. Protokol Registrasi Pada proses registrasi perangkat lunak yang kami ajukan berasumsi bahwa user telah memperoleh demo version dari perangkat lunak dan ingin melakukan registrasi perangkat lunak untuk memperoleh full version dari perangkat lunak tersebut.
10. Proses dekripsi encriped activation file ke user. 11. Proses verifikasi activation file oleh perangkat lunak pada komputer user. 12. Proses otentifikasi action file oleh aplikasi pada komputer user.
Secara umum proses registrasi perangkat yang kami ajukan terdiri dari: 1. Pembuatan raw data material. 2. Proses enkripsi raw data material. 3. Proses pengiriman encriped raw data material ke host vendor perangkat lunak. 4. Proses dekripsi encriped raw data material di host vendor perangkat lunak. 5. Proses verifikasi encriped raw data material yang telah dikirimkan di host vendor perangkat lunak. 6. Proses registering. 7. Proses pembuatan activation file. 8. Proses encripsi activation file.
Berikut akan kami jelaskan secara lebih lanjut mengenai setiap tahapan yang perlu dilakukan. 2.1.Pembuatan Raw Data Material Pada proses pembuatan raw data material kami mengajukan proses pengumpulan data spesifikasi komputer user (tempat aplikasi terinstall) sebagai masukan bagi pembuatan serial key. Hal ini dikarenakan spesifikasi tiap komputer itu unik karena vendor hardware hanya mengeluarkan satu produk dengan pengenal yang unik. Contohnya prosessor hanya memiliki satu buah no produksi yang dapat dibaca oleh program.
Tugas Membuat Makalah Mata Kuliah IF5054 Kriptografi
Setelah data spesifikasi komputer terkumpul maka data tersebut perlu diberikan header sebagai proses verifikasi. Header sebaiknya mengandung nama produk perangkat lunak dan versi dari perangkat lunak tersebut.
Kami mengajukan proses enkripsi blok dengan kunci simetri. Namun untuk menambah keamanan kami menganjurkan penggunaan kunci bersama, yaitu kunci yang dibangkitkan dari 2 buah kunci yaitu kunci dari user dan kunci dari vendor untuk menghasilkan sebuah kunci untuk proses deskripsi. Untuk mengambil nilai kunci user maka aplikasi perlu meminta sebuah kunci dari user.
Langkah terakhir dalam pembuatan raw data material ini adalah penambahan message digest pada raw data material, hal ini berguna karena raw data material ini akan dikirimkan melalui internet dan untuk verifikasi bahwa raw data material yang dikirimkan tidak mengalami kerusakan selama proses pengiriman.
Nama Perangkat lunak Versi perangkat lunak
header
Time Stamp
mohterboard processor
Proses pembuatan kunci ini dapat dengan proses sederhana maupun dengan proses yang lebih rumit. Dengan contoh sederhana misalnya hanya dengan melakukan operasi bit XOR terhadap kunci user dan kunci vendor. Hal ini akan membentuk sebuah kunci baru yang dari segi keamanan relative lebih baik daripada hanya dengan kunci user maupun kunci vendor saja. Namun user harus mengingat kunci user yang telah dimasukkan ke aplikasi karena kunci ini sangat penting untuk proses decripering raw data material di host vendor perangkat lunak, deciphering activation file pada komputer user, dan proses permintaan activation file apabila activation file yang diterimanya rusak.
Enkripsi dan message digest (hashing)
Spesifikasi komputer user
Encrypted raw data
Sedangkan untuk algoritma enkripsi yang digunakan, kami menganjurkan algoritma kriptografi simetri blok, hal ini dikarenakan raw data material yang akan dikirimkan berbentuk file (upload) ke host dari vendor perangkat lunak.
Hard disk gambar pembuatan raw data material
2.2.Proses Material
Enkripsi
Raw
Data
Proses kedua adalah proses enkripsi raw data material yang sudah selesai dibuat. Alasan mengapa proses enkripsi ini dibuat adalah masalah kerahasiaan dari spesifikasi komputer user dan pengamanan terhadap kemungkinan pengubahan isi raw data material.
3
Tugas Membuat Makalah Mata Kuliah IF5054 Kriptografi
Operasi penggabungan
Kunci user
Kunci vendor
komputer tersebut user menghubungi dan mengirimkan (upload) encriped raw data material tersebut ke host vendor perangkat lunak.
Kunci bersama Encrypted raw data material
enkripsi
Encrypted raw data material
O ffline
Raw data material
In
gambar proses enkripsi raw data material
2.3.Proses Pengiriman Encriped Raw Data material ke Host Vendor Perangkat Lunak Dalam proses ini terdapat perbedaan antara pengiriman encriped raw data material secara online maupun secara online. Berikut akan dijelaskan perbedaan antara kedua cara 2.3.1.Online Dengan cara online, encriped raw data material yang telah dienkripsi dapat langsung dikirimkan ke alamat host vendor dengan fasilitas internet yang dipunyai oleh komputer user. 2.3.2.Offline Dengan cara offline, aplikasi perlu menuliskan encriped raw data material yang telah dienkripsi menjadi sebuah file dengan bentuk standart. Setelah aplikasi menulis ke dalam file maka user perlu membawa file ini dengan bantuan mobile storage ke komputer lain yang memiliki fasilitas internet. Dari
online
r te
Host vendor perangkat lunak
t ne
Komputer lain dengan akses internet
gambar proses pengiriman raw data material
2.4.Proses Dekripsi Encriped Raw Data Material di Host Vendor Perangkat Lunak Setelah raw data material tersebut dikirimkan ke host vendor perangkat lunak, maka host vendor perangkat lunak tersebut akan meminta kunci user yang digunakan untuk proses enkripsi. Setelah mendapatkan kunci user maka kunci bersama dapat dibangkitkan dengan mengoperasikan kunci user tersebut dengan kunci vendor dengan cara yang sama dengan proses pembangkitan kunci pada aplikasi. Setelah mendapatkan kunci bersama, proses dechipering dapat dilakukan. Hal ini dikarenakan proses kriptografi yang digunakan adalah kriptografi kunci simetri berbasiskan blok.
Tugas Membuat Makalah Mata Kuliah IF5054 Kriptografi
Operasi kunci
Kunci user
Encyrpted raw material
Kunci vendor
Raw data material
dekripsi
Raw material
Header file
Pengecekan header file
Proses ekstraksi data
File utama
proses dekripsi raw material Pengecek an keaslian file
2.5.Proses Verifikasi Raw Data Material yang Telah Dikirimkan di Host Vendor Perangkat Lunak
Message digest
gambar proses verifikasi raw data material
Setelah melakukan proses dekripsi terhadap raw data material maka host vendor perangkat lunak harus melakukan dua buah verifikasi terhadap raw data material tersebut.
2.6.Proses Registrasi Setelah proses verifikasi selesai maka user dapat melakukan proses registrasi. Proses registrasi ini juga termasuk pembelian lisensi full-version pada aplikasi tersebut.
2.5.1.Verifikasi Header Verifikasi header dibutuhkan untuk memastikan perangkat lunak yang akan diregistrasi memang dikeluarkan oleh host vendor perangkat lunak tersebut. Dalam header juga terdapat versi dari perangkat lunak tersebut yang juga harus dilakukan proses validasi terhadap perangkat lunak yang telah diproduksi oleh vendor perangkat lunak tersebut.
Pada proses registrasi host vendor perangkat lunak juga harus menyimpan bahwa user tersebut telah meregistrasi perangkat lunaknya. Penggunaan teknologi database dapat digunakan dimana disimpan username dan kunci yang digunakan. Sehingga apabila activation file yang dikirimkan ke user mengalami kerusakan maka user dapat meminta activation file lagi untuk komputernya.
2.5.2.Verifikasi Message Digest Verifikasi message digest dilakukan untuk menjaga kerusakan raw data material selama proses pengiriman dari user kepada host vendor perangkat lunak. Hal ini penting karena proses pengiriman melalui internet tidak dapat menjamin keutuhan dari isi file.
5
Tugas Membuat Makalah Mata Kuliah IF5054 Kriptografi
Bukti pembayaran Pengecekan bukti dan pencatatan basis data
Pembuatan account
Vendor perangkat lunak kemudian menyambung algoritma tersebut dengan hasil pengoperasian algoritma tersebut dengan masukan raw data material pada komputer user sebagai serialkey dari perangkat lunak tersebut. 2.7.2.Proses Penambahan Header dan Message Digest
File hasil verifikasi
gambar proses registrasi
2.7.Proses Pembuatan Activation File Setelah proses registrasi selesai maka host vendor perangkat lunak akan membuat activation file yang berfungsi untuk proses aktifasi full version dari aplikasi tersebut. Proses pembuatan activation file sendiri terdiri dari beberapa tahap. 2.7.1.Proses Pembuatan Activation Material
Setelah algoritma dan serialkey dari perangkat lunak ditulis maka activation file ditambah dengan header dan message digest dari isi file tersebut. Header dapat ditambahi timestamp walaupun sebenarnya timestamp tersebut tidak diproses lebih lanjut. Header dibutuhkan untuk proses verifikasi dan message digest dibutuhkan untuk verifikasi apakah file tidak rusak selama proses pengiriman.
Database algoritma header
Raw
Pada proses pembuatan raw activation material, vendor mencarikan algoritma yang dipakai untuk proses pembangkitan serialkey pada perangkat lunak dan versinya. Vendor perangkat lunak memiliki algoritma perangkat lunak yang unik untuk setiap perangkat lunak pada setiap versinya. Setiap algoritma pembangkitan serialkey ini unik dan diganti setiap tahun yang berguna untuk proses perpanjangan pembelian lisensi perangkat lunak yang biasanya habis setiap tahun.
algoritma Pembuatan serial key
Serial key
Serial key
Message digest
Data spesifik user
gambar pembuatan file aktivasi 2.8.Proses Enkripsi Activation File
Tugas Membuat Makalah Mata Kuliah IF5054 Kriptografi
Proses enkripsi pada activation file adalah sama dengan proses enkripsi pada aplikasi. Kunci bersama juga dibangkitkan dengan kunci vendor dan kunci user dengan algoritma pembangkitan kunci bersama yang sama pada proses aplikasi.
Encrypted activation file
interne t
Algoritma enkripsi yang digunakan pada activation file juga sama yaitu dengan algoritma kunci simetri berbasiskan blok. Operasi kunci
Kunci user
online
Komputer user
e fil
Download dari komputer lain
Kunci vendor
gambar pengiriman activation file
File aktivasi
enkripsi
2.10.Proses Dekripsi Encriped Activation File oleh Perangkat Lunak
Encrypted activation file
Proses dekripsi enkriped activation file ini merupakan proses yang sama dengan proses dekripsi encriped raw material di host vendor perangkat lunak.
gambar enkripsi file aktivasi
2.9.Proses Pengiriman Activation File ke Komputer User
Aplikasi akan meminta kunci user dari user yang kemudian dengna kunci vendor akan dihasilkan kunci bersama. Kunci bersama ini kemudian yang akan digunakan dalam proses dekripsi encriped activation file.
Proses pengiriman encriped activation file ke komputer user terbagi atas 2 jenis yaitu online dan offline. 2.9.1.Online Pada cara online, ecriped activation file langsung dikirimkan ke komputer user.
Kunci privat user
Kunci bersama
2.9.2.Offline Pada cara offline maka user perlu membawa activation file tersebut ke komputer tempatnya menginstalasi perangkat lunak dengan bantuan mobile storage.
Encrypted activation file
Proses dekripsi file
Activation file
gambar dekripsi file aktivasi
2.11.Proses Verifikasi Activation File oleh Aplikasi pada Komputer User
7
Tugas Membuat Makalah Mata Kuliah IF5054 Kriptografi
Proses verifikasi yang dilakukan oleh aplikasi terdiri dari beberapa tahap. 2.11.1.Verifikasi Header Pada proses verifikasi header aplikasi akan memverifikasi header pada activation file dengan perangkat lunak dan versinya. 2.11.2.Verifikasi Message Digest
2.12.Proses Otentifikasi Activation File oleh Aplikasi pada Komputer User Pada proses otenfifikasi activation file maka aplikasi akan menjalankan algoritma yang terdapat pada activation file. Hasil dari algoritma ini kemudian akan dibandingkan dengan serialkey pada activation file bila keduannya sama maka dapat disimpulkan bahwa user telah melakukan proses registrasi perangkat lunak sehingga trial version dapat diubah menjadi full version.
Pada verifikasi message digest, nilai message digest dari isi activation file akan dihitung untuk kemudian dibandingkan dengan nilai message digest yang ada pada activation file. Bila sama maka dapat disimpulkan pesan yang dikirimkan belum mengalami perubahan karena kesengajaan maupun transmisi internet.
Header file
algoritma
Generating serial key
Data spesifik user
Generated serial key
Pengecekan header file
Perbandingan serial key File aktivasi dari vendor
Proses ekstraksi data
File utama
File aktivasi yg telah tervalidasi
ekstraksi
Serial key
gambar proses otentikasi fiel aktivasi Pengecek an keaslian file
Message digest
gambar verifikasi file aktivasi
Aplikasi versi lengkap
Tugas Membuat Makalah Mata Kuliah IF5054 Kriptografi
3. Perihal dan Variabel Lain yang Berhubungan Dengan Metode yang Dipakai
waktu dan jumlah pembuatan serialkey yang dibatasi. Dengan dua batasan tersebut maka account setiap user yang terdaftar akan mempunyai masa berlaku dan memiliki kesempatan membuat serial key baru sebanyak yang vendor aplikasi tersebut berikan. Contohnya sebuah vendor mengeluarkan perangkat lunak dengan masa berlaku selama 1 tahun dan 4 kali kesempatan. Apabila dalam 1 tahun tersebut komputer user mengalami masalah maka terdapat dua kemungkinan. Apabila spesifikasi komputer user tetap sama sesuai dengan spesifikasi yang terdapat dalam database vendor maka user dapat meminta serial key baru tanpa masalah atau apabila user menyimpan file aktivasi dengan spesifikasi sama maka file aktivasi tersebut dapat digunakan kembali. Kemungkinan kedua apabila spesifikasi komputer user berbeda dengan yang terdapat di database vendor maka user hanya mempunyai 4 kesempatan untuk meminta activation key yang baru. Dimana data user terakhir yang akan disimpan dalam database vendor.
dalam metode yang dibahas dalam makalah ini terdapat variabel-variabel yang berguna untuk mengatasi berbagai kendala dalam pelaksanaan dalam kehidupan seharihari. Masalah yang mungkin terjadi menurut analisis kami antara lain : • bila user mengalami perubahan spesifikasi hardware komputer sehingga saat hendak menginstal ulang, file aktivasi tidak cocok. • Bila terjadi korupsi data saat download melalui jalur internet yang kurang stabil. • Terjadinya pembocoran account sehingga orang lain dianggap menjadi user yang telah mendaftar. Oleh karena hal diatas maka kami mengajukan perlunya perbaikan pada licence agreement dengan menambahkan variabel 4. Kesimpulan dan Saran
•
kesimpulan yang dapat ditarik dari makalah ini adalah : • semakin dibutuhkannya pengamanan terhadap perangkat lunak diakibatkan banyaknya perangkat lunak yang beragam dan semakin canggihnya proses pembajakan. • Pengamanan perangkat lunak yang ditawarkan dalam makalah ini mengunakan metode kriptografi Symmetric Cryptography, Hash Function, Cryptography Protocol,
• •
9
Key Management, Crypto Policy, Cryptography Applications Untuk keamanan bersama maka motode ini menggunakan dua buah kunci yaitu kunci user dan kunci vendor. Metode ini menjamin keaslian data yang dikirim dengan metode message digest. Keunggulan dari metode ini adalah dalam hal mengurangi pembajakan melalui personalisasi perangkat lunak sehingga tidak memungkinkan meng-copy perangkat lunak dan file aktivasi dari komputer yang berbeda.
Tugas Membuat Makalah Mata Kuliah IF5054 Kriptografi
•
•
Kekurangan dari metode ini adalah dibutuhkan basis data yang besar di vendor untuk menampung data konsumen. Kekurangan lain adalah rumitnya proses registrasi perangkat lunak terutama bagi user yang tidak memiliki akses internet ataupun akses internet yang lama/tidak stabil. Terdapat celah dalam metode ini yaitu apabila terjadi pemunduran waktu di komputer user sehingga masa berlaku perangkat lunak menjadi lebih lama dari yang seharusnya.
5. Daftar Pustaka [1] E. Barnad and D. Casasent, Shift Invariance and the Neocognitron, in Neural Networks, Band 3, S. 403-410, Pergamon Press, 1990. [2] K. Fukushima, Handwritten Aplhanumeric Character Recognition by the Neocognitron, IEEE Trans. on Neural Networks, Vol. 2, No. 3, May 1991 [3] B. Gates, Microsot Windows and The Universe, http://www.microsoft.com, diakses tanggal 12 Maret 2002 pukul 12:03 [4] D. Rumelhart and J. McClelland (Ed.), Parallel Distributed Processing, Vol. 1, MIT Press, Cambridge, Massachusetts, 1986 [5] [chk03] R. Canetti, S. Halevi, and J. Katz. A Forward-Secure Public-Key Encryption Scheme. Adv. in Cryptology | Eurocrypt 2003, LNCS vol. 2656, Springer-Verlag, pp. 255{271, 2003. [6] [gl03] R. Gennaro and Y. Lindell. A Framework for Password-Based Authenticated Key Exchange. Adv. in Cryptology | Eurocrypt 2003, LNCS vol. 2656, Springer-Verlag, pp. 524{543, 2003. [7] [BM92] S.M. Bellovin and M. Merritt, \Encrypted Key Exchange: Password-Based Protocols Secure Against Dictionary Attacks," Proceedings of the IEEE Symposium on Research in Security and Privacy, May 1992, pp. 72-84.
Tugas Membuat Makalah Mata Kuliah IF5054 Kriptografi
[8] [Riv91] R. Rivest, \The MD4 Message Digest Algorithm," Advances in Cryptology| CRYPTO'90 Proceedings, Springer-Verlag, 1991, pp. 303311. [9] [DJ01] Ivan Damgard and Mads Jurik. A generalisation, a simplication and some applications of Paillier's probabilistic public-key system. In Kwangjo Kim, editor, Public Key Cryptography, 4th International Workshop on Practice and Theory in Public Key Cryptography, pages 110{136, Berlin, 2001. Springer. Lecture Notes in Computer Science Volume 1992. [10][FH96] Matthew Franklin and Stuart Haber. Joint encryption and message-efficient secure computation. Journal of Cryptology, 9(4):217{232, Autumn 1996. [11][HMP00] Martin Hirt, Ueli M. Maurer, and Bartosz Przydatek. Efficient secure multi-party computation. In Tatsuaki Okamoto, editor, Advances in Cryptology - ASIACRYPT 2000, pages 143{161, Berlin, 2000. Springer. Lecture Notes in Computer Science Volume 1976. [12][JJ00] Markus Jakobsson and Ari Juels. Mix and match: Secure function evaluation via ciphertexts. In Tatsuak iOkamoto, editor, Advances in Cryptology - ASIACRYPT 2000, pages 162{177, Berlin, 2000. Springer. Lecture Notes in Computer Science Volume 1976. [13][Yao82] Andrew Chi-Chih Yao. Protocols for secure computations (extended abstract). In 23rd Annual Symposium on Foundations of Computer Science, pages 160{164, Chicago, Illinois, 3{5 November 1982. IEEE.
11