4 Cara Melindungi Kode VBA (Visual Basic for Applications)
Kode VBA yang Anda tulis adalah jantung dan jiwa dari spreadsheet Anda. Melindungi kode VBA adalah sesuatu yang harus dilakukan untuk memastikan kode Anda tidak dicuri atau digunakan tanpa sepengetahuan Anda. Artikel ini akan membahas beberapa cara untuk melindungi kode VBA Anda sehingga hanya ANDA yang dapat mengaksesnya dengan mudah.
Mengapa Anda Harus Peduli Tentang Perlindungan Kode VBA?
VBA adalah bahasa makro yang dapat digunakan untuk membuat tugas atau tindakan otomatis di Excel, Word, PowerPoint. Ada beberapa alasan mengapa Anda harus melindungi kode VBA Anda:
- Untuk melindungi kode VBA Anda agar tidak diubah secara tidak sengaja. Kode VBA merupakan alat yang ampuh bagi pengguna Excel, tetapi juga dapat menjadi sumber frustrasi bagi mereka yang tidak menggunakannya. Jika Anda tidak mengamankan VBA dengan kata sandi, orang lain yang menggunakan buku kerja Anda dapat mengakses kode tersebut dan membuat perubahan tanpa mengetahui apa yang sebenarnya mereka lakukan. Anda tidak ingin men-debug kode VBA Anda karena hal itu dapat menyusahkan—mungkin perlu waktu berjam-jam untuk mencari tahu alasannya dan bahkan lebih banyak waktu lagi!
- Untuk melindungi kekayaan intelektual Anda. Kode VBA dapat sangat berharga bagi beberapa perusahaan. Jika orang lain mengakses lembar kerja Anda dan menyalin fungsi yang Anda gunakan, maka mereka berpotensi menjadikannya sebagai hasil karya mereka sendiri dan menjualnya ke banyak perusahaan. Lindungi kode sumber Anda yang berharga dengan langkah-langkah keamanan. Jangan membuatnya mudah dicuri atau disalin oleh siapa pun.
- Untuk melindungi diri Anda dari orang yang menggunakan hasil kerja Anda. Jika Anda memiliki kode VBA yang berharga yang membuat pekerjaan Anda lebih mudah atau lebih efisien, sebaiknya Anda melindunginya untuk penggunaan pribadi saja.
Penting untuk dicatat bahwa ada beberapa cara berbeda untuk melindungi kode VBA Anda, tetapi tidak semuanya melindungi kode Anda dengan cara yang sama. Terserah Anda dan apa yang menurut Anda terbaik untuk kebutuhan Anda.
#1 Melindungi Kode VBA dengan Kata Sandi di Excel Menggunakan Alat VBAProject
Bagian ini menjelaskan cara menggunakan pengaturan proteksi proyek VBA untuk melindungi kode VBA dari mata-mata dan tangan-tangan jahil pada tingkat tertentu.
- Tingkat keamanan: Lemah; Ada alat seperti Penghapus Kata Sandi VBA yang dapat digunakan untuk membuka kunci kata sandi dalam hitungan menit;
- Tingkat kesulitan: Mudah;
- Biaya: Gratis;
Langkah 1. Pilih “Visual Basic” dari menu “Pengembang” di Excel.
Langkah 2. Untuk mengunci proyek VBA Anda, klik “Tools” pada bilah dan kemudian pilih “VBAProject Properties”.
Setelah mengklik item menu ini, Anda akan melihat kotak dialog berikut:
Tab “Umum” dipilih secara default, tetapi klik tab “Perlindungan”.
Langkah 3. Centang “Kunci proyek untuk dilihat” lalu ketik kata sandi Anda dua kali pada kedua kotak tersebut dan tekan “OK”.
Langkah 4. Simpan dan buka kembali berkas Excel. Anda akan dapat mengetahui apakah perlindungan kata sandi VBA telah diaktifkan dengan benar dengan mengklik dua kali proyek VBA Anda. Saat Anda melindungi proyek VBA Anda dengan kata sandi, hal itu akan mencegah siapa pun melakukan modifikasi secara tidak sengaja.
#2 Gunakan VBA Obfuscation untuk Melindungi Kode Makro Anda
Pengaburan VBA adalah seni membuat kode VBA Anda tidak dapat dibaca tetapi tetap berfungsi. Pengaburan ini memodifikasi makro yang ada dengan beberapa tingkat pengaburan yang menyulitkan pemahaman logika yang mendasarinya. Pengaburan VBA tingkat lanjut menggunakan sejumlah teknik pengaburan tingkat lanjut, yang membuat penelusuran terbalik dan pemulihan menjadi jauh lebih menantang.
- Tingkat keamanan: Sedang; Seseorang masih dapat meluangkan waktu dan menghabiskan cukup sumber daya untuk memulihkan kode;
- Kesulitan: Sedang; Tergantung levelnya;
- Biaya: Pengabur VBA Gratis /Premi;
Anda dapat menggunakan pengaburan VBA bersamaan dengan teknik #1, yaitu dengan mengaburkan terlebih dahulu lalu mengamankan modul dengan kata sandi. Harap diingat bahwa pengaburan tidak dapat dikembalikan, jadi buat cadangan berkas sumber sebelum melanjutkan. Ingat juga bahwa kode yang dikaburkan tidak dapat dijamin akan berjalan tanpa kesalahan. Harap uji secara menyeluruh sebelum merilisnya. Gunakan satu bagian dari proyek untuk mengaburkan. Setelah pengujian pengaburan modul pertama berhasil, lanjutkan ke yang kedua.
#3 Mengubah Kode VBA menjadi Dynamic-Link Library (DLL)
Kompiler seperti Visual C++ dan Visual Basic menghasilkan aplikasi yang sulit diretas. Hal ini disebabkan oleh fakta bahwa kode dikompilasi menjadi berkas yang dapat dieksekusi atau berkas pustaka tautan dinamis. Jadi, kita juga dapat mengompilasi kode VBA menjadi berkas pustaka tautan dinamis, lalu menggunakannya di Excel.
- Tingkat keamanan: Tinggi;
- Kesulitan: Sedang;
- Biaya: Gratis;
Metode perlindungan ini sangat disarankan, tetapi tidak 100% terjamin. Untuk mempelajari cara mengkompilasi, lihat petunjuk di VbaCompiler.com: 10 langkah untuk mengkompilasi kode VBA menjadi DLL Windows asli .
#4 Konversi VBA ke C atau C++
Menerjemahkan makro Anda ke C atau C++ lebih sulit direkayasa ulang daripada VBA. Jika Anda ingin melindungi kode Anda, ini adalah cara terbaik.
- Tingkat keamanan: Tertinggi; Hampir mustahil untuk mendapatkan kode tanpa hak; Namun sekali lagi, hal itu tidak dijamin 100%;
- Kesulitan: Rumit dan memakan waktu; Karena VBA dan C/C++ adalah bahasa yang sangat berbeda, ini lebih sulit karena Anda harus mengerahkan banyak upaya.
Kesimpulan
Menggunakan makro merupakan cara yang bagus untuk menyederhanakan pengembangan fungsi tingkat lanjut. Sayangnya, hal ini membuat kode Anda berisiko dicuri atau disalin oleh orang lain. Artikel ini membahas metode yang dapat Anda gunakan untuk mencegah pengguna lain mencuri atau mengubah kode VBA Anda. Harap perhatikan bahwa perlindungan kode VBA bukanlah keamanan yang sangat kuat, tetapi memberikan perlindungan terhadap penyerang biasa.