• 27-10-2021, 00:30:25
    #1
    SARA: PHP ile dinamik lisanslama sistemi
    3 Yıl önce projelerimi korumak için basit lisans sistemi kullanıyordum ama her seferinde her proje için sıfırdan ayarlamam gerekiyordu. Bende o yıllarda buna benzer bir lisans sistemi yazmıştım şimdi ise güncel bir lisans sistemi yazmak istedim ama bu kez paylaşıyorum ihtiyacı olan kişiler projelerinde github üzerinden erişip kullanabilir.

    Sistem hakkında bilgiler
    Bu lisans sistemi, Etki Alanı, IP adresi ve Zaman ayarlı dinamik olarak bir lisans oluşturmanıza olanak tanır.
    Veritabanı sqllite3 ile sağlanmaktadır. Tüm projelerinizde dosyalarınızı bir kez şifreleyerek istediğiniz kadar lisans oluşturmanız mümkündür.

    Kurulum

    Bu sistemin çalışması için minimum PHP 5.6 gereklidir.
    Bu bir paket değil. MVC Yapınızı vereceğim talimatlara göre uygun şekilde oturtup hazır hale getirmeniz gerekmektedir.
    Öncelikle ana dizinde aşağıdaki 2 parametreyi vermeniz gerekiyor.


    define ( 'LICANSE_CODE' , 'TFpsc2lkem9wMGxUOW5heEV5ZGN2RTZFbVNOOHJyZTJDTWMrbE5iY0tyZz0=' );
    define ( 'LICANSE_DIR_PATH' , __DIR__. "/license.json" );
    Bu sabit değerler, müşterinizin lisans koduna ve lisans dosyasına giden yolu tutar.
    • LICANSE_CODE Müşteriye Özel Lisans Kodu.
    • LICANSE_DIR_PATH Oluşturulan ve Okunan lisans dosyasına giden yol


    Bu 2 değeri istemciye açık bırakabilirsiniz. Şifrelemeniz gerekmeyecek.
    app.php içindeki kodları, sisteminizde o dosya olmadan projenizin çalışmayacağı bir dosyaya eklemelisiniz. (Bu dosya fonksiyonlarınızın bulunduğu bir dosya olabilir)
    Belirtilen değerleri kendinize göre yapılandırmayı unutmayınız.
        $ get_url = 'https://www.arcface.net/dynamic_license/license.php' ;
    License.php dosyanızın bulunacağı barındırma yoludur. Bunu, lisans kontrolünden geçireceğiniz sunucu adresiyle değiştirin.
       # license.php
    define('LICANSE_CRYPTO_KEY', '2c6326b1d378cb3555e5ee051302eb7e');
    # app.php
        $license['crypto_key'] = license_cypto_dec($license['crypto_key'],"2c6326b1d378cb3555e5ee051302eb7e");
    2c6326b1d378cb3555e5ee051302eb7e bu değeri değiştirmeyi unutmayınız.
    Son adım
    Son olarak license.php ve license.dbdosyasını hostinginize aktarın .
    İşlem sonunda app.php içerisine eklediğiniz fonksiyon dosyasını Ioncube veya türev bir şifreleme sistemi ile şifrelemeyi unutmayınız.


    Github Kaynağı: https://github.com/arcface/sara_license
    Bu lisans sistemi eğer ileri seviye güvenli bir lisans sistemi istiyorsanız fazlasıyla işinizi görecektir. Tüm işlevleri bulunuyor bu lisans sistemini bu makaleyi hazırlamaya karar verdiğim de yazdım yani gayet güncel ve günümüze uygun halde bir lisans sistemidir.
    Lisans sistemini kendi yapınıza yedirdikten sonra app.php içindeki her şeyi şifrelemeyi unutmayın yoksa temel seviye php bilen biri bile rahatlıkla lisansı sisteminizden söküp atabilir.
  • 27-10-2021, 01:28:49
    #2
    yararlı konu teşekkür ederim
  • 27-10-2021, 02:05:05
    #3
    Uğraş için teşekkürler ama şifreleme sistemlerinin açık kaynak veya github üzerinde paylaşılmamasının bazı nedenleri vardır.

    Disable Functions: license_control_curl, license_cypto_dec
  • 27-10-2021, 02:06:07
    #4
    Bunu forumdaki script satan arkadaşlar demolarına bile uygulamalı. Geçen gün php uzmanı bir çocukla konuştum kendisi pakistanlı,

    Site yönetimi üzerine anlaşma sağlıyorduk kendisi Türk forumlarını seviyorum dedi ve ekledi;

    Scritlerini nullayıp rebrand yapıp satıyorum. 50$ 60$ kazanıyorum. Dedim hangi siteden alıyorsun bu yasak ve cezası var. R10'u attı.

    Forumda en meşhur scriptlerden bazılarını gösterdi. Şaşırdım ve düşündüm php script dosyalarını çalmak bu kadar kolay mı diye. Şifreleme bir çözüm olur mu bilmem ama bence kesinlikle bir önlem alınması lazım

    Bu arada kodlarındaki türkçe kelimelere kadar değiştirmiş sayfa'lar page olmuş. Bütün tasarımcıların dikkat etmesi gerekiyor benden uyarması.
  • 27-10-2021, 02:12:39
    #5
    Riga adlı üyeden alıntı: mesajı görüntüle
    Uğraş için teşekkürler ama şifreleme sistemlerinin açık kaynak veya github üzerinde paylaşılmamasının bazı nedenleri vardır.

    Disable Functions: license_control_curl, license_cypto_dec
    sistemi inceler iseniz kullanacak kişiler sadece kendisine özel kullanıcıya kapalı bir cypto değeri oluşturuyor bu değere de erişim sadece istek sağlanırken oluyor bu değeri özelleştirdikten sonra değerler şifreli olarak döneceği için bu kaynağa erişebilseler bile bunu kendi çıkarları için kullanamazlar. Tabi kalkıp lisansı şifrelemeden direkt olduğu gibi eklerler ise o cypto değeri açık olacağından dolayı hiç bir anlamı kalmayacaktır.
  • 27-10-2021, 02:14:47
    #6
    aydntech adlı üyeden alıntı: mesajı görüntüle
    sistemi inceler iseniz kullanacak kişiler sadece kendisine özel kullanıcıya kapalı bir cypto değeri oluşturuyor bu değere de erişim sadece istek sağlanırken oluyor bu değeri özelleştirdikten sonra değerler şifreli olarak döneceği için bu kaynağa erişebilseler bile bunu kendi çıkarları için kullanamazlar. Tabi kalkıp lisansı şifrelemeden direkt olduğu gibi eklerler ise o cypto değeri açık olacağından dolayı hiç bir anlamı kalmayacaktır.
    Burada konu o değil. Lisanslama sisteminin dosyaları açık bir şekilde paylaşılırsa bu sorun teşkil eder. Şifrelenmesinin bir önemi bulunmuyor. Sizin 2 fonksiyonuzun disable edilmesi durumunda sistem çalışmaya devam eder.
  • 27-10-2021, 02:31:02
    #7
    Riga adlı üyeden alıntı: mesajı görüntüle
    Burada konu o değil. Lisanslama sisteminin dosyaları açık bir şekilde paylaşılırsa bu sorun teşkil eder. Şifrelenmesinin bir önemi bulunmuyor. Sizin 2 fonksiyonuzun disable edilmesi durumunda sistem çalışmaya devam eder.
    Kodları incelemeni önereceğim. license_control_curl ve license_cypto_dec fonksiyonları disable etse bile license.json dosyasını da varsayalım ki manuel eliyle oluşturdu. crypto_key değeri için webmaster'ın oluşturduğu key ile şifrelenmekte yani eğer bu değeri boş döner ise license üzerine istek atıp hata kodunu bastıracaktır ama license_control_curl değerini de disable ettiği için ekrana sadece hata basacaktır. O hatada belli license_control_curl fonksiyonu hatası olacaktır yani her durum da scripti kullanmaya devam edemeyecektir. Projenin dosyaları tamamen github'da yer alıyor indirip deneyebilirsiniz. Ne demek istediğimi anlayacaksınız.