【技术实现步骤摘要】
一种基于SGX的区块链交易安全保护系统及其方法
本专利技术涉及信息技术安全领域,特别涉及一种基于SGX的区块链交易安全保护系统及其方法。
技术介绍
目前,中心化的网络服务系统提供了便捷的交易、支付、沟通渠道,但在用户使用服务的过程中,服务的提供者和网络的提供者都能收集用户的使用记录和痕迹,使得用户的隐私安全容易受到威胁。随着比特币的兴起和应用,作为比特币底层架构的区块链技术提供了去中心化的交易方式,近年来引起广泛关注。区块链本质是一个去中心化的分布式账本,具有数据不可篡改、系统集体维护、交易公开透明等优势。然而,区块链系统的设计要求每个区块链网络的参与者必须维护整个区块链数据,这就使得智能手机等移动设备难以直接接入区块链网络。为此,比特币提供了SPV(SimplePaymentVerification)模式,允许用户运行轻量型客户端,只需要保存区块链的极少部分信息,在全节点的帮助下完成交易的验证。这虽然可以使移动端用户使用区块链服务,但是也让系统在全节点处产生了中心化,具有和传统的中心化服务同样的隐私威胁性。为了改善这种情况,比特币在后续的改进方案中提出了Bloom过滤器,但现有的研究证明其存在较高的被攻击的风险。因此,区块链的交易隐私安全亟需进一步的安全保护。英特尔公司于2013年提出了SGX(SoftwareGuardExtensions)安全保护机制,它是一套基于硬件的扩展指令和安全保护机制,允许应用程序在设计时分割可信部分和不可信部分,为可信部分的代码和数据创建可信的加密内存区域,从而保证运行 ...
【技术保护点】
1.一种基于SGX的区块链交易安全保护系统,其特征在于包括:/n区块链客户端,获取用户指定的地址,根据需求构造交易请求,并将交易请求通过可信加密渠道发送给区块链全节点;通过可信加密渠道接收区块链全节点的返回结果;/n区块链全节点,包括位于安全区内的SGX加密模块、安全存取模块、交易验证模块、交易构造模块和位于安全区外系统磁盘上的本地安全存储;/n所述SGX加密模块,提供验证信息和SGX访问密钥;/n所述安全存取模块,将区块链上交易数据读取后整理归类,在本地安全存储中加密存储区块链上的交易数据;/n所述交易验证模块,对区块链客户端的交易验证请求执行操作,通过SGX访问密钥进入安全区内调用交易获取函数,在安全区内打包交易数据并且返回到安全区外,最终发回区块链客户端;/n所述交易构造模块,对区块链客户端发来的构造交易请求执行操作,通过所述SGX访问密钥进入安全区内调用交易构造函数,在安全区填充交易信息并返回到安全区外,最终向区块链网络广播该交易并向区块链客户端发回成功信息。/n
【技术特征摘要】
1.一种基于SGX的区块链交易安全保护系统,其特征在于包括:
区块链客户端,获取用户指定的地址,根据需求构造交易请求,并将交易请求通过可信加密渠道发送给区块链全节点;通过可信加密渠道接收区块链全节点的返回结果;
区块链全节点,包括位于安全区内的SGX加密模块、安全存取模块、交易验证模块、交易构造模块和位于安全区外系统磁盘上的本地安全存储;
所述SGX加密模块,提供验证信息和SGX访问密钥;
所述安全存取模块,将区块链上交易数据读取后整理归类,在本地安全存储中加密存储区块链上的交易数据;
所述交易验证模块,对区块链客户端的交易验证请求执行操作,通过SGX访问密钥进入安全区内调用交易获取函数,在安全区内打包交易数据并且返回到安全区外,最终发回区块链客户端;
所述交易构造模块,对区块链客户端发来的构造交易请求执行操作,通过所述SGX访问密钥进入安全区内调用交易构造函数,在安全区填充交易信息并返回到安全区外,最终向区块链网络广播该交易并向区块链客户端发回成功信息。
2.根据权利要求1所述的基于SGX的区块链交易安全保护系统,其特征在于所述的区块链客户端包括:
所述钱包应用模块,保存用户的交易地址,并向用户展示当前各个交易地址的货币持有情况和交易结果信息;
请求构造模块,构建满足用户需求和安全性要求的请求包,通过可信加密渠道发送给区块链全节点;通过可信加密渠道接收来区块链全节点的响应包,解包获取请求的交易地址或交易结果信息,返回给钱包应用模块。
3.一种基于SGX的区块链交易安全保护方法,其特征在于:
1)区块链客户端获取用户指定的地址,根据需求构造用户请求,并将请求通过可信加密渠道以请求包形式发送给区块链全节点;
2)区块链全节点接收通过可信加密渠道发来的用户请求,根据请求类型由交易验证模块或交易构造模块进行处理;
交易验证模块对区块链客户端的交易验证请求执行操作,通过SGX访问密钥进入安全区内调用交易获取函数,根据请求包内地址列表,通过安全存取模块从本地安全存储中读取交易数据,在安全区内打包交易数据为响应包并最终发回区块链客户端;
交易构造模块对区块链客户端发来的构造交易请求执行操作,通过所述SGX访问密钥进入安全区内调用交易构造函数,根据请求包内地址列表,通过安全存取模块从本地安全存储中读取交易数据,检查交易历史是否满足此次请求,当不满足时向区块链客户端返回包含失败信息的响应包;当满足时,根据用户请求构造交易,最终向...
【专利技术属性】
技术研发人员:陈建海,范俊松,沈睿,刘丁豪,何钦铭,纪守领,
申请(专利权)人:浙江大学,
类型:发明
国别省市:浙江;33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。