Saya ingin tahu tentang bagaimana Anda melindungi perangkat lunak Anda dari peretasan, peretasan, dll.
Apakah Anda menerapkan semacam pemeriksaan nomor seri? Kunci perangkat keras?
Apakah Anda menggunakan solusi pihak ketiga?
Bagaimana cara Anda menyelesaikan masalah perizinan? (misalnya mengelola lisensi mengambang)
EDIT: Saya tidak berbicara tentang open source, tetapi hanya distribusi perangkat lunak komersial ...
Jawaban:
Ada banyak sekali perlindungan yang tersedia. Kuncinya adalah:
Tidak ada yang tidak bisa dipecahkan, jadi lebih penting untuk mengukur hal-hal ini dan memilih perlindungan yang baik daripada hanya memberikan perlindungan terbaik (terburuk) yang mampu Anda beli.
Dan variasi di atas.
sumber
Rute apa pun yang Anda tempuh, tetapkan harga yang wajar, permudah pengaktifan, berikan pembaruan kecil gratis, dan jangan pernah menonaktifkan perangkat lunak mereka. Jika Anda memperlakukan pengguna dengan hormat, mereka akan memberi Anda imbalan untuk itu. Tetap saja, apa pun yang Anda lakukan, beberapa orang pada akhirnya akan membajaknya.
sumber
Jangan.
Bajak laut akan membajak. Tidak peduli solusi apa yang Anda buat, itu bisa dan akan dipecahkan.
Di sisi lain, pelanggan Anda yang sebenarnya dan membayar adalah mereka yang merasa tidak nyaman dengan omong kosong itu.
sumber
Buat lebih mudah untuk membeli daripada mencuri. Jika Anda meletakkan tumpukan perlindungan penggandaan maka itu hanya membuat nilai memiliki real deal sangat rendah.
Gunakan kunci aktivasi sederhana dan yakinkan pelanggan bahwa mereka selalu bisa mendapatkan kunci aktivasi atau mengunduh ulang perangkat lunak jika mereka kehilangannya.
Perlindungan salinan apa pun (selain dari komponen hanya online seperti game multipemain dan perangkat lunak keuangan yang terhubung ke bank Anda, dll.) Yang dapat Anda asumsikan akan dikalahkan. Anda ingin mengunduh perangkat lunak Anda secara ilegal, paling tidak, menjadi sedikit lebih sulit daripada membelinya.
Saya memiliki game PC yang belum pernah saya buka, karena ada begitu banyak sampah perlindungan salinan di dalamnya sehingga lebih mudah untuk mengunduh versi palsu.
sumber
Perlindungan perangkat lunak tidak sepadan dengan uangnya - jika perangkat lunak Anda diminati, itu akan dikalahkan, apa pun yang terjadi.
Meskipun demikian, perlindungan perangkat keras dapat bekerja dengan baik. Contoh cara kerjanya adalah ini: Temukan komponen (cukup) sederhana namun perlu dari perangkat lunak Anda dan terapkan di Verilog / VHDL. Buat pasangan kunci publik-pribadi dan buat layanan web yang mengambil string tantangan dan mengenkripsinya dengan kunci pribadi. Kemudian buat dongle USB yang berisi kunci publik Anda dan buat string tantangan acak. Perangkat lunak Anda harus meminta dongle USB untuk string tantangan dan mengirimkannya ke server untuk dienkripsi. Perangkat lunak kemudian mengirimkannya ke dongle. Dongle memvalidasi string tantangan terenkripsi dengan kunci publik dan masuk ke mode 'aktif'. Perangkat lunak Anda kemudian memanggil ke dongle setiap kali perlu melakukan operasi yang Anda tulis dalam HDL.
Sunting: Baru menyadari beberapa hal verifikasi mundur dari yang seharusnya, tapi saya cukup yakin idenya muncul.
sumber
Skema Lisensi Perangkat Lunak Microsoft sangat mahal untuk bisnis kecil. Biaya server sekitar $ 12.000 jika Anda ingin mengaturnya sendiri. Saya tidak merekomendasikannya untuk tipuan hati.
Kami sebenarnya baru saja menerapkan Intellilock di produk kami. Ini memungkinkan Anda memiliki semua keputusan tentang seberapa ketat lisensi yang Anda inginkan, dan juga sangat hemat biaya. Selain itu, ia melakukan kebingungan, pencegahan penyusun, dll.
Solusi bagus lainnya yang saya lihat digunakan oleh bisnis kecil / menengah adalah SoloServer . Ini lebih merupakan sistem kontrol e-niaga dan lisensi. Ini sangat dapat dikonfigurasi sampai mungkin sedikit terlalu rumit. Tapi itu melakukan pekerjaan yang sangat baik dari apa yang saya dengar.
Saya juga pernah menggunakan sistem lisensi Desaware untuk dot net di masa lalu. Ini adalah sistem yang cukup ringan dibandingkan dengan dua di atas. Ini adalah sistem kontrol lisensi yang sangat baik dalam hal suara kriptografik. Tetapi ini adalah API tingkat yang sangat rendah di mana Anda harus menerapkan hampir semua yang sebenarnya akan digunakan aplikasi Anda.
sumber
Manajemen "Hak" Digital adalah satu-satunya produk minyak ular terbesar di industri. Untuk meminjam halaman dari kriptografi klasik, skenario tipikal adalah Alice ingin menyampaikan pesan kepada Bob tanpa Charlie dapat membacanya. DRM tidak berfungsi karena dalam aplikasinya, Bob dan Charlie adalah orang yang sama!
Anda akan lebih baik mengajukan pertanyaan terbalik, yaitu "Bagaimana cara membuat orang membeli perangkat lunak saya daripada mencurinya?" Dan itu pertanyaan yang sangat luas. Tetapi umumnya dimulai dengan melakukan penelitian. Anda mencari tahu siapa yang membeli jenis perangkat lunak yang ingin Anda jual, dan kemudian membuat perangkat lunak yang menarik bagi orang-orang tersebut.
Cabang tambahan untuk ini adalah membatasi pembaruan / add-on hanya untuk salinan resmi. Ini bisa menjadi sesuatu yang sederhana seperti kode pesanan yang diterima selama transaksi pembelian.
Lihat perangkat lunak Stardock, pembuat WindowBlinds, dan game seperti Sins of a Solar Empire, yang terakhir tidak memiliki DRM dan menghasilkan keuntungan yang cukup besar dari anggaran $ 2 juta.
sumber
Ada beberapa metode, seperti menggunakan ID prosesor untuk menghasilkan "kunci aktivasi".
Intinya adalah jika seseorang menginginkannya dengan cukup buruk - mereka akan merekayasa balik perlindungan apa pun yang Anda miliki.
Metode yang paling aman dari kegagalan adalah menggunakan verifikasi online saat runtime atau pengait perangkat keras.
Semoga berhasil!
sumber
Diberikan sedikit waktu perangkat lunak Anda akan selalu di-crack. Anda dapat mencari versi crack dari perangkat lunak terkenal mana pun untuk mengonfirmasi hal ini. Tetapi masih ada baiknya menambahkan beberapa bentuk perlindungan ke perangkat lunak Anda.
Ingatlah bahwa orang yang tidak jujur tidak akan pernah membayar perangkat lunak Anda dan selalu menemukan / menggunakan versi crack. Orang yang sangat jujur akan selalu berpegang pada aturan bahkan tanpa skema perizinan hanya karena mereka memang seperti itu. Tetapi mayoritas orang berada di antara dua ekstrem ini.
Menambahkan beberapa skema perlindungan sederhana adalah cara yang baik untuk membuat sebagian besar orang di tengah bertindak dengan cara yang jujur. Ini adalah cara untuk mendorong mereka agar mengingat bahwa perangkat lunak tersebut tidak gratis dan mereka harus membayar untuk jumlah lisensi yang sesuai. Banyak orang benar-benar menanggapi ini. Bisnis sangat pandai berpegang pada aturan karena manajer tidak membelanjakan uangnya sendiri. Konsumen cenderung tidak mematuhi aturan karena itu adalah uang mereka sendiri.
Namun pengalaman baru-baru ini dengan rilis seperti Spore dari Electronic Arts menunjukkan bahwa Anda dapat melangkah jauh dalam perizinan. Jika Anda bahkan membuat orang yang sah merasa seperti penjahat karena mereka terus-menerus disahkan maka mereka mulai memberontak. Jadi tambahkan beberapa perizinan sederhana untuk mengingatkan orang jika mereka tidak jujur tetapi sesuatu yang lebih dari itu tidak mungkin meningkatkan penjualan.
sumber
Game online saja seperti World of Warcraft (WoW) telah dibuat, setiap orang harus terhubung ke server setiap saat dan dengan demikian akun dapat terus diverifikasi. Tidak ada metode lain yang berhasil untuk kacang.
sumber
Bukan jawaban yang tepat yang Anda cari, tetapi merupakan sumber daya yang bagus tentang pembajakan dari pengembang game yang secara aktif bertanya kepada bajak laut mereka tentang mengapa mereka melakukan itu. Dan terkait dengan bagian pertama dari jawaban yang Anda pilih.
Siapkan di Talking to Pirates .
sumber
Umumnya ada dua sistem yang sering membuat bingung -
Untuk lisensi menggunakan paket komersial, banyak perusahaan FlexLM menginvestasikan sejumlah besar uang ke dalam lisensi berpikir mereka juga mendapatkan keamanan, ini adalah kesalahan umum pembuat kunci untuk paket komersial ini sangat berlimpah.
Saya hanya akan merekomendasikan pemberian lisensi jika Anda menjual kepada perusahaan yang secara sah akan membayar berdasarkan penggunaan, jika tidak, usaha Anda mungkin lebih daripada nilainya.
Ingatlah bahwa saat produk Anda menjadi sukses, semua dan setiap lisensi dan tindakan keamanan pada akhirnya akan dilanggar. Jadi putuskan sekarang apakah itu benar-benar sepadan dengan usaha.
Kami menerapkan klon ruang bersih dari FlexLM beberapa tahun yang lalu, kami juga harus meningkatkan aplikasi kami terhadap serangan biner, prosesnya yang panjang, Anda harus mengunjunginya kembali setiap rilis. Ini juga sangat tergantung pada pasar global mana yang Anda jual juga, atau di mana basis pelanggan utama Anda tentang apa yang perlu Anda lakukan.
Lihat jawaban saya yang lain tentang mengamankan DLL .
sumber
Seperti yang telah ditunjukkan, perlindungan perangkat lunak tidak pernah dijamin sangat mudah. Apa yang ingin Anda gunakan sangat bergantung pada audiens target Anda. Sebuah permainan, misalnya, bukanlah sesuatu yang akan dapat Anda lindungi selamanya. Perangkat lunak server, di sisi lain, adalah sesuatu yang jauh lebih kecil kemungkinannya untuk didistribusikan di Internet, karena sejumlah alasan (penetrasi dan kewajiban produk muncul dalam pikiran; perusahaan besar tidak ingin dimintai pertanggungjawaban atas perangkat lunak bajakan, dan para perompak hanya peduli dengan hal-hal yang permintaannya cukup besar). Sejujurnya, untuk gim profil tinggi, solusi terbaik mungkin adalah menyemai torrent sendiri (secara sembunyi-sembunyi!) Dan memodifikasinya dengan cara tertentu (misalnya, sehingga setelah dua minggu permainan itu muncul dengan pesan yang memberi tahu Anda untuk mohon pertimbangkan untuk mendukung pengembang dengan membeli salinan yang sah).
Jika Anda menerapkan perlindungan, ingatlah dua hal. Pertama, harga yang lebih rendah akan melengkapi perlindungan penggandaan dengan membuat orang lebih cenderung membayar harga pembelian. Kedua, perlindungan tidak boleh menghalangi pengguna - lihat Spora untuk contoh terbaru.
sumber
DRM ini, DRM itu - penerbit yang memaksa DRM pada proyek mereka melakukannya karena menguntungkan. Para ekonom mereka menyimpulkan ini berdasarkan data yang tidak akan pernah kita lihat. Troll "DRM is evil" berjalan terlalu jauh.
Untuk produk dengan visibilitas rendah, aktivasi internet sederhana akan menghentikan penyalinan biasa. Penyalinan lainnya kemungkinan dapat diabaikan untuk keuntungan Anda.
sumber
Distribusi ilegal praktis tidak mungkin dicegah; tanya saja ke RIAA. Konten digital bisa disalin; konten analog dapat didigitalisasi, dan kemudian disalin.
Anda harus memfokuskan upaya Anda untuk mencegah eksekusi yang tidak sah . Tidak pernah mungkin untuk sepenuhnya mencegah eksekusi kode pada mesin orang lain, tetapi Anda dapat mengambil langkah-langkah tertentu untuk menaikkan standar yang cukup tinggi sehingga menjadi lebih mudah untuk membeli perangkat lunak Anda daripada membajaknya.
Lihat artikel Mengembangkan untuk Perlindungan dan Lisensi Perangkat Lunak yang menjelaskan cara terbaik untuk mengembangkan aplikasi Anda dengan mempertimbangkan lisensi.
Penafian & steker wajib: perusahaan yang saya dirikan bersama menghasilkan solusi lisensi perangkat lunak OffByZero Cobalt untuk .NET .
sumber
Masalah dengan ide membiarkan bajak laut menggunakannya, mereka tidak akan membelinya dan akan menunjukkan kepada teman mereka siapa yang mungkin membelinya.
Dengan perangkat lunak yang menggunakan layanan pihak ke-3, salinan bajakan menggunakan bandwidth / sumber daya berharga yang memberikan pengalaman yang lebih buruk kepada pengguna yang sah, membuat sw saya terlihat lebih populer daripada sebelumnya dan memiliki layanan pihak ketiga yang meminta saya untuk membayar lebih untuk layanan mereka karena dari bandwidth yang digunakan.
Banyak orang biasa tidak akan bermimpi untuk memecahkan sw sendiri tetapi jika ada celah yang mudah dinilai di situs seperti piratebay mereka akan menggunakannya, jika tidak ada mereka mungkin membelinya.
Konsep tidak menonaktifkan perangkat lunak bajakan yang pernah ditemukan ini juga tampak gila, saya tidak mengerti mengapa saya harus membiarkan seseorang terus menggunakan perangkat lunak yang seharusnya tidak mereka gunakan, saya kira ini hanya pandangan / harapan para pembajak.
Juga, perlu dicatat bahwa membuat program sulit dipecahkan adalah satu hal, tetapi Anda juga perlu mencegah salinan resmi dibagikan, jika tidak, seseorang dapat membeli satu salinan dan kemudian
membagikannya dengan ribuan orang lain melalui situs torrent. Fakta memiliki nama / alamat email mereka yang disematkan dalam lisensi tidak akan cukup untuk menghalangi semua orang melakukan ini, dan hanya perlu satu untuk ada masalah.
Satu-satunya cara yang dapat saya lihat untuk mencegah hal ini adalah dengan:
Minta pemeriksaan server dan kunci lisensi pada startup program setiap saat, dan lepaskan lisensi saat keluar dari program. Jika klien lain memulai dengan lisensi yang sama sementara klien pertama memiliki lisensi maka akan ditolak. Cara ini tidak mencegah lisensi digunakan oleh lebih dari satu pengguna, tetapi mencegahnya digunakan secara bersamaan oleh lebih dari satu pengguna - itu sudah cukup baik. Ini juga memungkinkan pengguna yang sah untuk mentransfer lisensi di komputer mana pun mereka yang memberikan pengalaman yang lebih baik.
Pada klien startup pertama, klien mengirimkan lisensi ke server dan server memverifikasinya, menyebabkan beberapa tanda disetel dalam perangkat lunak klien. Permintaan lebih lanjut dari klien lain dengan lisensi yang sama ditolak. Masalah dengan pendekatan ini adalah klien asli akan mengalami masalah jika mereka menginstal ulang perangkat lunak atau ingin menggunakan komputer lain.
sumber
Bahkan jika Anda menggunakan semacam otentikasi sidik jari biometrik, seseorang akan menemukan cara untuk memecahkannya. Sebenarnya tidak ada cara praktis untuk itu. Alih-alih mencoba membuat perangkat lunak Anda anti-hack, pikirkan tentang berapa banyak pendapatan tambahan yang akan diperoleh dengan menambahkan perlindungan penggandaan vs. jumlah waktu dan uang yang diperlukan untuk menerapkannya. Pada titik tertentu, akan lebih murah jika menggunakan skema perlindungan penggandaan yang tidak terlalu ketat.
Itu tergantung pada apa sebenarnya produk perangkat lunak Anda, tetapi satu kemungkinan adalah memindahkan bagian "berharga" dari program dari perangkat lunak dan menyimpannya di bawah kendali eksklusif Anda. Anda akan mengenakan sedikit biaya untuk perangkat lunak (kebanyakan untuk menutupi biaya cetak dan distribusi) dan akan menghasilkan pendapatan Anda dari komponen eksternal. Misalnya, program anti-virus yang dijual dengan harga murah (atau dipaketkan secara gratis dengan produk lain) tetapi menjual langganan ke layanan pembaruan definisi virusnya. Dengan model itu, salinan bajakan yang berlangganan ke layanan pembaruan Anda tidak akan mewakili banyak kerugian finansial. Dengan meningkatnya popularitas aplikasi "di cloud", metode ini menjadi lebih mudah untuk diterapkan; menghosting aplikasi di cloud Anda, dan menagih pengguna untuk akses cloud. Ini tidak
sumber
Jika Anda tertarik untuk melindungi perangkat lunak yang ingin Anda jual kepada konsumen, saya akan merekomendasikan salah satu dari berbagai pustaka pembuat kunci lisensi (penelusuran Google tentang pembuatan kunci lisensi). Biasanya pengguna harus memberi Anda semacam seed seperti alamat email atau nama mereka dan mereka mendapatkan kembali kode registrasinya.
Beberapa perusahaan akan menjadi tuan rumah dan mendistribusikan perangkat lunak Anda atau menyediakan aplikasi penginstalan / pembelian lengkap yang dapat Anda integrasikan dengan dan melakukan ini secara otomatis mungkin tanpa biaya tambahan untuk Anda.
Saya telah menjual perangkat lunak kepada konsumen dan menurut saya ini adalah keseimbangan yang tepat antara biaya / kemudahan penggunaan / perlindungan.
sumber
Solusi sederhana dan terbaik adalah dengan mengisi daya di muka. Tetapkan harga yang sesuai untuk Anda dan mereka.
Meminta pelanggan yang membayar untuk membuktikan bahwa mereka membayar pelanggan setelah mereka sudah membayar membuat mereka kesal. Menerapkan kode agar perangkat lunak Anda tidak berjalan akan membuang-buang waktu dan uang Anda, serta menimbulkan bug dan gangguan bagi pelanggan yang sah. Anda akan lebih baik menghabiskan waktu itu untuk membuat produk yang lebih baik.
Banyak game / etc akan "melindungi" versi pertama, kemudian melepaskan proteksi di patch pertama karena masalah kompatibilitas dengan pelanggan sebenarnya. Ini bukan strategi yang tidak masuk akal jika Anda bersikeras pada sedikit perlindungan.
sumber
Hampir semua perlindungan penggandaan tidak efektif, dan merupakan mimpi buruk kegunaan. Beberapa di antaranya, seperti memasang root-kit pada mesin pelanggan Anda menjadi sangat tidak etis
sumber
Jadikan produk Anda sebagai komponen online yang membutuhkan koneksi dan otentikasi. Berikut beberapa contohnya:
Paradigma ini hanya berlaku sejauh ini dan dapat mematikan beberapa konsumen.
sumber
Saya setuju dengan banyak poster bahwa tidak ada skema perlindungan penggandaan berbasis perangkat lunak yang akan menghalangi pembajak perangkat lunak yang terampil. Untuk perangkat lunak berbasis .NET komersial Perlindungan Lisensi Perangkat Lunak Microsoft (SLP) adalah solusi dengan harga yang sangat terjangkau. Ini mendukung lisensi terbatas waktu dan mengambang. Harga mereka mulai dari $ 10 / bulan + $ 5 per aktivasi dan komponen perlindungan tampaknya berfungsi seperti yang diiklankan. Ini adalah penawaran yang cukup baru, jadi pembeli berhati-hatilah.
sumber
Saya menyarankan kunci aktivasi sederhana (bahkan jika Anda tahu bahwa itu dapat dipatahkan), Anda benar-benar tidak ingin perangkat lunak Anda mengganggu pengguna Anda, atau mereka akan mendorongnya begitu saja.
Pastikan bahwa mereka dapat mengunduh ulang perangkat lunaknya, saya menyarankan halaman web tempat mereka dapat masuk dan mengunduh perangkat lunak Anda hanya setelah mereka membayar (dan ya, mereka harus dapat mengunduh sebanyak yang mereka inginkan, secara langsung, tanpa satu pertanyaan pun. tentang mengapa di pihak Anda).
Dorong pengguna berbayar Anda di atas segalanya, tidak ada yang lebih menjengkelkan yang dituduh sebagai penjahat ketika Anda adalah pengguna yang sah (DVD anti-pembajakan memperingatkan siapa pun).
Anda dapat menambahkan layanan yang memeriksa kunci pada server saat online, dan jika dua IP berbeda menggunakan kunci yang sama, munculkan saran untuk membeli lisensi lain.
Tapi tolong jangan nonaktifkan, mungkin pengguna yang senang menunjukkan perangkat lunak Anda ke teman !!!!
sumber
Jika Anda seorang pengembang perangkat lunak, salah satu solusi yang mungkin adalah dengan menyematkan meta data langsung ke produk Anda. Lihat untuk alat Keamanan Penghancuran contoh dari matahari terbit.
sumber
Kami melisensikan perangkat lunak komersial kami menggunakan sistem lisensi kami sendiri - yang kami jual (alat manajemen lisensi). Kami biasanya menjual lisensi berlangganan, tapi bisa juga menjual berdasarkan pemakaian jika kami mau. Sejauh ini aman bagi kami: www.agilis-sw.com
sumber