温馨提示×

h5如何实现数据安全加密传输

九三
1136
2021-01-20 12:48:15
栏目: 网络安全

h5如何实现数据安全加密传输

h5利用api接口实现数据加密传输,具体方法如下:

function CurlPost($url, $param = null, $timeout = 10)

{

//初始化curl

$curl = curl_init();

curl_setopt($curl, CURLOPT_URL, $url); // 设置请求的路径

curl_setopt($curl, CURLOPT_POST, 1); //设置POST提交

curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); //显示输出结果

curl_setopt($curl, CURLOPT_TIMEOUT, $timeout);

//提交数据

if (is_array($param)) {

curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($param));

} else {

curl_setopt($curl, CURLOPT_POSTFIELDS, $param);

}

//执行请求

$data = $data_str = curl_exec($curl);

//处理错误

if ($error = curl_error($curl)) {

$log_data = array(

'url' => $url,

'param' => $param,

'error' => '' . $error . '',

);

}

# 关闭CURL

curl_close($curl);

//json数据转换为数组

$data = json_decode($data, true);

//api返回数据解密

$api_des = config('api.mcrypt');

if ($api_des['is_open']) {

$data1 = Des::decode($data, $api_des['key'], $api_des['iv']);

$des_str = json_decode($data1, true);

}

if (!is_array($des_str)) {

$des_str = $data_str;

}

return $des_str;

}

如需要确保数据不出现泄露,还可以在数据传输中添加数据签名

//添加数据签名

function makeClientSign($param){

//数组排序

ksort($param)

//转换成json串

$json_str = json_encode($param);

//md5生成sign

$md5_result = md5($json_str);

return $md5_result;

}

1