一种基于区块链的用户行为数据审计方法及系统技术方案

技术编号:33150715 阅读:52 留言:0更新日期:2022-04-22 14:04
本发明专利技术涉及一种基于区块链的用户行为数据审计方法及系统,其方法包括步骤:S1、执行初始化操作;S2、基于统一的数据存储规范实时采集用户行为数据;S3、基于数据分块和二级索引存储机制,将数据指纹等信息上传部署至区块链作为凭证;S4、用户行为数据完整性验证,遍历二级索引存储机制,获取存储用户行为数据的文件集合;基于“挑战

【技术实现步骤摘要】
一种基于区块链的用户行为数据审计方法及系统


[0001]本专利技术涉及信息安全
,尤其涉及一种基于区块链的用户行为数据审计方法及系统。

技术介绍

[0002]随着云计算的不断发展,以及云平台的快捷部署,用户不用搭建服务器集群,只需要购买或租用相应云服务的存储和计算资源便可完成相关工作,不过云环境的安全问题一直阻碍着云计算的发展。云端的用户行为数据包括用户在云计算环境中发生的各类操作行为,通过用户行为数据的审计对于确认责任归属、追溯用户数据以及限制非法操作等都有很大的帮助,可以有效地缓解用户与云服务商之间的信任问题。目前,许多审计工作引入了第三方审计员(Third Party Auditor,TPA)接受审计委托,但这种审计模式强烈依赖TPA的可信性与安全性,但近年来屡次发生的一些数据泄露和篡改等安全问题足以表明:可信的第三方并不总是值得信任,他们可能由于利益出卖用户数据或篡改审计结果。因此,如何找到一个完全可信的第三方、如何对安全事故的追踪审计、如何解决用户与云服务商的信任问题,是目前亟需解决的问题。
[0003]区块链是一个信息本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于区块链的用户行为数据审计方法,其特征在于,包括以下步骤:S1、执行初始化操作,包括对全局参数、配置初始化,并基于密钥生成中心为用户生成一组主密钥对(PKm,SKm)和一组次密钥对(PKs,SKs);S2、基于统一的数据存储规范实时采集用户行为数据,该数据是用户在云服务中发生的各种操作行为,并以消息的形式异步发送至消息中间件;S3、基于数据分块和二级索引存储机制,将用户行为数据上传至云服务器,将数据指纹等信息上传部署至区块链作为凭证;S4、用户行为数据完整性验证,基于用户审计请求,遍历二级索引存储机制,获取存储用户行为数据的文件集合;基于“挑战

响应

验证”模式,依托区块链网络,使用智能合约对用户行为数据完整性进行审计;S5、以保持完整的用户行为数据作为审计依据,对数据安全事件进行追踪审计以及云服务质量评估审计。2.根据权利要求1所述的一种基于区块链的用户行为数据审计方法,其特征在于,步骤S1中主密钥对(PKm,SKm)用于数据加密,其生成方式为:通过密钥生成方法生成主私钥SKm,主私钥SKm通过单向散列函数执行不可逆计算,生成主公钥PKm;次密钥对(PKs,SKs)用于数据签名;密钥生成方法的具体过程为:S101、进行初始化,根据密钥的复杂程度,设置迭代次数k;S102、通过对用户自定义信息、随机数、当前时间戳信息的拼接处理,生成原始密钥row_key;S103、以预设的密钥种子seed作为扰动项,对原始密钥row_key进行干扰处理,计算生成临时密钥temporary_key;S104、将临时密钥temporary_key赋值给seed,根据预设的迭代次数k,对步骤S103

S104迭代执行,生成最终密钥key。3.根据权利要求1所述的一种基于区块链的用户行为数据审计方法,其特征在于,步骤S2中的用户行为数据包含以下数据结构<用户标识,数据标识,数据类型,操作码,详细内容,扩展字段,原哈希值,新哈希值,时间戳,用户签名>,其中,用户标识和数据标识是通过分布式ID算法生成的唯一标识,数据类型是云端数据的类型,操作码对应的操作包含数据上传、数据下载、更新、删除、检索操作,详细内容是对此次操作的记载,扩展字段用于存放扩展信息,原哈希值为被操作前的数据哈希值,新哈希值为被操作之后的数据的哈希值,用户签名是当前访问数据的用户利用其私钥对该访问记录生成的签名;步骤S2中消息的发送过程为:实例化消息生产者,对用户行为数据,依照其数据结构的属性,构造消息,指定主题、标签,向消息中间件集群异步投递消息,消息中间件根据设定的时间阈值暂存批量消息,等待消费者依据主题订阅消息。4.根据权利要求1所述的一种基于区块链的用户行为数据审计方法,其特征在于,步骤S3的具体过程如下:S301、分段订阅消息中间件中的用户行为数据,根据预设的时间间隔Δt,从消息中间件中分段获取各用户在时间序列[T1,T2],[T2,T3],[T3,T4],

,[T
n
,T
n+1
]内的行为数据,记作X={X1,X2,X3,
……
,X
n
},其中,X
i
表示[T
i
,T
i+1
]内的数据,i∈[1,n];
S302、计算数据块的数据指纹及签名,设数据块集合X的标识为ID
X
,每一个数据块的标号为ID
X1
,ID
X2
,ID
X3

……
,ID
Xn
,对每一个数据块X
i
,计算MD
i
=H(X
i
),MD
i
为数据块X
i
的数据指纹,MD={MD1,MD2,MD3,
……
,MD
n
};对每一个数据块X
i
的数据指纹MD
i
,生成对应的签名S
i
=Sign(MD
i
||ID
Xi
||R,SKs),R为随机生成的辅助变量,SKs为进行数据签名的私钥,S={S1,S2,S3,
……
,S
n
};S303、加密存储数据与更新二级索引存储机制,对数据块集合X的每个数据块进行添加标号并加密存储,生成云端文件集合F={F1,F2,F3,
……
,F
n
},其中,F
i
=E(X
i
||ID
Xi
,PKm),PKm为加密算法E(.)的密钥;对于文件集合F中的每个文件F
i
的关联信息(Addr
i
,Seq
i
)组合成一个节点Node
i
,Addr
i
为文件F
i
的地址,Seq
i
为文件F
i
对应的时间序列,遍历二级索引存储机制,将Node
i
以叶子节点的身份进行插入;S304、区块链上保存凭证,利用PKm加密处理数据指纹、签名信息,通知授权节点以交易的形式将加密信息发布到区块链上作为凭证。5.根据权利要求4所述的一种基于区块链的用户行为数据审计方法,其特征在于,步骤S303中二级索引存储机制的更新操作第一次执行是执行相关的索引机制初始化操作,具体包括属性索引树初始化、时序索引树初始化;文件中存储的数据为已加密的密文;存储用户行为数据的文件作分布式备份;区块链保存用户行为数据的摘要;步骤S304中区块链上保存凭证的具体过程如下:S3041、在存储数据到区块链上之前,通知授权节点执行上链操作,授权节点根据上一个区块的哈希值以及预设随机数进行哈希计算,确定具有最新哈希值的目标区块头;其中,区块头信息包括版本号、父哈希值、默克尔根、时间戳、难度值和随机数;S3042、将用户行为数据的数据指纹信息作为凭证,存储到包括目标区块...

【专利技术属性】
技术研发人员:杨灿赵超军
申请(专利权)人:华南理工大学
类型:发明
国别省市:

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

1