用于托管区块链用户私钥的方法和装置制造方法及图纸

技术编号:20547141 阅读:79 留言:0更新日期:2019-03-09 19:57
本公开内容的实施例公开了一种用于托管区块链用户私钥的方法和装置。该方法包括:从客户端接收第一操作请求,第一操作请求包括BaaS平台的BaaS用户标识和一个或多个用户的标识信息,该一个或多个用户与BaaS用户标识相关联;根据所述一个或多个用户的标识信息,在第一可信环境中分别创建与该一个或多个用户相对应的一个或多个私钥和证书;将该BaaS用户标识、该一个或多个用户的标识信息以及该一个或多个私钥和证书通过安全方式关联地存储在与BaaS平台相关联的非易失性存储设备中。利用本公开内容的实施例的方法可以降低BaaS平台创建和管理用户私钥的成本,并且有效地提高对用户私钥的保护性。

【技术实现步骤摘要】
用于托管区块链用户私钥的方法和装置
本公开内容属于信息
,尤其涉及一种用于托管区块链用户私钥的方法、装置以及一种相应的计算机可读存储介质。
技术介绍
区块链(Blockchain)是用分布式数据库识别、传播和记载信息的智能化对等网络,也称为价值互联网。区块链具有去中心化、反篡改、数据一致性存储、过程透明可追踪等技术优势,其被认为在金融、征信、物联网、经济贸易结算、资产管理等众多领域都拥有广泛的应用前景。区块链的去中心化信任与控制是基于现代密码学的密码机制来实现的,每个区块链用户使用其对应的私钥和证书生成有效的数字签名,以保障在区块链网络上发起的操作的合法性。在现有的区块链网络中,用户私钥和证书的管理通常有两种方式。在一种方式中,由区块链即服务(BaaS,BlockchainasaService)系统来创建和管理用户组织的私钥和证书,它们以加密方式保存在BaaS系统的数据库中。当用户登录BaaS账号之后,在线发起区块链上的操作时,BaaS系统将获取用户私钥对消息进行签名,然后发送给相关区块链节点。在另一种方式中,BaaS系统不保存任何用户私钥,而是提供给用户用于私钥证书管理的本地客户端,当用户需要在线发起区块链上的操作时,用户先在线发起操作请求,然后在本地客户端上对该请求进行批准,即对消息进行签名。客户端将经签名的消息发送给BaaS系统,再由后者发送给相关区块链节点。
技术实现思路
总体上,本公开内容的实施例提供了用于托管区块链用户私钥的方案。本公开内容的实施例的第一方面提出了一种用于托管区块链用户私钥的方法,所述方法包括:A.接收来自客户端的第一操作请求,其中,所述第一操作请求包括BaaS平台的BaaS用户标识和一个或多个用户的标识信息,所述一个或多个用户与所述BaaS用户标识相关联;B.根据所述一个或多个用户的标识信息,在第一可信环境中分别创建与所述一个或多个用户相对应的一个或多个私钥和证书;以及C.将所述BaaS用户标识、所述一个或多个用户的标识信息以及相应的所述一个或多个私钥和证书通过安全方式关联地存储在与所述BaaS平台相关联的非易失性存储设备中。本公开内容的实施例的第二方面提出了一种用于托管区块链用户私钥的装置,所述装置包括:至少一个处理器;以及存储器,其用于存储指令,当所述指令被执行时使得所述至少一个处理器执行以下步骤:A.接收来自客户端的第一操作请求,其中,所述第一操作请求包括BaaS平台的BaaS用户标识和一个或多个用户的标识信息,所述一个或多个用户与所述BaaS用户标识相关联;B.根据所述一个或多个用户的标识信息,在第一可信环境中分别创建与所述一个或多个用户相对应的一个或多个私钥和证书;以及C.将所述BaaS用户标识、所述一个或多个用户的标识信息以及相应的所述一个或多个私钥和证书通过安全方式关联地存储在与所述BaaS平台相关联的非易失性存储设备中。本公开内容的实施例的第三方面提出了一种用于托管区块链用户私钥的方法,所述方法包括:A.向BaaS平台发送第一操作请求以请求由所述BaaS平台在第一可信环境中创建与一个或多个用户相对应的一个或多个私钥和证书,其中,所述第一操作请求包括所述BaaS平台的BaaS用户标识和所述一个或多个用户的标识信息,所述一个或多个用户与所述BaaS用户标识相关联,并且其中,所述BaaS用户标识、所述一个或多个用户的标识信息以及相应的所述一个或多个私钥和证书通过安全方式被关联地存储在与所述BaaS平台相关联的非易失性存储设备中;B.向所述BaaS平台发送第二操作请求以请求由所述BaaS平台在第二可信环境中通过所述安全方式从所述非易失性存储设备中获取与特定用户相对应的特定私钥以对消息进行签名,其中,所述第二操作请求包括操作类型信息、所述BaaS用户标识、特定用户的标识信息以及与所述消息相关的特定信息,所述特定用户是所述一个或多个用户中待签名的用户,所述特定信息用于生成所述消息;C.从所述BaaS平台接收第三操作请求,所述第三操作请求包括呈现给所述特定用户的与所述第二操作请求相关的信息,以请求所述特定用户确认签名操作;以及D.响应于接收到所述第三操作请求,向所述BaaS平台发送所述特定用户的确认信息以确认所述签名操作。本公开内容的实施例的第四方面提出了一种用于托管区块链用户私钥的装置,所述装置包括:至少一个处理器;以及存储器,其用于存储指令,当所述指令被执行时使得所述至少一个处理器执行以下步骤:A.向BaaS平台发送第一操作请求以由所述BaaS平台在第一可信环境中创建与一个或多个用户相对应的一个或多个私钥和证书,其中,所述第一操作请求包括所述BaaS平台的BaaS用户标识和所述一个或多个用户的标识信息,所述一个或多个用户与所述BaaS用户标识相关联,并且其中,所述BaaS用户标识、所述一个或多个用户的标识信息以及相应的所述一个或多个私钥和证书通过安全方式被关联地存储在与所述BaaS平台相关联的非易失性存储设备中;B.向所述BaaS平台发送第二操作请求以请求所述BaaS平台在第二可信环境中通过所述安全方式从所述非易失性存储设备中获取与特定用户相对应的特定私钥以对消息进行签名,其中,所述第二操作请求包括操作类型信息、所述BaaS用户标识、所述特定用户的标识信息以及与所述消息相关的特定信息,所述特定用户是所述一个或多个用户中待签名的用户,所述特定信息用于生成所述消息;C.从所述BaaS平台接收第三操作请求,所述第三操作请求包括呈现给所述特定用户的与所述第二操作请求相关的信息,以请求所述特定用户确认签名操作;以及D.响应于接收到所述第三操作请求,向所述BaaS平台发送所述特定用户的确认信息以确认所述签名操作。本公开内容的实施例的第五方面提出了一种计算机可读存储介质,包括计算机可执行指令,所述计算机可执行指令在装置中运行时使得所述装置执行根据本公开内容的实施例的第一方面或第三方面所述的用于托管区块链用户私钥的方法。附图说明结合附图并参考以下详细说明,本公开内容的各实施例的特征、优点及其他方面将变得更加明显,在此以示例性而非限制性的方式示出了本公开内容的若干实施例,在附图中:图1示出了本公开内容的实施例可以应用于其中的示例性BaaS平台系统100的示意架构图。图2示出了根据本公开内容的实施例的用于托管区块链用户私钥的方法200的流程图。图3示出了根据本公开内容的实施例的用于托管区块链用户私钥的方法300的流程图。图4示出了根据本公开内容的实施例的用于托管区块链用户私钥的装置400的示意图。图5示出了根据本公开内容的实施例的用于托管区块链用户私钥的具体示例500。具体实施方式以下参考附图详细描述本公开内容的各个示例性实施例。附图中的流程图和框图示出了根据本公开内容的各种实施例的方法和系统的可能实现的体系架构、功能和操作。应当注意,流程图或框图中的每一个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分可以包括一个或多个用于实现各个实施例中所规定的逻辑功能的可执行指令。也应当注意,在有些作为备选的实现中,方框中所标注的功能也可以按照不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,或者它们有时也可以按照相反本文档来自技高网...

【技术保护点】
1.一种用于托管区块链用户私钥的方法,其特征在于,包括:A.接收来自客户端的第一操作请求,其中,所述第一操作请求包括BaaS平台的BaaS用户标识和一个或多个用户的标识信息,所述一个或多个用户与所述BaaS用户标识相关联;B.根据所述一个或多个用户的标识信息,在第一可信环境中分别创建与所述一个或多个用户相对应的一个或多个私钥和证书;C.将所述BaaS用户标识、所述一个或多个用户的标识信息以及相应的所述一个或多个私钥和证书通过安全方式关联地存储在与所述BaaS平台相关联的非易失性存储设备中。

【技术特征摘要】
1.一种用于托管区块链用户私钥的方法,其特征在于,包括:A.接收来自客户端的第一操作请求,其中,所述第一操作请求包括BaaS平台的BaaS用户标识和一个或多个用户的标识信息,所述一个或多个用户与所述BaaS用户标识相关联;B.根据所述一个或多个用户的标识信息,在第一可信环境中分别创建与所述一个或多个用户相对应的一个或多个私钥和证书;C.将所述BaaS用户标识、所述一个或多个用户的标识信息以及相应的所述一个或多个私钥和证书通过安全方式关联地存储在与所述BaaS平台相关联的非易失性存储设备中。2.根据权利要求1所述的方法,其特征在于,步骤C.将所述BaaS用户标识、所述一个或多个用户的标识信息以及相应的所述一个或多个私钥和证书通过安全方式关联地存储在与所述BaaS平台相关联的非易失性存储设备中包括:基于特定访问策略将所述BaaS用户标识、所述一个或多个用户的标识信息以及相应的所述一个或多个私钥和证书关联地存储在所述非易失性存储设备中,所述特定访问策略确定不同于所述第一可信环境的其他可信环境能够访问所述非易失性存储设备中的所述BaaS用户标识、所述一个或多个用户的标识信息以及相应的所述一个或多个私钥和证书。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:D.接收来自所述客户端的第二操作请求,其中,所述第二操作请求包括操作类型信息、所述BaaS用户标识、特定用户的标识信息以及与待签名的消息相关的特定信息,所述特定用户是所述一个或多个用户中待签名的用户,所述特定信息用于生成所述消息;E.根据所述BaaS用户标识、所述特定用户的标识信息和所述消息,在第二可信环境中通过所述安全方式从所述非易失性存储设备获取与特定用户相对应的特定私钥,并使用所述特定私钥对所述消息进行签名。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:F.从所述第二可信环境返回经签名的消息,并向与所述操作类型信息相对应的区块链节点发送所述经签名的消息。5.根据权利要求3所述的方法,其特征在于,所述第一可信环境和所述第二可信环境包括由处理器提供的安全环境。6.根据权利要求3所述的方法,其特征在于,步骤E.根据所述BaaS用户标识、所述特定用户的标识信息和所述消息,在所述第二可信环境中通过所述安全方式从所述非易失性存储设备中获取与特定用户相对应的所述特定私钥,并使用所述特定私钥对所述消息进行签名进一步包括:E1.将所述BaaS用户标识、所述特定用户的标识信息以及所述消息存储在所述第二可信环境中;E2.转移至非可信环境,根据所述特定用户的标识信息,在所述非可信环境中向所述客户端发送第三操作请求,所述第三操作请求包括呈现给所述特定用户的与所述第二操作请求相关的信息,以请求所述特定用户确认签名操作;E3.从所述客户端接收响应于所述第三操作请求而发送的所述特定用户的确认信息以确认所述签名操作,并将所述确认信息返回至所述第二可信环境;以及E4.在所述第二可信环境中,当所述确认信息被验证通过时,根据所述特定用户的标识信息,通过所述安全方式从所述非易失性存储设备中获取与所述特定用户相对应的特定私钥,并使用所述特定私钥对所述消息进行签名。7.根据权利要求3所述的方法,其特征在于,所述第二操作请求是基于由用户发起区块链交易引起的操作或基于由用户发起区块链配置管理引起的操作。8.一种用于托管区块链用户私钥的装置,其特征在于,包括:至少一个处理器;以及存储器,其用于存储指令,当所述指令被执行时使得所述至少一个处理器执行以下步骤:A.接收来自客户端的第一操作请求,其中,所述第一操作请求包括BaaS平台的BaaS用户标识和一个或多个用户的标识信息,所述一个或多个用户与所述BaaS用户标识相关联;B.根据所述一个或多个用户的标识信息,在第一可信环境中分别创建与所述一个或多个用户相对应的一个或多个私钥和证书;以及C.将所述BaaS用户标识、所述一个或多个用户的标识信息以及相应的所述一个或多个私钥和证书通过安全方式关联地存储在与所述BaaS平台相关联的非易失性存储设备中。9.根据权利要求8所述的装置,其特征在于,步骤C.将所述BaaS用户标识、所述一个或多个用户的标识信息以及相应的所述一个或多个私钥和证书通过安全方式关联地存储在与所述BaaS平台相关联的非易失性存储设备中包括:基于特定访问策略将所述BaaS用户标识、所述一个或多个用户的标识信息以及相应的所述一个或多个私钥和证书关联地存储在所述非易失性存储设备中,所述特定访问策略确定不同于所述第一可信环境的其他可信环境能够访问所述非易失性存储设备中的所述BaaS用户标识、所述一个或多个用户的标识信息以及相应的所述一个或多个私钥和证书。10.根据权利要求8所述的装置,其特征在于,当所述指令被执行时使得所述至少一个处理器还执行以下步骤:D.接收来自所述客户端的第二操作请求,其中,所述第二操作请求包括操作类型信息、所述BaaS用户标识、特定用户的标识信息以及与待签名的消息相关的特定信息,所述特定用户是所述一个或多个用户中待签名的用户,所述特定信息用于生成所述消息;E.根据所述BaaS用户标识、所述特定用户的标识信息和所述消息,在第二可信环境中通过所述安全方式从所述非易失性存储设备中获取与所述特定用户相对应的特定私钥,并使用所述特定私钥对所述消息进行签名。11.根据权利要求10所述的装置,其特征在于,当所述指令被执行时使得所述至少一个处理器还执行以下步骤:F.从所述第二可信环境返回经签名的消息,并向与所述操作类型信息相对应的区块链节点发送经签名的消息。12.根据权利要求10所述的装置,其特征在于,所述第一可信环境和所述第二可信环境包括由处理器提供的安全环境。13.根据权利要求10所述的装置,其特征在于,步骤E.根据所述BaaS用户标识、所述特定用户的标识信息和所述消息,在所述第二可信环境中通过所...

【专利技术属性】
技术研发人员:刘辉
申请(专利权)人:上海点融信息科技有限责任公司
类型:发明
国别省市:上海,31

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

1