授权码由独立签发工具用 Ed25519 私钥签名,客户站点只嵌公钥,客户自己算不出新码。
角色分工
| 谁 | 拿什么 | 干什么 |
|---|---|---|
| 你(发行方) | 私钥 + 签发工具 | 按「授权域名 + 授权期限」出码 |
| 客户站点 | 公钥 | 校验授权码,通过就放行 |
私钥不出你的机器,客户手里只有公钥——他拿不到私钥,就算不出新的授权码,也没法把授权期限改成「永久」。
签发流程
- 在签发工具里填客户域名(支持泛域名,例如
*.example.com)与到期日; - 生成授权码,发给客户;
- 客户在站点的授权页面粘贴提交,目录里生成授权记录文件;
- 换域名或到期,校验不通过,自动回到授权页面。
环境要求
只有用到这个功能时才需要 PHP 的 sodium 扩展:PHP 7.2 及以上随包自带,宝塔面板可直接勾选。真遇到没开 sodium 的老环境,授权页会直接写明原因。