
链上记录能证明什么
区块链可信身份认证需要注意哪些问题,首先取决于系统究竟验证什么:记录是否被修改、信息由谁签发,以及当前出示者是否控制相应密钥,是不同的验证目标。
比特币开发者指南说明,区块通过哈希相连,节点按共识规则验证记录,分叉可能影响近期记录的归属。这些机制支持核查记录及其历史,但不能直接证明现实中的姓名、地址或资格真实。比特币的具体规则也不能直接套用于所有身份系统。

明确签发者的可信范围
身份认证需要说明谁核验原始信息、谁签发凭证,以及验证方为何认可该签发者。即使签名验证通过,也仍需判断签发者是否有资格证明相关属性。

例如,地址声明与资格声明可能需要不同的核验依据。系统应分别定义各类声明的认可条件,避免把同一个签名的有效性扩大解释为对所有身份属性的全面保证。
限制披露并理解隐私边界
RFC 9901描述的SD-JWT使用加盐摘要支持选择性披露:持有者可以出示部分声明,验证方核查其与签发内容是否一致。其密钥绑定机制还可通过凭证摘要、随机挑战和目标验证方信息,将出示证明关联到特定凭证与验证场景。该机制本身不要求使用区块链。
选择性披露适用于同一凭证向不同验证方提供不同字段的场景。设计时应先明确业务必需的信息,再决定哪些字段允许隐藏;凭证中始终公开的字段仍会被接收方看到。
隐藏部分字段不等于完全匿名。重复出示相同凭证或标识仍可能形成关联;直接公开个人信息也会削弱最小披露的意义。
验证凭证与验证出示者
有效的签发者签名并不足以单独证明出示者拥有相应私钥。需要抵抗凭证被复制后冒用的场景,应明确要求持有者密钥绑定,并验证持有者证明。
随机挑战需要与当前请求对应,目标验证方信息需要匹配,凭证摘要也需要校验。仅检查存在持有者签名,不能替代这些关联检查。私钥控制证明的直接含义是控制该密钥,人与密钥的对应关系仍依赖身份核验流程。
常见问题与适用条件
凭证是否必须上链?选择性披露和签名验证本身没有这一要求;采用区块链时,应说明链上记录具体承担什么证明作用。
记录入块是否即可视为最终有效?这取决于所用链的确认规则与分叉处理方式。身份系统若依赖链上状态,应明确采用哪个状态、何时接受结果,以及状态发生变化时如何处理。