一种基于数据块随机位置取反的数据确定性删除方法技术

技术编号:19436815 阅读:22 留言:0更新日期:2018-11-14 13:15
本发明专利技术提供了一种基于数据块随机取反的数据确定性删除方法。本方法通过对明文数据进行分块加密,并对密文进行随机位置取反的操作,使得云端不存储完整密文。本方法适用条件广泛,允许密钥在主动或者被动的情况下被泄漏,因此采用了各个明文数据块使用单一密钥加密的方法,保存密钥成本降低。本方法较其他数据确定性删除方案而言,步骤更加简洁,适用条件更加广泛。

【技术实现步骤摘要】
一种基于数据块随机位置取反的数据确定性删除方法(一)
本专利技术涉及云端数据安全领域,具体涉及一种基于数据块随机位置取反的数据确定性删除方法。(二)
技术介绍
数据确定性删除的目的是使用户欲删除的数据永久不可被访问,进而保证数据的安全性。为提高云服务的可靠性,云服务提供商通常会将数据做多个备份,且存在主动或被动泄漏用户数据的可能性。然而往往用户已删除的数据仅仅进行逻辑标志删除,事实上并未真正删除。因此,在用户进行删除操作后,如何能保证用户的数据永久性不可被访问具有重要意义。为保证用户数据的安全性,在用户数据上传至云端前先进行加密,再将密文保存于云服务提供商处。然而,在用户执行删除操作后,云服务提供商并未删除所有数据及其备份或者在恶意泄漏用户数据的情况下,云端密文的安全性受到威胁。一旦攻击者通过暴力攻击或其他途径获取密钥,则用户数据泄漏。目前,多数方案考虑更安全的保存密钥,使得攻击者不容易获取密钥。然而,由于保存密钥而带来的巨大开销和成本会导致不小的存储压力。密钥只可以对其加密过的密文进行解密,一旦密文被破坏,则即使获取密钥,攻击者欲想恢复明文也无从下手。因此,只需对密文进行简单的修改,即可换取更大的安全性。(三)
技术实现思路
本专利技术的目的是提供一种基于数据块随机位置取反的确定性删除方法。该方法针对密文二进制数据流进行简易数据变换,使得云端不存储真实密文。本专利技术使用前提较为宽泛,与用户使用何种加密算法无关,且允许用户数据的加密密钥被泄漏。为了达到上述目的,本专利技术采用这样的方案实现:在用户数据明文被加密后首先对密文进行分块操作,再对每个数据块随机选取位置进行逻辑取反,即该位置上0变成1,1变成0。并记录下来每个数据块中数据取反的位置。本方法中涉及到的角色如下:数据拥有者:负责切分数据块,加密数据块,对密文数据块进行简易变换,并保存变换的位置信息。当授权用户访问数据时,恢复真实密文数据,并发送至授权用户处。云服务提供商:负责在云端存储数据拥有者已处理过的密文数据。云服务提供商是不可信的,虽然会诚实地执行数据存储操作,但是同时又是不可信的,期望获得真实数据或在某些情况下会将数据泄露。授权用户:访问数据拥有者在云端存储的数据。解密相应密文,恢复出真实的原始数据。授权用户是可信的,虽然可能会保存密钥副本并进行传播,但是不会保存明文数据。由于明文数据是海量的,保存明文数据开销比保存密钥大很多,此假设合理。本专利技术中设计到如下参数:{M}为明文数据;Data(M)为明文数据分块算法;{Mi}为已进行分块的第i个明文数据块(1≤i≤n);n为明文一共分得的数据块个数;flag为是否对第n个明文数据块进行填充的标记;x为对明文数据块进行填充的比特数;k为加密密钥;DataEncry(Mi,k)为数据块加密算法;{Ci}为分块加密完成后所得的第i个密文数据块;{Si}为第i个数据块欲进行随机取反的位置;OppositeData(Ci,Si)为密文数据块随机取反算法;{Ki}为已进行随机取反处理过的密文数据块;RecoverEncryData(Ki,Si)为对取反后的密文数据块恢复算法;DataDecry(Ci,k)为对密文数据块解密算法;DataBuild(Mi)为将明文数据块组合为明文数据的算法。其具体方法步骤为:(1)在系统中数据明文数据{M},数据拥有者使用Data(M)算法对明文数据进行分块,获得n个明文数据块{Mi}。(2)每个数据块128比特,最后一块不足128比特时用0进行填充。(3)引入标志flag,记录是否为第n个数据块进行填充操作。若对第n个数据块进行数据填充,则flag值设置为1,反之设置为0。(4)数据拥有者生成加密所需密钥k。(5)对每个明文数据块运用加密算法进行加密。明文数据块加密算法表示为DataEncry(Mi,k):第i个数据块Mi用加密密钥k加密后,得到相应的密文数据块{Ci}。(6)随机产生n个整数Si,且1≤Si≤128,Si作为第i个数据块需要逻辑取反的位置标记。(7)针对密文数据块{Ci}中的第i个密文数据块的第{Si}个位置的数据进行逻辑取反。密文数据块随机取反算法表示为OppositeData(Ci,Si)。第i个密文数据块Ci的第Si位数据进行逻辑取反,即0变为1,1变为0。得到经过处理后的密文数据块{Ki}。(8)将步骤(7)重复n遍后,使得每一个密文数据块{Ci}都进行变化更新得到新的密文数据块{Ki}。(9)数据拥有者保存好加密密钥k和密文数据块随机位置集合{Si},并将已经过处理更新的密文数据块{Ki}上传至云服务提供商处进行存储。(10)已经过数据拥有者判定身份的真实性后的授权用户提出访问请求,数据拥有着执行RecoverEncryData(Ki,Si)算法,将处理过的密文数据块恢复为真实的密文数据块,用于授权用户解密访问。(11)数据拥有者将已恢复的密文数据块、密钥及其他附加信息(如授权证书及授权时间等)一起发送给授权用户。(12)授权用户根据获得的密文数据块以及密钥执行DataDecry(Ci,k)解密算法,将密文数据块解密为相应的明文数据块{Mi}。(13)判断flag值是否为1,若为1则进入步骤(14),反之进入步骤(16)。(14)判断用户访问的明文数据块中是否包含Mn,若是则进入步骤(15),反之进入步骤(16)。(15)将已进行数据填充处理过的Mn去掉x比特末尾数据部分。(16)执行DataBuild(Mi)算法,将明文数据块组合为完整的明文数据M。(17)当数据拥有者欲删除某数据时,只需相应删除该数据对应的密文数据取反位置信息{Si}即可。本专利技术所阐述的适用于云端数据确定性删除问题,是考虑到云端安全问题的实际需求,由于密钥管理的安全性问题受到威胁。因此,不再考虑使用更大的时间开销或者存储成本来解决密钥的存储问题,而是转而放宽对密钥保存安全性的限制,转而对密文进行处理,使得本专利技术可适用的场景更加广泛,同时由于云端不存储真实密文而提高了云端数据的安全性。本方法的创新性在于:1.适用的场景更加广泛,本方法可针对密钥被泄漏或恶意获取的情况,在即使攻击者已拿到加密密钥的情况下依旧保证用户数据的安全性。且不引入任何第三方管理机构,减少数据泄漏的可能性。2.对明文数据进行数据分块,由此经加密后获得相应的密文数据块{Ci}。在对密文数据块进行随机处理后,使得每个数据块特殊性保持特殊性。防止攻击者进行恶意尝试,提高了数据的安全性。3.结合本方法的适用条件,在允许密钥被泄漏的情况下,对不同明文数据块使用相同的加密密钥k,减小了对密钥存储与管理的开销。4.不将真实密文上传至不可信的云服务提供商处,而是将经过加密的密文数据块进行单独的随机位数取反。在云端密文被泄漏的情况下,攻击者无法用非法获取的密钥对密文进行解密。(四)附图说明图1为本专利技术所述方法示意图。图2为本专利技术中对密文数据块进行逻辑取反方法示意图。图3为本专利技术数据操作流程图。(五)具体实施方式下面结合附图举例对本专利技术中数据的访问流程做更详细地描述:在本专利技术中数据的访问过程分为四个阶段为数据分块阶段,加密上传阶段,合法用户数据访问阶段和数据拥有者删除阶段。(1)在系统中数据明文数据{M},数据拥有者使用Data本文档来自技高网...

【技术保护点】
1.本专利技术的目的是提供一种基于数据块随机位置取反的确定性删除方法。该方法针对密文二进制数据流进行简易数据变换,使得云端不存储真实密文。本专利技术使用前提较为宽泛,与用户使用何种加密算法无关,且允许用户数据的加密密钥被泄漏。为了达到上述目的,本专利技术采用这样的方案实现:在用户数据明文被加密后首先对密文进行分块操作,再对每个数据块随机选取位置进行逻辑取反,即该位置上0变成1,1变成0。并记录下来每个数据块中数据取反的位置。本方法中涉及到的角色如下:数据拥有者:负责切分数据块,加密数据块,对密文数据块进行简易变换,并保存变换的位置信息。当授权用户访问数据时,恢复真实密文数据,并发送至授权用户处。云服务提供商:负责在云端存储数据拥有者已处理过的密文数据。云服务提供商是不可信的,虽然会诚实地执行数据存储操作,但是同时又是不可信的,期望获得真实数据或在某些情况下会将数据泄露。授权用户:访问数据拥有者在云端存储的数据。解密相应密文,恢复出真实的原始数据。授权用户是可信的,虽然可能会保存密钥副本并进行传播,但是不会保存明文数据。由于明文数据是海量的,保存明文数据开销比保存密钥大很多,此假设合理。本专利技术中设计到如下参数:{M}为明文数据;Data(M)为明文数据分块算法;{Mi}为已进行分块的第i个明文数据块(1≤i≤n);n为明文一共分得的数据块个数;flag为是否对第n个明文数据块进行填充的标记;x为对明文数据块进行填充的比特数;k为加密密钥;DataEncry(Mi,k)为数据块加密算法;{Ci}为分块加密完成后所得的第i个密文数据块;{Si}为第i个数据块欲进行随机取反的位置;OppositeData(Ci,Si)为密文数据块随机取反算法;{Ki}为已进行随机取反处理过的密文数据块;RecoverEncryData(Ki,Si)为对取反后的密文数据块恢复算法;DataDecry(Ci,k)为对密文数据块解密算法;DataBuild(Mi)为将明文数据块组合为明文数据的算法。其具体方法步骤为:(1)在系统中数据明文数据{M},数据拥有者使用Data(M)算法对明文数据进行分块,获得n个明文数据块{Mi}。(2)每个数据块128比特,最后一块不足128比特时用0进行填充。(3)引入标志flag,记录是否为第n个数据块进行填充操作。若对第n个数据块进行数据填充,则flag值设置为1,反之设置为0。(4)数据拥有者生成加密所需密钥k。(5)对每个明文数据块运用加密算法进行加密。明文数据块加密算法表示为DataEncry(Mi,k):第i个数据块Mi用加密密钥k加密后,得到相应的密文数据块{Ci}。(6)随机产生n个整数Si,且1≤Si≤128,Si作为第i个数据块需要逻辑取反的位置标记。(7)针对密文数据块{Ci}中的第i个密文数据块的第{Si}个位置的数据进行逻辑取反。密文数据块随机取反算法表示为OppositeData(Ci,Si)。第i个密文数据块Ci的第Si位数据进行逻辑取反,即0变为1,1变为0。得到经过处理后的密文数据块{Ki}。(8)将步骤(7)重复n遍后,使得每一个密文数据块{Ci}都进行变化更新得到新的密文数据块{Ki}。(9)数据拥有者保存好加密密钥k和密文数据块随机位置集合{Si},并将已经过处理更新的密文数据块{Ki}上传至云服务提供商处进行存储。(10)已经过数据拥有者判定身份的真实性后的授权用户提出访问请求,数据拥有着执行RecoverEncryData(Ki,Si)算法,将处理过的密文数据块恢复为真实的密文数据块,用于授权用户解密访问。(11)数据拥有者将已恢复的密文数据块、密钥及其他附加信息(如授权证书及授权时间等)一起发送给授权用户。(12)授权用户根据获得的密文数据块以及密钥执行DataDecry(Ci,k)解密算法,将密文数据块解密为相应的明文数据块{Mi}。(13)判断flag值是否为1,若为1则进入步骤(14),反之进入步骤(16)。(14)判断用户访问的明文数据块中是否包含Mn,若是则进入步骤(15),反之进入步骤(16)。(15)将已进行数据填充处理过的Mn去掉x比特末尾数据部分。(16)执行DataBuild(Mi)算法,将明文数据块组合为完整的明文数据M。(17)当数据拥有者欲删除某数据时,只需相应删除该数据对应的密文数据取反位置信息{Si}即可。...

【技术特征摘要】
1.本发明的目的是提供一种基于数据块随机位置取反的确定性删除方法。该方法针对密文二进制数据流进行简易数据变换,使得云端不存储真实密文。本发明使用前提较为宽泛,与用户使用何种加密算法无关,且允许用户数据的加密密钥被泄漏。为了达到上述目的,本发明采用这样的方案实现:在用户数据明文被加密后首先对密文进行分块操作,再对每个数据块随机选取位置进行逻辑取反,即该位置上0变成1,1变成0。并记录下来每个数据块中数据取反的位置。本方法中涉及到的角色如下:数据拥有者:负责切分数据块,加密数据块,对密文数据块进行简易变换,并保存变换的位置信息。当授权用户访问数据时,恢复真实密文数据,并发送至授权用户处。云服务提供商:负责在云端存储数据拥有者已处理过的密文数据。云服务提供商是不可信的,虽然会诚实地执行数据存储操作,但是同时又是不可信的,期望获得真实数据或在某些情况下会将数据泄露。授权用户:访问数据拥有者在云端存储的数据。解密相应密文,恢复出真实的原始数据。授权用户是可信的,虽然可能会保存密钥副本并进行传播,但是不会保存明文数据。由于明文数据是海量的,保存明文数据开销比保存密钥大很多,此假设合理。本发明中设计到如下参数:{M}为明文数据;Data(M)为明文数据分块算法;{Mi}为已进行分块的第i个明文数据块(1≤i≤n);n为明文一共分得的数据块个数;flag为是否对第n个明文数据块进行填充的标记;x为对明文数据块进行填充的比特数;k为加密密钥;DataEncry(Mi,k)为数据块加密算法;{Ci}为分块加密完成后所得的第i个密文数据块;{Si}为第i个数据块欲进行随机取反的位置;OppositeData(Ci,Si)为密文数据块随机取反算法;{Ki}为已进行随机取反处理过的密文数据块;RecoverEncryData(Ki,Si)为对取反后的密文数据块恢复算法;DataDecry(Ci,k)为对密文数据块解密算法;DataBuild(Mi)为将明文数据块组合为明文数据的算法。其具体方法步骤为:(1)在系统中数据明文数据{M},数据拥有者使用Data(M)算法对明文数据进行分块,获得n个明文数据块{Mi}。(...

【专利技术属性】
技术研发人员:姚文斌陈宜洁杨奕慰郭珍
申请(专利权)人:北京邮电大学
类型:发明
国别省市:北京,11

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

1