النتائج 1 إلى 5 من 5

الموضوع: دالة حماية برمجية

  1. #1
    عضو نشيط جدا
    تاريخ التسجيل
    May 2004
    المشاركات
    556

    دالة حماية برمجية



    السلام عليكم ... من فترة ... كنت اجرب برنامج مدفوع .... وكالعادة ... احاول معرفة اكواد التبليغ في النسخة

    ولكن البرمجية هذه المرة مختلفة ... لا تحتوي على اكواد للتبليغ ... وإنما على ملف license ... يتم وضعه في المجلد ....

    إذا كانت المعطيات في الملف صحيحة ... تعمل البرمجية بشكل كامل ...


    مثال عن محتويات الملف :

    كود PHP:
    first_name "Bahr";
    last_name "AbdUlrazzak";
    email "insyria@gmail.com";
    site_url "http://127.0.0.1/";
    expiration_date "2018-01-01";
    verification_code "29f4e300f173b0d79cd4c680557422b4NzkwYzhjN2Q4MjA5NWRhZGYxMWRjN"
    (( ال verification_code .. طويل جداً .. واكتفيت بجزء منه ))


    المهم ...

    عرفت ان دالة الحماية موجودة في ملف ال functions :nice: <----- ذكاء خارق ..

    بس للأسف طلع الملف مشفر بال Zend .. :funny::funny::funny:

    فكيته ... وبعدها سحبت الكود تبع الفحص


    وطلع معي التالي :

    كود PHP:
    <?php

    class license
    {

        var 
    $license_info;
        var 
    $error null;

        function 
    license( )
        {
            
    $this->license_info is_readable"bahr.lic" ) ? parse_ini_file"bahr.lic" ) : array(
                
    "expiration_date" => null,
                
    "verification_code" => null
            
    );
        }

        function 
    isvalid( )
        {
            if ( 
    $this->_islocalperformed( ) )
            {
                return 
    true;
            }
            if ( !
    $this->_islicensecodevalid( ) )
            {
                
    $this->error "INVALID_VERIFICATION_CODE";
            }
            else if ( 
    $this->_islicenseexpired( ) )
            {
                
    $this->error "EXPIRED_LICENSE";
            }
            return empty( 
    $this->error );
        }

        function 
    geterrormessage( )
        {
            
    header$_SERVER['SERVER_PROTOCOL']." 403 Forbidden" );
            if ( 
    $this->error == "INVALID_VERIFICATION_CODE" )
            {
                echo 
    "The software license is invalid \r\n";
            }
            else
            {
                echo 
    "The software license is expired \r\n";
            }
        }

        function 
    _islocalperformed( )
        {

          
    // المتغير $SITE_URLهون  .. كان عم يتم اخذه بشكل تلقائي
          // من قواعد بيانات البرمجية الرئيسية ... بس النقطة اختلفت .. انو 
          // بدنا نستفيد من الكود نفسه 
          // وهو لازم ياخد عنوان الموقع بشكل تلقائي

            
    $parsed_url parse_url("$SITE_URL");
            return 
    $parsed_url['host'] == "localhost";
        }

        function 
    _islicensecodevalid( )
        {
            
    $cryptographer = new cryptographer$this->license_info['expiration_date'] );
            return 
    $cryptographer->getcrypt( ) === $this->license_info['verification_code'];
        }

        function 
    _islicenseexpired( )
        {
            return 
    $this->license_info['expiration_date'] < date"Y-m-d" );
        }

    }

    class 
    cryptographer
    {

        var 
    $expiration_date;
        var 
    $site_url;
        var 
    $inserted_words;

        function 
    cryptographer$expiration_date$site_url null )
        {
            
    $this->expiration_date $expiration_date;

          
    // المتغير $SITE_URLهون  .. كان عم يتم اخذه بشكل تلقائي
          // من قواعد بيانات البرمجية الرئيسية ... بس النقطة اختلفت .. انو 
          // بدنا نستفيد من الكود نفسه 
            
    $this->site_url = empty( $site_url ) ? $SITE_URL$site_url;
            
    $this->inserted_words = array( "asdfg14235""*&^%\$RTGFVBJL:)(*""-=+[]lLLL7gfd@" );
        }

        function 
    getcrypt( )
        {
            return 
    $this->_getencryptedcombination$this->_getcombinedunencryptedstring( ), );
        }

        function 
    _getcombinedunencryptedstring( )
        {
            
    $result join""$this->inserted_words );
            return 
    $this->expiration_date.$result.$this->site_url;
        }

        function 
    _getencryptedcombination$string$counter )
        {
            if ( 
    $counter )
            {
                return 
    $string;
            }
            
    $result md5$string ).crc32$string ).base64_encode$string );
            
    $result md5$result ).base64_encode$string ).crc32$string ).md5$result );
            return 
    $this->_getencryptedcombination$result, ++$counter );
        }

    }
    ?>
    طبعاً في كود تاني لحتى يطلب ال CLASS الموجودين فوق ويفحصهم

    كود PHP:
    <?php
            $license 
    =& new license( );
            if ( 
    $license->isvalid( ) )
            {
                return (
    $page_config);
            }
            return 
    $license->geterrormessage( );

    ?>


    ولكن الكود لم يعمل معي :nice::nice::nice: :nice:


    هل من اقتراحات ؟







  2. #2
    عضو فعال
    تاريخ التسجيل
    Feb 2008
    المشاركات
    1,759


    لا حتى الآن





    __________________
    FaceBook Application Developer
    تعلم برمجة سكريبت جلب المحتوى خطوة بخطوة
    مشروعى داخل معرض الاتصالات
    لمراسلتي إضغط هنا
    سبحان الله وبحمده سبحان الله العظيم

  3. #3
    عضو نشيط جدا
    تاريخ التسجيل
    May 2004
    المشاركات
    556


    هل من اقتراحات اخوتي ؟!






  4. #4
    عضو نشيط جدا
    تاريخ التسجيل
    Aug 2007
    المشاركات
    597


    شكرا لك على الكلاس .. لكن اخي هل عندك طريقة لكي نحمي برمجياتنا .. ؟؟ غير هذا الكلاس المعقد






  5. #5
    عضو نشيط جدا
    تاريخ التسجيل
    May 2004
    المشاركات
    556


    يوجد برمجية اقوم بإستخدامها حالياً :

    http://www.swalif.net/softs/swalif45...7/#post1825215



    وولكن بصراحة .. انا افضل هذا الكلاس ... ولكن المشكلة انه لا يعمل :S










ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض