一、定位与设计原则
事现鉴的立身之本是"把看不见的记录变成看得见的记录"。证书功能 = 把一段已被账本记录的验证事实,变成一张任何人可公开验证、不可篡改的凭据。它不依赖第三方 CA,用事现鉴自己的三件套自证:Gzz 编码 + 账本哈希链 + 一证一页公示。
四条铁律(与 SXJ-MAIP 协议一致):
① 只增不删——证书签发后不修改不撤销原页;有错追加撤销事件,两页并存在案。
② 零密钥签发——砺签发不持有任何密钥,防伪靠哈希链而非签名密钥;白玺追认(ratify)走账本事件,同样零密钥公示。
③ 事实锚定——每张证书必须指向一个已存在的账本事件(Gzz-E 码),无码不颁。
④ 公开可验——验证不需要登录、不需要加好友,URL 打开即验。
二、证书类型(首发 4 类)
| 类型码 | 名称 | 颁给谁 / 什么 | 签发权限(建议) |
|---|---|---|---|
CRT-PERSON | 个人贡献证书 | 共创者、志愿者、评委、开源贡献者 | 砺可颁,颁后待白玺追认 |
CRT-EVENT | 事件存证证书 | 活动/会议/赛事参与事实存证 | 砺可颁(E1-E4 证据分级) |
CRT-TASK | 任务完成证书 | Gzz 任务闭环(账本有 INIT→REC 全链) | 砺可直接颁(全自动) |
CRT-AGENT | Agent 能力证书 | Gzz-A 系列代理的履职/能力认证 | 首批试发对象,白玺签 |
三、颁发流程(五步)
Gzz-E-CERT-MINT-REC,evidence_note 携带内容哈希 sha256(持有人+类型+事由+日期) 前 16 位——证书内容从此锚进哈希链。cert/{seq}-{hash8}.html 一证一页(下方样例),部署 COS+双机;含编号、内容哈希、验证二维码。四、验证方式(三层,任何人可做)
| 层 | 怎么验 | 验的是什么 |
|---|---|---|
| ① URL 层 | 打开 hygzz.中国/cert/{编号},页面存在且编号与证书一致 | 证书真实签发并公示 |
| ② 哈希层 | 按页面公示的哈希算法对内容字段重算,比对页面哈希 | 证书内容未被篡改 |
| ③ 账本层 | 证书编号 → 账本 seq → 本地验证器跑链校验(v3.5 五元式复算) | 签发事实在账本链上不可抵赖 |
五、防伪与撤销
编号防伪:编号 = 账本 seq + hash8,由链上前块决定,不可预测、不可重放、不可批量预生成。
内容防篡改:改任何字段 → 重算哈希对不上 → 即刻识破;账本侧 evidence_note 同步对不上。
撤销:仅追加 Gzz-E-CERT-REVOKE 事件+证书页顶部加盖"已撤销"红章(原内容保留可读),呼应只增不删哲学——撤销本身也是记录。
状态机:signed(砺签发)→ ratified(白玺追认);撤销独立于状态,任何状态可撤。
六、样例证书(打样稿)
seq3243 + 公示墙存证 msg_xxx),事实清楚,特发此证。
日期:2026-09-17
内容哈希 sha256: 9f86d081884c7d65…(前 16 位入账本)
状态:signed(待追认)· 撤销记录:无
(指向账本事件页)
样例中编号/哈希为示意格式,实发以账本真实 seq 与 hash8 为准;章为 CSS/SVG 绘制,实发同构。
七、成本与边界
边际成本 ≈ 0:每张证书 = 1 条账本事件 + 1 个静态页,部署复用现有 COS+双机链路;批量颁证也只是批量铸码。
不做的事:不接第三方 CA、不做签发密钥托管、不在证书里存个人信息原文(只存事由摘要与哈希)、当前阶段不收费(远期"账单即服务"方向由白玺另行裁决)。
迁移协同:证书页生成是纯脚本逻辑,未来随自动任务迁服务器后可全自动颁证(CRT-TASK 全自动闭环)。