游戏防沉迷系统相关内容

网站地址: 网络游戏防沉迷实名认证系统

PHP代码:

创建对应文件,在需要的位置get传参请求即可,具体参数参考 网络游戏防沉迷实名认证系统接口对接技术规范v2.0

1、上传信息

复制代码
<?php
$url  ="https://wlc.nppa.gov.cn/test/authentication/check";

$config['appid'] = $_GET['appid'];

$config['bizid'] = $_GET['bizid'];

$config['timestamps'] = microsecond();

$config['secretKey'] =  $_GET['secretKey'];

$data['data'] = aesGcm($_GET['data'],$config['secretKey']);

$data = json_encode($data);
$str = $config['secretKey'].'appId'.$config['appid'].'bizId'.$config['bizid'].'timestamps'.$config['timestamps'].$data;

$config['sign'] = hash("sha256", $str);

$return = doHttpPost($url,$data,$config);

echo $return;

function aesGcm($data,$key)
{
        $key = hex2bin($key);
        $cipher = "aes-128-gcm";
        $ivlen = openssl_cipher_iv_length($cipher);
        $iv = openssl_random_pseudo_bytes($ivlen);
        $encrypt = openssl_encrypt($data, $cipher, $key, OPENSSL_RAW_DATA,$iv,$tag);
        return base64_encode(($iv.$encrypt.$tag));
}

function doHttpPost($url, $data,$config, $options = null)
{
        $headerArray =array('Content-Type:application/json;charset=utf-8','appId:'.$config['appid'],'bizId:'.$config['bizid'],'timestamps:'.$config['timestamps'],'sign:'.$config['sign']);
        
        //$header =array('Content-Type'=>'application/json;charset=utf-8','appId'=>$config['appid'],'bizId'=>$config['bizid'],'timestamps'=>$config['timestamps'],'sign'=>$config['sign']);
        
        
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST,FALSE);
        curl_setopt($curl, CURLOPT_POST, 1);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
        curl_setopt($curl,CURLOPT_HTTPHEADER,$headerArray);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        $output = curl_exec($curl);
        curl_close($curl);
        return $output;
        
}
    
//时间戳
function microsecond()
{
        $t = explode(" ", microtime());
        $microsecond = round(round($t[1].substr($t[0],2,3)));
        return $microsecond;
}

2、查询信息

复制代码
<?php
$ai = $_GET['ai'];

$url  ="http://api2.wlc.nppa.gov.cn/idcard/authentication/query?ai=".$ai;

$config['appid'] = $_GET['appid'];

$config['bizid'] = $_GET['bizid'];

$config['timestamps'] = microsecond();

$config['secretKey'] =  $_GET['secretKey'];

$str = $config['secretKey'].'ai'.$ai.'appId'.$config['appid'].'bizId'.$config['bizid'].'timestamps'.$config['timestamps'];

$config['sign'] = hash("sha256", $str);

$return = doHttpGet($url,$data,$config);

echo $return;

function doHttpGet($url, $data,$config, $options = null)
{
        $headerArray =array('appId:'.$config['appid'],'bizId:'.$config['bizid'],'timestamps:'.$config['timestamps'],'sign:'.$config['sign']);
  
        $curl = curl_init();
        //设置抓取的url
        curl_setopt($curl, CURLOPT_URL, $url);
        //设置头文件的信息作为数据流输出
        curl_setopt($curl, CURLOPT_HEADER, 0);
        // 超时设置,以秒为单位
        curl_setopt($curl, CURLOPT_TIMEOUT, 1);
     
        curl_setopt($curl, CURLOPT_HTTPHEADER, $headerArray);
        //设置获取的信息以文件流的形式返回,而不是直接输出。
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
        //执行命令
        $data = curl_exec($curl);
        
        return $data;
}
    
//时间戳
function microsecond()
{
        $t = explode(" ", microtime());
        $microsecond = round(round($t[1].substr($t[0],2,3)));
        return $microsecond;
}

3、行为上报

复制代码
<?php
$url  ="https://api.wlc.nppa.gov.cn/idcard/authentication/check";

$config['appid'] = $_GET['appid'];

$config['bizid'] = $_GET['bizid'];

$config['timestamps'] = microsecond();

$config['secretKey'] =  $_GET['secretKey'];

$collections  = json_decode($_GET['collections'],true);

$collections  = json_encode(array('collections'=>array($collections)));

$data['data'] = aesGcm($collections,$config['secretKey']);

$data = json_encode($data);

$str = $config['secretKey'].'appId'.$config['appid'].'bizId'.$config['bizid'].'timestamps'.$config['timestamps'].$data;

$config['sign'] = hash("sha256", $str);

$return = doHttpPost($url,$data,$config);

echo $return;

function aesGcm($data,$key)
{
        $key = hex2bin($key);
        $cipher = "aes-128-gcm";
        $ivlen = openssl_cipher_iv_length($cipher);
        $iv = openssl_random_pseudo_bytes($ivlen);
        $encrypt = openssl_encrypt($data, $cipher, $key, OPENSSL_RAW_DATA,$iv,$tag);
        return base64_encode(($iv.$encrypt.$tag));
}

function doHttpPost($url, $data,$config, $options = null)
{
        $headerArray =array('Content-Type:application/json;charset=utf-8','appId:'.$config['appid'],'bizId:'.$config['bizid'],'timestamps:'.$config['timestamps'],'sign:'.$config['sign']);
        
        //$header =array('Content-Type'=>'application/json;charset=utf-8','appId'=>$config['appid'],'bizId'=>$config['bizid'],'timestamps'=>$config['timestamps'],'sign'=>$config['sign']);
        
        
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST,FALSE);
        curl_setopt($curl, CURLOPT_POST, 1);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
        curl_setopt($curl,CURLOPT_HTTPHEADER,$headerArray);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        $output = curl_exec($curl);
        curl_close($curl);
        return $output;
        
}
    
//时间戳
function microsecond()
{
        $t = explode(" ", microtime());
        $microsecond = round(round($t[1].substr($t[0],2,3)));
        return $microsecond;
}
相关推荐
魔士于安9 小时前
unity volumefog带各种demo第一人称 wsad 穿墙控制
游戏·unity·游戏引擎·贴图·模型
xcLeigh10 小时前
Python小游戏实战:实现2048游戏小游戏附源码
python·游戏·教程·pygame·2048·python3
魔法阵维护师10 小时前
从零开发游戏需要学习的c#模块,第三十二章(Boss 战系统)
学习·游戏·c#
2501_9400417410 小时前
A Curated Archive of Tech & Culture / 科技与文化精选档案
游戏
魔法阵维护师10 小时前
从零开发游戏需要学习的c#模块,第三十三章(暂停菜单)
学习·游戏·c#
Kurisu57511 小时前
幻兽帕鲁修改器下载2026最新
游戏
Swift社区12 小时前
鸿蒙游戏中的手势系统详解
游戏·华为·harmonyos
kyh10033811201 天前
Cocos Creator 《打螺丝消除游戏》源码+实现
游戏·微信小程序·小程序·打螺丝小游戏源码·微笑小游戏源码
孙子荀1 天前
【游戏NPC】(一)哲学本质 Evaluation-Grounded NPC Building System
游戏
魔法阵维护师1 天前
从零开发游戏需要学习的c#模块,第三十一章(技能冷却系统 —— 范围爆炸)
学习·游戏·c#