Download the PHP package sparkinzy/cap_php_server without Composer
On this page you can find all versions of the php package sparkinzy/cap_php_server. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Table of contents
Download sparkinzy/cap_php_server
More information about sparkinzy/cap_php_server
Files in sparkinzy/cap_php_server
Download sparkinzy/cap_php_server
More information about sparkinzy/cap_php_server
Files in sparkinzy/cap_php_server
Vendor sparkinzy
Package cap_php_server
Short Description A PHP implementation of Cap - a lightweight, modern open-source CAPTCHA alternative using SHA-256 proof-of-work with comprehensive testing suite
License Apache-2.0
Package cap_php_server
Short Description A PHP implementation of Cap - a lightweight, modern open-source CAPTCHA alternative using SHA-256 proof-of-work with comprehensive testing suite
License Apache-2.0
Please rate this library. Is it a good library?
Informations about the package cap_php_server
Cap PHP Server
🔐 基于PHP的现代化CAPTCHA替代方案 - 使用SHA-256工作量证明机制
一个轻量级、高性能的开源安全验证库,通过计算密集型任务来区分人类用户与自动化机器人,提供无需用户交互的安全验证方式。
✨ 核心特性
🚀 高性能架构
- SHA-256工作量证明: 基于加密学的安全验证机制
- 模块化存储: 支持内存、文件、Redis多种存储方案
- 智能限流: 内置令牌桶算法,防护DDoS攻击
- 自动清理: 过期数据智能清理,内存友好
🛡️ 企业级安全
- 防重放攻击: 一次性验证令牌机制
- 类型化异常: 完整的错误处理和分类
- 客户端IP追踪: 支持按IP限流和审计
- 安全审计: 详细的操作日志记录
🔌 开发友好
- PSR-4标准: 现代PHP自动加载规范
- 统一接口: 插件化的存储接口设计
- 向后兼容: 支持渐进式升级
- 丰富配置: 灵活的参数配置选项
📦 生产就绪
- 零核心依赖: 仅需PHP >= 7.4和JSON扩展
- 完整测试: 单元测试和集成测试覆盖
- 部署指南: 详细的Nginx生产环境配置
- 前端集成: 完美兼容cap.js前端库
高级配置示例
基本使用(推荐 - 优化版)
简化使用(兼容模式)
企业级配置
🔦 安装
Composer 安装(推荐)
手动安装
- 下载源码并解压
- 将
src/目录包含到项目中 - 手动引入所需文件
🎨 前端集成
cap.js自动化集成
手动集成示例
🌐 HTTP服务器集成
内置PHP服务器(开发环境)
HTTP服务器实现
Nginx生产环境部署
项目提供了 index.php 作为Nginx服务器的入口点,支持生产环境部署:
快速部署步骤
生产特性
- ✅ Redis持久化存储:高性能数据存储
- ✅ 完整RESTful API:标准HTTP接口
- ✅ 错误处理:生产级错误处理
- ✅ CORS支持:跨域请求配置
- ✅ 统计监控:实时性能监控
查看 DEPLOY_NGINX.md 获取完整的Nginx部署指南。
🛡️ 安全机制
验证流程
安全特性
🛡️ DDoS 防护
- 令牌桶算法: 防止突发请求
- 按IP限流: 支持每个IP独立限制
- 可配置RPS: 灵活设置请求频率
- 突发容量: 允许短时间突发访问
🔒 防重放攻击
- 一次性验证: 令牌使用后自动失效
- 时间戮验证: 所有令牌均有过期时间
- 状态追踪: 全程跟踪挑战和令牌状态
🔍 审计日志
- 操作记录: 详细的API调用日志
- IP追踪: 支持按客户端IP审计
- 错误分类: 类型化的错误信息
- 性能监控: 实时系统性能统计
⏱️ 自动过期
- 智能清理: 定期清理过期数据
- 内存优化: 防止内存泄漏和积累
- 可配置间隔: 灵活设置清理频率
⚙️ 配置选项
基础配置
| 选项 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| challengeCount | int | 3 | 挑战数量(影响计算时间) |
| challengeSize | int | 16 | 盐值大小(字节) |
| challengeDifficulty | int | 2 | 挑战难度(影响计算复杂度) |
| challengeExpires | int | 600 | 挑战过期时间(秒) |
| tokenExpires | int | 1200 | 令牌过期时间(秒) |
| tokenVerifyOnce | bool | true | 一次性令牌验证 |
安全配置
| 选项 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| rateLimitRps | int | 10 | 每秒请求限制 |
| rateLimitBurst | int | 50 | 突发容量 |
| autoCleanupInterval | int | 300 | 自动清理间隔(秒) |
存储配置
| 选项 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| storage | StorageInterface | MemoryStorage | 存储实现 |
| tokensStorePath | string | '.data/tokensList.json' | 文件存储路径 |
| redis | array | null | Redis配置参数 |
| noFSState | bool | false | 禁用文件状态 |
配置示例
基础配置
安全配置
Redis配置
📊 性能与统计
性能指标
| 指标 | 人类用户 | 机器人 | 描述 |
|---|---|---|---|
| 计算时间 | 1-3秒 | 数分钟-数小时 | 基于SHA-256的工作量证明 |
| 防止率 | <1% | >95% | 防止自动化攻击 |
| 验证成功率 | >99% | <5% | 正常用户体验 |
| API响应时间 | <100ms | <100ms | 服务器响应性能 |
系统统计
📚 API 参考
💡 提示: 使用 cap.js 0.1.26 时,客户端会自动处理
/challenge和/redeem端点,你只需要监听solve事件并使用返回的验证令牌。
POST /challenge - 创建挑战
请求:
响应:
POST /redeem - 验证解决方案
请求:
响应:
POST /validate - 验证令牌
请求:
响应:
GET /stats - 获取统计信息
请求:
响应:
错误响应
所有API在出错时都会返回统一格式的错误信息:
⚙️ 配置选项
基础配置
| 选项 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| challengeCount | int | 3 | 挑战数量(影响计算时间) |
| challengeSize | int | 16 | 盐值大小(字节) |
| challengeDifficulty | int | 2 | 挑战难度(影响计算复杂度) |
| challengeExpires | int | 600 | 挑战过期时间(秒) |
| tokenExpires | int | 1200 | 令牌过期时间(秒) |
| tokenVerifyOnce | bool | true | 一次性令牌验证 |
安全配置
| 选项 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| rateLimitRps | int | 10 | 每秒请求限制 |
| rateLimitBurst | int | 50 | 突发容量 |
| autoCleanupInterval | int | 300 | 自动清理间隔(秒) |
存储配置
| 选项 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| storage | StorageInterface | MemoryStorage | 存储实现 |
| tokensStorePath | string | '.data/tokensList.json' | 文件存储路径 |
| redis | array | null | Redis配置参数 |
| noFSState | bool | false | 禁用文件状态 |
配置示例
基础配置
安全配置
Redis配置
🔄 版本历史
v2.0.0 (2025) - 🚀 重大架构升级
- 🏗️ 架构重构: 基于现代PHP设计理念全面重构
- 🛡️ 企业安全: 新增DDoS防护、一次性验证、详细审计
- 🔌 模块化设计: 统一存储接口,支持内存/文件/Redis
- ⚡ 性能优化: 参数优化,1-3秒解决时间
- 🔄 完美兼容: 100%向后兼容,渐进式升级
v1.x - 基础版本
- 基本的CAPTCHA替代功能
- 文件和Redis存储支持
- 简单的HTTP API
🤝 贡献指南
欢迎贡献代码和建议!请查看以下指南:
开发流程
- 🐛 问题反馈: Issues
- 🔀 代码贡献: Pull Requests
- 📖 文档改进: 帮助完善文档和示例
- 🧪 测试用例: 贡献更多测试场景
开发环境设置
代码规范
- 遵循PSR-4自动加载规范
- 使用PSR-12编码标准
- 保持向后兼容性
- 添加完整的单元测试
🙏 致谢
本项目的发展得益于以下优秀项目的启发:
- @cap.js/server - 原始Cap.js项目
- go-cap - Go语言实现,架构设计参考
- PHP社区 - 丰富的生态系统和最佳实践
📄 许可证
Apache-2.0 License - 详见 LICENSE 文件
👤 作者与维护
sparkinzy
- 📧 邮箱:[email protected]
- 🐙 GitHub: @sparkinzy
- 💼 项目主页: cap_php_server
**🌟 如果这个项目对你有帮助,请给个 Star ⭐**
**💡 有问题或建议?欢迎提交 [Issue](https://github.com/sparkinzy/cap_php_server/issues)**
**🚀 现代化、高性能、安全的 CAPTCHA 替代方案 - 让验证更简单!**
Made with ❤️ by [sparkinzy](https://github.com/sparkinzy)
All versions of cap_php_server with dependencies
PHP Build Version
Package Version
Requires
php Version
>=7.4
ext-json Version *
ext-json Version *
The package sparkinzy/cap_php_server contains the following files
Loading the files please wait ...