Saya mengembangkan aplikasi yang, ketika dibeli, dapat diaktifkan menggunakan lisensi.
Saat ini saya sedang melakukan validasi offline yang agak mengganggu saya. Saya sadar tidak ada yang bisa dilakukan terhadap celah (yaitu binari yang dimodifikasi), namun, saya berpikir untuk mencoba mencegah pembajakan kunci-lisensi. Ini rencana saya saat ini:
- Ketika pengguna mengaktifkan perangkat lunak dan setelah validasi offline berhasil, ia mencoba menelepon ke rumah dan memvalidasi lisensi. Jika rumah menyetujui lisensi atau jika rumah tidak terjangkau, atau jika pengguna offline, lisensi akan disetujui . Jika rumah tercapai dan memberi tahu lisensi tidak valid, validasi gagal.
- Panggilan aplikasi berlisensi pulang dengan cara yang sama setiap kali selama startup (di latar). Jika lisensi dicabut (yaitu lisensi bajakan atau dihasilkan melalui keygen), lisensi akan dinonaktifkan.
Ini akan membantu pembajakan lisensi - Lisensi yang tidak valid akan dinonaktifkan dan lisensi yang valid yang dibajak dapat dicabut (dan pemiliknya yang sah diberikan lisensi baru). Pengguna bajak laut akan dipaksa untuk menggunakan versi crack yang biasanya versi spesifik dan lebih sulit untuk dijangkau.
Walaupun secara umum kedengarannya bagus untuk saya, saya memiliki beberapa kekhawatiran:
- Pengguna cenderung tidak menyukai panggilan rumah dan validasi online. Apakah validasi semacam itu mengganggu Anda? Meskipun dalam kasus offline / kegagalan aplikasi tetap berlisensi?
- Jelas bahwa seluruh skema dapat digagalkan dengan menjadi offline / firewall / dll. Saya pikir kesusahan untuk melakukan salah satu dari ini cukup bagus untuk mencegah berbagi lisensi biasa, tetapi saya tidak yakin.
- Seperti yang terjadi pada umumnya dengan variasi lisensi dan DRM, saya tidak yakin waktu yang saya habiskan untuk perlindungan semacam itu tidak lebih baik dihabiskan dengan meningkatkan produk saya.
Saya menghargai masukan dan pemikiran Anda.
Terima kasih!