所有接口支持跨域调用,GET/POST均可请求,MD5解密接口自动识别MD5、SHA1、MySQL密码格式
1、统一返回格式
所有接口返回固定JSON结构,code=1成功,code=0失败
{
"code": 1, // 状态码:1=成功 0=失败
"msg": "success", // 提示信息
"data": [] // 业务数据
}
2、接口总览
| 接口名称 |
请求地址 |
请求方式 |
功能描述 |
| 文本加密 |
/api.php?action=encrypt |
GET/POST |
生成MD5/SHA1/MySQL全类型哈希密文 |
| 密文解密 |
/api.php?action=decrypt |
GET/POST |
自动识别密文类型查询明文 |
3、MD5加密接口(encrypt)
请求地址:/api.php | 必传参数:action=encrypt
| 参数名 |
数据类型 |
是否必填 |
参数说明 |
| action |
字符串 |
必填 |
固定值:encrypt |
| text |
字符串 |
必填 |
需要加密的明文内容 |
MD5加密成功返回示例
{
"code": 1,
"msg": "加密成功",
"data": {
"md5_16": "xxxx",
"md5_32": "xxxx",
"sha1": "xxxx",
"mysql_old_password": "xxxx",
"mysql5_password": "xxxx"
}
}
4、MD5解密接口(decrypt)
请求地址:/api.php | 必传参数:action=decrypt
| 参数名 |
数据类型 |
是否必填 |
参数说明 |
| action |
字符串 |
必填 |
固定值:decrypt |
| cipher |
字符串 |
必填 |
待解密的密文 |
模式说明:MD5免费解密直接解密;MD5收费解密需登录,每次消耗1积分
MD5解密成功返回
{
"code": 1,
"msg": "解密成功",
"data": {
"cipher": "密文",
"plaintext": "明文",
"type": "MD5 32位",
"mode": "free/paid"
}
}
MD5解密失败返回
{
"code": 0,
"msg": "未查询到对应明文",
"data": []
}
5、支持的密文类型
| 密文格式 |
长度 |
类型名称 |
| 十六进制 |
16位 |
MD5 16位 / MySQL OLD_PASSWORD |
| 十六进制 |
32位 |
MD5 32位 |
| 十六进制 |
40位 |
SHA-1 |
| *+十六进制 |
41位 |
MySQL5 PASSWORD |
6、常见错误码
| code |
错误信息 |
错误原因 |
| 0 |
明文内容不能为空 |
加密接口未传入text参数 |
| 0 |
密文不能为空 |
解密接口未传入cipher参数 |
| 0 |
不支持的密文格式 |
密文格式不符合规范 |
| 0 |
未查询到对应明文 |
数据库无匹配数据 |
| 0 |
请先登录会员账号 |
收费模式未登录 |
| 0 |
积分不足 |
账号积分小于1 |
7、PHP调用示例
<?php
// 调用加密接口
$url = "http://你的域名/api.php";
$postData = [
"action" => "encrypt",
"text" => "123456"
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$res = curl_exec($ch);
curl_close($ch);
// 解析结果
$data = json_decode($res, true);
print_r($data);
?>
8、注意事项
1. MD5加密数据自动入库,用于后续MD5解密查询
2. MD5解密成功/失败均会记录系统日志
3. MD5收费解密后自动扣除1积分并更新会话
4. 仅支持文档内指定的密文格式解密