用于不可信服务器环境中数据文件加密及完整性验证方法及其系统与流程

    专利2022-07-07  45


    本发明涉及数据隐私保护技术领域,具体涉及一种用于不可信服务器环境中数据文件加密及完整性验证方法及其系统。



    背景技术:

    随着大数据时代的到来,云计算得到了广泛的应用,进而衍生出云存储。这一重要存储模式,它能够为企业和个人提供大容量的存储平台、具有易于管理,扩展性高、低成本等特点。云存储模式的出现,存储用户不再需要购买昂贵的设备,只需要支付少量的费用,就可以将自己的数据存储在云服务器上,更加的方便、快捷。数据外包实际是用户放弃对数据的最终控制权,数据的安全性和完整性成为用户选择云存储的主要影响因素。例如目前大多数医院都采用电子病历系统。而第三方服务器的结构中所提供的服务在不可信的网络环境下并不安全可靠。在这种不可信服务环境中,对海量的高隐私性短文件进行隐私保护显得尤为重要。

    对于数据的完整性验证,2007年有学者提出了数据持有证明协议pdp,能够检验服务器端的数据是否遭到供应商的破坏。1978年有学者提出了对数据同态加密的概念,即在不解密密文的情况下,通过对密文执行操作来实现对明文的操作,且其结果一致。同态加密的优点在于如果需要对大量的密文进行计算,同态加密方案不需要对每个密文进行解密、计算,而是直接对大量的密文进行计算,对最终的密文结果进行解密即可得到明文运算的结果,提高了计算的效率,但它并不对数据的完整性进行保护。

    近年来涌现了结合pdp完整性协议和同态加密技术能够保护服务器上的数据文件的完整性和机密性的保护方法,但基于bgn同态加密算法的密文文件完整性验证暂无人提及。



    技术实现要素:

    本发明目的在于提供一种用于不可信服务器环境中数据文件加密及完整性验证方法及其系统,利用了bgn同态加密算法的性质以及pdp数据持有证明协议,很好地解决了在不可信服务器环境中数据文件的安全问题。

    为达成上述目的,本发明提出如下技术方案:一种用于不可信服务器环境中数据文件加密及完整性验证方法,包括如下步骤:

    1)对密钥生成系统输入安全参数进行初始化;

    2)生成bgn同态加密算法的公钥和私钥;

    3)基于离散对数困难问题,构造数据签名的公钥和私钥;

    4)采用bgn同态加密算法的公钥加密数据文件,获得密文文件fc;

    5)根据数据签名的私钥,对待加密的数据文件中所有文件块构造分别标签,获得标签集合φ;

    6)上传密文文件fc和标签集合φ至云端服务器;

    7)发送文件完整性挑战至云端服务器,以使云端服务器执行计算挑战指定的所有标签的标签和及挑战指定的所有文件块的文件块和的操作,并返回标签和及文件块和的计算结果;

    8)使用文件块和、数据签名的公钥,在bgn同态加密算法私钥消除随机数干扰条件下验证标签和,并且当验证结果符合密文文件完整性验证目标时,判断在云端服务器内存储的密文文件完整。

    进一步的,所述bgn同态加密算法公钥和私钥的生成过程如下:

    选择阶为n=q1·q2的两个乘法群g、g1,乘法群g、g1满足双线性映射e:g×g→g1,其中,q1、q2为不相等的两个素数;随机选取乘法群g的两个不相等的生成元g、u,以及选取乘法群g子群的生成元h,则bgn同态加密算法的公钥为pk(n,g,g1,e,h,g),私钥为sk(q1)。

    进一步的,所述数据签名的私钥为prk(q3),公钥为其中,q3为与q1、q2均不相等的素数,v是乘法群g不同于u、g的随机生成元;

    进一步的,所述待加密的数据文件记为f,f={b1,b2,b3,......,bm},bi(1≤i≤m)为数据文件的任一文件块,为小于q2的正整数集合;采用bgn同态加密算法的公钥pk(n,g,g1,e,h,g)对待加密的数据文件f中每个文件块进行加密;加密后的数据文件即为密文文件,记为fc,fc={c1,c2,c3,......,cm},其中,ri是密钥生成系统产生的真随机数。

    进一步的,所述标签集合φ={t1,t2,t3,......,tm},对标签集合φ中任一文件块bi,构造其标签为ti,其中,ki是密钥生成系统产生的真随机数。

    进一步的,所述发送文件完整性挑战为向云端服务器发送随机数集合r,所述随机数集合r中的随机数表示待验证文件完整性的文件块bi的下标;所述云端服务器根据bgn同态加密算法的性质,执行计算标签和、文件块和操作,具体计算公式如下:

    其中,δ为标签和,μ为文件块和。在具体实施过程中,根据挑战随机数集合r的不同,计算返回的标签和、文件块和不同。

    进一步的,所述步骤8)的验证过程为:在bgn同态加密算法私钥消除随机数干扰条件下,计算数据签名的公钥其分别与文件块和、标签和在双线性映射下的映射值,即分别计算所述密文文件完整性验证目标为双线性映射的映射值相等,计算公式如下,

    本发明还提出了一种用于不可信服务器环境中数据文件加密及完整性验证系统,包括:处理器,所述处理器用于执行存储在存储器中的以下程序模块;

    初始化模块,用于对密钥生成系统输入安全参数进行初始化;

    密钥生成模块,用于生成bgn同态加密算法的公钥和私钥;

    密钥构造模块,用于基于离散对数困难问题,构造数据签名的公钥和私钥;

    加密模块,用于根据bgn同态加密算法的公钥加密数据文件,获得密文文件fc;

    标签构造模块,用于根据数据签名的私钥,对待加密的数据文件中所有文件块构造分别标签,获得标签集合φ;

    上传模块,用于向云端服务器上传密文文件fc和标签集合φ;

    挑战发起模块,用于向云端服务器发送文件完整性挑战,以使云端服务器执行计算挑战指定的所有标签的标签和及挑战指定的所有文件块的文件块和的操作,并返回标签和及文件块和的计算结果;

    验证判断模块,用于在bgn同态加密算法私钥消除随机数干扰的条件下采用文件块和、数据签名的公钥验证标签和,并且当验证结果符合密文文件完整性验证目标时,判断在云端服务器存储的密文文件完整。

    本发明进一步提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现上述的用于不可信服务器环境中数据文件加密及完整性验证方法。

    由以上技术方案可知,本发明的技术方案提供的用于不可信服务器环境中数据文件加密及完整性验证方法及其系统,获得了如下有益效果:

    本发明公开的用于不可信服务器环境中数据文件加密及完整性验证方法及其系统,其方法包括:1)对密钥生成系统输入安全参数进行初始化;2)生成bgn同态加密算法的公钥和私钥;3)基于离散对数困难问题,构造数据签名的公钥和私钥;4)采用bgn同态加密算法的公钥加密数据文件,获得密文文件fc;5)根据数据签名的私钥,对待加密的数据文件中所有文件块构造分别标签,获得标签集合φ;6)上传密文文件fc和标签集合φ至云端服务器;7)发送文件完整性挑战至云端服务器,返回标签和及文件块和的计算结果;8)使用文件块和、数据签名的公钥,在消除随机数干扰条件下验证标签和,判断在云端服务器内存储的密文文件完整性;本发明结合bgn同态加密算法与pdp数据持有证明协议,同时构造数据签名实现对数据文件的完整性检验,提高数据文件在不可信服务器环境中的安全性,有效保证数据的隐私性和可用性。

    本发明的数据文件加密及完整性验证方法应用于不可信服务器环境中医疗数据文件的加密及完整性验证时,为现有技术中加密算法无法保证的数据完整性提供了保障。相较于pdp数据持有证明协议的加密算法,bgn同态加密算法是基于子群决策问题所构造的,提供了更高的机密性,满足语义安全。此外,本发明所构造的数据签名是基于离散对数困难问题的,因此可以一次性检验挑战指定的所有文件块,将原本pdp数据持有证明协议的无法实现的确定性检验变为了可能。

    应当理解,前述构思以及在下面更加详细地描述的额外构思的所有组合只要在这样的构思不相互矛盾的情况下都可以被视为本公开的发明主题的一部分。

    结合附图从下面的描述中可以更加全面地理解本发明教导的前述和其他方面、实施例和特征。本发明的其他附加方面例如示例性实施方式的特征和/或有益效果将在下面的描述中显见,或通过根据本发明教导的具体实施方式的实践中得知。

    附图说明

    附图不意在按比例绘制。在附图中,在各个图中示出的每个相同或近似相同的组成部分可以用相同的标号表示。为了清晰起见,在每个图中,并非每个组成部分均被标记。现在,将通过例子并参考附图来描述本发明的各个方面的实施例,其中:

    图1为本发明用于不可信服务器环境中数据文件加密及完整性验证方法的基本流程图;

    图2为本发明用于不可信服务器环境中数据文件加密及完整性验证方法文件上传结构图;

    图3为本发明用于不可信服务器环境中数据文件加密及完整性验证方法进行完整性验证的系统结构图。

    具体实施方式

    为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例的附图,对本发明实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于所描述的本发明的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。除非另作定义,此处使用的技术术语或者科学术语应当为本发明所属领域内具有一般技能的人士所理解的通常意义。

    本发明专利申请说明书以及权利要求书中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,除非上下文清楚地指明其它情况,否则单数形式的“一个”“一”或者“该”等类似词语也不表示数量限制,而是表示存在至少一个。“包括”或者“包含”等类似的词语意指出现在“包括”或者“包含”前面的元件或者物件涵盖出现在“包括”或者“包含”后面列举的特征、整体、步骤、操作、元素和/或组件,并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。“上”“下”“左”“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。

    基于现有技术中提出了结合pdp完整性协议和同态加密技术保护服务器上的数据文件的完整性和机密性的方法,但是现有技术中采用paillier同态加密方法进行数据文件加密及验证的方法不能满足语义安全的要求;因此,本发明旨在提出一种用于不可信服务器环境中数据文件加密及完整性验证方法及其系统,旨在于将bgn同态加密的方案和pdp数据持有证明协议、数字签名技术结合,运用bgn同态加密的性质对签名进行计算,验证云端服务器返回的计算结果,有效的保护数据文件的机密性和完整性。

    本发明实例的公钥、私钥的产生以及运算都是采用群运算。

    本发明技术方案的技术效果在于提高云端服务器中数据文件的安全性,技术方案的构思如下:系统生成随机且具有不可区分性的bgn同态加密算法的公私钥以及数据签名的公私钥,数据持有者上传数据文件至客户端,客户端对其进行加密,并生成数据标签集合上传至云端服务器,数据持有者可对云服务器所存储的数据文件的完整性发送文件完整性挑战,云端服务器返回证据,客户端验证证据与验证目标的符合度,判断当前被验证的密文文件的完整性,提高数据文件的安全性。

    下面结合附图所示的实施例,对本发明的用于不可信服务器环境中数据文件加密及完整性验证方法及其系统作进一步具体介绍。

    结合图1所示,用于不可信服务器环境中数据文件加密及完整性验证方法,包括如下步骤:

    1)对密钥生成系统输入安全参数进行初始化;

    2)生成bgn同态加密算法的公钥和私钥;

    3)基于离散对数困难问题,构造数据签名的公钥和私钥;

    4)采用bgn同态加密算法的公钥加密数据文件,获得密文文件fc;

    5)根据数据签名的私钥,对待加密的数据文件中所有文件块分别构造标签,获得标签集合φ;

    6)上传密文文件fc和标签集合φ至云端服务器;

    7)发送文件完整性挑战至云端服务器,以使云端服务器执行计算挑战指定的所有标签的标签和、所有文件块的文件块和的操作,并返回标签和及文件块和的计算结果;

    8)使用文件块和、数据签名的公钥,在bgn同态加密算法私钥消除随机数干扰条件下验证标签和,并且当验证结果符合密文文件完整性验证目标时,判断在云端服务器内存储的密文文件完整。

    本发明提供的实施例具体内容如下,步骤2)中bgn同态加密算法公钥和私钥的生成过程如下:选择阶为n=q1·q2的两个乘法群g、g1,乘法群g、g1满足双线性映射e:g×g→g1,其中,q1、q2为不相等的两个素数;随机选取乘法群g的两个不相等的生成元g、u,以及选取乘法群g子群的生成元h,则bgn同态加密算法的公钥为pk(n,g,g1,e,h,g),私钥为sk(q1)。步骤3)构造的数据签名的私钥为prk(q3),公钥为其中,q3为与q1、q2均不相等的素数,v是乘法群g不同于u、g的随机生成元。

    将待加密的数据文件记为f,f={b1,b2,b3,......,bm},bi(1≤i≤m)为数据文件的任一文件块,为小于q2的正整数集合,例如,病人信息文件;采用bgn同态加密算法的公钥pk(n,g,g1,e,h,g)对待加密的数据文件f中每个文件块进行加密;加密后的数据文件即为密文文件,记为fc,fc={c1,c2,c3,......,cm},其中,ri是密钥生成系统产生的真随机数,目的是为了对箱体的明文信息在加密后得到不相同的密文结果。

    对数据文件记f构建标签集合φ,φ={t1,t2,t3,......,tm},对标签集合φ中任一文件块bi,构造其标签为ti,ki是密钥生成系统产生的真随机数,目的是为了确保数据文件的相同文件块产生不相同的标签。

    结合图2和图3所示,在具体实施时,真实的数据文件通常为数据拥有者保有,对数据文件的加密由数据拥有者在客户端操作,在客户端完成加密操作后获得的密文文件以及标签集合φ后直接上传至云端服务器;当需要对密文文件进行处理操作时,由于不知道云端服务器的密文文件是否被更改破坏,需要在处理前进行文件完整性验证,即步骤7)向云端服务器发送文件完整性挑战,该操作由数据拥有者在客户端执行。

    具体为,客户端发送文件完整性挑战为向云端服务器发送随机数集合r,随机数集合r中的随机数表示待验证文件完整性的文件块bi的下标;云端服务器根据bgn同态加密算法的性质,执行计算挑战指定的所有标签的标签和、所有文件块的文件块和的操作,具体计算公式如下:

    其中,δ为标签和,μ为文件块和。

    将云端服务器反馈的标签和、文件块和记为证据p,客户端根据证据p、数据签名的公钥、bgn同态加密算法私钥验证密文文件完整性的过程为:在bgn同态加密算法私钥消除随机数干扰条件下,计算数据签名的公钥其分别与文件块和、标签和在双线性映射下的映射值,即分别计算所述密文文件完整性验证目标为双线性映射的映射值相等,即

    对于bgn同态加密算法,其运算满足如下通式,

    加法计算式:ci·cj=enc(mi mj),乘法计算式:e(ci,cj)=enc(mi·mj),其中ci、cj分别表示经bgn同态加密算法加密获得的密文,mi、mj分别表示加密前的明文;因此,

    本实施例的等式成立仅限于密文文件块没有被攻击,没有受到恶意篡改,即表明云端服务器上所存储的、挑战指定的所有文件块都是完整的;若一些实施例中上述等式不成立,则表明密文文件块被攻击,受到恶意篡改,云端服务器上所存储的密文文件不完整。

    本发明通过提出一种用于不可信服务器环境中数据文件加密及完整性验证方法,对用户需要加密保护的数据文件进行保护,例如医疗数据文件,从机密性和完整性角度提高了健康医疗数据系统中的医生上传的病人信息文件的安全性,为病人的隐私提供了更好的保护。

    本发明一实施例公开了一种用于不可信服务器环境中数据文件加密及完整性验证系统,该系统采用上述的用于不可信服务器环境中数据文件加密及完整性验证方法加密及验证数据文件完整性,包括初始化模块,用于对密钥生成系统输入安全参数进行初始化;密钥生成模块,用于生成bgn同态加密算法的公钥和私钥;密钥构造模块,用于基于离散对数困难问题,构造数据签名的公钥和私钥;加密模块,用于根据bgn同态加密算法的公钥加密数据文件,获得密文文件fc;标签构造模块,用于根据数据签名的私钥,对待加密的数据文件中所有文件块分别构造标签,获得标签集合φ;上传模块,用于向云端服务器上传密文文件fc和标签集合φ;挑战发起模块,用于向云端服务器发送文件完整性挑战,以使云端服务器执行计算挑战指定的所有标签的标签和及挑战指定的所有文件块的文件块和的操作,并返回标签和及文件块和的计算结果;验证判断模块,用于在bgn同态加密算法私钥消除随机数干扰的条件下采用文件块和、数据签名的公钥验证标签和,并且当验证结果符合密文文件完整性验证目标时,判断在云端服务器存储的密文文件完整。

    本发明另一实施例也公开了一种用于不可信服务器环境中数据文件加密及完整性验证系统,该系统包括处理器和存储器;示例性的,用于不可信服务器环境中数据文件加密及完整性验证方法可以被分割成多个模块,多个模块被存储在存储器中,由处理器执行完成本发明。所述多个模块或单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述本发明的验证方法在用于不可信服务器环境中数据文件加密及完整性验证系统中的执行过程。例如,初始化模块,用于对密钥生成系统输入安全参数进行初始化;密钥生成模块,用于生成bgn同态加密算法的公钥和私钥;密钥构造模块,用于基于离散对数困难问题,构造数据签名的公钥和私钥;加密模块,用于根据bgn同态加密算法的公钥加密数据文件,获得密文文件fc;标签构造模块,用于根据数据签名的私钥,对待加密的数据文件中所有文件块分别构造标签,获得标签集合φ;上传模块,用于向云端服务器上传密文文件fc和标签集合φ;挑战发起模块,用于向云端服务器发送文件完整性挑战,以使云端服务器执行计算挑战指定的所有标签的标签和及挑战指定的所有文件块的文件块和的操作,并返回标签和及文件块和的计算结果;验证判断模块,用于在bgn同态加密算法私钥消除随机数干扰的条件下采用文件块和、数据签名的公钥验证标签和,并且当验证结果符合密文文件完整性验证目标时,判断在云端服务器存储的密文文件完整。

    上述两实施例公开的用于不可信服务器环境中数据文件加密及完整性验证系统,可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备系统。所述用于不可信服务器环境中数据文件加密及完整性验证系统可包括,但不仅限于,处理器、存储器,还可以包括其它元器件。

    所述处理器可以是计算机的中央处理单元,还可以是其它通用处理器、数字信号处理器、专用集成电路、现成可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述用于不可信服务器环境中数据文件加密及完整性验证系统的控制中心,利用各种接口和线路连接整个用于不可信服务器环境中数据文件加密及完整性验证系统的各个模块。

    存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的用于不可信服务器环境中数据文件加密及完整性验证方法对应的程序指令/模块,处理器通过运行存储在存储器的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的用于不可信服务器环境中数据文件加密及完整性验证方法。

    存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器所创建的数据等。此外,存储器优选但不限于高速随机存取存储器,例如,还可以是非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器还可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

    本发明公开的用于不可信服务器环境中数据文件加密及完整性验证方法作为计算机程序一软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述方法实施例的步骤和结果。其中,存储介质可为磁碟、光盘、只读存储记忆体、随机存储记忆体、快闪存储器、硬盘或固态硬盘等;存储介质还可以包括上述种类的存储器的组合。

    虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视权利要求书所界定者为准。


    技术特征:

    1.一种用于不可信服务器环境中数据文件加密及完整性验证方法,其特征在于,包括如下步骤:

    1)对密钥生成系统输入安全参数进行初始化;

    2)生成bgn同态加密算法的公钥和私钥;

    3)基于离散对数困难问题,构造数据签名的公钥和私钥;

    4)采用bgn同态加密算法的公钥加密数据文件,获得密文文件fc;

    5)根据数据签名的私钥,对待加密的数据文件中所有文件块分别构造标签,获得标签集合φ;

    6)上传密文文件fc和标签集合φ至云端服务器;

    7)发送文件完整性挑战至云端服务器,以使云端服务器执行计算挑战指定的所有标签的标签和及挑战指定的所有文件块的文件块和的操作,并返回标签和及文件块和的计算结果;

    8)使用文件块和、数据签名的公钥,在bgn同态加密算法私钥消除随机数干扰条件下验证标签和,并且当验证结果符合密文文件完整性验证目标时,判断在云端服务器内存储的密文文件完整。

    2.根据权利要求1所述的用于不可信服务器环境中数据文件加密及完整性验证方法,其特征在于,所述bgn同态加密算法公钥和私钥的生成过程如下:

    选择阶为n=q1·q2的两个乘法群g、g1,乘法群g、g1满足双线性映射e:g×g→g1,其中,q1、q2为不相等的两个素数;随机选取乘法群g的两个不相等的生成元g、u,以及选取乘法群g子群的生成元h,则bgn同态加密算法的公钥为pk(n,g,g1,e,h,g),私钥为sk(q1)。

    3.根据权利要求2所述的用于不可信服务器环境中数据文件加密及完整性验证方法,其特征在于,所述数据签名的私钥为prk(q3),公钥为其中,q3为与q1、q2均不相等的素数,v是乘法群g不同于u、g的随机生成元。

    4.根据权利要求3所述的用于不可信服务器环境中数据文件加密及完整性验证方法,其特征在于,所述待加密的数据文件记为f,f={b1,b2,b3,......,bm},bi(1≤i≤m)为数据文件的任一文件块,为小于q2的正整数集合;采用bgn同态加密算法的公钥pk(n,g,g1,e,h,g)对待加密的数据文件f中每个文件块进行加密;加密后的数据文件即为密文文件,记为fc,fc={c1,c2,c3,......,cm},其中,ri是密钥生成系统产生的真随机数。

    5.根据权利要求4所述的用于不可信服务器环境中数据文件加密及完整性验证方法,其特征在于,所述标签集合φ={t1,t2,t3,......,tm},对标签集合φ中任一文件块bi,构造其标签为ti,其中,ki是密钥生成系统产生的真随机数。

    6.根据权利要求5所述的用于不可信服务器环境中数据文件加密及完整性验证方法,其特征在于,所述发送文件完整性挑战为向云端服务器发送随机数集合r,所述随机数集合r中的随机数表示待验证文件完整性的文件块bi的下标;所述云端服务器根据bgn同态加密算法的性质,执行计算标签和、文件块和操作,具体计算公式如下:

    其中,δ为标签和,μ为文件块和。

    7.根据权利要求6所述的用于不可信服务器环境中数据文件加密及完整性验证方法,其特征在于,所述步骤8)的验证过程为:在bgn同态加密算法私钥消除随机数干扰条件下,计算数据签名的公钥其分别与文件块和、标签和在双线性映射下的映射值,即分别计算所述密文文件完整性验证目标为双线性映射的映射值相等,计算公式如下,

    8.一种用于不可信服务器环境中数据文件加密及完整性验证系统,其特征在于,包括:

    初始化模块,用于对密钥生成系统输入安全参数进行初始化;

    密钥生成模块,用于生成bgn同态加密算法的公钥和私钥;

    密钥构造模块,用于基于离散对数困难问题,构造数据签名的公钥和私钥;

    加密模块,用于根据bgn同态加密算法的公钥加密数据文件,获得密文文件fc;

    标签构造模块,用于根据数据签名的私钥,对待加密的数据文件中所有文件块分别构造标签,获得标签集合φ;

    上传模块,用于向云端服务器上传密文文件fc和标签集合φ;

    挑战发起模块,用于向云端服务器发送文件完整性挑战,以使云端服务器执行计算挑战指定的所有标签的标签和及挑战指定的所有文件块的文件块和的操作,并返回标签和及文件块和的计算结果;

    验证判断模块,用于在bgn同态加密算法私钥消除随机数干扰的条件下采用文件块和、数据签名的公钥验证标签和,并且当验证结果符合密文文件完整性验证目标时,判断在云端服务器存储的密文文件完整。

    9.一种用于不可信服务器环境中数据文件加密及完整性验证系统,其特征在于,包括:处理器,所述处理器用于执行存储在存储器中的以下程序模块;

    初始化模块,用于对密钥生成系统输入安全参数进行初始化;

    密钥生成模块,用于生成bgn同态加密算法的公钥和私钥;

    密钥构造模块,用于基于离散对数困难问题,构造数据签名的公钥和私钥;

    加密模块,用于根据bgn同态加密算法的公钥加密数据文件,获得密文文件fc;

    标签构造模块,用于根据数据签名的私钥,对待加密的数据文件中所有文件块分别构造标签,获得标签集合φ;

    上传模块,用于向云端服务器上传密文文件fc和标签集合φ;

    挑战发起模块,用于向云端服务器发送文件完整性挑战,以使云端服务器执行计算挑战指定的所有标签的标签和及挑战指定的所有文件块的文件块和的操作,并返回标签和及文件块和的计算结果;

    验证判断模块,用于在bgn同态加密算法私钥消除随机数干扰的条件下采用文件块和、数据签名的公钥验证标签和,并且当验证结果符合密文文件完整性验证目标时,判断在云端服务器存储的密文文件完整。

    10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1-7任一项所述的用于不可信服务器环境中数据文件加密及完整性验证方法。

    技术总结
    本发明提供的用于不可信服务器环境中数据文件加密及完整性验证方法及其系统,涉及数据隐私保护技术领域,方法包括:1)系统初始化;2)生成BGN同态加密算法公私钥;3)构造数据签名的公私钥;4)采用BGN同态加密算法公钥加密数据文件;5)根据数据签名的私钥,对数据文件中所有文件块分别构造标签;6)上传加密文件和标签的集合至云端服务器;7)发送文件完整性挑战至云端服务器以返回标签和及文件块和;8)使用文件块和、数据签名的公钥验证标签和,以判断在云端服务器内存储的密文文件完整性;本发明结合BGN同态加密算法与PDP数据持有证明协议,构造数据签名实现对加密文件的完整性检验,提高数据文件在不可信服务器环境中的隐私保护和可用性。

    技术研发人员:郑啸;曹银;梁越永;童琨;汤伟;王磊;周亦工;陈启航;张婷婷
    受保护的技术使用者:安徽工业大学;马鞍山市卫生健康信息中心;安徽祥云科技有限公司
    技术研发日:2020.11.12
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-8909.html

    最新回复(0)