利索能及
我要发布
收藏
专利号: 2018100658705
申请人: 中南民族大学
专利类型:发明专利
专利状态:已下证
更新日期:2026-06-16
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种分布式存储环境下实现节点数据安全的方法,其特征在于,包括:

步骤1,全或无变换算法对存储数据进行预处理得到全或无变换包,具体包括存储数据的编码过程和密钥的加密过程;存储数据的编码过程是将存储数据分组后基于加密算法得到密文,密钥的加密过程是将密文基于流密码得到一个密钥以及密钥的密文,并基于密钥的密文和密文得到全或无变换包;

步骤2,系统纠删码对全或无变换包分布式存储,具体包括系统纠删码冗余编码过程和分布式存储过程,其中,系统纠删码冗余编码过程是将全或无变换包通过系统纠删码技术冗余编码得到n个编码块,分布式存储过程是对n个编码块分别计算出对应的散列值,最后把n个编码块存储至多个节点,n个散列值存储至中央服务器安全保管然后分布式存储在n个服务器节点;

步骤3,基于步骤2分布式存储的编码块,对节点数据进行重构,包括恢复全或无变换包过程和解码全或无变换包过程,解码全或无变换包过程是预处理过程的逆运算,恢复全或无变换包过程是把分布式存储的节点数据整合的过程。

2.根据权利要求1所述的一种分布式存储环境下实现节点数据安全的方法,其特征在于,所述步骤1中,存储数据编码过程首先定义存储数据M,CBC模式对存储数据M进行分组,M由r个字组成(M1,….Mi,…Mr),每个字的长度为b位;KA是一个随机生成密钥,E是固定的加密算法,i是变量,范围从1到r;然后将明文块Mi异或变量i的密文,得到r个编码块S1…Sr,即密文S;公式计算如下:

3.根据权利要求1所述的一种分布式存储环境下实现节点数据安全的方法,其特征在于,所述步骤1中,密钥的加密过程基于流密码,对密文S使用SHA-3计算出512位的散列值h,然后把散列值h当作流密码中的密钥,把KA当作流密码的明文输入,由于KA最长只有256位,不足以进行异或运算,故而扩充KA与h一样长,然后将扩充后的密钥与h异或运算,得到密钥KA的密文Sr+1;最后,把存储数据编码过程得到的S(S1…Sr)和密钥的加密过程得到的Sr+1合并,S1,….,Sr+1即全或无变换包。

4.根据权利要求1所述的一种分布式存储环境下实现节点数据安全的方法,其特征在于,所述系统纠删码冗余编码的具体过程包括:系统纠删码会把全或无变换包当作原始输入数据,分成k个数据块,即一个k行1列的矩阵A;另外一个n行k列的生成矩阵G,矩阵G中前k行由单元矩阵构成,后n-k行由范德蒙矩阵或柯西矩阵构成;生成矩阵G乘以矩阵A得到n个编码块(y1,…,yn);由于系统纠删码的生成矩阵G中包含单元矩阵,因此y1,…yk编码块等于数据块A1,…,Ak;从而全或无变换包通过系统纠删码技术冗余编码得到n个编码块,这n个编码块由n-k个冗余编码块和k个数据块组成,然后分布式存储在n个服务器节点。

5.根据权利要求1所述的一种分布式存储环境下实现节点数据安全的方法,其特征在于,分布式存储的具体过程包括:系统纠删码对全或无变换包进行冗余编码后得到n个编码块(y1,…,yn),然后用散列函数SHA-3对n个编码块分别计算出对应的散列值h1,…,hn,最后把n个编码块存储至多个节点,n个散列值存储至中央服务器安全保管。

6.根据权利要求1所述的一种分布式存储环境下实现节点数据安全的方法,其特征在于,步骤3中恢复全或无变换包过程具体包括:

步骤3.1、从服务器节点中获取分片数据yi,计算对应的哈希值Hi,

步骤3.2、判断Hi是否与存储在中央服务器中的hi相等;如果相等,可重构的分片数量t加1,继续判断下一个分片数据,直至t满足门限值k或分片数据已检索结束;如果不相等,说明分片数据被篡改,丢弃被篡改的分片数据,再判断t是否满足门限值k,如果满足,用纠删码重构t份分片数据,然后恢复出正确的全或无变换包;

解码全或无变换包过程是预处理过程的逆运算,数据重构结束后,得到正确的全或无变换包,全或无变换包含有S和Sr+1;首先,根据S计算出散列值h,然后依据流密码的解密过程,把Sr+1异或运算散列值h,解密出扩充后的密钥,把扩充后的密钥去掉填充位,得到密钥KA;最后,用密钥KA解密出分组明文,从而得到明文M。

7.根据权利要求1所述的一种分布式存储环境下实现节点数据安全的方法,其特征在于,所述步骤1中,存储数据编码基于全或无变换算法进行,具体过程如下:步骤2.1、首先,存储数据M分组为r个字(M1,….Mi,…Mr),每个字长度为b位,选取AES为加密算法,KA作为AES加密的密钥,变量i看做AES的随机明文,其中,i取值从1开始,然后r个明文块通过公式(1)计算得到r个对应的密文块,组成整个密文S,这一步完成了存储数据M预处理为密文S的转换;

步骤2.2、应用流密码的思想,对整个密文S使用SHA-3计算散列值h,把散列值h当作流密码中的密钥,把KA当作流密码的明文输入,进行异或运算,得到一个密文块Sr+1;

步骤2.3、S1,….,Sr+1即全或无变换包。

8.根据权利要求7所述的一种分布式存储环境下实现节点数据安全的方法,其特征在于,所述步骤1中,所述步骤2.2中,对密钥KA加密前,先扩充KA的长度与h一样长,在KA的尾部填充一段固定值与h一样长,填充的固定值用一个1后面跟若干个0;从而KA和h一样长,进行流密码加密,得出密钥的密文Sr+1;整合明文对应的密文S和密钥KA对应的密文Sr+1,得到完整的全或无变换包,完成了存储数据编码过程。