CN115907769A - 基于区块链和自主身份识别技术的身份认证方法、系统及终端 - Google Patents
基于区块链和自主身份识别技术的身份认证方法、系统及终端 Download PDFInfo
- Publication number
- CN115907769A CN115907769A CN202211447508.7A CN202211447508A CN115907769A CN 115907769 A CN115907769 A CN 115907769A CN 202211447508 A CN202211447508 A CN 202211447508A CN 115907769 A CN115907769 A CN 115907769A
- Authority
- CN
- China
- Prior art keywords
- owner
- issuer
- identity
- private
- public
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请实施例公开了一种基于区块链和自主身份识别技术的身份认证方法、系统及终端,其中,该方法包括发行方预备步骤、拥有方生成私有身份凭证书的步骤、发行方生成私有身份凭证确认书的步骤和拥有方验证私有身份凭证确认书的步骤。上述方法、系统及终端,实现了分布式存储和识别身份信息,提高验证效率,降低交易成本及强化个人隐私保护。赋予每一个交易实体一个不可篡改、不可被伪冒的身份证明文件,利用区块链系统资料不可篡改及可溯源的特性,解决了第三方交易过程中交易资料被篡改、虚假交易、交易内容被篡改的问题,提高了安全性。同时用户可以授权使用部分个人信息,避免个人隐私信息被过度收集,可进一步地提高身份认证过程的安全性。
Description
技术领域
本申请涉及计算机网络通信的技术领域,尤其涉及一种基于区块链和自主身份识别技术的身份认证方法、系统及终端。
背景技术
区块链(Blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。由于区块链具有去中心化、信息不可篡改、自治性等特性,区块链也受到人们越来越多的重视和应用。
自主权身份主张身份控制权由实体自主控制,个人和企业可以解开对中央身份数据库的依赖。身份数据存储在自己的设备上,并将其安全、高效、自主地按需披露,提供给那些需要验证它的人。区块链上的自主身份识别是借助非对称加密,私钥拥有者可以推导出相应定的地址,作为身份的位移标识符,进而将身份属性通过智能合约进行关联。
在实际研究中发现,传统的交易方式往往泄露过多交易方的个人身份信息及难以识别交易方的真正身份等问题。尤其在需要独立第三方验证交易对方身份时,相关的验证成本高且费时。因此,如何结合区块链技术,在不过多泄露个人身份信息的情况下,保证交易过程中的高效性和安全性是亟需解决的技术问题。
发明内容
基于此,有必要针对上述技术问题,提供一种可以保证交易过程安全、高效和省时的基于区块链和自主身份识别技术的身份认证方法、系统及终端。
一种基于区块链和自主身份识别技术的身份认证方法,包括:
发行方核准拥有方的身份信息和资质信息;所述发行方生成发行方公私密钥对;所述发行方上传所述发行方公私密钥中的发行方公钥对至区块链可信系统;所述发行方定义发行方凭证书的内容;
所述拥有方在注册成为所述发行方的用户的过程中自定义密码短语并生产拥有方公私密钥对;所述拥有方上传所述拥有方公私密钥对中的拥有方公钥至所述区块链可信系统;所述拥有方以发行方定义的凭证书内容格式生成私有身份凭证书;所述拥有方加密所述私有身份凭证书并发送至所述发行方;
所述发行方解密并验证所述私有身份凭证书;若所述发行方对所述私有身份凭证书验证成功,所述发行方对所述私有身份凭证书写入自定义资讯,写入所述私有身份凭证书内自定义的参数键值对,并向所述参数键值对签署确认;所述发行方对整份私有身份凭证书签署确认并生成私有身份凭证确认书,并将所述私有身份凭证确认书以加密方式传送回所述拥有方;以及
所述拥有方解密后,对所述发行方传来的所述私有身份凭证确认书进行验证;若所述拥有方对所述私有身份凭证确认书验证成功,所述拥有方对所述私有身份凭证确认书加入内容,并以拥有方私钥进行签名并存储在所述拥有方的存储器内。
在其中一个实施例中,还包括:
所述拥有方向验证方发起可信交易要求;
所述验证方生成乱码,所述乱码和达成交易的必要条件加密传送至所述拥有方;
所述拥有方解密后,根据所述达成交易的必要条件抽取所述私有身份凭证书中相关的键值对生产相关的身份证明声明,并以所述拥有方私钥进行签名;
所述拥有方生成身份证明书,所述身份证明书包含所述拥有方对每条相关的所述身份证明声明的签名,所述发行方对每条相关的所述身份证明声明的签名,所述达成交易的必要条件相关的参数键值对,所述达成交易的必要条件相关的参数键值对的资料类别,以及所述乱码;
所述拥有方生成公有身份凭证书,所述公有身份凭证书包括所述拥有方公钥、发行方公钥、私有身份凭证确认书ID、拥有方ID、拥有方私有身份凭证确认书的签名、发行方ID和发行方私有身份凭证确认书的签名;
所述拥有方传回经所述拥有方以私钥签署及经过加密的身份证明书、拥有方公钥、发行方公钥、所述公有身份凭证书和所述乱码至所述验证方用于验证;以及
所述验证方解密后,对所述拥有方传回的所述公有身份凭证书和所述乱码进行验证;若全部验证通过,所述拥有方和所述验证方能够在可信基础上进行可信交易。
在其中一个实施例中,在所述发行方定义发行方凭证书的内容的步骤中,所述发行方凭证书的内容包括格式、数据类型、自定义的参数键值对列表、所述拥有方的交易资质和合约状态中的一种或多种。
在其中一个实施例中,在所述拥有方以所述发行方定义的凭证书内容格式生成私有身份凭证书的步骤中,所述自定义的内容格式包括拥有方ID、身份凭证书ID、身份凭证书参数键值对数列、所述拥有方对身份凭证书的签名、拥有方公钥、发行方ID、所述发行方对身份凭证书的签名和发行方公钥的一种或多种。
在其中一个实施例中,在所述发行方解密并验证所述私有身份凭证书的步骤中,所述发行方对所述私有身份凭证书进行如下验证:
对所述拥有方传来的拥有方公钥和保存在所述区块链可信系统的拥有方公钥作比较;
对所述拥有方传来的私有身份凭证书参数格式及结构和所述发行方自定义的格式和结构比较;以及
对所述私有身份凭证的签名进行验证。
在其中一个实施例中,在所述拥有方解密后,对所述发行方传来的所述私有身份凭证确认书进行验证的步骤中,所述拥有方对所述私有身份凭证确认书进行如下验证:
对所述发行方传送来的发行方公钥和保存在所述区块链可信系统的发行方公钥作比较;
对私有身份凭证确认书中发行方的签名内容哈希值进行验证;以及
对私有身份凭证确认书中每一个参数键值对发行方的签名内容哈希值进行验证。
在其中一个实施例中,在所述验证方解密后,对所述拥有方传回的所述公有身份凭证书和所述乱码进行验证的步骤中,所述验证方对所述拥有方传回的所述公有身份凭证书和所述乱码进行如下验证:
对所述拥有方发来的乱码和所述验证方保持的乱码作比较;
对所述拥有方发来的拥有方公钥和保存在所述区块链可信系统的拥有方公钥作比较;
对所述拥有方发来的发行方公钥和保存在所述区块链可信系统的发行方公钥作比较;以及
对身份证明书和公有身份凭证书内容哈希值进行验证。
本申请还提供了一种基于区块链和自主身份识别技术的身份认证系统,包括发行方、拥有方、验证方和区块链可信系统,用于执行以下步骤:
所述发行方核准所述拥有方的身份信息和资质信息;所述发行方生成发行方公私密钥对;所述发行方上传所述发行方公私密钥中的发行方公钥对至区块链可信系统;所述发行方定义发行方凭证书的内容;
所述拥有方在注册成为所述发行方的用户的过程中自定义密码短语并生产拥有方公私密钥对;所述拥有方上传所述拥有方公私密钥对中的拥有方公钥至所述区块链可信系统;所述拥有方以发行方定义的凭证书内容格式生成私有身份凭证书;所述拥有方加密所述私有身份凭证书并发送至所述发行方;
所述发行方解密并验证所述私有身份凭证书;若所述发行方对所述私有身份凭证书验证成功,所述发行方对所述私有身份凭证书写入自定义资讯,写入所述私有身份凭证书内自定义的参数键值对,并向所述参数键值对签署确认;所述发行方对整份私有身份凭证书签署确认并生成私有身份凭证确认书,并将所述私有身份凭证确认书以加密方式传送回所述拥有方;
所述拥有方解密后,对所述发行方传来的所述私有身份凭证确认书进行验证;若所述拥有方对所述私有身份凭证确认书验证成功,所述拥有方对所述私有身份凭证确认书加入内容,并以拥有方私钥进行签名并存储在所述拥有方的存储器内;
所述拥有方向所述验证方发起可信交易要求;
所述验证方生成乱码,所述乱码和达成交易的必要条件加密传送至所述拥有方;
所述拥有方解密后,根据所述达成交易的必要条件抽取所述私有身份凭证书中相关的键值对生产相关的身份证明声明,并以所述拥有方私钥进行签名;所述拥有方生成身份证明书,所述身份证明书包含所述拥有方对每条相关的所述身份证明声明的签名,所述发行方对每条相关的所述身份证明声明的签名,所述达成交易的必要条件相关的参数键值对,所述达成交易的必要条件相关的参数键值对的资料类别,以及所述乱码;所述拥有方生成公有身份凭证书,所述公有身份凭证书包括所述拥有方公钥、发行方公钥、私有身份凭证确认书ID、拥有方ID、拥有方私有身份凭证确认书的签名、发行方ID和发行方私有身份凭证确认书的签名;所述拥有方传回经所述拥有方以私钥签署及经过加密的身份证明书、拥有方公钥、发行方公钥、所述公有身份凭证书和所述乱码至所述验证方用于验证;以及
所述验证方解密后,对所述拥有方传回的所述公有身份凭证书和所述乱码进行验证;若全部验证通过,所述拥有方和所述验证方能够在可信基础上进行可信交易。
本申请还提供了一种基于区块链和自主身份识别技术的身份认证方法,包括:
拥有方在注册成为发行方的用户的过程中自定义密码短语并生产拥有方公私密钥对;所述拥有方上传所述拥有方公私密钥对至区块链可信系统;所述拥有方以所述发行方定义的凭证书内容格式生成私有身份凭证书;所述拥有方加密所述私有身份凭证书并发送至所述发行方;以及
所述拥有方对所述发行方传来的私有身份凭证确认书进行验证;若所述拥有方对所述私有身份凭证确认书验证成功,所述拥有方对所述私有身份凭证确认书加入内容,并以拥有方私钥进行签名并存储在所述拥有方的存储器内。
本申请还提供了一种基于区块链和自主身份识别技术的身份认证终端,包括处理器和存储器,所述处理器和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行所述的方法。
上述基于区块链和自主身份识别技术的身份认证方法、系统及终端,实现了分布式存储和识别身份信息,提高验证效率,降低交易成本及强化个人隐私保护。赋予每一个交易实体一个不可篡改、不可被伪冒的身份证明文件,利用区块链系统资料不可篡改及可溯源的特性,解决了第三方交易过程中交易资料被篡改、虚假交易、交易内容被篡改的问题,提高了安全性。同时用户可以授权使用部分个人信息,避免个人隐私信息被过度收集,可进一步地提高身份认证过程的安全性。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。
图1为一实施例中基于区块链和自主身份识别技术的身份认证系统的架构示意图;
图2为一实施例中基于区块链和自主身份识别技术的身份认证方法的流程图;
图3为图2所示基于区块链和自主身份识别技术的身份认证方法的交互图;
图4为图2所示基于区块链和自主身份识别技术的身份认证方法中步骤S100的流程图;
图5为图2所示基于区块链和自主身份识别技术的身份认证方法中步骤S200的流程图;
图6为图2所示基于区块链和自主身份识别技术的身份认证方法中步骤S300的流程图;
图7为图2所示基于区块链和自主身份识别技术的身份认证方法中步骤S400的流程图;
图8为又一实施例中基于区块链和自主身份识别技术的身份认证方法的流程图;
图9为一实施例中基于区块链和自主身份识别技术的身份认证终端的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
本申请的描述中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一些列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括其他没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。需要说明的是,本申请实施例中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性地”或者“例如”的任何实施例或设计方法不应被解释为比其他实施例或设计方案更优地或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。在本申请实施例中,“A和/或B”表示A和B,A或B两个含义。“A,和/或B,和/或C”表示A、B、C中的任一个,或者,表示A、B、C中的任两个,或者,表示A和B和C。
如图1所示,一实施方式中的基于区块链和自主身份识别技术的身份认证系统包括发行方10、拥有方20、验证方30和区块链可信系统40。发行方为发行身份及交易资质的一方。拥有方为拥有交易权或被服务的一方,可以理解为发行方的用户。验证方一般为服务提供方,负责验证拥有方是否真实具备交易资质的一方。成功验证拥有方的身份和交易资质后,可以和拥有方达成可信交易。一般情况下验证方独立于发行方和拥有方。区块链可信系统是采用区块链技术运行的系统,该区块链技术可以是超级帐本(Hyperledger Fabric)或其他区块链技术。
参见图2和图3,该身份认证系统用于执行基于区块链和自主身份识别技术的身份认证方法,该方法包括如下步骤:
S100,发行方核准拥有方的身份信息和资质信息;发行方生成发行方公私密钥对;发行方上传发行方公私密钥中的发行方公钥对至区块链可信系统;发行方定义发行方凭证书的内容。
S200,拥有方在注册成为发行方的用户的过程中自定义密码短语并生产拥有方公私密钥对;拥有方上传拥有方公私密钥对中的拥有方公钥至区块链可信系统;拥有方以发行方定义的凭证书内容格式生成私有身份凭证书;拥有方加密私有身份凭证书并发送至发行方。
S300,发行方解密并验证私有身份凭证书;若发行方对私有身份凭证书验证成功,发行方对私有身份凭证书写入自定义资讯,写入私有身份凭证书内自定义的参数键值对,并向参数键值对签署确认;发行方对整份私有身份凭证书签署确认并生成私有身份凭证确认书,并将私有身份凭证确认书以加密方式传送回拥有方。以及
S400,拥有方解密后,对发行方传来的私有身份凭证确认书进行验证;若拥有方对私有身份凭证确认书验证成功,拥有方对私有身份凭证确认书加入内容,并以拥有方私钥进行签名并存储在拥有方的存储器内。
传统的数位身份一般是通过身份发行方(发行方)提供的身份注册过程获取的。基于商业、信息安全等原因,身份发行方一般保存用户信息在发行方内部的中央存储系统内,并且不会公开给第三方使用。用户一般只能通过登录发行方系统或发行方向用户发行身份证明文件,如会员卡、身份证等,其身份才能被识别。然而,传统的中央储存数位身份的身份识别方案,在处理用户与独立第三方进行交易的场景下,因为独立第三方不能轻易获取用户在发行方储存的资料,往往会遇到如何有效验证用户的真实身份及其持有什么交易资质等问题。这些问题导致三方交易验证时,效率低下、验证身份过程中容易过多披露个人资料的问题。例如,居民身份证上除了标明了姓名和证件号,还包括性别、出生日期,甚至户口地址等信息,第三方交易验证时居民身份证上的一些信息不是必须知晓的。但是基于传统的认证方式,不需要被知晓的信息也会被披露给第三方。另外,如果原来的发行方不再存在,传统的身份识别方式甚至可能是无法被执行。举例,某院校出现合并或倒闭,第三方不能再验证学生学历资料。
上述基于区块链和自主身份识别技术的身份认证方法、系统及终端,实现了分布式存储和识别身份信息,提高了验证效率,降低交易成本及强化个人隐私保护。赋予每一个交易实体一个不可篡改、不可被伪冒的身份证明文件,利用区块链系统资料不可篡改及可溯源的特性,解决了第三方交易过程中交易资料被篡改、虚假交易、交易内容被篡改的问题,提高了安全性。
同时用户可以授权使用部分个人信息,避免个人隐私信息被过度收集,可进一步地提高身份认证过程的安全性。具体的,用户的身份信息和交易资质信息分布存储在发行方和拥有方,用户可按交易场景需求自主决定是否向验证方披露必要的身份信息及其拥有的交易资质,从而有效解决了个人隐私被过多泄露的问题。
具体的,步骤S100为发行方预备步骤,参见图4,在一实施例中,步骤S100包含以下子步骤:
S110,发行方核准拥有方的身份信息和资质信息。在一实施例中,拥有方可以通过发行方的身份准入系统或通过线下注册方式,获得发行方核准及分派的交易身份和相关的交易资质。
S120,发行方生成发行方公私密钥对。在一实施例中,发行方自定义或根据国密SM2椭圆曲线密码演算法推荐的参数生产素数域256位元椭圆曲线或利用ECC(Ellipticcurve cryptography,椭圆曲线密码学)PKI(Public Key Infrastructure,公钥基础设施)生产发行方公私密钥对。
在其中一个实施例中,国密SM2椭圆曲线推荐参数:
p=FFFFFFFE FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF 00000000 FFFFFFFFFFFFFFFF
a=FFFFFFFE FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF 00000000 FFFFFFFFFFFFFFFC
b=28E9FA9E 9D9F5E34 4D5A9E4B CF6509A7 F39789F5 15AB8F92DDBCBD414D940E93
n=FFFFFFFE FFFFFFFF FFFFFFFF FFFFFFFF 7203DF6B 21C6052B53BBF40939D54123
Gx=32C4AE2C 1F198119 5F990446 6A39C994 8FE30BBF F2660BE1715A4589334C74C7
Gy=BC3736A2 F4F6779C 59BDCEE3 6B692153D0A9877C C62A474002DF32E52139F0A0
发行方可以自定义SM2密码短语来生成密钥对。除此之外,发行方也可以使用其认可CA签发的ECC格式证书来获得公私密钥对,公私密钥对包括发行方公钥(IssuerPublicKey,PKissuer)和发行方私钥(IssuerSecretKey,SKissuer)。
S130,发行方上传发行方公私密钥中的发行方公钥对至区块链可信系统。该区块链可信系统可以是自建的,也可以是与合作厂商建立的,可供拥有方和验证方在往后交易过程中作验证用途。
S140,发行方定义发行方凭证书的内容。在一实施例中,发行方按业务种类需要,自定义发行方身份凭证书(Credential)内容格式、数据类型及自定义的参数键值对列表。上述参数键值对包括属性键(attributes keys)和属性值(attributes values)。该凭证书内容除了定义拥有方的发行方身份凭证书内容格式,同时也定义拥有方的交易资质,合约状态及其他必要的内容及格式。
步骤S200为拥有方生成私有身份凭证书(Private Credential,PvC)的步骤,参见图5,在一实施例中,步骤S200包含以下子步骤:
S210,拥有方在注册成为发行方的用户的过程中自定义密码短语并生产拥有方公私密钥对。在一实施例中,拥有方通过发行方授权应用(Authorized APP,APP),在注册成为用户的过程中自定义密码短语(seed phrase)并生成拥有方公私密钥对,拥有方公私密钥对包含拥有方公钥(User Public Key,PKuser)及拥有方私钥(User SecretKey,SKuser)。
S220,拥有方上传拥有方公私密钥对中的拥有方公钥至区块链可信系统。生成拥有方公私密钥对后,拥有方可以通过APP上传PKuser到区块链可信系统供发行方及验证方在日后交易过程中作验证用途。
S230,拥有方以发行方定义的凭证书内容格式生成私有身份凭证书。具体的,拥有方可以通过APP,以发行方自定义的发行方身份凭证书的内容格式生成私有身份凭证书,自定义的内容格式可以包括拥有方ID、身份凭证书ID、身份凭证书参数键值对数列、拥有方对身份凭证书的签名、拥有方公钥、发行方ID、发行方对身份凭证书的签名和发行方公钥的一种或多种。在其中一个实施例中,身份凭证书的参数键值对数列包含资料类型、参数键和值、发行方对每一个键值对的签名。拥有方对身份凭证书的签名可以为哈希值(HASH值)。
S240,拥有方加密私有身份凭证书并发送至发行方。在一实施例中,拥有方以私钥签署该私有身份凭证书并以约定的对称加密演算法(例如:AES、SM4)加密把公有身份凭证书传送到发行方后台。
步骤S300为发行方生成私有身份凭证确认书(PrivateCredentials withConfirmation,PvCwC)的步骤,参见图6,在一实施例中,步骤S300包含以下子步骤:
S310,发行方解密并验证私有身份凭证书。在一实施例中,发行方通过约定的对称加密演算法解密后,对拥有方传送到后台的私有身份凭证书进行以下验证:
对拥有方传来的拥有方公钥和保存在区块链可信系统的拥有方公钥作比较。
对拥有方传来的私有身份凭证书参数格式及结构和发行方自定义的格式和结构比较。以及
对私有身份凭证的签名进行验证。
S320,若发行方对私有身份凭证书验证成功,发行方对私有身份凭证书写入自定义资讯,写入私有身份凭证书内自定义的参数键值对,并向参数键值对签署确认。在一实施例中,在发行方对私有身份凭证书写入自定义资讯的步骤中,自定义资讯包括发行方确认ID、确认日期、私有身份凭证书状态、发行方公钥、拥有方身份资讯和拥有方交易资质中的一种或多种。进一步地,在一实施例中,自定义资讯还可以根据其他业务场景需要包括其他内容。在其中一个实施例中,发行方对PvC写入自定义资讯、写入PvC内各个自定义参数键值对,并向每一个参数的键值对进行签署确认。
S330,发行方对整份私有身份凭证书签署确认并生成私有身份凭证确认书(Private Credentials with Confirmation,PvCwC),并将私有身份凭证确认书以加密方式传送回拥有方。
步骤S400为拥有方验证私有身份凭证确认书的步骤,参见图7,在一实施例中,步骤S400包含以下子步骤:
S410,拥有方解密后,对发行方传来的私有身份凭证确认书进行验证。在一实施例中,拥有方对私有身份凭证确认书进行如下验证:
对发行方传送来的发行方公钥和保存在区块链可信系统的发行方公钥作比较。
对私有身份凭证确认书中发行方的签名内容哈希值进行验证。以及
对私有身份凭证确认书中每一个参数键值对发行方的签名内容哈希值进行验证。
S420,若拥有方对私有身份凭证确认书验证成功,拥有方对私有身份凭证确认书加入内容,并以拥有方私钥进行签名并存储在拥有方的存储器内。在一实施例中,加入内容可以包括拥有方ID和确认日期时间。
同时参见图8,在其中一个实施例中,基于区块链和自主身份识别技术的身份认证方法还包括拥有方和验证方实现可信交易步骤,具体的,还包括以下步骤:
S510,拥有方向验证方发起可信交易要求。在一实施例中,拥有方可以通过互联网方式访问验证方网店或亲访实体店并通过授权App向验证方发起可信交易要求。例如,以APP扫描实体店展示的二维码,APP后台向验证方后台发起可信交易要求。
S520,验证方生成乱码,乱码和达成交易的必要条件加密传送至拥有方。证方后台可以生成一次性非重复的256bits乱数(nonce),连同达成交易的必要条件(交易资质要求),以约定的对称加密演算法(例如:AES、SM4)加密后,传送到拥有方授权App后台。
S530,拥有方解密后,根据达成交易的必要条件抽取私有身份凭证书中相关的键值对生产相关的身份证明声明,并以拥有方私钥进行签名。在一实施例中,拥有方App后台解密后,根据交易资质要求对PvC参数内容抽取相关的键值对(attributeskeys andattributesvalues)生成相关的身份证明声明(Proof Statements),并就每条声明以拥有方私钥签名。
S540,拥有方生成身份证明书,身份证明书包含拥有方对每条相关的身份证明声明的签名,发行方对每条相关的身份证明声明的签名,达成交易的必要条件相关的参数键值对,达成交易的必要条件相关的参数键值对的资料类别,以及乱码。
S550,拥有方生成公有身份凭证书,公有身份凭证书包括拥有方公钥、发行方公钥、私有身份凭证确认书ID、拥有方ID、拥有方私有身份凭证确认书的签名、发行方ID和发行方私有身份凭证确认书的签名。
S560,拥有方传回经拥有方以私钥签署及经过加密的身份证明书、拥有方公钥、发行方公钥、公有身份凭证书和乱码至验证方用于验证。以及
S570,验证方解密后,对拥有方传回的公有身份凭证书和乱码进行验证。若全部验证通过,拥有方和验证方能够在可信基础上进行可信交易。在一实施例中,在验证方解密后,对拥有方传回的公有身份凭证书和乱码进行验证的步骤中,验证方对拥有方传回的公有身份凭证书和乱码进行如下验证:
对拥有方发来的乱码和验证方保持的乱码作比较。
对拥有方发来的拥有方公钥和保存在区块链可信系统的拥有方公钥作比较。
对拥有方发来的发行方公钥和保存在区块链可信系统的发行方公钥作比较。
以及
对身份证明书和公有身份凭证书内容哈希值进行验证。
如以上各项均正确,验证方验证身份证明书和公有身份凭证书上拥有方和发行方的签名。如正确,验证方根据达成交易资质的必要条件对所有身份资质声明验证拥有方签名及比较条件结果。如全部通过,拥有方与验证方能在可信基础上按需进行可信交易。
如图9所示,一实施例中的基于区块链和自主身份识别技术的身份认证终端50,包括处理器501和存储器502,处理器和存储器相互连接,其中,存储器用于存储计算机程序,计算机程序包括程序指令,处理器被配置用于调用程序指令,执行上述基于区块链和自主身份识别技术的身份认证方法中拥有方执行的步骤。
在本申请的实施例中,基于区块链及自主身份识别实现分布式数字身份认证。拥有方预先通过发行方独立的准入系统,注册成为用户并获得相应的交易资质,再通过发行方授权应用生成公私密钥对及私有身份凭证书。发行方验证拥有方公钥及凭证书的格式及内容,加入使用者交易资质内容及其他必要数据,并就每项数据以私钥签署,并生成私有身份凭证确认书及回传拥有方。拥有方收到私有身份凭证确认书后,加入其它必要内容,以私钥签名并生成公有身份凭证书。在交易过程中,身份验证方通过验证拥有方传送的身份证明书中,发行方及拥有方的身份来实现可信交易。本申请的实施例实现了使用者身份及其相应的交易资质分散式保存在拥有方的设备内,只有在交易中使用者自主生成身份证明书给验证方验证交易身份和相应的交易资质,有效保护使用者的个人隐私。另外,在可信交易过程中,验证方不用直接联系发行方,即使在发行方不再存在的场景中,只需在可信系统中获取发行方及拥有方的公钥即可验证拥有方的身份和交易资质。因此,本发明能提供更高效、更低成本、更安全的身份识别和交易资质验证及提供更好的个人隐私保护的解决方案。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种基于区块链和自主身份识别技术的身份认证方法,其特征在于,包括:
发行方核准拥有方的身份信息和资质信息;所述发行方生成发行方公私密钥对;所述发行方上传所述发行方公私密钥中的发行方公钥对至区块链可信系统;所述发行方定义发行方凭证书的内容;
所述拥有方在注册成为所述发行方的用户的过程中自定义密码短语并生产拥有方公私密钥对;所述拥有方上传所述拥有方公私密钥对中的拥有方公钥至所述区块链可信系统;所述拥有方以发行方定义的凭证书内容格式生成私有身份凭证书;所述拥有方加密所述私有身份凭证书并发送至所述发行方;
所述发行方解密并验证所述私有身份凭证书;若所述发行方对所述私有身份凭证书验证成功,所述发行方对所述私有身份凭证书写入自定义资讯,写入所述私有身份凭证书内自定义的参数键值对,并向所述参数键值对签署确认;所述发行方对整份私有身份凭证书签署确认并生成私有身份凭证确认书,并将所述私有身份凭证确认书以加密方式传送回所述拥有方;以及
所述拥有方解密后,对所述发行方传来的所述私有身份凭证确认书进行验证;若所述拥有方对所述私有身份凭证确认书验证成功,所述拥有方对所述私有身份凭证确认书加入内容,并以拥有方私钥进行签名并存储在所述拥有方的存储器内。
2.如权利要求1所述的方法,其特征在于,还包括:
所述拥有方向验证方发起可信交易要求;
所述验证方生成乱码,所述乱码和达成交易的必要条件加密传送至所述拥有方;
所述拥有方解密后,根据所述达成交易的必要条件抽取所述私有身份凭证书中相关的键值对生产相关的身份证明声明,并以所述拥有方私钥进行签名;
所述拥有方生成身份证明书,所述身份证明书包含所述拥有方对每条相关的所述身份证明声明的签名,所述发行方对每条相关的所述身份证明声明的签名,所述达成交易的必要条件相关的参数键值对,所述达成交易的必要条件相关的参数键值对的资料类别,以及所述乱码;
所述拥有方生成公有身份凭证书,所述公有身份凭证书包括所述拥有方公钥、发行方公钥、私有身份凭证确认书ID、拥有方ID、拥有方私有身份凭证确认书的签名、发行方ID和发行方私有身份凭证确认书的签名;
所述拥有方传回经所述拥有方以私钥签署及经过加密的身份证明书、拥有方公钥、发行方公钥、所述公有身份凭证书和所述乱码至所述验证方用于验证;以及
所述验证方解密后,对所述拥有方传回的所述公有身份凭证书和所述乱码进行验证;若全部验证通过,所述拥有方和所述验证方能够在可信基础上进行可信交易。
3.如权利要求1所述的方法,其特征在于,在所述发行方定义发行方凭证书的内容的步骤中,所述发行方凭证书的内容包括格式、数据类型、自定义的参数键值对列表、所述拥有方的交易资质和合约状态中的一种或多种。
4.如权利要求1所述的方法,其特征在于,在所述拥有方以所述发行方定义的凭证书内容格式生成私有身份凭证书的步骤中,所述自定义的内容格式包括拥有方ID、身份凭证书ID、身份凭证书参数键值对数列、所述拥有方对身份凭证书的签名、拥有方公钥、发行方ID、所述发行方对身份凭证书的签名和发行方公钥的一种或多种。
5.如权利要求1所述的方法,其特征在于,在所述发行方解密并验证所述私有身份凭证书的步骤中,所述发行方对所述私有身份凭证书进行如下验证:
对所述拥有方传来的拥有方公钥和保存在所述区块链可信系统的拥有方公钥作比较;
对所述拥有方传来的私有身份凭证书参数格式及结构和所述发行方自定义的格式和结构比较;以及
对所述私有身份凭证的签名进行验证。
6.如权利要求1所述的方法,其特征在于,在所述拥有方解密后,对所述发行方传来的所述私有身份凭证确认书进行验证的步骤中,所述拥有方对所述私有身份凭证确认书进行如下验证:
对所述发行方传送来的发行方公钥和保存在所述区块链可信系统的发行方公钥作比较;
对私有身份凭证确认书中发行方的签名内容哈希值进行验证;以及
对私有身份凭证确认书中每一个参数键值对发行方的签名内容哈希值进行验证。
7.如权利要求2所述的方法,其特征在于,在所述验证方解密后,对所述拥有方传回的所述公有身份凭证书和所述乱码进行验证的步骤中,所述验证方对所述拥有方传回的所述公有身份凭证书和所述乱码进行如下验证:
对所述拥有方发来的乱码和所述验证方保持的乱码作比较;
对所述拥有方发来的拥有方公钥和保存在所述区块链可信系统的拥有方公钥作比较;
对所述拥有方发来的发行方公钥和保存在所述区块链可信系统的发行方公钥作比较;以及
对身份证明书和公有身份凭证书内容哈希值进行验证。
8.一种基于区块链和自主身份识别技术的身份认证系统,其特征在于,包括发行方、拥有方、验证方和区块链可信系统,用于执行以下步骤:
所述发行方核准所述拥有方的身份信息和资质信息;所述发行方生成发行方公私密钥对;所述发行方上传所述发行方公私密钥中的发行方公钥对至区块链可信系统;所述发行方定义发行方凭证书的内容;
所述拥有方在注册成为所述发行方的用户的过程中自定义密码短语并生产拥有方公私密钥对;所述拥有方上传所述拥有方公私密钥对中的拥有方公钥至所述区块链可信系统;所述拥有方以发行方定义的凭证书内容格式生成私有身份凭证书;所述拥有方加密所述私有身份凭证书并发送至所述发行方;
所述发行方解密并验证所述私有身份凭证书;若所述发行方对所述私有身份凭证书验证成功,所述发行方对所述私有身份凭证书写入自定义资讯,写入所述私有身份凭证书内自定义的参数键值对,并向所述参数键值对签署确认;所述发行方对整份私有身份凭证书签署确认并生成私有身份凭证确认书,并将所述私有身份凭证确认书以加密方式传送回所述拥有方;
所述拥有方解密后,对所述发行方传来的所述私有身份凭证确认书进行验证;若所述拥有方对所述私有身份凭证确认书验证成功,所述拥有方对所述私有身份凭证确认书加入内容,并以拥有方私钥进行签名并存储在所述拥有方的存储器内;
所述拥有方向所述验证方发起可信交易要求;
所述验证方生成乱码,所述乱码和达成交易的必要条件加密传送至所述拥有方;
所述拥有方解密后,根据所述达成交易的必要条件抽取所述私有身份凭证书中相关的键值对生产相关的身份证明声明,并以所述拥有方私钥进行签名;所述拥有方生成身份证明书,所述身份证明书包含所述拥有方对每条相关的所述身份证明声明的签名,所述发行方对每条相关的所述身份证明声明的签名,所述达成交易的必要条件相关的参数键值对,所述达成交易的必要条件相关的参数键值对的资料类别,以及所述乱码;所述拥有方生成公有身份凭证书,所述公有身份凭证书包括所述拥有方公钥、发行方公钥、私有身份凭证确认书ID、拥有方ID、拥有方私有身份凭证确认书的签名、发行方ID和发行方私有身份凭证确认书的签名;所述拥有方传回经所述拥有方以私钥签署及经过加密的身份证明书、拥有方公钥、发行方公钥、所述公有身份凭证书和所述乱码至所述验证方用于验证;以及
所述验证方解密后,对所述拥有方传回的所述公有身份凭证书和所述乱码进行验证;若全部验证通过,所述拥有方和所述验证方能够在可信基础上进行可信交易。
9.一种基于区块链和自主身份识别技术的身份认证方法,其特征在于,包括:
拥有方在注册成为发行方的用户的过程中自定义密码短语并生产拥有方公私密钥对;所述拥有方上传所述拥有方公私密钥对至区块链可信系统;所述拥有方以所述发行方定义的凭证书内容格式生成私有身份凭证书;所述拥有方加密所述私有身份凭证书并发送至所述发行方;以及
所述拥有方对所述发行方传来的私有身份凭证确认书进行验证;若所述拥有方对所述私有身份凭证确认书验证成功,所述拥有方对所述私有身份凭证确认书加入内容,并以拥有方私钥进行签名并存储在所述拥有方的存储器内。
10.一种基于区块链和自主身份识别技术的身份认证终端,其特征在于,包括处理器和存储器,所述处理器和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求9所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211447508.7A CN115907769A (zh) | 2022-11-18 | 2022-11-18 | 基于区块链和自主身份识别技术的身份认证方法、系统及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211447508.7A CN115907769A (zh) | 2022-11-18 | 2022-11-18 | 基于区块链和自主身份识别技术的身份认证方法、系统及终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115907769A true CN115907769A (zh) | 2023-04-04 |
Family
ID=86486474
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211447508.7A Pending CN115907769A (zh) | 2022-11-18 | 2022-11-18 | 基于区块链和自主身份识别技术的身份认证方法、系统及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115907769A (zh) |
-
2022
- 2022-11-18 CN CN202211447508.7A patent/CN115907769A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11588637B2 (en) | Methods for secure cryptogram generation | |
US11856104B2 (en) | Methods for secure credential provisioning | |
US11799668B2 (en) | Electronic identification verification methods and systems with storage of certification records to a side chain | |
US11868997B2 (en) | Secure payments using a mobile wallet application | |
CN109067539B (zh) | 联盟链交易方法、设备及计算机可读存储介质 | |
TWI497336B (zh) | 用於資料安全之裝置及電腦程式 | |
US6189098B1 (en) | Client/server protocol for proving authenticity | |
US11182783B2 (en) | Electronic payment method and electronic device using ID-based public key cryptography | |
WO2018145127A1 (en) | Electronic identification verification methods and systems with storage of certification records to a side chain | |
US10044684B2 (en) | Server for authenticating smart chip and method thereof | |
CN109347858A (zh) | 密码保护方法、身份验证方法、装置、设备及存储介质 | |
US8898799B2 (en) | Method and system for establishing trust between a service provider and a client of the service provider | |
CN113364597A (zh) | 一种基于区块链的隐私信息证明方法及系统 | |
CN111709747B (zh) | 智能终端认证方法及系统 | |
US20200311246A1 (en) | Enhanced consumer device validation | |
CN110113152B (zh) | 基于非对称密钥池对和数字签名的量子通信服务站密钥协商方法和系统 | |
CN115907769A (zh) | 基于区块链和自主身份识别技术的身份认证方法、系统及终端 | |
JP3497936B2 (ja) | 個人認証方法 | |
EP4231583A1 (en) | Methods and arrangements for establishing digital identity | |
WO2024097761A1 (en) | A method, an apparatus and a system for securing interactions between users and computer-based applications | |
TW202213131A (zh) | 以線上快速認證之認證機制啟用數位憑證之系統及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |