基于本体区块链和ONT ID规范建立全球KYC应用服务

基本概述

ONTO 可复用 KYC 服务基于本体区块链技术,能够提供易用、安全的KYC (know-your-customer)服务。 目前,ONTO 已有越来越多的信任锚加入,为用户提供如 CFCA、Identity Mind等认证。

在 ONTO 上完成认证并获得区块链证书后,您可在不同的应用领域使用,例如医疗、数字广告、游戏、数字身份、数字内容、视频影音、物联网等等。

应用基于本体 DID协议体系,包括以下技术标准:

场景方接入标准

https://github.com/ontio/ontology-DID/blob/master/docs/cn/thirdparty_specification_cn.md

本体分布式身份框架(ONTID)

https://github.com/ontio/ontology-DID

可信声明协议规范

https://github.com/ontio/ontology-DID/blob/master/docs/en/claim_spec.md

用户视角流程展现

https://onto.app/download

场景方接入标准

场景方作为本体信任生态中使用认证服务的一方,结合本体信任生态中提供认证服务的TrustAnchor,可基于可信声明、区块链来完成对现实中有关人、财、物、事的认证。

交互流程说明

A1:场景方到 OntPass 平台注册相关基本信息及回调接口,并选择认证模板。然后按照 OntPass 平台二维码规范生成场景方的认证二维码。

A2,A3:用户使用 ONTO App 扫描场景方出示的二维码,获取到二维码信息后向 OntPass 发起认证请求。OntPass 平台进行二维码校验。

A4:二维码校验成功,OntPass 返回场景方注册时的基本信息和认证需求到 ONTO App。

A5:用户在 ONTO App 上进行授权决策。选择场景方所需的可信声明做授权确认,将加密后的可信声明发送到 OntPass。OntPass 触发智能合约进行资产交割。

A6:OntPass 通过场景方注册的回调接口,将用户加密后的的可信声明透传到场景方,场景方可使用自己 OntID对应的私钥进行解密,获取用户可信声明。

A7:场景方可通过区块链验证用户出示的可信声明的完整性和有效性。

接入步骤

1. OntPass 平台注册

作为本体信任生态中认证服务的使用方,场景方首先需要到 OntPass 平台进行注册。

OntPass 根据本体生态中各种认证服务提供商 TrustAnchor 可签发的可信声明,提供了不同类型的标准认证模板(可参考 OntPass 认证模板章节)。场景方注册时可根据自身业务场景选择所需要的认证模板,然后调用场景方注册 API 进行登记注册,主要包括场景方基本信息、认证模板标识及回调接口等信息。

场景方注册API

注意:为保证数据传输安全性,场景方注册的回调接口必须是"https+"域名形式,同时场景方需保证注册的回调接口高可用性且接受 OntPass 标准的 https 的 post 请求。

2. 生成二维码

场景方需要按照 OntPass 平台的规范生成标准二维码,供 ONTO App 扫码并进行授权决策。二维码需要嵌入场景方的 OntId、语言版本标识、过期时间、认证模板(扩展项,若不填写则默认是场景方注册时登记的认证模板)以其签名。并使用 7% 低容错率标准生成二维码。

签名用于 OntPass 对场景方进行身份验证,二维码验证成功后返回给 ONTO App 用户场景方在 OntPass 平台注册时的相关信息。

标准二维码示例:

注意:二维码里的 OntId 必须是场景方在 OntPass 平台登记的 OntId,签名也需要使用该 OntId 对应的私钥按照标准 ECDSA 算法,对二维码信息进行签名。

3. 接收用户可信声明

用户使用 ONTO App 扫描场景方二维码后可进行授权决策,若确认授权则会将用户 ONTO App 上的可信声明加密传输到 OntPass,再由 OntPass 通过场景方注册的回调接口透传到场景方。

用户出示的可信声明使用场景方 OntId 绑定的公钥进行加密,保证数据传输过程中的隐私性和安全性,即只有场景方可进行解密获取原文信息。

所以场景方提供的回调地址需要接收以下 POST 请求。

4. 可信声明验证

场景方收到用户的加密可信声明后,可使用自己在 OntPass 平台登记时的 OntId 对应的私钥进行解密,并到链上验证该可信声明的完整性和有效性。具体的可信声明说明可参考附录可信声明规范,验证方法可参考官方提供的各种 SDK。

JAVA SDK验证可信声明

https://ontio.github.io/documentation/ontology_java_sdk_identity_claim_en.html#3-verify-verifiable-claim

TS SDK验证可信声明

https://ontio.github.io/documentation/ontology_ts_sdk_identity_claim_en.html#verifiable-claim-verification

OntPass 平台认证模板

基于不同 TrustAnchor 机构签发的各种可信声明,OntPass 平台定义了一些基本认证模板,适用于通用的 KYC 或社媒认证等应用场景。

场景方也可以根据自己的业务需求,自由组合各种可信声明并制定基本的授权逻辑规则,生成自定义的认证模板。这样场景方在 OntPass 平台注册或生成二维码时可灵活选择认证模板。

可信声明

认证模板

认证模板包括认证模板标识、类型、描述,对应的可信声明模板标识,授权逻辑规则,单价等信息。

经济激励

用户使用自己已获取到的可信声明在场景方进行扫码授权认证,属于一种标准数据交易模式。可由 OntPass 平台和智能合约体系来解决数据交易过程中资金分配的公平公正性及用户友好性。

Login 场景身份验证规范

在用户使用 ONT ID 在第三方 login 的场景中,第三方可按照以下标准 JSON 格式的登录请求,来简单快速验证用户是否是某个 ONT ID 的属主,完成平台身份验证。即用户使用自己的 ONT ID 绑定的私钥对请求信息进去签名,场景方收到请求信息后从链上获取该 ONT ID 用户的公钥,进行验签。根据验签结果即可验证该用户是否是某个 ONT ID 的属主,完成身份验证。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180905A1O6Y300?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励