一种账户数据处理方法、装置、设备及存储介质制造方法及图纸

技术编号:30168946 阅读:20 留言:0更新日期:2021-09-25 15:26
本申请实施例公开了一种账户数据处理方法、装置、设备及存储介质,包括:获取第一用户终端所发送的业务处理请求;在确定业务处理请求为合法请求时,基于用户公钥生成第一用户的第一原始账户,将第一原始账户写入可信执行环境;调用可信执行环境中的可信应用程序,生成第一原始账户对应的密钥对;基于K个子密钥对中的子公钥生成与第一原始账户相关联的K个匿名账户,建立第一原始账户与K个匿名账户之间的映射哈希值;在将每个匿名账户和每个匿名账户对应的映射哈希值写入中心节点所属的区块链时,将每个匿名账户返回给第一用户终端,以使第一用户终端基于每个匿名账户执行目标业务。采用本申请实施例,可以确保用户的真实账户信息的安全性。户信息的安全性。户信息的安全性。

【技术实现步骤摘要】
一种账户数据处理方法、装置、设备及存储介质
[0001]本申请为在2020年04月13日提交中国专利局、申请号为202010285628.6、申请名称为“一种账户数据处理方法、装置、设备及存储介质”的中国专利申请的分案申请,其全部内容通过引用结合在本申请中。


[0002]本申请涉及区块链
,尤其涉及一种账户数据处理方法、装置、设备及存储介质。

技术介绍

[0003]目前,在区块链系统中进行资产转移时,会采用存储在用户终端中的真实账户进行资产转移,比如,在区块链中的用户终端A与用户终端B进行资产转移时,用户终端A可以根据自己的真实账户信息(例如,交易账户1)向用户终端B的真实账户信息(例如,交易账户2)发送某类资产信息(例如,电子票据XX等),即当用户终端A与用户终端B在完成资产交易之后,会在链上直接公开包含真实账户信息的交易记录,进而存在将用户的真实账户信息直接暴露在区块链上的风险,进而降低了用户账户信息的安全性。

技术实现思路

[0004]本申请实施例提供一种账户数据处理方法、装置、设备及存储介质,可以确保用户的真实账户信息的安全性。
[0005]本申请实施例一方面提供一种账户数据处理方法,该方法由部署有可信执行环境的中心节点执行,包括:
[0006]获取第一用户终端所发送的业务处理请求;业务处理请求携带第一用户终端对应的第一用户的用户公钥;用户公钥用于指示中心节点生成第一用户的第一原始账户;
[0007]在确定业务处理请求为合法请求时,基于用户公钥生成第一用户的第一原始账户,将第一原始账户写入可信执行环境;
[0008]调用可信执行环境中的可信应用程序,生成第一原始账户对应的密钥对;密钥对中包含K个子密钥对;K为正整数;K个子密钥对中的每个子密钥对均包含为第一原始账户所配置的子公钥;
[0009]基于K个子密钥对中的子公钥生成与第一原始账户相关联的K个匿名账户,建立第一原始账户与K个匿名账户之间的映射哈希值;
[0010]在将每个匿名账户和每个匿名账户对应的映射哈希值写入中心节点所属的区块链时,将每个匿名账户返回给第一用户终端,以使第一用户终端基于每个匿名账户执行目标业务。
[0011]本申请实施例一方面提供一种账户数据处理方法,该方法由第一用户终端执行,包括:
[0012]向部署有可信执行环境的中心节点发送业务处理请求;业务处理请求携带第一用
户终端对应的第一用户的用户公钥;用户公钥用于指示中心节点生成第一用户的第一原始账户;
[0013]接收中心节点所返回的K个匿名账户;K为正整数;K个匿名账户是由中心节点基于第一原始账户对应的K个子密钥对中的子公钥所生成的;K个子密钥对是由中心节点调用可信执行环境中的可信应用程序所生成的。
[0014]本申请实施例一方面提供一种账户数据处理装置,该装置运行于部署有可信执行环境的中心节点,包括:
[0015]获取模块,用于获取第一用户终端所发送的业务处理请求;业务处理请求携带第一用户终端对应的第一用户的用户公钥;用户公钥用于指示中心节点生成第一用户的第一原始账户;
[0016]生成模块,用于在确定业务处理请求为合法请求时,基于用户公钥生成第一用户的第一原始账户,将第一原始账户写入可信执行环境;
[0017]调用模块,用于调用可信执行环境中的可信应用程序,生成第一原始账户对应的密钥对;密钥对中包含K个子密钥对;K为正整数;K个子密钥对中的每个子密钥对均包含为第一原始账户所配置的子公钥;
[0018]建立模块,用于基于K个子密钥对中的子公钥生成与第一原始账户相关联的K个匿名账户,建立第一原始账户与K个匿名账户之间的映射哈希值;
[0019]返回模块,用于在将每个匿名账户和每个匿名账户对应的映射哈希值写入中心节点所属的区块链时,将每个匿名账户返回给第一用户终端,以使第一用户终端基于每个匿名账户执行目标业务。
[0020]其中,业务处理请求中包含与第一用户终端相关联的注册业务数据信息和用户签名信息;用户签名信息为第一用户终端通过第一用户的用户私钥对注册业务数据信息进行签名后所得到的;
[0021]该装置还包括:
[0022]验签模块,用于基于用户公钥对用户签名信息进行验签,得到验签结果;
[0023]第一确定模块,用于在验签结果指示验证成功时,确定第一用户为合法用户,且将第一用户所发起的业务处理请求确定为合法请求;
[0024]第二确定模块,用于在验签结果指示验证失败时,确定第一用户为非法用户,且将第一用户所发起的业务处理请求确定为非法请求。
[0025]其中,该生成模块包括:
[0026]第一哈希计算单元,用于在确定业务处理请求为合法请求时,通过第一哈希规则和第二哈希规则对用户公钥进行哈希计算,得到用户公钥对应的公钥哈希值;
[0027]第二哈希计算单元,用于将一个字节的地址版本号作为公钥哈希值的头部,得到第一拼接字符串,对第一拼接字符串进行哈希计算,得到第一拼接字符串对应的待处理哈希值,从待处理哈希值中获取公钥哈希值的校验值;
[0028]编码单元,用于将校验值作为第一拼接字符串的尾部,得到第二拼接字符串,对第二拼接字符串进行编码处理,将编码处理后所得到的编码字符串作为第一用户的第一原始账户,将第一原始账户写入可信执行环境。
[0029]其中,该调用模块包括:
[0030]调用单元,用于调用可信执行环境中的可信应用程序,获取可信应用程序中的私钥生成规则,根据私钥生成规则生成与第一原始账户相关联的K个子私钥;
[0031]生成单元,用于通过可信应用程序中的哈希加密规则,生成与K个子私钥分别对应的子公钥;一个子私钥对应一个子公钥,且一个子私钥与一个子公钥用于构建一个子密钥对;
[0032]第一确定单元,用于根据K个子私钥以及K个子私钥分别对应的子公钥,确定第一原始账户对应的K个子密钥对,将K个子密钥对作为第一原始账户对应的密钥对。
[0033]其中,该建立模块包括:
[0034]第一获取单元,用于从K个子密钥对中获取子密钥对M
i
;i为小于或者等于K的正整数;子密钥对M
i
中包含子公钥Y
i
和子私钥X
i
;子公钥Y
i
是由子私钥X
i
经过可信应用程序中的哈希加密规则所得到的;子私钥X
i
是由可信应用程序中的私钥生成规则所得到的;
[0035]第二确定单元,用于对子密钥对M
i
中的子公钥Y
i
进行哈希计算,得到子公钥Y
i
对应的子公钥哈希值,获取与子公钥哈希值相关联的地址字符串和校验字符串,基于地址字符串,子公钥哈希值以及校验字符串,确定子密钥对M
i
对应的匿名账户;
[0036]加密单元,用于在得到K个子密钥对中的每个子密钥对的匿名本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种账户数据处理方法,其特征在于,包括:第一用户终端向部署有可信执行环境的中心节点发送业务处理请求;所述业务处理请求携带所述第一用户终端对应的第一用户的用户公钥;所述用户公钥用于指示所述中心节点生成所述第一用户的第一原始账户;所述中心节点在确定所述业务处理请求为合法请求时,基于所述用户公钥生成所述第一原始账户,将所述第一原始账户写入所述可信执行环境;所述中心节点调用所述可信执行环境中的可信应用程序,获取所述可信应用程序中的私钥生成规则,根据所述私钥生成规则生成与所述第一原始账户相关联的K个子私钥;所述K为正整数;所述中心节点通过所述可信应用程序中的哈希加密规则,生成与所述K个子私钥分别对应的子公钥;一个子私钥对应一个子公钥,且一个子私钥与一个子公钥用于构建一个子密钥对;所述中心节点根据所述K个子私钥以及所述K个子私钥分别对应的子公钥,确定所述第一原始账户对应的K个子密钥对,将所述K个子密钥对作为所述第一原始账户对应的密钥对;所述中心节点调用所述可信应用程序中的账户生成规则,基于所述K个子密钥对中的子公钥,生成与所述第一原始账户相关联的K个匿名账户,建立所述第一原始账户与所述K个匿名账户之间的映射哈希值;所述中心节点在将每个匿名账户和所述每个匿名账户对应的映射哈希值写入所述中心节点所属的区块链时,将所述每个匿名账户返回给所述第一用户终端;所述第一用户终端在接收到所述中心节点返回的K个匿名账户时,基于所述每个匿名账户执行目标业务。2.根据权利要求1所述的方法,其特征在于,所述第一用户终端向部署有可信执行环境的中心节点发送业务处理请求,包括:所述第一用户终端对与所述第一用户终端相关联的注册业务数据信息进行哈希计算,得到所述注册业务数据信息的摘要信息;所述第一用户终端基于所述第一用户终端对应的第一用户的用户私钥,对所述注册业务数据信息的摘要信息进行签名,得到用户签名信息;所述第一用户终端基于所述用户签名信息、所述注册业务数据信息以及所述用户私钥对应的用户公钥,生成业务处理请求;所述第一用户终端向部署有可信执行环境的中心节点发送所述业务处理请求。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:所述中心节点在接收到所述业务处理请求时,基于所述用户公钥对所述用户签名信息进行验签,得到验签后的摘要信息;所述验签后的摘要信息为所述第一用户终端基于哈希算法,对所述注册业务数据信息进行哈希计算后所得到的;所述中心节点利用与所述第一用户终端相同的所述哈希算法,对所述注册业务数据信息进行哈希计算,得到哈希计算后的摘要信息;所述中心节点将所述验签后的摘要信息与所述哈希计算后的摘要信息进行比对,得到验签结果;
在所述验签结果指示验证成功时,所述中心节点确定所述第一用户为合法用户,且将所述第一用户所发起的所述业务处理请求确定为合法请求。4.根据权利要求3所述的方法,其特征在于,所述中心节点将所述验签后的摘要信息与所述哈希计算后的摘要信息进行比对,得到验签结果,包括:所述中心节点将所述验签后的摘要信息与所述哈希计算后的摘要信息进行比对;若所述验签后的摘要信息与所述哈希计算后的摘要信息不相同,则所述中心节点得到用于指示验签失败的验签结果;若所述验签后的摘要信息与所述哈希计算后的摘要信息相同,则所述中心节点得到用于指示验签成功的验签结果。5.根据权利要求1所述的方法,其特征在于,所述中心节点在确定所述业务处理请求为合法请求时,基于所述用户公钥生成所述第一用户的第一原始账户,将所述第一原始账户写入所述可信执行环境,包括:所述中心节点在确定所述业务处理请求为合法请求时,通过第一哈希规则和第二哈希规则对所述用户公钥进行哈希计算,得到所述用户公钥对应的公钥哈希值;所述第一哈希规则与所述第二哈希规则为不同的哈希规则;所述中心节点将一个字节的地址版本号作为所述公钥哈希值的头部,将所述地址版本号与所述公钥哈希值进行拼接,得到第一拼接字符串;所述中心节点对所述第一拼接字符串进行哈希计算,得到所述第一拼接字符串对应的待处理哈希值,从所述待处理哈希值中获取所述公钥哈希值的校验值;所述中心节点将所述校验值作为所述第一拼接字符串的尾部,得到第二拼接字符串,对所述第二拼接字符串进行编码处理,将编码处理后所得到的编码字符串作为所述第一用户的第一原始账户,将所述第一原始账户写入所述可信执行环境中的用户集。6.根据权利要求1所述的方法,其特征在于,所述中心节点调用所述可信应用程序中的账户生成规则,基于所述K个子密钥对中的子公钥,生成与所述第一原始账户相关联的K个匿名账户,建立所述第一原始账户与所述K个匿名账户之间的映射哈希值,包括:所述中心节点从所述K个子密钥对中获取子密钥对M
i
;i为小于或者等于K的正整数;所述子密钥对M
i
中包含子公钥Y
i
和子私钥X
i
;所述子公钥Y
i
是由所述子私钥X
i
经过所述哈希加密规则所得到的;所述子私钥X
i
是由所述私钥生成规则所得到的;所述中心节点调用所述可信应用程序中的账户生成规则,对所述子密钥对M
i
中的所述子公钥Y
i
进行哈希计算,得到所述子公钥Y
i
对应的子公...

【专利技术属性】
技术研发人员:黄焕坤杨常青蓝虎刘区城朱耿良廖志勇时一防张劲松刘攀王宗友周开班
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1