让用户来创造内容 不指定

jed , 2009-2-13 09:44 , 站长建站 , 评论(0) , 阅读(2783) , Via 本站原创
用户动作创造网站内容。
软件封装知识
解密OA
日志

如何做license.php验证文件 不指定

jed , 2009-2-4 14:02 , 代码编程 , 评论(0) , 阅读(3660) , Via 本站原创
以下是破解的国内某著名php下载系统做的license.php验证文件。源码如下:
license.php

<?php
//----------------------------
// 以下是域名: www.dzhope.com的授权码
$License = "299CCBQC19B7RBD16BA9D2A4K12579A659DMT27C8EZ7D915SC9552B297967D4D059087EC25A3D7DD154808B1C676D3D63F3A63E9EDABF57A8C54F96C82ECF47798344ED570DBEE2845D726738D75163FCD39EFE1AE18F317CA195E3FA18A7==ACE64==WDA3833324EA9C85C440ED1904ECEF0BA4EF420FFA86D5C0C77E4F72BAEC1B0D5A6810921F";
?>



chklicense.php
验证license.php的文件代码如下:



<?php
/*********************/
/*                         */
/*  Version : 1.0     */
/*  Author  :jed     */
/*                       */
/*                      */
/*********************/

function switch_str( $str )
{
    $arr[0] = "5%R0Dqhlyhg";
    $arr[1] = "eLKR1(1A0Lq";
    $arr[2] = "uw)teDc9veP";
    $arr[3] = "uaNueju&pPa";
    $arr[4] = "sA:pWEYAs?q";
    $arr[5] = ":pWEY:pWEYd";
    $arr[6] = "0P7\$0lg#ws?";
    $arr[7] = ")teDc)teDac";
    $arr[8] = "PAkXyZe~n3P";
    $arr[9] = "PAkadXyZe~n";
    $arr['a'] = "jVtlsAXWqaa";
    $arr['b'] = "dfjVtlsAXWq";
    $arr['c'] = "jVtljVtljVt";
    $arr['d'] = "Q3vn9G3HHWl";
    $arr['e'] = "Qn9Gn)6HWlf";
    $arr['f'] = "Q3vrn9GHWlf";
    $arr['g'] = "n9G3H5nBy&f";
    $arr['h'] = "XyZe~n3@ila";
    $arr['i'] = "Q3XyZe~nWlf";
    $arr['j'] = "Q3vrn)6HWlf";
    $arr['k'] = "MBtn9G3H5nB";
    $arr['l'] = "8Ce7unaHWlf";
    $arr['m'] = "aO)WNJ3J3la";
    $arr['n'] = "aO)WNJ3ssce";
    $arr['o'] = "f?:0I2NiDC)";
    $arr['p'] = "Q3vrn)6HWlf";
    $arr['q'] = "f&HPW5bm9ya";
    $arr['r'] = "8CeanE2NWlf";
    $arr['s'] = "*TKS(9klasf";
    $arr['t'] = "O)WNJ3kcOee";
    $arr['u'] = "sAXWqO(M7qc";
    $arr['v'] = "qO(M7qccCYQ";
    $arr['w'] = "vrn)6HWHWlf";
    $arr['x'] = "dfadaadeevf";
    $arr['y'] = "G3H5nBy&8aV";
    $arr['z'] = "eedaunE2Nqa";
    if ( isset( $arr[$str] ) )
    {
        return $str;
    }
    return base64_encode( $str );
}

function numtostr( $num )
{
    $arr[0] = "EQRAK";
    $arr[1] = "QRAKA";
    $arr[2] = "TZSB7";
    $arr[3] = "WEYAS";
    $arr[4] = "J3KCO";
    $arr[5] = "LSAXW";
    $arr[6] = "MBTN9";
    $arr[7] = "H5NBY";
    return $arr[$num];
}

function strtonum( $str )
{
    $arr['EQRAK'] = 0;
    $arr['QRAKA'] = 1;
    $arr['TZSB7'] = 2;
    $arr['WEYAS'] = 3;
    $arr['J3KCO'] = 4;
    $arr['LSAXW'] = 5;
    $arr['MBTN9'] = 6;
    $arr['H5NBY'] = 7;
    if ( isset( $arr[$str] ) )
    {
        return $arr[$str];
    }
    return false;
}

function strfun( $i )
{
    $fun[0] = "md5";
    $fun[1] = "sha1";
    $fun[2] = "base64_encode";
    $fun[3] = "ord";
    $fun[4] = "switch_str";
    $fun[5] = "base64_encode";
    $fun[6] = "sha1";
    $fun[7] = "sha1";
    $fun[8] = "md5";
    $fun[9] = "switch_str";
    $fun[10] = "sha1";
    $fun[11] = "switch_str";
    $fun[12] = "md5";
    $fun[13] = "ord";
    $fun[14] = "switch_str";
    $fun[15] = "base64_encode";
    $fun[16] = "sha1";
    if ( isset( $fun[$i] ) )
    {
        return $fun[$i];
    }
    return "base64_encode";
}

function getlicence( )
{
    global $License;
    $domain = $udomain = strtolower( $_SERVER['SERVER_NAME'] );
    if ( substr( $domain, 0, 7 ) == "http://" )
    {
        $domain = substr( $domain, 7 );
    }
    $domainarr = explode( ".", $domain );
    if ( count( $domainarr ) == 2 )
    {
        $domain = "www.".$domain;
    }
    else
    {
        $allow = array( "download", "down", "software", "soft", "test", "v3" );
        if ( in_array( $domainarr[0], $allow ) )
        {
            $domainarr[0] = "www";
        }
        $domain = implode( ".", $domainarr );
    }
    $domainarr = explode( ".", $domain );
    $domain = "";
    foreach ( $domainarr as $key => $val )
    {
        $domain .= $domain == "" ? strrev( $val ) : ".".strrev( $val );
    }
    $content = "";
    $i = 0;
    for ( ; $i < strlen( $domain ); ++$i )
    {
        $function = strfun( $i );
        $content .= $function( $domain[$i] );
    }
    $content = strrev( strtoupper( $content ) );
    if ( !file_exists( "../core/license.php" ) )
    {
        common::_error( "授权文件license.php 不存在!" );
    }
    require_once( "../core/license.php" );
    $j = $numarr = "";
    $jarr[] = 0;
    $i = 0;
    for ( ; $i < $License[0]; ++$i )
    {
        if ( $j == "" )
        {
            $j = ( $i + 1 ) * 5;
            $j += 1;
        }
        else
        {
            $j += 25;
        }
        $numarr[$i] = $License[$j].$License[$j + 5].$License[$j + 10].$License[$j + 15].$License[$j + 20];
        $jarr[] = $j;
        $jarr[] = $j + 5;
        $jarr[] = $j + 10;
        $jarr[] = $j + 15;
        $jarr[] = $j + 20;
    }
    $num = "";
    if ( is_array( $numarr ) )
    {
        foreach ( $numarr as $key => $val )
        {
            $num .= strtonum( $val );
        }
    }
    $MyLicense = substr( $License, 1 );
    $GLOBALS['licensedomain'] = $udomain;
    $GLOBALS['licensenum'] = $num = octdec( $num );
    $numstr =decoct( $num );
    $newnumstr = "";
    $i = 0;
    for ( ; $i < strlen( $numstr ); ++$i )
    {
        $newnumstr .= numtostr( $numstr[$i] );
    }
    $i = 0;
    for ( ; $i < strlen( $newnumstr ); ++$i )
    {
        $j = ( $i + 1 ) * 5;
        $content[$j] = $newnumstr[$i];
    }
    if ( $content == $MyLicense )
    {
        return $num;
    }
    common::_error( "授权文件license.php 中的授权码有误!" );
}

?>


Tags:
分页: 1/2 第一页 1 2 下页 最后页 [ 显示模式: 摘要 | 列表 ]