本项目由 初春网络 小森开发,在 雾创岛 发布,基于Cap-Pow项目的一个分支。
弥补了Cap-Pow Server官方版本不支持世界上最好的语言PHP的遗憾。
原Cap-Pow项目地址:
Github:https://github.com/tiagorangel1/cap
本项目Dome
服务端环境
- 推荐使用 Nginx
- 推荐PHP版本:8.0+
- 数据库使用SQLite
安装
- 下载Cap-Pow Server for PHP源码
- 上传至网站目录
- 配置伪静态
location / { try_files $uri $uri/ $uri.php?$query_string; if ($request_filename ~* .*\.php$) { return 403; } }
- 将Cap-Pow接口换成您的Cap-Pow Server for PHP
<script src="https://cdn.jsdelivr.net/npm/@cap.js/widget"></script> <cap-widget id="cap" data-cap-api-endpoint="https://<your cap endpoint>" ></cap-widget>
- 恭喜你,您已经成功安装并配置好了Cap-Pow!
您可以修改cap.php对以下内容自定义:
- $db_Driver => 数据库文件存放位置(以“.db”结尾)
- $c => 运算次数,默认64
- $s => 每次运算长度,默认128
- $d => 运算难度,默认4
您也可以通过构造时传入自定义参数,例如:
/**
* cap.php
*/
$config = [
'db_Driver' => '.data/cap.db',
'c' => 32,
's' => 64,
'd' => 4
];
$cap = new Cap($config);您在生成挑战时也能通过传入参数更改默认的计算难度和挑战超时时间,例如:
/**
* challenge.php
*/
$cap = new Cap();
// 挑战难度
$challenge = [
'c' => 32,
's' => 64,
'd' => 4
];
// 单位:秒
$expires = 60;
// 传入自定义参数
$cap->createChallenge($challenge, $expires);您可以任意的修改此项目、分支、发布。
如果您不想自己部署或有更高的安全需求,您也可以使用我的另外一个分支:One-Pow
One-Pow 优化项目
- 更新了更好看的组件UI和交互动画
- FNV-1a 算法由32位换为128位
- 将token参与POW运算,增强重放攻击防护
- 新增收集行为数据分析,具备一定的人机识别访问
- 新增风险分析返回不同的计算难度
- 新增频繁请求拦截
- 轻量级的机器学习模型(行为风险得分+机器学习评分进行综合评分)
- 自动标记高风险IP
One-Pow官网:https://cha.eta.im
本项目 CDN 加速及安全防护由 Tencent EdgeOne 赞助:EdgeOne 提供长期有效的免费套餐,包含不限量的流量和请求,覆盖中国大陆节点,且无任何超额收费,感兴趣的朋友可以点击下面的链接领取
亚洲最佳CDN、边缘和安全解决方案 - Tencent EdgeOne
