主页 > imtoken钱包下载安卓教程 > 一种基于比特币或其分支区块链的身份管理方法

一种基于比特币或其分支区块链的身份管理方法

imtoken钱包下载安卓教程 2023-01-16 23:05:29

一种基于比特币或其分支区块链的身份管理方法

1.本发明涉及公共区块链身份管理技术领域,具体涉及一种基于比特币或其分支区块链的身份管理方法。

背景技术:

2.如今,随着互联网技术的飞速发展,网络环境日趋复杂,个人数据信息的准确性直接决定了网络通信的质量。质量和安全性,保证个人数据身份信息的真实性、可靠性和可信度,是网络通信安全共享的重要条件。区块链技术是近年来新兴的信息技术。具有公开、透明、可追溯、可追溯、不可伪造、去中心化等特点。保护具有独特的优势,可以在一定程度上保证数据的安全。在传统的公钥基础设施 pki 机制中,服务主要通过受信任的第三方证书认证中心 CA 颁发和验证证书来提供。中心化结构虽然给管理和监督带来了便利,但其安全性是存在的。存在一定的挑战。一旦中心化组织受到攻击,用户信息就会丢失或泄露。同时,不法分子会非法注册,给用户带来不可估量的损失。因此,可以利用区块链技术构建去中心化的身份信息存储管理平台,作为pki实现身份管理和认证的升级方案。

3.本发明针对现有系统集中存储的缺陷,提出一种基于比特币或其分支区块链的身份管理方法。这种方式将pki的公私钥与区块链的公私钥有机地结合在一起,利用区块链的去中心化存储将用户的身份信息存储在区块链上,无需第三方可信组织存储身份信息,避免用户身份信息丢失。本发明下的用户拥有去中心化的自主数字身份,使用户能够真正掌握自己的身份信息,提高了身份信息存储的安全性和透明度。

技术实施要素:

4.针对上述问题,本发明提出一种基于比特币或其分支区块链的身份管理方法,以解决传统数字化身份管理中心化和单点故障的问题。本发明包括以下方法和操作:

5.1)方法中的角色和功能;

6.2)注册请求构造方法;

7.3)注册信息的构造方法;

8.4)注册无效信息方法的构造;

9.5)注册请求交易的构造方法;

10.6)注册交易的构造方法;

11.7)注册无效交易的构造方法;

12.8)注册身份信息的操作方法;

13.9)注册信息作废操作方法;

14.10)注册信息的有效注册期限查询的操作方法;

15.11)身份查询的操作方法。

16.进一步,如图1所示,该方法中的作用和作用包括以下描述:

17.这个方法包含三个角色,注册者(它的私钥是s,公钥是p,地址是a),注册中心(注册中心,rc,它的私钥是s

rc

,公钥是p

rc

,地址是一个

rc

) 和询问者。

18.1.1)注册人通过注册请求交易向注册中心提交注册请求。

19.1.2)注册中心验证注册人身份,通过注册交易将注册信息记录到区块链中。

20.1.3)注册者可作废注册信息。

21.1.4)查询者查询注册人的身份信息。

22.1.5)注册中心处理的第一个注册服务是自己的公钥的注册信息和注册中心的名称。

23.进一步,方法二注册请求信息的构造方法包括如下描述:

24.注册请求信息包括八项,每项使用方括号分隔,格式如下:[标识符][注册请求][注册人名称][注册人公钥][链代码][注册有效时间][注册到期时间][备注]。注册请求信息用于向注册信息中心提交注册申请。

[0025]

2.1)[identifier]为固定值,为146znkdhxm6tdrhik44yvsayow9cfholim,表示按照方法定义解析报文;

[0026]

2.2)[注册请求]为固定值,表示操作名,表示这条信息是注册请求信息;

p>

[0027]

2.3)[Registrant Name]为注册机构、部门或个人的名称;

[0028]

2.4)[Registrant public key]是标识注册者身份的公钥,对应的私钥是保密的;

[0029]

2.5)[Chaincode]可以根据需要设置为特定值或空值;

[0030]

2.6)[注册生效时间]为本次注册信息的生效时间;

[0031]

2.7)[registration Expiration time]是这个注册信息的过期时间;扩展名。

[0033]

进一步,方法3的注册信息的构造方法包括以下描述:

[0034]

注册信息包含八项,每一项用方括号分隔。

[0035]

3.1)[identifier]为固定值,为146znkdhxm6tdrhik44yvsayow9cfholim,表示按照方法定义解析报文;

[0036]

3.2)[register]为固定值,表示操作名,表示这条信息是注册信息;

[0037]

3.3)[Registrant Name]为注册机构、部门或个人的名称;

[0038]

3.4)【注册人的公钥】是标识注册人身份的公钥,对应的私钥保密;

[0039]

3.5)[Chaincode]可以根据需要设置为特定值或空值;

[0040]

3.@ >6)【注册生效时间】为本次注册信息的生效时间;

[0041]

3.7)[Registration expiry time]是这个注册信息的过期时间;

[0042]

3.8)【备注】可以设置为空值,可以保留为扩展项。

[0043]

进一步地,方法4的注册失效信息的构造方法包括如下描述:

[0044]

Registration 注销信息包括九项,每一项用方括号分隔,格式如下:[协议标识][cancel][注销注册时间][registrant name][registrant public key][chain代码][注册有效时间][注册到期时间][备注]。

[0045]

4.1)[identifier]为固定值,为146znkdhxm6tdrhik44yvsayow9cfholim,表示按照方法定义解析报文;

[0046]

4.2)[cancel]为固定值,表示操作名,表示这条信息是一条注册取消消息;

[0047]

4.3)【注册失效时间】为该注册信息的失效时间;

[0048]

4.4)[Registrant Name] 是注册商、部门或个人的姓名;

[0049]

4. 5)[Registrant public key]是标识注册者身份的公钥,对应的私钥是保密的;

[0050]

4. 6)[Chaincode]可以根据需要设置为特定值或空值;

[0051]

4.7)【注册生效时间】为本次注册信息的生效时间;

[0052]

4.8)【注册过期时间】就是这个注册信息的过期时间;

[0053]

4.9)【备注】可以设置为空,可以保留扩展。

[0054]

进一步,如图2所示,方法5的注册请求事务构造方法包括如下描述:

[0055]

注册人通过区块链向注册中心发送注册请求交易,满足以下条件:

[0056]

5.1)@ > 注册请求交易包含至少一个输入,用注册者的私钥 s 签名,该输入解锁至少一个锁定在注册者地址 a 的 p2pkh 的标准输出。

[0057]

5.2)注册请求交易至少包含两个输出。其中一个输出是标准的p2pkh输出,输出地址是注册地址a

rc

。其他输出之一是包含注册请求信息的输出。注册请求信息可以存放在输出op_return区或op_pushdata区。

[0058]

进一步,如图3所示,方法6的注册事务的构造方法包括如下描述:

[0059]

注册交易由注册中心通过区块链下发给注册人。满足以下条件:

[0060]

6.1)注册交易包含至少一个使用注册表私钥s的输入

rc

签名,解锁至少一个锁定在注册地址a的p2pkh的stdout

rc

.

[0061]

6.2)这个注册交易至少包含两个输出。其中一个输出是标准的p2pkh输出,输出地址是注册者地址a。其他输出之一是包含注册信息的输出。注册信息可以存放在输出op_return区或op_pushdata区。

[0062]

进一步,如图4所示,方法7的注册无效交易的构造方法包括以下描述:

[0063]

p>

注册无效交易由注册人通过区块链发送到注册中心。满足以下条件:

[0064]

7.1)一个注册无效交易包含至少一个用注册者的私钥s签名的输入,解锁至少一个锁定在注册者地址a的p2pkh的stdout。

[0065]

7.2)这个注册无效交易至少包含两个输出。其中一个输出是标准的p2pkh输出,输出地址是注册地址a

rc

。这些输出中的另一个是包含注册无效信息的输出。注册失效信息可以存放在输出op_return区或op_pushdata区。

[0066]

进一步,如图5所示,方法8中的身份信息注册方法包括以下步骤:

[0067]

8.1)注册者根据注册请求信息的构造方法构造注册请求信息;

[0068]

8.2)注册人根据注册请求交易的构造方法构造注册请求交易,通过区块链发送到注册中心地址,提交注册申请到注册中心。

[0069]

8.3)报名者向报名中心出示合法有效的身份证明文件;

[0070]

8.4)注册中心验证注册人身份;

[0071]

8.@ >5)如未通过身份验证,将被拒绝并终止注册;

[0072]

8.6)注册中心会在这个方法标识下查找公钥p的注册请求交易;

[0073]

8.7)如果不存在,则拒绝注册并中止;

[0074]

8.8)注册中心在该方法标识下查找公钥p的注册交易;

[0075]

8.9)如果存在,注册将被拒绝并中止;

[0076]

8.@ >10)注册中心在该方法标识下查找公钥p的注册无效交易;

[0077]

8.11) @>如果存在,注册将被拒绝并中止;

[0078]

8.12)注册中心根据注册交易的构造方法构造注册交易,通过区块链发送到注册人的地址,完成注册。

[0079]

进一步,如图8所示,方法9中的注册信息作废方法包括以下步骤:

[0080]

9.1)根据注册失效信息的构造方法构造公钥的注册失效信息;

[0081]

9. 2)根据注册失效交易的构造方法构造公钥的注册失效交易;

[0082]

9.3)注册广播注册作废交易,将交易存入区块链,注册信息作废。此外,如图所示。如图7所示,方法10的注册信息有效注册期限查询方法包括以下步骤:

[0083]

10.1)@ > 找到公钥p的注册请求交易。注册请求交易确保注册公钥归注册人所有。

[0084]

10.2)如果搜索失败,返回空值;

[0085]

10.3) 找到公钥p的第一个注册交易,注册交易查询可以保证注册人的身份已经通过注册中心认证。双重确认查询可以防止冒名顶替注册攻击。

[0086]

10.4)如果搜索失败,返回空值;

[0087]

10.5)比较注册请求信息和注册信息,除了操作名,其他项是否一致;

[0088]

1 0.6)如果不一致,返回空值;

[0089]

10.7)解析公钥p注册有效时间和注册过期时间;

[0090]

10.8)获取区块中注册交易所的时间;

[0091]

10.9)如果注册生效时间早于区块中交易所的注册时间,则更新公钥p的注册生效时间为注册交易时间区块,由于注册生效时间只是一个计划的时间,在这种方式下,注册生效时间仍然以注册交易所在区块的时间为准。

[0092]

10.10)找到公钥p的第一个注册无效交易,该方法下注册的公钥p只能有效无效一次,且该注册无效交易第一个公钥 p 是一个有效的注册失效交易。

[0093]

10.10.1)如果存在,获取公钥p的注册失效时间和该区块的注册失效交换时间;

[0094]

10.10.2)如果注册作废时间早于(小于)注册区块内交易所作废的时间,则更新注册作废时间为注册失效交换在区块中的时间。信息失效信息中,注册失效时间仅为计划时间,实际注册失效时间以注册失效交换为准。以出块时间为准,防止公钥p及时有效失效。

[0095]

10.10.3)如果注册过期时间早于公钥p的注册过期时间,更新公钥p。密钥p的注册到期时间即为注册失效时间。如果不判断,如果注册失效时间早于注册失效时间比特币交易验证流程,容易引起前向攻击。

[0096]

10.11)如果公钥p的注册有效时间等于或晚于注册有效时间,则返回空值;

[0097]

10.12)返回公钥p的注册有效时间和注册到期时间。

[0098]

进一步,如图6所示,在方法11的身份查询方法中,输入为公钥p、注册人姓名、注册中心公钥p

rc

和注册表名称。输出真假,真表示注册人在公钥p的有效注册期内是公钥p的合法拥有者;否则,反之,执行如下:

[0099]

p>

11.1)使用注册信息有效注册期限查询方法查询p的有效注册期限,判断公钥p是否在有效注册期限内。

[0100]

11.2)如果返回null,则为false;

[0101]

11.3)使用注册信息有效注册期限查询方法查询p的有效注册期限

rc

,并判断注册中心是否公钥p

rc

在有效注册期限内。

[0102]

11.4)如果返回null,则返回false;

[0103]

11.5)获取p的注册信息;

[0104]

11.6)如果注册信息中的注册人姓名不等于输入的注册人姓名,则返回false;

[0105]

11.7)得到p

rc

注册信息;

[0106]

11.8)如果注册信息是如果注册中心名称不等于输入的注册中心名称,则返回false;

[0107]

11.9)如果p的注册有效时间如果不在p的有效注册期限内

rc

,它会返回false;

[0108]

11.@ >10) 返回真。

[0109]

关于方法10注册信息有效注册时间段查询方法和方法11身份查询方法:方法11身份查询方法返回true,表示公钥p是注册人的公钥p在有效注册期限内的合法拥有者,公钥p的有效注册期限由方法10提供。在实际使用中,需要综合使用方法10和方法11来确定注册者的公钥p在某个时间点的有效性.

[0110]

关于本发明:注册中心不能造假。如果注册中心造假,则注册公钥信息不可信。

[0111]

本发明的有益效果:

[0112]

本发明针对现有技术的注册信息中心,解决中心化存储的缺陷,利用区块链技术实现身份管理,将身份信息存储在区块链上,每个用户都可以验证公钥注册信息通过区块链实现身份注册人的身份登记,避免了传统的中心化身份。托管单点故障问题。

图纸说明

[0113]

图1是基于比特币或其分支区块链的身份管理中的角色和功能流程图;

[0114]

图2是一个注册请求交易的示意图;

[0115]

图3是注册交易示意图;

[0116]

图4为注册无效交易示意图;

[0117]

图5是注册身份信息

[0118]

图6是身份查询流程图。

[0119]

图7是注册信息的有效注册时间段查询流程图;

[0120]

图 8 注册信息作废流程图。

具体实施方式

[0121]

为了使本领域技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式说明本发明提供的基于比特币或其分支区块链的身份管理方法将详细描述。在本发明中,假设注册者的公钥为p,链码为c,生成公钥p的私钥为s,p对应的唯一p2pkh地址为a,公钥为注册中心是p

rc

,生成公钥p

rc

私钥是s

rc

,它对应的唯一p2pkh地址是一个

rc

.

[0122]

第一步:注册中心在区块链上注册其注册信息,包括以下子步骤:

[0123]

p>

步骤1.1:注册中心根据注册请求信息的构造方法构造自己的注册请求信息。具体注册请求信息如下:[146znkdhxm6tdrhik44yvsayow9cfholim][注册请求][注册中心][p

rc

][][20200801000000][20300801000000][].

[0124]

步骤1.2:注册中心根据注册请求交易的构造方法构造注册请求信息。由于注册人是注册中心本身,所以注册中心的注册请求交易的输入地址必须包含一个

rc

。因为输出到注册中心,所以注册请求交易输出地址还必须包含一个

rc

.

[0125]

步骤1.3:注册中心使用方法8为公钥p注册身份信息

rc

身份注册。

[0126]

第二步:如图3注册身份信息所示,注册人通过区块链向注册中心提交注册请求,包括以下子步骤:

[0127]

步骤2.1:注册者根据注册请求信息的构造方法构造注册请求信息;注册人的注册请求信息如:[146znkdhxm6tdrhik44yvsayow9cfholim][registration request][Registrant Name][p][][20200901000000][20301001000000][]。

[0128]

步骤2.2:注册人根据注册请求交易的构造方法构造注册请求交易,通过区块链发送到注册中心地址;用户注册请求交易的输入地址必须包含a,输出地址必须包含a

rc

,输出可用于向注册中心支付注册费。

[0129]

步骤2.3:注册人向注册中心出示证明其身份的法律文件;

[0130]

步骤2.4:注册中心验证注册人身份;

[0131]

步骤2.5:如果身份验证不通过,则拒绝注册;

[0132]

步骤2.6:注册中心使用方法8为注册者注册身份信息公钥p的身份注册。

[0133]

步骤3:如图4身份查询流程图所示,查询者可以通过注册中心或区块链查询公钥p的注册信息,包括以下子步骤:

[0134]

步骤3.1:查询列表这里使用方法10 注册信息有效注册时间段查询方法查询要查询的公钥p的有效性注册时间段;

[0135]

步骤3.2:查询者使用方法11身份查询方法比特币交易验证流程,在其有效注册时间内查询公钥p的身份信息的合法注册人;

[0136]

第四步:当注册人由于某种原因需要提前取消注册公钥p时,可以随时使用取消注册信息的操作。 如图 6 中的注册信息作废流程图所示,注册人可以通过区块链将其注册信息作废。无需操作注册中心。公钥一旦失效,将失去认证作用,无法再次注册。撤销注册信息包括以下子步骤:

[0137]

步骤4.1:根据注册撤销信息的构造方法构造公钥的注册撤销信息。注册取消信息如:[146znkdhxm6tdrhik44yvsayow9cfholim][cancel][20200801000000][registrant name][p][][20200901000000][20301001000000][]

[0138]

步骤4.2:根据注册失效交易的构造方法,构造公钥的注册失效交易。注册无效交易包含至少一个使用注册人的私钥s的签名,该签名解锁了锁定在无效注册人地址a的p2pkh的至少一个标准输出。注册无效交易的一个输出地址是注册中心地址a

rc

,另一个输出是包含注册失效信息的输出,可以存放在输出op_return区或op_pushdata区。

[0139]

步骤4.3:注册人广播注册作废交易,将交易存入区块链,并作废注册人的注册信息。

[0140]

以上列举的一系列详细说明,仅为对本发明可行实施例的具体说明,并不用于限制本发明,本发明的保护范围应包含在本发明的保护范围之内在不背离本发明技术所创造的等效方法或修改的情况下发明。