本发明涉及区块链,尤其是一种分级管理的办案数据的存储与验证方法及系统。
背景技术:
1、现有的办案数据,单位对采集后的数据采用集中化存储方式,带来很多明显的弊端,首先,数据本身存储的安全性存在隐患,一旦硬件损坏,数据部分或者全部丢失,另外,没有相应的认证机制,存在数据被篡改的可能,从而导致相关部门利用其职能进行徇私舞弊等不法行为。并且在数据的管理上没有依照相关的规章进行层级化管理,容易导致个别人员轻易可以查询和篡改数据。
技术实现思路
1、(一)解决的技术问题
2、为了解决上述技术问题,本发明提供一种分级管理的办案数据的存储与验证方法及系统,所述方法通过对办案数据的存储与验证进行分级管理,基于不同的权限限定不同的上传和下载的范围,对办案数据进行规范化管理;基于区块链和ipfs(即星际文件系统)技术对办案数据进行存储与上链,通过去中心化的方式对操作信息以及基础信息进行记录。由于存储方式采用ipfs,且记账方式采用去中心化区块链,存储后的数据无法人为修改或删除,且在使用过程对数据进行去中心化验证等方式,从而确保数据的绝对准确性,不存在任何数据丢失、篡改、弄虚作假的行为。
3、(二)技术方案
4、为了解决上述存在的技术问题,实现发明目的,本发明是通过以下技术方案实现的:
5、一种分级管理的办案数据的存储与验证方法,包括如下步骤:
6、s1:身份信息获取,根据不同等级的身份信息分配不同权限;
7、s2:上传办案文件数据信息,办案相关人员通过分配的身份信息,根据不同办案文件的等级不同,将文件上传到不同的ipfs分布式文件服务平台,星际文件系统返回本文件的哈希值;
8、s3:根据返回的哈希值,对上链数据进行组合;
9、s4:基于用户的访问权限对办案文件以及数据的下载与验证。
10、进一步地,所述身份信息按照等级由低到高包括经办人、科室负责人、分管负责人、总负责人。
11、所述等级从低到高包括第一等级、第二等级、第三等级和第四等级;
12、对应地,第一等级的办案数据上传至第一ipfs模块,第二等级的办案数据上传至第二ipfs模块,第三等级的办案数据上传至第三ipfs模块,第四等级的办案数据上传至第四ipfs模块。
13、进一步地,所述步骤s3包括:
14、s31:对上传的文件进行文件指纹提取,采用哈希运算的方式,获取文件的指纹信息;
15、s32:获取文件的类型,文件的等级,当前日期时间,操作人员信息;
16、s33:将上述信息进行标记连接,并采用混合加密算法进行可逆化加密,以此作为上链数据;
17、s34:将上一步准备好的上链数据,提交到对应的私有区块链系统,并记录下上链信息;所述私有区块链系统包括第一区块链、第二区块链、第三区块链以及第四区块链。
18、所述混合加密算法包括如下步骤:
19、(1)基于数字签名算法私钥加密生成数字签名sig1、sig2,并生成验证值y;
20、(2)将数据的明文、数字签名sig1、sig2以及验证值y拼接,基于aes算法加密生成密文r;
21、(3)将密钥k1使用公钥加密算法加密成密钥密文k2,将密钥密文k2和密文r上传;
22、(4)当下载数据时,基于私钥解密算法解密密钥密文k2,得到密钥k1,基于aes解密算法解密密文r得到明文、数字签名sig1、sig2以及验证值y;
23、(5)验证明文的完整性,基于数字签名算法验证签名,若验证成功,则所得的明文有效。
24、进一步地,所述数字签名算法为基于改进的cfs签名算法,具体过程包括:
25、a.随机选择一个f2上的(n,k)goppa码c,纠错能力为j,校验矩阵为h,校验子译码算法γ;随机选择f2上的置换矩阵p;选择正整数w≤j,w|n,构造基于编码的哈希函数:
26、
27、私钥为(h,p,γ);
28、b.选择随机数r,将其转换为二进制向量r,按下式计算:
29、f=γ(hc(hc(m)||r))
30、其中,m为需要签署的消息;
31、则签名值为:(r||fp)。
32、进一步地,所述步骤s4包括:
33、s41:确定用户的访问权限,公众、相关涉案人员、系统内不同权限的人员分别对应不同的权限;
34、s42:按照权限分别通过不同的私有区块链下载记账信息;
35、s43:将记账信息反向解密,获得文件在私有ipfs星际文件系统中的哈希值,以及本地计算的文件指纹信息;
36、s44:根据ipfs的文件哈希值,从私有ipfs星际文件系统中下载文件到本地;
37、s45:通过下载到本地的文件,进行指纹运算,并将计算的指纹值通区块链的记账信息指纹值进行比对,从而确保文件的准确无误。
38、进一步地,所述公众访问权限最低,仅能查询和下载非隐私数据;相关涉案人员除具有公众访问权限外还可以查询与本人身份相关的案件的部分数据;系统内不同权限的人员按照权限的不同可以查询不同的办案信息。
39、本发明还提供一种分级管理的办案数据的存储与验证系统,包括:
40、身份信息获取模块,其用于获取用户身份信息,根据不同等级的身份信息分配不同权限;
41、本地模块,其用于存储原始办案数据,其中包括时间、办案人员、等级、案件具体内容;
42、ipfs模块,包括若干个ipfs模块,分别存储不同等级的办案数据;
43、上传办案文件数据信息时,办案相关人员通过分配的身份信息,根据不同办案文件的等级不同,将文件上传到不同的私有ipfs分布式文件服务平台,ipfs返回本文件的hash值;
44、区块链模块,其包括若干个区块链,分别对应若干个智能合约,与所述若干个ipfs模块相对应;
45、访问模块,其用于对办案文件以及数据的访问、下载与验证;
46、具体包括:
47、确定用户的访问权限,公众、相关涉案人员、系统内不同权限的人员分别对应不同的权限;
48、其中,公众访问权限最低,仅能查询和下载非隐私数据;相关涉案人员除具有公众访问权限外还可以查询与本人身份相关的案件的部分数据;系统内不同权限的人员按照权限的不同可以查询不同的办案信息;
49、按照权限分别通过不同的私有区块链下载记账信息;
50、将记账信息反向解密,获得文件在私有ipfs星际文件系统中的hash值,以及本地计算的文件指纹信息;
51、根据ipfs的文件hash值,从私有ipfs星际文件系统中下载文件到本地;
52、通过下载到本地的文件,进行指纹运算,并将计算的指纹值通区块链的记账信息指纹值进行比对,从而确保文件的准确无误。
53、进一步地,所述等级从低到高包括第一等级、第二等级、第三等级和第四等级;对应地,第一等级的办案数据上传至第一ipfs模块,第二等级的办案数据上传至第二ipfs模块,第三等级的办案数据上传至第三ipfs模块,第四等级的办案数据上传至第四ipfs模块。
54、(三)有益效果
55、本发明通过区块链和ipfs(即星际文件系统)技术对办案数据进行存储与上链,通过去中心化的方式对操作信息以及基础信息进行记录。由于存储方式采用ipfs,且记账方式采用去中心化区块链,存储后的数据无法人为修改或删除,且在使用过程对数据进行去中心化验证等方式,从而确保数据的绝对准确性,不存在任何数据丢失、篡改、弄虚作假的行为,同时通过对办案数据的存储与验证进行分级管理,基于不同的权限限定不同的上传和下载的范围,对办案数据进行规范化管理。