
先明确认证的含义
“kcy”在这里没有明确的技术定义。若它指常见的KYC,即了解你的客户,本文讨论的是身份核验与区块链应用的关系;若它是某项服务的专有名称,则不能据此推断该服务的认证能力或开通条件。
理解应用边界,需要分清三个问题:谁能控制账户、身份声明由谁核验、应用允许其使用哪些功能。这些问题需要分别判断,不能用一个“已认证”状态全部代替。

账户控制的边界
以太坊账户文档介绍了私钥控制的外部账户与代码控制的合约账户,并区分了账户和钱包:钱包是与账户交互的界面或应用。这些概念说明账户如何被控制,没有赋予地址天然的实名属性。

因此,创建地址或完成钱包连接,本身不足以证明现实身份。地址签名可以用于验证相应的签名权限;若要把地址与某个人的身份关联,还需要额外的核验和绑定机制。
凭证验证的边界
W3C可验证凭证模型区分发行者、持有者和验证者,并明确指出,可验证不等于声明必然真实。验证者仍需依据自身规则评估发行者、证明、主体及声明。分布式账本只是可用的数据登记机制之一。
据此,应用可以把凭证作为身份或资格判断的输入,但签名有效不能替代对发行者可信度的判断。采用可验证凭证,也不意味着必须把身份信息写入区块链。
适用条件与隐私范围
如果应用需要依据身份或资格开放某项功能,应先明确接受哪些发行者、凭证需要证明什么、有效期如何判断,以及凭证主体怎样与当前使用者关联。缺少这些条件,仅显示认证标识不能说明权限依据。
信息披露范围也应与用途对应。例如,只需确认某项资格时,可以在技术方案支持的情况下减少披露无关个人信息。凭证、地址与其他记录被持续关联,可能扩大个人活动被识别的范围;可验证能力本身不会自动消除这一问题。
常见问题
一次认证能否在所有应用通用?不能自动通用。不同验证者可以采用不同的接受规则,同一凭证是否被认可取决于接收方的政策及凭证状态。
认证通过是否代表账户安全或服务可靠?不能由此得出结论。身份核验、账户控制和合约行为分别涉及不同机制。判断认证的实际作用,应落实到它证明了什么、由谁证明,以及在哪个应用范围内被接受。