1.一种基于区块链的身份管理方法,其特征在于,包括注册请求的构造方法、注册信息的构造方法、注册作废信息的构造方法、注册请求交易的构建方法、注册交易的构建方法、注册作废交易的构建方法、注册身份信息的方法、作废注册信息的方法、注册信息有效注册时间段查询的方法、身份查询的方法;
所述注册作废信息的构造方法:
注册作废信息包含九项,每项用中括号界定,其格式如下:[协议标识符][cancel][注册作废时间][注册者名称][注册者公钥][链码][注册生效时间][注册失效时间][备注];
其中:
[标识符]是固定值,为146zNkDhXM6tDrHiK44yVsAYow9CFhoLim,表明该条信息按照该方法的定义进行解析;
[cancel]是固定值,表示操作名称,表明该条信息是注册作废信息;
[注册作废时间]为本条注册信息的作废时间;
[注册者名称]为注册机构、部门或个人名称;
[注册者公钥]为标识注册者身份的公钥,其对应的私钥机密保存;
[链码]根据需要设置为具体值或空值;
[注册生效时间]为本条注册信息的生效时间;
[注册失效时间]为本条注册信息的失效时间;
[备注]设为空值或留作扩展项;
所述注册作废交易的构建方法:注册作废交易由注册者经区块链向注册中心发出,满足下列条件:
7.1)一个注册作废交易至少包含一个输入,该输入使用注册者私钥S签名,解锁至少一个锁定在注册者地址A上的P2PKH的标准输出;
7.2)该注册作废交易至少包含两个输出,其中一个输出是标准的P2PKH输出,输出地址是注册中心地址ARC,另一个输出是包含注册作废信息的输出,该注册作废信息存储在输出的Op_Return区域或Op_Pushdata区域;
所述注册信息有效注册时间段查询的方法按如下步骤实现:
10.1)查找公钥P的注册请求交易注册请求交易能够确保注册公钥由注册者拥有;
10.2)如果查找失败,返回空值;
10.3)查找公钥P的第一个注册交易,注册交易查询能够确保注册者身份通过了注册中心认证;双确认查询能够防止冒名注册攻击;
10.4)如果查找失败,返回空值;
10.5)比较注册请求信息与注册信息,除操作名称外,其它项是否一致;
10.6)如果不一致,返回空值;
10.7)解析公钥P的注册生效时间和注册失效时间;
10.8)获取注册交易所在区块的时间;
10.9)如果注册生效时间早于注册交易所在区块的时间,更新公钥P的注册生效时间为注册交易所在区块的时间;
10.10)查找公钥P的第一个注册作废交易,一个注册公钥P在本方法下只能被有效作废一次,第一个公钥P的注册作废交易为有效注册作废交易;
10.10.1)如果存在,获取公钥P的注册作废时间和注册作废交易所在区块的时间;
10.10.2)如果注册作废时间早于注册作废交易所在区块的时间,更新注册作废时间为注册作废交易所在区块的时间;
10.10.3)如果注册作废时间早于公钥P的注册失效时间,更新公钥P的注册失效时间为注册作废时间;
10.11)如果公钥P的注册生效时间等于或晚于注册失效时间,返回空值;
10.12)返回公钥P的注册生效时间和注册失效时间。
2.根据权利要求1所述的一种基于区块链的身份管理方法,其特征在于,所述注册请求的构造方法:注册请求信息包含八项,每项用中括号界定,其格式如下:[标识符][registration request][注册者名称][注册者公钥][链码][注册生效时间][注册失效时间][备注];其中:[标识符]是固定值,为146zNkDhXM6tDrHiK44yVsAYow9CFhoLim,表明该条信息按照该方法的定义进行解析;
[registration request]是固定值,表示操作名称,表明该条信息是注册请求信息;
[注册者名称]为注册机构、部门或个人名称;
[注册者公钥]为标识注册者身份的公钥,其对应的私钥机密保存;
[链码]根据需要设置为具体值或空值;
[注册生效时间]为本条注册信息的生效时间;
[注册失效时间]为本条注册信息的失效时间;
[备注]设为空值或留作扩展项;
所述注册信息的构造方法:
注册信息包含八项,每项用中括号界定,其格式如下:[标识符][register][注册者名称][注册者公钥][链码][注册生效时间][注册失效时间][备注];其中[标识符]是固定值,为146zNkDhXM6tDrHiK44yVsAYow9CFhoLim,表明该条信息按照该方法的定义进行解析;
[register]是固定值,表示操作名称,表明该条信息是注册信息;
[注册者名称]为注册机构、部门或个人名称;
[注册者公钥]为标识注册者身份的公钥,其对应的私钥机密保存;
[链码]根据需要设置为具体值或空值;
[注册生效时间]为本条注册信息的生效时间;
[注册失效时间]为本条注册信息的失效时间;
[备注]设为空值或留作扩展项。
3.根据权利要求1所述的一种基于区块链的身份管理方法,其特征在于,所述注册请求交易的构建方法:注册请求交易由注册者经区块链向注册中心发出,且满足下列条件
5.1)一个注册请求交易至少包含一个输入,该输入使用注册者私钥S签名,解锁至少一个锁定在注册者地址A上的P2PKH的标准输出;
5.2)该注册请求交易至少包含两个输出,其中一个输出是标准的P2PKH输出,输出地址是注册中心地址ARC,另一个输出是包含注册请求信息的输出,该注册请求信息能够存储在输出的Op_Return区域或Op_Pushdata区域。
4.根据权利要求1所述的一种基于区块链的身份管理方法,其特征在于,所述注册交易的构建方法:注册交易由注册中心经区块链向注册者发出,满足下列条件:
6.1)一个注册交易至少包含一个输入,该输入使用注册中心私钥SRC签名,解锁至少一个锁定在注册中心地址ARC上的P2PKH的标准输出;
6.2)该注册交易至少包含两个输出,其中一个输出是标准的P2PKH输出,输出地址是注册者地址A,另一个输出是包含注册信息的输出,该注册信息存储在输出的Op_Return区域或Op_Pushdata区域。
5.根据权利要求1所述的一种基于区块链的身份管理方法,其特征在于,所述注册身份信息的方法按如下步骤实现:
8.1)注册者按注册请求信息的构造方法构造注册请求信息;
8.2)注册者按注册请求交易的构建方法构建注册请求交易,通过区块链发送至注册中心地址,向注册中心提出注册申请;
8.3)注册者将证明自身身份的具有法律效力的文件出示给注册中心;
8.4)注册中心校验注册者身份;
8.5)如果不能通过身份校验,则拒绝并中止注册;
8.6)注册中心查找公钥P在本方法标识符下的注册请求交易;
8.7)如果不存在,则拒绝并中止注册;
8.8)注册中心查找公钥P在本方法标识符下的注册交易;
8.9)如果存在,则拒绝并中止注册;
8.10)注册中心查找公钥P在本方法标识符下的注册作废交易;
8.11)如果存在,则拒绝并中止注册;
8.12)注册中心按注册交易的构建方法构建注册交易,通过区块链发送到注册者地址,完成注册。
6.根据权利要求1所述的一种基于区块链的身份管理方法,其特征在于,所述作废注册信息的方法按如下步骤实现:
9.1)按照注册作废信息的构造方法构造公钥的注册作废信息;
9.2)按照注册作废交易的构建方法构建公钥的注册作废交易;
9.3)注册者广播注册作废交易,将该交易存储在区块链上,完成注册信息作废。
7.根据权利要求1所述的一种基于区块链的身份管理方法,其特征在于,所述身份查询的方法中,输入为公钥P和注册者名称,以及注册中心公钥PRC和注册中心名称,输出为真或假,真表示在公钥P的有效注册时间段内注册者是公钥P的合法拥有者,否则,反之;该方法按如下步骤实现:
11.1)使用注册信息有效注册时间段查询方法查询P的有效注册时间段判断公钥P是否在有效注册时间段内;
11.2)如果返回空值,则返回假;
11.3)使用注册信息有效注册时间段查询方法查询PRC的有效注册时间段,判断注册中心公钥PRC是否在有效注册时间段内;
11.4)如果返回空值,则返回假;
11.5)获取P的注册信息;
11.6)如果注册信息中的注册者名称不等于输入的注册者名称,则返回假;
11.7)获取PRC的注册信息;
11.8)如果注册信息中的注册中心名称不等于输入的注册中心名称,则返回假;
11.9)如果P的注册生效时间不在PRC的有效注册时间段内,则返回假;否则,返回真。