php接口简单加密方式

从网上看到的代码,感觉很有用,mark一下。喜欢研究接口等等的可以拓展练练手。推荐一篇之前的文章:

简单的PHP域名授权函数一些主题开发者或者程序开发者经常会用到域名授权这类,博主闲着没事,就在度娘上研究了一下,发现相关资料还是比较少,基本上有些程序都是需要花钱购买的,还有的需要积分下载之类的,但是很多都是破解分享的,无意中发现了这个函数,感觉挺好玩的,就分享下咯! <?php function allow_doamin(){ $is_allow=false; $url=trim($_SERVER['SERVER_NAME']); $arr_allow_domain=array("0513c.com");//这里可以添加多个授权域名 foreach($arr_allow_domain as $value){ $value=trim($value); $tmparr=explode($value,$url); if(count($tmparr)>1){ $is_allow=true; break; } } if(!$is_allow){ die('域名未授权!'); } } allow_doamin(); ?> 测试后添加之后二级域名均被授权了,你可以把这段函数添加到PHP核心文件中,当然,必要的加密还是需要的,但是嘛,这种加密对于有心人来说还是很小儿科的,诸如discuz的魔方加密还是很强大的。自己学习研究。 虽然我有时候分享破解主题之类的,但是不建议使用,测试测试功能还可以。你展示的网站都是破解版的,纵然有千万种借口也不行!那你为什么要用这模版,还不是虚荣心作怪,不谙平庸吗? 技术宅友情提醒,盗版需谨慎,服务价更高!

<?php
error_reporting(E_ALL ^ E_NOTICE ^ E_WARNING);
date_default_timezone_set("PRC");
define("TOKEN", "abxixkxduFjr2N35E63t");

function createNonceStr($length = 16) {
    $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
    $str = "";
    for ($i = 0; $i < $length; $i++) {
        $str .= substr($chars, mt_rand(0, strlen($chars) - 1), 1);
    }
    return $str;
}

function Signature($timestamp,$nonce){
    $token = TOKEN;
    $tmpArr = array($token, $timestamp, $nonce);
    sort($tmpArr);
    $tmpStr = implode( $tmpArr );
    $signature= sha1( $tmpStr );
    return $signature;
}

function checkSignature()
{
    $signature = $_GET["signature"];
    $timestamp = $_GET["timestamp"];
    $nonce = $_GET["nonce"];

    $token = TOKEN;
    $tmpArr = array($token, $timestamp, $nonce);
    sort($tmpArr);
    $tmpStr = implode( $tmpArr );
    $tmpStr = sha1( $tmpStr );

    if( $tmpStr == $signature ){
        return true;
    }else{
        return false;
    }
}

//当前时间
$timeStamp = time();
//随机数
$nonce =createNonceStr();
//生成签名
$signature =Signature($timeStamp,$nonce);

//获取get参数,调用验证函数
checkSignature();

 

小程序码
  • 技术宅微信
  • 联系我们
    • 电话:025-66045436合作
    • 官方小程序 技术宅小程序
      官方微信 技术宅微信