Windows ve Mac için C++/Obj-C ile yazılmış küçük bir çapraz platform ürünü üzerinde çalışıyorum. Aynı için bir lisanslama modülü uygulamaya karar verdim. Bu görev, tüm ürünlerimiz için lisans vermeye yönelik çok iddialı bir projenin bir parçasıdır. Bunun sonunda, lisansları yıllık yenileme, lisans seviyesi vb. Destekleyen müşterilerimize lisans satabileceğimiz tam bir lisanslama programımız olacak. Benim sorunum, lisans denetleyicilerinin uygulanmasıyla ilgili ilk şeyi bilmem. Herhangi biri bana nasıl yapılır? Üzerinde çalışabileceğim herhangi bir açık kaynak lisanslama modülü var mı?Lisans kontrolu kitaplığı uygulaması
cevap
Bir Kısmi Anahtar Doğrulama (PKV) sistemi kullanıyorum ve bunu C# 'da bir PHP üreticisi ile uyguladım. Google çeşitli isabetler, açıklamalar ve uygulamalar ile ortaya çıkacak; ama Brandon Staggs (Delphi da olsa!) iyi bir genel bakış yazdı, burada:
PKV bir karma ile birlikte anahtarında belirli bilgileri (lisans tipi, seri numarası ürünü, tarih, vs) kodlama çalışır kullanıcı adının ve kodlanmış bilginin karmalarının. Anahtarın çoğu aslında birden fazla bir karma karmadan oluşur. Fikir şu ki, bu karmaların yalnızca bir alt kümesini kontrol etmelisiniz. Kesin olan alt küme, bazı güvenlik için zamanla değiştirilebilir ve belirli tersine mühendisliklere karşı korunabilir.
Ayrıca, lisanstaki her bir karakterin ne anlama geldiğini anlamak için anahtarı şifrelerim. Aksi taktirde, birden fazla tuşa sahip birisi, belirli char konumlarının belirli şeyler anlamına geleceğini belirleyebilir ("oh, chars 3-4, seri numarasıdır"). Bu zırhında bir çene olabilir!
Geliştirdiğiniz herhangi bir lisans sistemi kusurlu olacaktır. Çatlak olacak ve ürünleriniz popüler ise çatlayacaktır. Ancak, dürüst insanları dürüst tutmak ve biraz dürüst olmayan insanlar için yeterli engel üretmek için bir lisans sisteminin var olduğu konusunda güçlü bir argüman var - ama pek fazla engel olmadığı için çok fazla rahatsızlık vermez (örneğin, genellikle donanım kilitlemesine karşıyım).). Sisteminizi kesenler muhtemelen bunun için ödeme yapmayacaklardı. Son paragraf için
- 1. Bir AIR uygulaması yükleyicisine nasıl bir Lisans Sözleşmesi ekleyebilirim?
- 2. Görüntüyü Görüntü kontrolu içine ekleme (ASP.Net)
- 3. başvurulan sınıf kitaplığından yürütme yöntemini çalıştırmadan önce lisans denetimi için .NET uygulaması
- 4. AAC Codec Kitaplığı (libFAAC alternatifi)
- 5. , Windows SDK Lisans
- 6. Lisans Anahtarı Android
- 7. ReSharper Hareketli Lisans Soru
- 8. marvel temel lisans kurulumu
- 9. C++ hafif yapılandırma kitaplığı
- 10. RPM paketinde Lisans Sözleşmesi Ekleme
- 11. Flexlm lisans yöneticisine nasıl bağlanır?
- 12. NetBeans lisans şablonunda $ {project.organization} tanımıyor
- 13. kitaplığı?
- 14. WCF servis kitaplığı ve WCF servis uygulaması arasındaki fark
- 15. JDBC Kitaplığı, Java Uygulamasını çalıştırarak yüklemiyor ARM Uygulaması
- 16. C# Matematiksel grafik kitaplığı
- 17. Android FTP Kitaplığı
- 18. Bir kullanıcı listesine 0365 lisans atama
- 19. Android Güvenilir bir sunucuya lisans aktarımı
- 20. Anahtar Visual Studio 2010 Lisans anahtarları
- 21. Lisansları ile tüm lisans bağımlılıkları listeleniyor
- 22. Elektron tabanlı uygulamalar için Lisans Oluşturma
- 23. Hangi XML-RPC Kitaplığı?
- 24. .Net FTP Kitaplığı
- 25. Form kitaplığı
- 26. WebSocket Kitaplığı
- 27. Node.js kitaplığı?
- 28. Geliştirilmiş iOS barkod tarayıcı kitaplığı?
- 29. QT'yi kullanarak Android Kitaplığı Oluşturma
- 30. Windows Phone için RTMP kitaplığı
+1, asla mükemmel olmayacaktır, ancak yeterince zorsa, her şey yoluna girecektir. –
Açıklamanızı ve özellikle son paragrafı seviyorum. Her şeyi özetliyor! –