2 Commits

Author SHA1 Message Date
xfy911
a198b089b9 Phase 5: ACME HTTP-01 挑战响应路由 + 编译警告修复
Some checks failed
CI / build (push) Has been cancelled
- 修复 config.c 中 FastCGI 配置的 strncpy 截断警告(改用 snprintf)
- 新增 acme_get_keyauth(): 计算 RFC 8555 HTTP-01 keyAuthorization
- server_context 新增 acme_ctx_t 字段,server_destroy 中自动释放
- 新增 ACME 挑战端点路由: /.well-known/acme-challenge/<token>
- 新增 test_acme_get_keyauth 单元测试(9 项 ACME 测试全部通过)
- 编译零警告(仅外部 coco 库 GNU-stack linker 提示)
2026-06-16 09:25:45 +08:00
xfy911
4a6e7adc17 Phase 5 — ACME / Let's Encrypt 自动证书模块骨架
Some checks failed
CI / build (push) Failing after 30s
- 新增 acme.h / acme.c:ACME RFC 8555 协议客户端基础实现
  - JWS ES256 签名(账户密钥管理)
  - ACME 目录发现、Nonce 管理
  - 账户创建/复用(newAccount)
  - 订单创建(newOrder)
  - 授权获取与挑战响应(HTTP-01)
  - 订单轮询与证书下载
  - 一键签发封装 acme_issue_certificate()
- 新增 tests/unit/test_acme.c:9 项单元测试
- Makefile:添加 acme.c 编译、-lcurl 链接、test_acme 测试规则

当前状态:ACME 骨架完成,JWS 签名需后续完善以通过
Let's Encrypt 验证。下阶段完成 HTTP-01 挑战服务器集成。
2026-06-16 03:25:47 +08:00