APP下载

基于区块链的监控视频数据存储模型研究

2023-10-20

现代计算机 2023年15期
关键词:分片哈希区块

陈 潮

(浙江警察学院计算机与信息安全系,杭州 310053)

0 引言

随着信息技术的高速发展,以视频监控为代表的数字安防技术在社会各个领域得到广泛应用,国家、企事业单位和个人在重要场所普遍安装各种视频监控设备,视频监控设备每时每刻产生海量视频数据,视频数据的安全存储和可靠共享成为一大难点[1-2]。公安机关在调解群众纠纷和办理案件过程中,监控视频数据是一种极其重要的电子证据,成为调解好群众纠纷和侦破案件的关键证据之一,而各单位的视频监控设备存在由于设备老旧、维护不利和管理不善等原因导致视频数据丢失和被篡改等问题,也存在为掩盖违法犯罪行为而主动删除视频数据等行为。区块链具有分布式存储、去中心化、不可篡改和可溯源等特点,但区块链存储数据容量有限,无法满足视频数据的存储要求,区块链网络也无法承载海量视频数据的传输,而云存储具有存储容量大和访问便捷等特点。结合区块链和云存储的优点,提出一种云存储与区块链相结合的监控视频数据存储模型,可有效检测视频数据的真实性和完整性,在一定程度上防止视频数据的篡改和删除[3-4]。

1 区块链

以比特币为代表的数字货币的兴起,引起各领域学者的关注,兴起学习和研究的热潮,通过对比特币底层技术的研究,发现其核心的数据结构是区块和链,底层核心技术也被学者们命名为区块链技术。区块链是点对点传输、非对称加密技术、哈希算法、共识算法、激励机制和博弈论等众多技术和理论的集成创新,区块链技术虽未提出新的技术,但是具有重大的创新意义[5-7]。区块链由区块和链构成,各区块通过哈希指针前后连接成一条完整的区块链,区块由区块头和区块体两个部分构成,以比特币为例,其中区块头由前一区块哈希值、时间戳、区块版本号、随机数、难度和梅克尔树根等字段组成,区块体由大量的转账交易构成。区块链根据各节点加入区块链网络是否需要授权,分为许可链和非许可链,非许可链允许任何节点随时加入和离开区块链网络,典型的代表就是比特币,是一种完全去中心化的区块链。许可链中任何节点需要获得许可才能加入区块链网络,许可链又分为私有链和联盟链,私有链适合用于一个企事业单位内部,是一种中心化的区块链,联盟链适用于跨部门跨单位之间,是一种部分中心化的区块链,视频监控数据的存储和管理涉及设备所在单位、上级主管单位和监管部门,因此视频监控数据存储模型适合采用联盟区块链。

2 监控视频数据存储模型

监控视频数据存储模型中各单位配置监控设备、视频处理服务器、区块链节点服务器和云存储服务器,视频处理服务器是单位内部视频数据存储的中枢,区块链节点服务器构建区块链网络,存储模型采用云存储技术和联盟区块链技术,云存储技术实现视频数据的海量存储和便捷访问,区块链技术确保上链数据无法篡改,结合两种技术的优势,确保视频数据的真实性和完整性,在一定程度上可以有效防止人为删除和篡改监控设备视频数据[8-10]。

2.1 监控视频数据存储模型架构

视频监控所在单位、上级主管单位和监管单位通过互联网连接,构成联盟区块链网络的各节点,单位节点负责产生交易数据和构建区块,上级主管单位节点和监管部门节点负责交易数据的验证和查询,每个节点配置区块链节点服务器,各个区块链节点服务器采用点对点技术实现监控视频元数据的共享和同步,监控视频数据存储模型架构如图1所示。

单位内部网络连接监控设备、云存储服务器和视频处理服务器。监控设备输出视频数据,云存储服务器存储监控视频数据,视频处理服务器对监控输出的视频数据以固定时间为单位分片,并计算分片视频的哈希值,将分片视频的哈希值等元数据存储到区块链,从而实现监控视频数据的安全存储和防篡改。

2.2 监控视频区块链

各单位因安防的需要,配置大量的监控设备,监控设备输出的视频数据容量巨大,单个区块链难以承载存储全部监控设备输出视频数据的元数据,也会导致视频数据的查询效率低下等问题,因此监控视频数据存储模型采用多条区块链结构,每个监控设备对应一个区块链,每个区块链由首区块和视频区块构成,所有监控设备的区块链首区块都链接汇聚到创世区块,创世区块由上级主管单位和监管单位协作生成,整体区块链数据结构如图2所示,当一单位安装新的监控设备时,由监控设备所在单位的视频处理服务器创建监控设备首区块,监控设备视频数据的元数据作为交易,构建视频区块[11-12]。

2.3 区块链区块数据结构

监控设备对应的区块链由监控设备首区块和视频区块构成,视频处理服务器生成监控设备首区块,视频区块由区块头和区块体构成,区块头包含前一区块哈希值、时间戳、区块版本号、监控设备编号、区块哈希值、视频总数和梅克尔树根等字段,区块数据结构如图3 所示。区块体由监控视频数据的元数据构成,元数据包含监控设备所在单位编号、监控设备编号、视频数据编号、视频证据数字签名、视频数据哈希值和视频数据时间等,元数据的字段构成见表1。视频处理服务器负责对监控视频数据以1分钟为单位进行分片,每个监控设备每天产生1440 个分片视频,1440 个分片视频的哈希值等元数据作来交易构建梅克尔树,即1440 个叶子节点,以2片叶子节点为一组计算哈希,然后每2片相邻的叶子节点联合起来做一次哈希计算成为上层叶子节点的哈希值,持续向上层计算就产生了一个最顶层的节点的哈希值,即为梅克尔树根,该值存储在视频区块头中,当任何一个元数据发生变化,将导致梅克尔树根的变化,从而改变视频区块哈希值,无法维持各区块之间的链接,因此该区块数据结构在设计上确保区块链上链数据无法篡改。

表1 视频区块体交易(元数据)字段

图3 区块数据结构

2.4 监控视频数据存储

监控视频的产生、处理、传输和存储过程涉及监控设备、视频处理服务器、云存储服务器和区块链节点服务器,监控视频数据的存储过程如图4所示。

图4 监控视频数据存储流程

下面以单位A 的监控设备为例说明,具体步骤如下:

(1)监控设备经所在单位授权后,安装部署在单位内部,并连接单位内部网络。

(2)监控设备通过单位内部网络向视频处理服务器传输产生的视频。

(3)视频处理服务器对监控视频数据以固定时间为单位进行分片,将分片视频传输给云存储服务器。

(4)云存储服务器接收分片视频,存储后返回结果。

(5)视频处理服务器计算出分片视频的哈希值,将监控设备所在单位编号、监控设备编号、视频数据编号、视频证据数字签名、视频数据哈希值和视频数据时间等元数据传输给单位区块链节点服务器。

(6)区块链节点服务器以元数据构建交易,并通过点对点网络传输到区块链各节点服务器。

(7)区块链节点服务器运行共识算法,确定构建新区块的区块链节点服务器,该节点服务器采集交易数据构建新的区块,并将新区块通过点对点网络传输到区块链各节点服务器。

(8)区块链各节点服务器对接收到的新区块进行验证,验证通过则确认为最新的区块。

(9)区块链节点服务器向视频处理服务器反馈元数据上链的结果。

3 结语

监控设备广泛应用在安防领域,产生海量的视频数据,由于管理不善、维护不力和人为删除等原因往往导致监控视频数据的丢失或篡改。在研究云存储和区块链的基础上,结合区块链去中心化、难篡改和可溯源等特性,提出一种基于区块链的监控视频数据存储模型,监控视频数据存储在单位内部的云存储服务器,监控视频数据的哈希值等元数据存储在区块链,区块链中的哈希值用于验证视频数据的真实性,充分发挥云存储和区块链的优势,在一定程度上解决监控视频数据的丢失和篡改问题,对于提高监控视频数据的安全性和可靠性有一定的应用价值。

猜你喜欢

分片哈希区块
上下分片與詞的時空佈局
区块链:一个改变未来的幽灵
分片光滑边值问题的再生核方法
CDN存量MP4视频播放优化方法
区块链:主要角色和衍生应用
基于模糊二分查找的帧分片算法设计与实现
区块链+媒体业的N种可能
读懂区块链
基于OpenCV与均值哈希算法的人脸相似识别系统
基于维度分解的哈希多维快速流分类算法