一种区块链安全钱包系统的制作方法

文档序号:16433851发布日期:2018-12-28 20:20阅读:288来源:国知局
一种区块链安全钱包系统的制作方法

本发明涉及一种区块链安全钱包系统,基于终端(pc,app)区块链钱包使用时,通过操作系统内核级的动态加解密技术,hook技术、安全盾控制技术实现对区块链钱包密码、秘钥文件进行保护备份,以避免区块链秘钥信息的泄露,造成不可挽回的损失。

缩略语及名词解释:

api:应用程序接口

pc:计算机(个人计算机)

app:手机应用程序

hook:钩子技术

背景技术

随着区块链技术应用越来越广泛,交易越来越多。区块链秘钥无认证无记名,秘钥文件丢失不可找回、秘钥文件被盗,密码被破解导致不可估计的损失。目前存在各种各样的钱包系统,秘钥文件有两种存储方式:终端存储、服务器存储两种方式。终端存储时,秘钥文件容易被拷贝、复制。密钥被暴力破解等风险。服务器存储时,秘钥一般都是由交易中心代理管理,每次交易时必须交易输入交易密码,交易中心既有秘钥文件也有交易密码,风险系数非常大。一旦交易中心被攻击、关闭等风险,钱包丢失的可能性非常大。

目前有种冷钱包处理方案,把钱包信息存放的物理隔离的网络上,每次交易时需要使用在线终端与冷钱包多次签名认证交互,此种方法可以解决钱包信息被网络攻击问题。但交易过程复杂,而且不能解决钱包信息被人为拷贝复制、破解等风险。



技术实现要素:

本发明提供了一种区块链安全钱包系统和方法,终端(pc终端、app)上应用时,通过操作系统内核级的动态加解密技术,可实现一种区块链安全钱包应用,解决区块链钱包安全性问题。

本发明所述一种区块链安全钱包系统,从三个层面保障钱包安全。

1.只有插入安全盾才可以启动钱包程序,访问钱包时安全盾进行秘密认证,认证通过才可以启动钱包。

2.对秘钥文件进行加密,当合法的钱包进程访问时,动态加解密程序在内存解密,允许访问秘钥信息。拒绝其他非法程序访问,保证秘钥文件数据安全和访问安全。

3.对加密的秘钥文件进行云备份、当秘钥文件丢失时从云平台恢复,安全盾丢失时,通过安全认证后从新制作新的安全盾。

图1为本发明所述的一种区块链安全钱包系统,其中包括

web服务器:秘钥管理模块、日志管理模块

终端:接口模块、安全策略设定模块、钱包访问控制模块、秘钥文件访问控制模块、安全盾模块、日志记录模块、动态加解密模块

web服务器:

秘钥管理模块:通过web界面来备份恢复秘钥文件,可以多节点备份秘钥文件,通过访问认证后查看下载秘钥文件。

日志管理模块:将钱包操作记录的日志信息,通过网络通信上传到服务器。web界面展现日志记录(显示日志信息、日志时间、操作类型等信息)。

客户端:

接口模块:为安全应用程序提供api接口。api接口被上层应用调用,通过接口模块将数据、指令传递给下层的安全策略设定模块。接口模块可查询安全策略设定模块、钱包访问控制模块、秘钥文件访问控制模块、安全盾模块、日志记录模块和动态加解密模块的状态并上报给应用。

安全策略设定模块:根据接口模块传送的指令,设定安全等级,设定加密算法,设定密钥,设定关联程序,设定策略开关,设定策略内容。并根据安全策略的描述,向钱包访问控制模块、秘钥文件访问控制模块、安全盾模块、日志记录模块和动态加解密模块发送指令。并查询文件访问控制模块、日志记录模块和动态加解密模块的状态并上报接口模块。

钱包访问控制模块:通过接收安全策略设定模块发来的指令,实现对访问区块链钱包时的操作进行控制。实现对访问区块链钱包时的操作进行控制。其中控制钱包进程是否允许启动,是否可以进行交易。

秘钥文件访问控制模块:通过接收安全策略设定模块发来的指令,实现对钱包秘钥文件的访问操作进行控制。其中访问操作包括对文件对象的打开、创建、删除、改名、复制、移动、保存、属性设置操作。

安全盾模块:通过接收安全策略设定模块发来的指令,实现对区块链钱包所有操作进行认证控制、秘钥加密存储。

日志记录模块:记录系统的所有操作。包括钱包的启动、执行、访问秘钥文件的时间;安全盾的读、写、备份等;安全策略的更新下载等。

动态加解密模块:位于移动手机、pc操作系统的内核层,通过接收安全策略设定模块发来的指令,实现对秘钥文件的加解密处理。当合法应用程序读取被加密的数据时,动态加解密模块进行解密操作,合法应用程序则可正常使用数据;当合法应用程序对文件进行写操作时,动态加解密模块进行加密操作。;当非法应用程序读取被加密的数据时,动态加解密模块不进行解密操作,非法应用程序则无法正常使用数据;当非法应用程序对文件进行写操作时,动态加解密模块不进行任何操作。

本发明提供一种区块链安全钱包系统,它采用本发明所述在终端上的区块链安全钱包系统,应用程序可通过调用接口模块所提供的api接口,进行安全策略的设定,接口模块会将安全策略传给安全策略设定模块;安全策略设定模块在接收到安全策略后,设定安全等级,设定加密算法,设定密钥,设定关联程序,设定策略开关,设定策略内容,并根据安全策略的描述,向钱包访问控制模块、秘钥文件访问控制模块、安全盾模块和动态加解密模块发送指令;钱包访问控制模块在接收安全策略设定模块的指令后,根据安全策略的要求,实时监视终端上所有访问钱包系统的操作,并进行控制;秘钥文件访问控制模块在接收安全策略设定模块的指令后,根据安全策略的要求,实时监视对钱包秘钥文件的所有操作,并进行控制;安全盾模块在接收安全策略设定模块的指令后,及时控制钱包访问安全认证;日志记录模块在接收安全策略设定模块的指令后,根据安全策略的要求,实时监视钱包的所有操作,并进行日志记录;动态加解密模块在接收安全策略设定模块的指令后,根据安全策略的要求,实时监视钱包秘钥文件读写操作,并进行加解密操作。

具体实施方式:

服务器:搭建http、https服务器,连接mysql数据库。

客户端:

通信层:主要用于网络请求、响应处理(网络数据传输)。通信模块属于这一层,通信模块下载安全策略、上传客户端信息、上传文件操作日志信息、秘钥文件备份恢复等。

应用层:策略设置模块设置控制策略,控制钱包访问控制模块、文件访问控制模块、安全盾模块、动态加解密模块等模块的执行,从三方面保护钱包安全。

hook层:主要捕获系统调用信息,过滤并处理安全策略中设置的指令。

信息访问控制模块、文件访问控制模块和文件下载监控模块通过更改操作系统工作流程,实现对秘钥文件的访问控制和日志记录。具体hook操作系统的系统调用:open、read、write、delete和move,通过逻辑(安全策略信息)判断是否允许文件访问操作来继续或阻断系统调用。

驱动层:主要通过系统驱动,对秘钥文件进行动态加解密处理。通过策略设置通知驱动层,控制进程对秘钥文件的读写操作。从而阻止非法进程对秘钥文件的操作。

另外,实现本发明所述系统很重要的一点是安全策略的设定:

1.安全策略规范

安全策略包括以下几项内容:

1)加密算法设定

通过应用程序可以设定不同加密算法,如des,3des,aes,rc4等。

2)密钥设定

通过应用程序可以设定不同密钥,可以设定任何长度的密钥。

3)关联程序设定

为了实现专用应用程序解密,从而设定专用读取程序,获得授权的应用程序可以正常读取文件,驱动会为其透明加解密,而对于非授权的应用程序却只能读到密文,无法正常读取使用文件。

4)策略开关

设定是否应用策略,或者是是否容许特定的文件操作穿过(pass)过滤层。

5)策略内容设定

设定策略的详细内容,如具体的文件类型(可以使用通配符*),特定的文件目录。策略内容可以指定任何逻辑扇区比如:@:\*.*,就是在pc储存设备下的所有文件都是加密保存的。包括如下内容:

@:--代表盘符。

f:--日志开关设定,设定是否记录日志。

g:--访问权限属性控制设定策略内容所规定的文件访问控制属性,包括:readonly、hidden、nodelete、noopen、nocopy…。

附图说明

图1为本发明所述的一种区块链安全钱包模块示意图

图2为本发明所述的一种区块链安全钱包系统示意图。

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