私钥管理方法、装置、设备和存储介质与流程

文档序号:18899044发布日期:2019-10-18 21:40阅读:191来源:国知局
私钥管理方法、装置、设备和存储介质与流程

本发明涉及计算机技术领域,特别是涉及私钥管理方法、装置、设备和存储介质。



背景技术:

随着网络技术的飞速发展和广泛应用,人们经常在互联网上利用私钥进行加密,以提高数据的安全性。例如,在区块链上,资源的安全例如发票的安全是尤为关键的,如果想对资源进行处理,例如使用资源,就需要用资源所有者的私钥进行签名,只有签名认证通过后才能上链。目前,在很多场景下存在对资源进行管理的需求,例如当管理方例如税务局发现被管理方例如企业的发票不正常时,需要对企业的发票进行管理。对资源进行管理时需要使用私钥,因此管理方的终端需要存储各个被管理方的私钥,私钥存储安全要求高,因此集中存储私钥的管理复杂度高,管理不慎容易导致各个私钥泄漏,安全性低。



技术实现要素:

基于此,有必要针对上述私钥管理复杂度高且安全性低的问题,提供一种私钥管理方法、装置、设备和存储介质。

一种资源管理方法,所述方法包括:第一管理节点获取对目标被管理用户对应的目标被管理资源进行管理的资源管理请求;获取所述第一管理节点对应的第一管理用户与所述目标被管理用户之间的管理层级关系链,以及获取所述第一管理用户对应的第一私钥衍生字符串,所述管理层级关系链以所述第一管理用户为起始用户,所述目标被管理用户为终止用户;按照所述管理层级关系链的顺序,根据所述第一私钥衍生字符串依次计算所述管理层级关系链中各个中间管理用户的私钥衍生字符串,直至得到所述目标被管理用户上一管理层级的管理用户对应的第二私钥衍生字符串;获取所述管理层级关系链中所述目标被管理用户对应的目标密钥索引,根据所述第二私钥衍生字符串以及所述目标密钥索引生成所述目标被管理用户的私钥;根据所述资源管理请求,利用所述目标被管理用户的私钥对所述目标被管理资源进行资源管理。

一种资源管理装置,所述装置包括:资源管理请求获取模块,用于获取对目标被管理用户对应的目标被管理资源进行管理的资源管理请求;管理层级关系链获取模块,用于获取第一管理节点对应的第一管理用户与所述目标被管理用户之间的管理层级关系链,以及获取所述第一管理用户对应的第一私钥衍生字符串,所述管理层级关系链以所述第一管理用户为起始用户,所述目标被管理用户为终止用户;私钥衍生字符串计算模块,用于按照所述管理层级关系链的顺序,根据所述第一私钥衍生字符串依次计算所述管理层级关系链中各个中间管理用户的私钥衍生字符串,直至得到所述目标被管理用户上一管理层级的管理用户对应的第二私钥衍生字符串;私钥生成模块,用于获取所述管理层级关系链中所述目标被管理用户对应的目标密钥索引,根据所述第二私钥衍生字符串以及所述目标密钥索引生成所述目标被管理用户的私钥;资源管理模块,用于根据所述资源管理请求,利用所述目标被管理用户的私钥对所述目标被管理资源进行资源管理。

在一些实施例中,所述私钥衍生字符串计算模块包括:密钥索引获取单元,用于获取所述管理层级关系链中各个中间管理用户对应的密钥索引;私钥衍生字符串计算单元,用于将所述第一私钥衍生字符串作为当前私钥衍生字符串,按照管理层级关系链的顺序依次获取当前中间管理用户,根据当前私钥衍生字符串以及当前中间管理用户对应的密钥索引计算得到当前中间管理用户对应的私钥衍生字符串,作为更新后的当前私钥衍生字符串;返回单元,用于返回按照管理层级关系链的顺序依次获取当前中间管理用户,计算当前中间管理用户的私钥衍生字符串作为更新后的当前私钥衍生字符串的步骤,直至得到所述目标被管理用户上一管理层级的管理用户对应的私钥衍生字符串,作为第二私钥衍生字符串。

在一些实施例中,所述私钥衍生字符串计算单元用于:对所述当前私钥衍生字符串以及当前中间管理用户对应的密钥索引进行哈希计算,根据哈希计算得到的结果得到当前中间管理用户对应的私钥衍生字符串,作为更新后的当前私钥衍生字符串。

在一些实施例中,所述私钥衍生字符串计算单元用于:对所述当前私钥衍生字符串以及当前中间管理用户对应的密钥索引进行哈希计算,得到第一哈希计算结果;从所述第一哈希计算结果中分别提取得到当前中间管理用户对应的私钥以及管理层级关系链接字符串;根据所述私钥以及所述管理层级关系链接字符串生成当前中间管理用户对应的私钥衍生字符串,作为更新后的当前私钥衍生字符串。

在一些实施例中,所述私钥生成模块用于:对所述第二私钥衍生字符串以及目标密钥索引生进行哈希计算,得到第二哈希计算结果;从所述第二哈希计算结果中提取得到所述目标被管理用户的私钥。

在一些实施例中,所述装置还包括:第一哈希计算模块,用于根据所述第二私钥衍生字符串以及所述目标密钥索引进行哈希计算,得到所述目标被管理用户的私钥;第一发送模块,用于将所述目标被管理用户的私钥发送到所述目标被管理节点。

在一些实施例中,所述装置还包括:第二哈希计算模块,用根据所述管理层级关系链的中间管理用户的密钥索引,以及所述第一私钥衍生字符串进行哈希运算,得到所述中间管理用户的私钥衍生字符串;第二发送模块,用于将所述中间管理用户的私钥衍生字符串发送到所述中间管理用户对应的中间管理节点,以使得所述中间管理节点根据所述中间管理用户的私钥衍生字符串以及所述目标密钥索引生成所述目标被管理用户的私钥,将所述目标被管理用户的私钥发送给所述目标被管理节点。

在一些实施例中,所述第一管理用户的第一私钥衍生字符串的获取模块用于:接收所述第一管理用户上一管理层级的用户对应的节点发送的私钥衍生字符串,作为所述第一管理用户的第一私钥衍生字符串;其中所述第一私钥衍生字符串是根据所述上一管理层级的用户的私钥衍生字符串以及所述第一管理用户的密钥索引生成的。

在一些实施例中,所述资源管理请求获取模块用于:获取对目标被管理资源进行资源转移的资源转移请求;所述资源管理模块用于:根据所述资源转移请求,利用所述目标被管理用户的私钥对所述目标被管理资源的资源转移数据进行数字签名,将签名后的资源转移数据发送给区块链。

在一些实施例中,所述资源转移请求为资源冻结请求,所述资源管理模块包括:资源冻结账户获取单元,用于根据所述资源冻结请求获取资源冻结账户,将所述资源冻结账户作为所述目标被管理资源的接收账户;数字签名单元,用于利用所述目标被管理用户的私钥对所述目标被管理资源的资源转移数据进行数字签名,将签名后的资源转移数据发送给区块链,以使得在所述区块链中所述目标被管理资源转移到所述接收账户。

一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述资源管理方法的步骤。

一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述资源管理方法的步骤。

上述资源管理方法、装置、计算机设备和存储介质,管理用户的管理节点持有用于衍生被管理用户的私钥的私钥衍生字符串,管理节点根据持有的私钥衍生字符串,可以按照管理层级关系链的顺序层层计算得到各个管理层级的私钥衍生字符串,直至得到直接管理目标被管理用户的管理用户的私钥衍生字符串后,利用该直接管理的管理用户的私钥衍生字符串以及被管理用户的密钥索引生成被管理用户的私钥,因此,当需要管理被管理用户的资源时,管理用户可以根据自身持有的私钥衍生字符串推导得到所管理的用户的私钥,无需预先从被管理用户对应的被管理节点处获取被管理用户的私钥并集中管理,私钥管理效率以及安全性高。

附图说明

图1为一个实施例中提供的资源管理方法的应用环境图;

图2为一个实施例中资源管理方法的流程图;

图3为一个实施例中管理层级关系链的示意图;

图4为一个实施例中按照管理层级关系链的顺序,根据第一私钥衍生字符串依次计算管理层级关系链中各个中间管理用户的私钥衍生字符串,直至得到目标被管理用户上一管理层级的管理用户对应的第二私钥衍生字符串的流程图;

图5为一个实施例中资源管理方法的流程图;

图6为一个实施例中资源管理方法的流程图;

图7为一个实施例中根据私钥得到公钥以及钱包地址的示意图;

图8为一个实施例中得到各个管理层级的用户私钥以及私钥衍生字符串的示意图;

图9为一个实施例中资源管理方法以及私钥管理方法对应的交互时序图;

图10为一个实施例中资源管理装置的结构框图;

图11为一个实施例中计算机设备的内部结构框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但除非特别说明,这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一私钥衍生字符串称为第二私钥衍生字符串,且类似地,可将第二私钥衍生字符串称为第一私钥衍生字符串。

图1为一个实施例中提供的资源管理方法的应用环境图,如图1所示,在该应用环境中包括第一管理节点110、目标被管理节点120以及区块链节点131、132、133以及134。第一管理节点110获取对目标被管理资源进行管理的资源管理请求,获取第一管理节点110对应的第一管理用户的第一私钥衍生字符串,以及获取第一管理节点对应的第一管理用户与目标被管理用户之间的管理层级关系链,根据第一私钥衍生字符串依次计算管理层级关系链中各个中间管理用户的私钥衍生字符串,直至得到目标被管理用户上一管理层级的管理用户对应的第二私钥衍生字符串,根据第二私钥衍生字符串以及目标密钥索引生成目标被管理用户的私钥,得到私钥后,根据资源管理请求,利用目标被管理用户的私钥对目标被管理资源进行资源管理。其中,目标被管理节点120是目标被管理用户对应的的节点,目标被管理资源是在区块链中可以进行交易的资源。例如,第一管理节点110可以利用得到的私钥对目标被管理资源进行资源转移操作,对目标被管理资源的资源转移操作数据进行数字签名,将资源转移操作数据的数字签名以及资源转移操作数据发送到区块链中,区块链的节点可以根据目标被管理节点的公钥对数字签名进行验证,当验证通过后,将资源转移操作数据写入区块链中,使得区块链的节点确定目标被管理资源已经由目标被管理用户的账户中转出,资源转移操作数据例如可以包括资源转出方的账户、资源接收方的账户以及资源的资源标识等。其中,第一管理节点110可以与区块链中的区块链节点131进行通信。目标被管理节点120可以与区块链中的区块链节点134进行通信,因此目标被管理节点120也可以利用目标被管理用户的私钥在区块链中对目标被管理资源进行资源转移,使得区块链的节点确定目标被管理资源已经由目标被管理用户的账户中转出。

例如,第一管理节点110可以是税务局的用户账户登录的税务管理终端,税务局的工作人员如果发现h企业(对应目标被管理节点120)的发票存在异常,例如是利用欺诈手段开具的发票,则可以在税务管理终端上触发对h企业发票的发票冻结请求,税务管理终端获取h企业用户的密钥索引以及税务局的用户账户对应的私钥衍生字符串,根据h企业用户的密钥索引以及税务局的用户账户对应的私钥衍生字符串生成h企业用户的私钥,利用h企业用户的私钥将发票从h企业的账户转移到另一个账户中,例如税务局的账户中,这样,h企业用户将无法使用该发票,相当于将h企业用户的发票冻结了。

可以理解,上述实施例仅是一种示例,并不构成对本发明实施例的限制,例如第一管理节点110以及目标被管理节点120可以是区块链中的节点,也可以是区块链之外的节点。

第一管理节点110、目标被管理节点120、区块链节点可以是独立的物理服务器或者终端,也可以是多个物理服务器构成的服务器集群,可以是提供云服务器、云数据库、云存储和cdn等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机等,但并不局限于此。

如图2所示,在一个实施例中,提出了一种资源管理方法,本实施例主要以该方法应用于上述图1中的第一管理节点110来举例说明。具体可以包括以下步骤:

步骤s202,第一管理节点获取对目标被管理用户对应的目标被管理资源进行管理的资源管理请求。

具体地,资源可以在网络中转移所有权或者使用权,例如可以是可供用户使用的数据、服务或商品等。例如资源可以为理财产品如某一基金或股票、也可以是发票、优惠券、游戏币或者数字证书等。举个实际的例子,资源可以是a企业在区块链中所拥有的发票,资源管理请求可以是对发票进行冻结,使得a企业不能使用该发票。管理用户是指有管理权限的用户,而被管理用户则是被具有管理权限的管理用户所管理的用户。第一管理节点是第一管理用户对应的节点,第一管理用户对目标被管理用户具有管理权限。目标被管理资源是第一管理用户所管理的目标被管理用户的资源,即目标被管理用户是拥有目标被管理资源的用户。例如,假设第一管理用户是广东省税务局,广东省税务局可以管理a企业,则目标被管理资源是a企业持有的发票。假设第一管理用户是a企业,a企业的子公司为b企业,则目标被管理资源是b企业持有的理财基金。假设目标被管理用户是一个企业,则目标被管理资源可以是该企业的数字证书。资源管理请求可以是第一管理节点自动触发的,也可以是其他管理节点发送的。资源管理请求中可以携带目标被管理资源的资源标识。例如,资源管理请求可以是第一管理节点对应的上一管理层级的节点发送的。税务局的工作人员也可以在发票管理客户端上登录发票管理系统,在客户端上输入目标被管理资源的资源标识,并在客户端上触发资源管理请求,发票管理客户端接收资源管理请求。

可以理解,一个用户,可以包括管理用户与被管理用户这两种角色的一种或多种。例如,假设a用户管理层级高于b用户,b用户的管理层级高于c用户,则a用户与b用户之间,a用户为管理用户,b用户为被管理用户;b用户与c用户之间,b用户为管理用户,c用户为被管理用户;a用户与c用户之间,a用户为管理用户,c用户为被管理用户。用户是否有管理权限,以及上一管理层级的管理用户是哪个用户可以是根据需要设置的,例如,在税务系统中,税务总局对应的用户账号具有最高级的管理权限,可以管理税务系统的各个用户账号,而一个省份的税务局的用户账号具有对该省管辖范围内的用户的管理权限。

步骤s204,获取第一管理节点对应的第一管理用户与目标被管理用户之间的管理层级关系链,以及获取第一管理用户对应的第一私钥衍生字符串,管理层级关系链以第一管理用户为起始用户,目标被管理用户为终止用户。

具体地,管理层级关系链是用户基于管理关系关联形成的链条。把用户看作一个节点,具有直接管理关系的节点之间进行连线,可以形成管理层级关系链。如图3所示,用户与用户间具有连接线表示具有直接管理关系,箭头的起点表示管理用户,箭头所指向的节点表示被管理用户,由图3可以看出,管理层级关系链有两条,第一条管理层级关系链为a→b→c,另一条管理层级关系链为a→d,如果图3中还包括用户e,用户e是用户c的下一管理层级的用户,假设用户e是目标被管理用户,用户b是第一管理用户,则第一管理用户与目标被管理用户之间的管理层级关系链是b→c→e。起始用户是指管理层级关系链中的第一个用户,终止用户是指管理层级关系链的最后一个用户。目标被管理用户可以是第一管理用户直接管理的用户,也可以是间接管理的用户。例如,以图3为例,假设第一管理用户是a,则目标被管理用户可以是直接管理的用户b,也可以是间接管理的用户c。

私钥衍生字符串是管理用户用于衍生所管理的用户(即被管理用户)的私钥的字符串,被管理用户的私钥是根据管理用户对应的私钥衍生字符串生成的。私钥衍生字符串在用户管理层级关系链的用户中是依次链接的,即当前管理层级的当前管理用户对应的私钥衍生字符串是根据管理层级关系链中,当前管理用户的上一管理层级的用户的私钥衍生字符串生成的,而在用户管理层级关系链中,当前管理层级的下一管理层级的用户的私钥衍生字符串,是根据当前管理用户对应的私钥衍生字符串生成的。例如可以利用管理用户的私钥衍生字符串与被管理用户的密钥索引生成目标被管理用户的私钥衍生字符。这样,通过一层层的链接,管理用户对应的节点可以得到所管理的各个管理层级的用户的私钥。管理用户对应的私钥衍生字符串是指管理用户自身持有的私钥衍生字符串,私钥衍生字符串是管理用户对应的节点保密存储的,不会进行公开。

在一些实施例中,管理用户对应的私钥衍生字符串可以是管理用户的密钥与对应的管理层级关系链接字符串组成的,可以从私钥与公钥中选择至少一个与管理层级关系链接字符串组合得到私钥衍生字符串。管理层级关系链接字符串是根据管理层级关系链的管理层级关系依次链接的字符串。即一条管理层级关系链中,相邻的具有管理关系的用户之间的管理层级关系链接字符串的关系为:被管理用户的管理层级关系链接字符串是根据管理用户的管理层级关系链接字符串生成的,根据管理用户的管理层级关系链接字符串可以生成被管理用户的管理层级关系链接字符串。

在一些实施例中,私钥衍生字符串的长度可以根据需要设置,例如可以是256位字符。管理用户对应的私钥衍生字符串存储在管理用户对应的节点中,例如,管理节点可以利用随机数进行哈希计算,将哈希计算得到的结果作为第一私钥衍生字符串,管理用户对应的节点也可以接收上一管理层级的管理节点发送的私钥衍生字符串。

步骤s206,按照管理层级关系链的顺序,根据第一私钥衍生字符串依次计算管理层级关系链中各个中间管理用户的私钥衍生字符串,直至得到目标被管理用户上一管理层级的管理用户对应的第二私钥衍生字符串。

具体地,中间管理用户是指管理层级关系链中第一管理用户以及目标被管理用户之间的用户,这些用户也对被目标被管理用户具有管理权限。由于私钥衍生字符串在管理层级关系链中是依次链接的,当前中间管理用户是指计算私钥衍生字符串时的中间管理用户。由于当私钥衍生字符串在用户管理层级关系链中是依次链接,即当前管理层级的当前中间管理用户对应的链接字符串是根据当前中间管理用户的上一管理层级的用户的私钥衍生字符串生成的,当前管理层级的用户的节点根据自身持有的私钥衍生字符串生成下一管理层级的用户的私钥衍生字符串。因此为了获取目标被管理用户的私钥,需要得到管理层级关系链中,目标被管理用户的上一管理层级的用户的私钥衍生字符串。例如,图3中,用户b的私钥衍生字符串是根据用户a的私钥衍生字符串生成的,如果用户c有私钥衍生字符串,则用户c的私钥衍生字符串是根据用户b的私钥衍生字符串生成的。这样,如果用户a的节点要生成用户c的私钥,则可以根据用户a的私钥衍生字符串生成用户b的私钥衍生字符串,再根据用户b的私钥衍生字符串生成用户c的私钥。

步骤s208,获取管理层级关系链中目标被管理用户对应的目标密钥索引,根据第二私钥衍生字符串以及目标密钥索引生成目标被管理用户的私钥。

具体地,公钥以及私钥是不对称加密方式中的密钥。私钥是用户自身拥有的密钥,不会公开。公钥是公开的密钥,可以发送给各个节点。用公钥加密的信息只能用私钥解密,用私钥进行加密的信息也只能用公钥进行解密。因此,用私钥进行数字签名的数据,其他节点可以利用用户的公钥进行身份认证,若身份认证通过,则确认数据是公钥对应的用户发送的。例如,一个信息发送节点可以利用哈希函数对要发送的发送数据进行哈希计算,生成发送数据对应的摘要信息,再利用私钥对摘要信息进行加密,得到数字签名。当信息接收节点接收到附有数字签名的发送数据时,用对应的公钥对数字签名进行解密,得到摘要信息。信息接收节点对发送数据进行哈希计算,将哈希计算得到的摘要信息与进行解密得到的摘要信息进行对比,若对比一致,则说明信息发送方确实为公钥对应的用户,且发送数据未被修改过。因此私钥代表着用户对其用户账户内的事务的管理权,拥有了私钥则可以对被管理用户的事务进行管理。例如利用私钥可以进行货币的交易、发票的开立等。

密钥索引用于索引得到密钥,一个用户可以对应一个密钥索引,为了使得根据同一个管理用户的私钥衍生字符串生成的各个被管理用户的私钥不同,一个管理用户所直接管理的各个被管理用户的密钥索引是不同的。密钥索引可以是随机分配的,也可以是根据设置的规则确定的。例如,可以按照用户注册的顺序分配密钥索引,第一个用户的密钥索引为a0001,第二个用户的密钥索引为a0002。在税务系统中,对于税务管理机构,可以将税局管理机构所在的行政区域的编码作为密钥索引,而对于企业,则可以用企业的营业执照编码或者纳税人识别号作为密钥索引。在数字证书管理系统,则可以用统一社会信用代码作为被管理用户的密钥索引。在需要生成目标被管理用户对应的私钥时,第一管理节点可以获取目标被管理用户对应的密钥索引。利用第一私钥衍生字符串得到目标被管理用户的上一管理层级的私钥衍生字符串后,根据目标被管理用户的上一管理层级的私钥衍生字符串以及目标密钥索引生成目标被管理用户的私钥。因此管理用户可以根据自身持有的第一私钥链接字符推导出所管理用户的私钥。

在一些实施例中,可以对第二私钥衍生字符串以及目标密钥索引生进行哈希计算,得到第二哈希计算结果;从第二哈希计算结果中提取得到目标被管理用户的私钥。即可以利用哈希(hash)函数对第二私钥衍生字符串以及目标被管理用户的目标密钥索引进行哈希计算,得到第二哈希计算结果。哈希算法可以把任意长度的输入通过哈希函数变换为对应的输出。对于同一个哈希函数,不同的输入,得到的输出是不同的。哈希算法可以为md5(message-digestalgorithm5,信息摘要算法5)算法和sha(securehashstandard、安全哈希标准)算法等,具体不做限制。可以从进行哈希计算输出的字符串中提取预设位置的字符串,作为私钥。预设位置例如可以是从左往右数第1到第256比特之间的字符串。又例如,从哈希计算得到的哈希字符串中提取排列顺序为奇数位的字符串作为私钥

可以理解,假设根据第一管理用户以及目标被管理用户获取的管理层级关系链中,只包括第一管理用户以及目标被管理用户,则在执行步骤s206时,直接将第一管理用户的第一私钥衍生字符串作为目标被管理用户上一管理层级的中间管理用户的私钥衍生字符串,即第二私钥衍生字符串。

在一些实施例中,第一管理用户的第一私钥衍生字符串是第一管理用户上一管理层级的用户对应的节点发送的,第一管理节点接收并存储第一私钥衍生字符串,第一管理用户上一管理层级的用户对应的节点根据自身持有的私钥衍生字符串以及第一管理用户的密钥索引生成第一管理用户的私钥衍生字符串,将第一管理用户的私钥衍生字符串发送给第一管理节点,第一管理节点接收第一管理用户上一管理层级的用户对应的节点发送的私钥衍生字符串,作为第一管理用户的第一私钥衍生字符串。第一管理用户的上一管理层级的用户是指管理层级关系链中,比第一管理用户高一个管理层级的用户。由于第一管理用户的私钥衍生字符串是上一管理层级的用户对应的节点的私钥衍生字符串以及第一管理用户的密钥索引生成后,发送给第一管理节点的,因此,第一管理用户上一管理层级的节点要获取目标被管理用户的私钥时,也可以根据自身持有的私钥衍生字符串获取目标被管理用户的私钥。例如上一管理层级的用户对应的节点可以对自身持有的私钥衍生字符串以及第一管理用户的密钥索引进行哈希计算,得到哈希计算字符串,从哈希计算字符串中提取出第一管理用户的私钥以及私钥衍生字符串。例如,将哈希计算字符串中从左往右数的前256比特的字符串作为第一管理用户的私钥,将计算得到的哈希计算字符串作为第一管理用户的私钥衍生字符串。

在一些实施例中,当第一管理用户是用户管理层级关系链的根用户时,即第一管理用户不存在上一管理层级的用户,为最高管理权限的用户时,则第一管理用户的私钥衍生字符串可以是随机数也可以是根据随机数进行哈希计算得到的。例如,假设第一管理用户是税务总局对应的用户,则税务总局可以获取一个随机数,根据随机数生成对应的私钥衍生字符串。

步骤s210,根据资源管理请求,利用目标被管理用户的私钥对目标被管理资源进行资源管理。

具体地,资源管理可以包括转移资源、对资源进行修改等。例如,修改发票对应的金额。资源转移是指将资源从目标被管理用户的账户中转出。例如,将目标被管理用户的发票转移到其他用户账户中。由于私钥代表了资源的管理权限,拥有私钥的用户可以对该账户的资源进行管理。因此,当第一管理用户的第一管理节点拥有了目标被管理用户的私钥后,则可以对目标被管理资源进行管理。

上述资源管理方法,管理用户的管理节点持有用于衍生被管理用户的私钥的私钥衍生字符串,管理节点根据持有的私钥衍生字符串,可以按照管理层级关系链的顺序层层计算得到各个管理层级的私钥衍生字符串,直至得到直接管理目标被管理用户的管理用户的私钥衍生字符串后,利用该直接管理的管理用户的私钥衍生字符串以及被管理用户的密钥索引生成被管理用户的私钥,因此,当需要管理被管理用户的资源时,管理用户可以根据自身持有的私钥衍生字符串推导得到所管理的用户的私钥,无需预先从被管理用户对应的被管理节点处获取被管理用户的私钥并集中管理,私钥管理效率以及安全性高。

在一些实施例中,如图4所示,步骤s206即按照管理层级关系链的顺序,根据第一私钥衍生字符串依次计算管理层级关系链中各个中间管理用户的私钥衍生字符串,直至得到目标被管理用户上一管理层级的管理用户对应的第二私钥衍生字符串包括:

步骤s402,获取管理层级关系链中各个中间管理用户对应的密钥索引。

具体地,当要获取目标被管理用户的密钥索引时,获取管理层级关系链中各个中间管理用户的密钥索引。

步骤s404,将第一私钥衍生字符串作为当前私钥衍生字符串,按照管理层级关系链的顺序依次获取当前中间管理用户,根据当前私钥衍生字符串以及当前中间管理用户对应的密钥索引计算得到当前中间管理用户对应的私钥衍生字符串,作为更新后的当前私钥衍生字符串。

步骤s406,返回按照管理层级关系链的顺序依次获取当前中间管理用户,计算当前中间管理用户的私钥衍生字符串作为更新后的当前私钥衍生字符串的步骤,直至得到目标被管理用户上一管理层级的管理用户对应的私钥衍生字符串,作为第二私钥衍生字符串。

具体地,当前中间管理用户是指计算私钥衍生字符串时的中间管理用户。在第一次计算时,将第一私钥衍生字符串作为当前私钥衍生字符串,将第一管理用户下一管理层级的用户作为当前管理用户,计算得到第一管理用户下一管理层级的用户的私钥衍生字符串,再将第一管理用户下一管理层级的用户的私钥衍生字符串作为更新后的当前私钥衍生字符串,这样,重复按照管理层级关系链的顺序依次获取当前中间管理用户,根据当前私钥衍生字符串以及当前中间管理用户对应的密钥索引计算得到当前中间管理用户对应的私钥衍生字符串,作为更新后的当前私钥衍生字符串的步骤,直至得到目标被管理用户上一管理层级的管理用户对应的私钥衍生字符串,作为第二私钥衍生字符串。

例如,假设用户f是目标被管理用户,用户b是第一管理用户,获取得到的管理层级关系链是b→c→e→f。如果b用户的节点需要得到f的私钥,则b用户的节点可以利用自身的私钥衍生字符串以及c用户的密钥索引生成c用户的私钥衍生字符串,b用户的节点再利用c用户的私钥衍生字符串以及e用户的密钥索引生成e用户的私钥衍生字符串,由于e用户是目标被管理用户f的上一管理层级的用户,因此b用户的节点停止计算私钥衍生字符串的步骤,执行根据e用户的私钥衍生字符串以及f用户的密钥索引得到f用户的私钥的步骤。可以理解,这里的停止计算私钥衍生字符串的步骤是针对得到f用户的私钥而言的,如果目标被管理用户还包括g,且g是管理层级关系链中f的下一管理层级的用户,则在得到e用户的私钥衍生字符串时,b用户的节点可以继续根据e用户的私钥衍生字符串以及f用户的密钥索引得到f用户的私钥衍生字符串,再执行根据f用户的私钥衍生字符串以及g用户的密钥索引得到g用户的私钥的步骤。

在一些实施例中,根据当前私钥衍生字符串以及当前中间管理用户对应的密钥索引计算得到当前中间管理用户对应的私钥衍生字符串,作为更新后的当前私钥衍生字符串包括:对当前私钥衍生字符串以及当前中间管理用户对应的密钥索引进行哈希计算,根据哈希计算得到的结果得到当前中间管理用户对应的私钥衍生字符串,作为更新后的当前私钥衍生字符串。

具体地,可以对第一私钥衍生字符串以及目标密钥索引进行哈希计算,得到哈希计算字符串,可以将计算得到的哈希字符串作为当前私钥衍生字符串,也可以根据计算得到的哈希字符串进行一定的变换,得到当前私钥衍生字符串。例如,从哈希计算字符串提取出当前中间管理用户的私钥以及管理层级关系链接字符串,根据当前中间管理用户的的私钥生成当前中间管理用户的的公钥,将公钥与管理层级关系连接字符串组成私钥衍生字符串。举个实际的例子,假设得到的哈希计算结果为512比特,则可以将哈希计算结果切分为两半,前一半作为私钥,后一半作为管理层级关系链接字符串。即可以将哈希计算字符串中从左往右数的前256个比特作为当前中间管理用户的的私钥,将哈希计算字符串中从右往左数的前256个比特作为当前中间管理用户的的管理层级关系链接字符串。利用私钥生成当前中间管理用户的的公钥,将公钥与管理层级关系连接字符串进行组合,得到当前中间管理用户的的私钥衍生字符串。

在一些实施例中,对当前私钥衍生字符串以及当前中间管理用户对应的密钥索引进行哈希计算,根据哈希计算得到的结果得到当前中间管理用户对应的私钥衍生字符串,作为更新后的当前私钥衍生字符串包括:对当前私钥衍生字符串以及当前中间管理用户对应的密钥索引进行哈希计算,得到第一哈希计算结果;从第一哈希计算结果中分别提取得到当前中间管理用户对应的私钥以及管理层级关系链接字符串;根据私钥以及管理层级关系链接字符串生成当前中间管理用户对应的私钥衍生字符串,作为更新后的当前私钥衍生字符串。

具体地,计算得到第一哈希计算结果时,可以根据预先设置的私钥提取位置从第一哈希计算结果中提取得到当前中间管理用户对应的私钥,根据预先设置的管理层级关系链接字符串提取位置从第一哈希计算结果中提取得到当前中间管理用户对应的管理层级关系链接字符串。预设位置可以根据需要设置。得到私钥以及管理层级关系链接字符串后,可以将私钥与管理层级关系链接字符串组合成私钥衍生字符串。也可以根据私钥生成公钥,将公钥与管理层级关系链接字符串组合成私钥衍生字符串。

在一些实施例中,如图5所示,资源管理方法还可以包括:

步骤s502,根据第二私钥衍生字符串以及目标密钥索引进行哈希计算,得到目标被管理用户的私钥。

步骤s504,将目标被管理用户的私钥发送到目标被管理节点。

具体地,第一管理节点可以是响应于目标被管理用户对应的目标被管理节点的私钥获取请求向目标被管理节点发送私钥,也可以是主动向目标被管理节点发送私钥。例如,当目标被管理用户第一次登录时,则管理用户对应的第一管理节点向目标被管理节点发送私钥。由于目标被管理节点也需要利用私钥对资源进行管理,因此,第一管理节点生成目标被管理用户的私钥后,可以向目标被管理节点发送目标被管理用户的私钥。举个实际的例子,得到a企业的私钥后,将a企业的私钥发送到a企业的用户账号登录的终端。在税务系统中,第一管理用户对应的节点可以在目标被管理用户注册时,根据第二私钥衍生字符串以及目标密钥索引进行哈希计算,得到目标被管理用户的私钥,将目标被管理用户的私钥发送到目标被管理节点,但第一管理用户对应的节点并不保存目标被管理用户的私钥。如果第一管理节点获取对目标被管理资源进行管理的资源管理请求,则再根据第二私钥衍生字符串以及目标密钥索引进行哈希计算,得到目标被管理用户的私钥,以利用目标被管理用户的私钥对目标被管理资源进行资源转移。利用被管理用户的密钥索引生成私钥能够保证被管理用户私钥与被管理用户的对应性,通过管理用户的私钥衍生字符串生成私钥能够使管理用户在需要获取被管理用户的私钥时,无需从被管理用户对应的被管理节点获取被管理用户的私钥,私钥管理效率安全性高。

在一些实施例中,第一管理用户对应的节点生成的是下一管理层级的私钥,可以获取下一层级的目标被管理用户的密钥索引作为目标密钥索引,根据第一私钥衍生字符串以及目标密钥索引生成目标被管理用户的私钥以及目标私钥衍生字符串,将目标被管理用户的私钥以及目标私钥衍生字符串发送到下一层级的目标被管理用户对应的节点。第一管理用户对应的下一管理层级的用户是比第一管理用户低一个管理层级的用户。例如,图3中,b用户是a用户下一管理层级的用户,c用户是b用户下一管理层级的用户,但c用户不是a用户下一管理层级的用户。目标私钥衍生字符串是目标被管理用户的私钥衍生字符串。第一管理节点根据第一私钥衍生字符串以及下一管理层级的用户的密钥索引生成下一管理层级的用户的私钥以及私钥衍生字符串,将生成的私钥以及私钥衍生字符串发送到下一管理层级的用户对应的节点,由于生成下一管理层级的私钥时,也生成了下一管理层级的私钥衍生字符串,即下一管理层级的私钥衍生字符串是由第一管理用户的节点生成的,因此,当下一管理层级的用户对应的节点利用私钥衍生字符串及密钥索引生成所管理的用户的私钥,第一管理用户的节点也可以获取得到。即一个节点可以根据自身的私钥衍生字符串推导出对应的管理层级关系链中,管理层级比该节点的管理层级低的用户的私钥。例如,再以图3为例,a用户对应的节点可以利用自身的私钥衍生字符串以及b用户的密钥索引生成b用户的私钥以及私钥衍生字符串,发送到b用户对应的节点中,b用户可以利用自身的私钥衍生字符串以及c用户的密钥索引生成c用户的私钥以及私钥衍生字符串,发送到c用户对应的节点中。这样,假设a用户的节点要获取c用户的私钥,则可以根据自身的私钥衍生字符串以及b用户的密钥索引生成b用户的私钥衍生字符串,得到b用户的私钥衍生字符串后,a用户的节点再根据b用户的私钥衍生字符串以及c用户的密钥索引生成c用户的私钥。

在一些实施例中,如图6所示,资源管理方法还包括以下步骤:

步骤s602,根据管理层级关系链的中间管理用户的密钥索引,以及第一私钥衍生字符串进行哈希运算,得到中间管理用户的私钥衍生字符串。

步骤s604,将中间管理用户的私钥衍生字符串发送到中间管理用户对应的中间管理节点,以使得中间管理节点根据中间管理用户的私钥衍生字符串以及目标密钥索引生成目标被管理用户的私钥,将目标被管理用户的私钥发送给目标被管理节点。

具体地,当目标被管理用户与第一管理用户之间存在中间管理用户时,第一管理节点利用中间管理用户的密钥索引以及自身持有的第一私钥衍生字符串进行哈希运算,得到中间管理用户的私钥衍生字符串后,发送给中间管理用户对应的中间管理节点,中间管理节点再根据该私钥衍生字符串以及目标密钥索引生成目标被管理用户的私钥,将目标被管理用户的私钥发送给目标被管理节点。其中,中间管理用户可以有一个或多个,具体不做限制。当中间管理用户为一个时,则该中间管理用户对应的中间管理节点可以对持有的私钥衍生字符串以及目标密钥索引进行哈希计算,生成目标被管理用户的私钥,将目标被管理用户的私钥发送给目标被管理节点。当中间管理用户为多个时,则中间管理节点根据持有的私钥衍生字符串以及目标密钥索引生成目标被管理用户的私钥,将目标被管理用户的私钥发送给目标被管理节点的步骤可以是这多个中间管理节点共同执行的。其中,当前中间管理用户的私钥衍生字符串是根据管理层级关系链中,当前中间管理用户的上一管理层级的用户对应的节点发送给当前中间管理用户对应的节点的,上一管理层级的用户对应的节点根据自身持有的私钥衍生字符串以及当前中间管理用户的密钥索引生成的当前中间管理用户的私钥衍生字符串,直至得到目标被管理用户上一管理层级的中间管理用户的私钥衍生字符串,由目标被管理用户上一管理层级的用户的节点根据自身持有的私钥衍生字符串以及目标密钥索引生成目标被管理用户的私钥,并发给目标被管理用户对应的节点。举个例子,管理层级关系链是b→c→e→f,第一管理用户是b,目标被管理用户是f,则中间管理用户包括c以及e。则b用户对应的节点可以利用自身的私钥衍生字符串以及c用户的密钥索引生成c用户的私钥以及私钥衍生字符串,发送到c用户对应的节点中,c用户对应的节点可以利用自身的私钥衍生字符串以及e用户的密钥索引生成e用户的私钥以及私钥衍生字符串,发送到e用户对应的节点中。由于e是目标被管理用户f上一管理层级的用户,因此e用户对应的节点根据自身的私钥衍生字符串以及f用户的密钥索引生成f用户的私钥,e用户对应的节点将f用户的私钥发送给f对应的节点。当然e用户对应的节点也可以根据自身的私钥衍生字符串以及f用户的密钥索引生成f用户的私钥以及私钥衍生字符串,将f用户的私钥以及私钥衍生字符串发送给f对应的节点。

在一些实施例中,步骤s202即获取对目标被管理资源进行管理的资源管理请求包括:获取对目标被管理资源进行资源转移的资源转移请求;步骤s210即根据资源管理请求,利用目标被管理用户的私钥对目标被管理资源进行资源管理包括:根据资源转移请求,利用目标被管理用户的私钥对目标被管理资源的资源转移数据进行数字签名,将签名后的资源转移数据发送给区块链。

具体地,资源转移请求用于请求对资源进行转移,资源转移数据是进行资源转移时产生的数据,例如资源转移数据可以包括资源的标识、转出资源的账户以及接收资源的用户账户等。接收资源的用户账户可以是资源转移请求中携带的,也可以是预先设置的,例如可以设置管理用户对目标被管理用户的资源进行转移时,转移到预设的用户账户中。资源转移操作数据在区块链中可以认为是交易记录。在区块链中,交易资源是以交易记录的形式表现的。资源的交易记录相当于一个utxo(unspenttransactionoutput,未花费交易输出)交易。在utxo交易中,包括交易输入(input)以及交易输出(output)。每笔交易都有交易输入,也就是交易的资源的来源,也都有交易输出,也就是交易的资源的去向。区块链是运行区块链技术的载体和组织方式。区块链技术,简称bt(blockchaintechnology),也被称之为分布式账本技术,是一种互联网数据库技术,其特点是去中心化、公开透明,让每个人均可参与数据库记录。区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种分布式基础架构与计算方式。在区块链中,对资源转移时,需要验证私钥。区块链中资源的所有权或者使用权是通过私钥来确立的。资源的转移交易需要有效的签名才会被存储在区块链。只有有效的私钥才能产生有效的数字签名,因此拥有私钥就相当于拥有了该用户的资源的控制权。当第一管理用户需要对目标被管理用户的资源进行转移时,触发资源转移请求,利用目标被管理用户的私钥对目标被管理资源的资源转移数据进行数字签名,将签名后的资源转移数据发送给区块链。区块链的节点可以利用用户的公钥对数字签名进行验证,如果验证通过,则确认资源转移是有效的,区块链的节点将资源转移数据存储在区块链中。可以理解,发送给区块链中可以是指发送到区块链中的一个或多个节点,可以由区块链中的一个或多个节点在区块链中对资源转移数据进行广播,以使得区块链中的节点接收到资源转移数据。

在一些实施例中,资源转移请求为资源冻结请求,根据资源转移请求,利用目标被管理用户的私钥对目标被管理资源的资源转移数据进行数字签名,将签名后的资源转移数据发送给区块链包括:根据资源冻结请求获取资源冻结账户,将资源冻结账户作为目标被管理资源的接收账户;利用目标被管理用户的私钥对目标被管理资源的资源转移数据进行数字签名,将签名后的资源转移数据发送给区块链,以使得在区块链中目标被管理资源转移到接收账户。

具体地,资源冻结请求用于请求对目标被管理资源进行冻结。冻结可以是暂时的冻结也可以是永久的冻结。资源冻结账户可以是预先设置的,也可以是资源冻结请求携带的,例如可以预先设置第一管理用户在区块链的账户是资源冻结账户。将资源冻结账户作为资源的接收账户,那么当区块链的节点对签名后的资源转移数据进行签名验证成功后,目标被管理资源从目标被管理用户的账户地址转移到资源冻结账户中的账户地址,目标被管理用户无法再使用该资源,对于目标被管理用户,相当于其拥有的资源被冻结了。

在一些实施例中,还可以接收对目标被管理资源进行解除冻结的请求,当接收到解除冻结的请求时,可以将目标被管理用户的账户作为接收账户,将目标被管理资源转移到目标被管理用户中,即将目标被管理资源解除冻结。

在一些实施例中,区块链中,资源的来源以及交易输出,可以用交易地址进行表示,例如比特币的转出方以及接收方可以用比特币的钱包地址表示。可以通过地址来接收其他用户转移过来的资源,或者通过地址向其他用户进行资源的转出。因此,第一管理节点还可以根据被管理用户的私钥得到被管理用户的交易地址,根据交易地址以及私钥进行资源转移。如图7所示,为第一管理节点根据目标被管理节点的私钥生成公钥以及交易地址的示意图。第一管理节点可以利用椭圆曲线加密算法对目标被管理节点的私钥进行运算得到目标被管理节点的公钥,公钥经过sha(securehashalgorithm,安全加密哈希)256加密算法的计算,得到的值再由ripemd(raceintegrityprimitivesevaluationmessagedigest,原始完整性校验讯息摘要)-160算法计算得到公钥哈希值,在公钥哈希值上加上“0x00”后进行两次的sha256计算,从输出中取前4个字节,将“0x00”、公钥哈希以及前4个字节依次组成的字符串进行base58编码,得到钱包地址。其中base58是一种二进制转可视字符串的算法。

如图8所示,为一个实施例中得到各个管理层级的用户私钥以及私钥衍生字符串的示意图。第一个管理层级即最高管理层级的用户对应的节点(以下称为0层节点)生成一个随机数,该随机数的长度可以根据需要设置,例如可以是128比特、256比特或者512比特。0层节点可以利用哈希算法例如sha512算法对随机数进行哈希运算,得到的哈希字符串中,从左往右数的前256个比特的字符串作为第一个管理层级的用户的私钥,从右往左数的前256个比特的字符串作为第一个管理层级的用户的管理层级关系链接字符串。0层节点还可以根据私钥生成第一个管理层级的用户的公钥,公钥与管理层级关系链接字符串组合得到第一个管理层级的用户的私钥衍生字符串,或者私钥与管理层级关系链接字符串组合得到第一个管理层级的用户的私钥衍生字符串。假设第一个管理层级的用户的下一管理层级(第二个管理层级)的用户有2个:用户1以及用户2,则0层节点可以根据第二个管理层级的用户的密钥索引、第一管理层级的用户的私钥衍生字符串生成哈希字符串,将得到的哈希字符串中从左往右数的前256个比特的字符串作为第二管理层级的用户的私钥,从右往左数的前256个比特的字符串作为第二个管理层级的用户的管理层级关系链接字符串。将第二个管理层级的用户的私钥以及管理层级关系链接字符串发送给第二个管理层级的用户对应的节点(以下称为1层节点)。1层节点根据对应的用户的私钥生成自身的公钥,第二个管理层级的用户的公钥与管理层级关系链接字符串组合得到第二个管理层级的用户的私钥衍生字符串,或者,第二个管理层级的用户的私钥与管理层级关系链接字符串组合得到第二个管理层级的用户的私钥衍生字符串。第二个管理层级的用户中,用户1还存在下一管理层级的用户,因此用户1的节点根据第三个管理层级的用户的密钥索引(即用户3的密钥索引)、用户1的私钥衍生字符串生成哈希字符串,将得到的哈希字符串中从左往右数的前256个比特的字符串作为用户3的私钥,从右往左数的前256个比特的字符串作为用户3的管理层级关系链接字符串。哈希计算算法是单向加密算法,这样,用户的节点可以推导出所管理的被管理用户的私钥,但被管理用户的节点无法推导出管理层级比它高的管理用户的私钥,保证了私钥的安全性。需要说明的是,图8中展示的是生成各个管理层级的用户的管理层级关系链接字符串以及私钥时的数据流入以及流出的示意图,并不代表生成管理层级关系链接字符串以及私钥的步骤是在该管理层级的节点中执行的。例如,生成1层节点的用户的私钥以及私钥衍生字符串是在0层节点中生成的,生成1层节点的用户的公钥可以是0层节点中生成,也可以是在1层节点中生成。

在一个实施例中,参见图9,以下以管理层级关系链为用户1→用户2→用户3→用户4为例,对本发明实施例提供的资源管理方法进行说明。其中,图9中,节点1为用户1对应的节点,节点2为用户2对应的节点,节点3为用户3对应的节点,节点4为用户4对应的节点。

1、由于节点1为根节点,因此节点1可以随机生成一个随机数,利用哈希算法计算得到用户1的私钥以及私钥衍生字符串,并存储。

2、节点1利用用户1的私钥衍生字符串以及用户2的密钥索引生成用户2的私钥以及私钥衍生字符串。

3、节点1将用户2的私钥以及私钥衍生字符串发送给节点2。

4、节点2利用用户2的私钥衍生字符串以及用户3的密钥索引生成用户3的私钥以及私钥衍生字符串。

5、节点2将用户3的私钥以及私钥衍生字符串发送给节点3。

6、节点3利用用户3的私钥衍生字符串以及用户4的密钥索引生成用户4的私钥以及私钥衍生字符串。

7、节点3将用户4的私钥以及私钥衍生字符串发送给节点4。

8、节点1接收到对用户4的资源的资源管理请求。

9、响应于资源管理请求,节点1可以利用用户1的私钥衍生字符串以及用户2的密钥索引生成用户2的私钥衍生字符串,然后节点1利用用户2的私钥衍生字符串以及用户3的密钥索引生成用户3的私钥衍生字符串,节点1再利用用户3的私钥衍生字符串以及用户4的密钥索引生成用户4的私钥。这样,节点1利用自己持有的私钥衍生字符串以及管理层级关系链中的密钥索引就可以得到用户4的私钥,无需节点4发送私钥给节点1,也可以对用户4的资源进行资源管理。这种私钥衍生字符串在用户管理层级关系链中是依次链接,私钥衍生字符串以及私钥在管理层级关系链中是层层下发的方法,当管理节点需要获取所管理的节点的私钥时,无需被管理节点发送私钥,也可以根据自身的私钥衍生字符串推导出被管理节点的私钥。

如图10所示,在一个实施例中,提供了一种资源管理装置,该资源管理装置可以集成于上述的第一管理节点110中,具体可以包括资源管理请求获取模块1002、管理层级关系链获取模块1004、私钥衍生字符串计算模块1006、私钥生成模块1008以及资源管理模块1010。

资源管理请求获取模块1002,用于第一管理节点获取对目标被管理用户对应的目标被管理资源进行管理的资源管理请求;

管理层级关系链获取模块1004,用于获取第一管理节点对应的第一管理用户与目标被管理用户之间的管理层级关系链,以及获取第一管理用户对应的第一私钥衍生字符串,管理层级关系链以第一管理用户为起始用户,目标被管理用户为终止用户;

私钥衍生字符串计算模块1006,用于按照管理层级关系链的顺序,根据第一私钥衍生字符串依次计算管理层级关系链中各个中间管理用户的私钥衍生字符串,直至得到目标被管理用户上一管理层级的管理用户对应的第二私钥衍生字符串;

私钥生成模块1008,用于获取管理层级关系链中目标被管理用户对应的目标密钥索引,根据第二私钥衍生字符串以及目标密钥索引生成目标被管理用户的私钥;

资源管理模块1010,用于根据资源管理请求,利用目标被管理用户的私钥对目标被管理资源进行资源管理。

在一些实施例中,私钥衍生字符串计算模块1006包括:

密钥索引获取单元,用于获取管理层级关系链中各个中间管理用户对应的密钥索引;

私钥衍生字符串计算单元,用于将第一私钥衍生字符串作为当前私钥衍生字符串,按照管理层级关系链的顺序依次获取当前中间管理用户,根据当前私钥衍生字符串以及当前中间管理用户对应的密钥索引计算得到当前中间管理用户对应的私钥衍生字符串,作为更新后的当前私钥衍生字符串;

返回单元,用于返回按照管理层级关系链的顺序依次获取当前中间管理用户,计算当前中间管理用户的私钥衍生字符串作为更新后的当前私钥衍生字符串的步骤,直至得到目标被管理用户上一管理层级的管理用户对应的私钥衍生字符串,作为第二私钥衍生字符串。

在一些实施例中,私钥衍生字符串计算单元用于:对当前私钥衍生字符串以及当前中间管理用户对应的密钥索引进行哈希计算,根据哈希计算得到的结果得到当前中间管理用户对应的私钥衍生字符串,作为更新后的当前私钥衍生字符串。

在一些实施例中,述私钥衍生字符串计算单元用于:

对当前私钥衍生字符串以及当前中间管理用户对应的密钥索引进行哈希计算,得到第一哈希计算结果;

从第一哈希计算结果中分别提取得到当前中间管理用户对应的私钥以及管理层级关系链接字符串;

根据私钥以及管理层级关系链接字符串生成当前中间管理用户对应的私钥衍生字符串,作为更新后的当前私钥衍生字符串。

在一些实施例中,私钥生成模块1008用于:对第二私钥衍生字符串以及目标密钥索引生进行哈希计算,得到第二哈希计算结果;从第二哈希计算结果中提取得到目标被管理用户的私钥。

在一些实施例中,资源管理装置还包括:

第一哈希计算模块,用于根据第二私钥衍生字符串以及目标密钥索引进行哈希计算,得到目标被管理用户的私钥;

第一发送模块,用于将目标被管理用户的私钥发送到目标被管理节点。

在一些实施例中,资源管理装置还包括:

第二哈希计算模块,用根据管理层级关系链的中间管理用户的密钥索引,以及第一私钥衍生字符串进行哈希运算,得到中间管理用户的私钥衍生字符串;

第二发送模块,用于将中间管理用户的私钥衍生字符串发送到中间管理用户对应的中间管理节点,以使得中间管理节点根据中间管理用户的私钥衍生字符串以及目标密钥索引生成目标被管理用户的私钥,将目标被管理用户的私钥发送给目标被管理节点。

在一些实施例中,第一管理用户的第一私钥衍生字符串的获取模块用于:接收第一管理用户上一管理层级的用户对应的节点发送的私钥衍生字符串,作为第一管理用户的第一私钥衍生字符串;其中第一私钥衍生字符串是根据上一管理层级的用户的私钥衍生字符串以及第一管理用户的密钥索引生成的。

在一些实施例中,资源管理请求获取模块1002用于:获取对目标被管理资源进行资源转移的资源转移请求;资源管理模块1010用于:根据资源转移请求,利用目标被管理用户的私钥对目标被管理资源的资源转移数据进行数字签名,将签名后的资源转移数据发送给区块链。

在一些实施例中,资源转移请求为资源冻结请求,资源管理模块1010包括:

资源冻结账户获取单元,用于根据资源冻结请求获取资源冻结账户,将资源冻结账户作为目标被管理资源的接收账户;

数字签名单元,用于利用目标被管理用户的私钥对目标被管理资源的资源转移数据进行数字签名,将签名后的资源转移数据发送给区块链,以使得在区块链中目标被管理资源转移到接收账户。

图11示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的第一管理节点110。如图11所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现资源管理方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行资源管理方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,本申请提供的私钥管理装置可以实现为一种计算机程序的形式,计算机程序可在如图11所示的计算机设备上运行。计算机设备的存储器中可存储组成该资源管理装置的各个程序模块,比如,图10所示的资源管理请求获取模块1002、管理层级关系链获取模块1004、私钥衍生字符串计算模块1006、私钥生成模块1008以及资源管理模块1010。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的资源管理方法中的步骤。

例如,图11所示的计算机设备可以通过如图10所示的资源管理装置中的资源管理请求获取模块1002获取对目标被管理用户对应的目标被管理资源进行管理的资源管理请求;通过管理层级关系链获取模块1004获取第一管理节点对应的第一管理用户与目标被管理用户之间的管理层级关系链,以及获取第一管理用户对应的第一私钥衍生字符串,管理层级关系链以第一管理用户为起始用户,目标被管理用户为终止用户;通过私钥衍生字符串计算模块1006按照管理层级关系链的顺序,根据第一私钥衍生字符串依次计算管理层级关系链中各个中间管理用户的私钥衍生字符串,直至得到目标被管理用户上一管理层级的管理用户对应的第二私钥衍生字符串;通过私钥生成模块1008获取管理层级关系链中目标被管理用户对应的目标密钥索引,根据第二私钥衍生字符串以及目标密钥索引生成目标被管理用户的私钥;通过资源管理模块1010根据资源管理请求,利用目标被管理用户的私钥对目标被管理资源进行资源管理。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述资源管理方法以及私钥管理方法中的一种或多种的步骤。此处资源管理方法的步骤可以是上述各个实施例的资源管理方法中的步骤,此处私钥管理方法的步骤可以是上述各个实施例的私钥管理方法中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述资源管理方法以及私钥管理方法中的一种或多种的步骤。此处资源管理方法的步骤可以是上述各个实施例的资源管理方法中的步骤,此处私钥管理方法的步骤可以是上述各个实施例的私钥管理方法中的步骤。

应该理解的是,虽然本发明各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1