一种区块链账户在线生成的安全系统装置及其工作方法制造方法及图纸

技术编号:38055103 阅读:11 留言:0更新日期:2023-06-30 11:20
本发明专利技术提供一种区块链账户在线生成的安全系统装置,包括运行于用户设备CPU上的客户端SDK,运行于区块链服务器CPU上的服务主程序CAS,以及运行于区块链服务器CPU的TEE环境中的程序OnlineGen;其中,用户访问生成区块链账户服务的的客户端SDK,发出生成区块链账户请求;服务主程序CAS接收处理生成区块链账户请求;程序OnlineGen运行在可信执行环境TEE中、负责生成区块链账户信息。本发明专利技术提供的是一种基于隐私计算技术TEE的系统装置,来解决其安全性问题,同时尽可能降低对客户端资源的要求和消耗。和消耗。和消耗。

【技术实现步骤摘要】
一种区块链账户在线生成的安全系统装置及其工作方法


[0001]本专利技术涉及区块链
,具体涉及一种区块链账户在线生成的安全系统装置及其工作方法。

技术介绍

[0002]访问区块链的通常形式之一是提交交易到链的节点上,由各个节点验证交易有效后,存储在区块链账本中。而为了验证交易的有效性,通常在提交的交易中,会携带交易提交者的身份以及证实其身份的签名信息。为此,每个区块链用户必须拥有一个在区块链上有效的账户信息。区块链账户采用非对称加密算法来保证其安全性,因此,区块链账户通常包含如下两部分信息:(1)区块链所支持的非对称加密算法的公钥,或者对其经过变换处理后的结果,作为区块链账户的ID;(2)生成区块链账户的公钥所对应的私钥,或者用于生成私钥的输入信息这些信息的具体构成形式,依赖于所访问区块链的具体设计和实现。
[0003]如何生成区块链账户,严重影响到其安全性。目前,主要有两种方式可用于生成区块链账户,其各有优缺点:(1)离线计算方式,即用户在一个由其自身确保安全的环境中,根据所访问区块链,生成满足其格式和算法要求的账户;(2)在线请求方式,即用户向一个服务或区块链节点发起生成账号请求,由其生成后,返回给用户。
[0004]离线方式的优点在于:对于用户而言,无需信任第三方,只要确保本地安全,即可保证区块链账户的安全性。但其缺点同样明显:a、具体的生成账户的格式和算法,依赖于具体的区块链实现,因此,对于支持多种客户端,多种运行环境,多种编程语言,都造成了更大的工作量;b、当区块链支持新的算法时,需要升级客户端程序,才能支持新的账户生成;c、当对接不同的区块链时,需要实现相应的账户生成逻辑。
[0005]在线方式的优点:实现简单,只需通过发送一个请求,即可获得区块链账户,从而解耦区块链访问,同区块链账户的生成和表示逻辑,可灵活支持多种链、多种算法。但其缺点同样明显:a、需要信任第三方,且第三方没有受到威胁,才能保证区块链账户生成的安全性;b、需要采用TLS/HTTPS这样复杂的安全传输协议,来保证区块链账户信息传输的安全性,这使得其不适合IoT这样设备资源受限的领域。
[0006]为了解决在线生成区块链账户方式的缺点,需涉及一种基于隐私计算技术TEE的系统装置,来解决其安全性问题,同时尽可能降低对客户端资源的要求和消耗。

技术实现思路

[0007]本专利技术要解决的技术问题是提供一种区块链账户在线生成的安全系统装置及其工作方法,解决区块链账户在线生成的安全性问题,同时降低对客户端资源的要求和消耗。
[0008]为解决上述技术问题,本专利技术的实施例提供一种区块链账户在线生成的安全系统装置,包括运行于用户设备CPU上的客户端SDK,运行于区块链服务器CPU上的服务主程序CAS,以及运行于区块链服务器CPU的TEE环境中的程序OnlineGen;其中,用户访问生成区块链账户服务的的客户端SDK,发出生成区块链账户请求;服务主程序CAS接收处理生成区块链账户请求;程序OnlineGen运行在可信执行环境TEE中、负责生成区块链账户信息。
[0009]本专利技术还提供一种区块链账户在线生成的安全系统装置的工作方法,包括如下步骤:S1、用户需要生成一个区块链账户时,调用客户端SDK,发起在线生成请求,包含选择的账户加密算法、用于生成账户的保密口令Su;如果没有,则随机产生一个账户;S2、客户端SDK临时生成一个用于加密区块链账户私钥的非对称加密算法的公私钥对(S1, P1),S1为私钥,P1为公钥;S3、客户端SDK向服务主程序CAS发起请求,获取一个用于临时加密的公私钥对(S2,P2);S4、服务主程序CAS对于生成临时加密公私钥请求,调用程序OnlineGen接口,返回一个临时公钥P2,其对应的私钥S2存储在TEE中,不可读取;S5、服务主程序CAS将生成的临时公钥P2和其对应的签名返回给客户端SDK;S6、客户端SDK接收到公钥P2后,使用配置的服务公钥P0,验证其签名;如果合法,则继续步骤S7;否则,生成账户失败,返回服务不可信错误给用户;S7、如有生成账户的口令Su,则客户端SDK使用公钥P2对口令Su进行加密;S8、客户端SDK发送在线账户生成请求到服务主程序CAS,该请求携带了公钥P1、公钥P2、账户加密算法、可选的加密口令;S9、服务主程序CAS收到请求后,调用程序OnlineGen的账户生成接口,传入公钥P1、公钥P2、账户加密算法以及可选的加密口令;S10、程序OnlineGen根据公钥P2寻找其对应的解密私钥S2;如果找到,则继续步骤S11;否则,返回生成账户失败给用户;S11、若存在口令,则程序OnlineGen使用私钥S2解密经过公钥P2加密的口令,得到实际的生成账户的口令Su;S12、程序OnlineGen根据口令Su,选择账户加密算法,生成区块链账户,其对应的公私钥对为(S3, P3);使用公钥P1对账户的私钥S3进行加密,并连同包括账户地址和账户公钥的账户信息,使用私钥S2进行签名,将包含签名的账户信息返回给服务主程序CAS;S13、服务主程序CAS将账户信息返回给客户端SDK,客户端SDK对其使用公钥P2进行签名验证,如果合法,则继续步骤S14;否则,生成账户失败,返回不可信错误给用户;S14、客户端SDK使用私钥S1解密经过P1加密的S3,得到账户的私钥S3,连同包括账户地址和账户公钥的账户其他信息,返回给用户。
[0010]其中,步骤S2中的加密算法与区块链所使用的加密算法的无关。
[0011]其中,步骤S3中,公私钥对(S2,P2) 的使用受到TEE保护,外部不可获取私钥S2。
[0012]其中,步骤S4中,公钥P2的使用受到TEE保护,外部不可获取的服务私钥S0进行签名,但其对应的公钥P0可从TEE中获取,在客户端SDK中需要配置该服务公钥P0,用于验证P2的合法性。
[0013]本专利技术的上述技术方案的有益效果如下:本专利技术提供了一种区块链账户在线生成的安全系统装置及其工作方法,是一种基于隐私计算技术TEE的系统装置,来解决其安全性问题,同时尽可能降低对客户端资源的要求和消耗。
附图说明
[0014]图1为本专利技术的结构框图;图2为本专利技术的工作流程图。
具体实施方式
[0015]为使本专利技术要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
[0016]如图1所示,本专利技术提供一种区块链账户在线生成的安全系统装置,包括运行于用户设备CPU上的客户端SDK(CA SDK),运行于区块链服务器CPU上的服务主程序CAS,以及运行于区块链服务器CPU的TEE环境中的程序OnlineGen。其中,用户访问生成区块链账户服务的的CA SDK,发出生成区块链账户请求。注:CA是Chain Account的缩写。
[0017]服务主程序CAS接收处理生成区块链账户请求;程序OnlineGen运行在可信执行环境TEE中、负责生成区块链账户信息。
[0018]如图2所示,本专利技术本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种区块链账户在线生成的安全系统装置,其特征在于,包括运行于用户设备CPU上的客户端SDK,运行于区块链服务器CPU上的服务主程序CAS,以及运行于区块链服务器CPU的TEE环境中的程序OnlineGen;其中,用户访问生成区块链账户服务的的客户端SDK,发出生成区块链账户请求;服务主程序CAS接收处理生成区块链账户请求;程序OnlineGen运行在可信执行环境TEE中、负责生成区块链账户信息。2.一种区块链账户在线生成的安全系统装置的工作方法,其特征在于,包括如下步骤:S1、用户需要生成一个区块链账户时,调用客户端SDK,发起在线生成请求,包含选择的账户加密算法、用于生成账户的保密口令Su;如果没有,则随机产生一个账户;S2、客户端SDK临时生成一个用于加密区块链账户私钥的非对称加密算法的公私钥对(S1, P1),S1为私钥,P1为公钥;S3、客户端SDK向服务主程序CAS发起请求,获取一个用于临时加密的公私钥对(S2,P2);S4、服务主程序CAS对于生成临时加密公私钥请求,调用程序OnlineGen接口,返回一个临时公钥P2,其对应的私钥S2存储在TEE中,不可读取;S5、服务主程序CAS将生成的临时公钥P2和其对应的签名返回给客户端SDK;S6、客户端SDK接收到公钥P2后,使用配置的服务公钥P0,验证其签名;如果合法,则继续步骤S7;否则,生成账户失败,返回服务不可信错误给用户;S7、如有生成账户的口令Su,则客户端SDK使用公钥P2对口令Su进行加密;S8、客户端SDK发送在线账户生成请求到服务主程序CAS,该请求携带了公钥P1、公钥P2、账户加密算法、可选的加密口令;S9、服务主程序CAS收到请求后,调用程序O...

【专利技术属性】
技术研发人员:崔建军许文波朱清文黄文林阮镇南刘力政吴钊
申请(专利权)人:上海特高信息技术有限公司
类型:发明
国别省市:

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

1