一种基于全同态加密的排序方法与流程

文档序号:22930629发布日期:2020-11-13 16:29阅读:263来源:国知局
一种基于全同态加密的排序方法与流程

本发明涉及全同态加密的技术领域,特别涉及一种基于全同态加密的排序方法。



背景技术:

目前,全同态加密允许对密文做任意的运算,使得加密算法具有很强的灵活性。全同态加密支持任意给定的函数运算,只要这个函数可通过算法描述即可用计算机实现。由于全同态加密无需解密便能对密文进行运算,因此云服务器可以在未知用户私钥的情况下对用户密文进行计算,并且计算结果解密后等于对明文做同样计算的结果。这样既实现了数据计算功能,又保证了用户数据安全。这种特殊的性质使得全同态加密具有广泛的应用价值,但是,现有技术中,因为加密和解密过程中会存在数据缺失,顺序错误,使得同态效率低下。



技术实现要素:

本发明提供一种基于全同态加密的排序方法,用以解决因为加密和解密过程中会存在数据缺失,顺序错误,使得同态效率低下的情况。

一种基于全同态加密的排序方法,其特征在于,包括:

对明文进行分类,确定分类明文和排序顺序;

对所述分类明文进行同态计算,获得第一同态曲线;

对所述分类明文进行加密,确定每一类明文的加密密文;

对所述加密密文进行同态计算,获得第二同态曲线;

比较所述第一同态曲线和第二同态曲线,并根据所述第一同态曲线调整所述加密密文;

对调整后的加密密文进行解密,确定结果明文;

根据所述排序顺序,对所述结果明文进行排序,确定目标排序明文。

作为本发明的一种实施例:所述对明文进行分类,确定分类明文,包括:

获取明文数据,并确定所述明文的词频和词性;

根据所述词频,生成词频标记符号;

根据所述词频标记符号,分别对所述明文数据中的字进行标记;

根据所述词性,生成词性分类模型;

根据所述标记,对所述词性分类模型中每种词性的字再次进行分类,并生成基于二叉树模型的明文分类模型;

根据所述明文分类模型,确定分类明文。

作为本发明的一种实施例:所述根据所述词性分类模型通过以下步骤生成:

构建不同词性的词性矩阵;其中,

所述表示第个词性的第个文字的词性特征;

对所述明文进行标准化处理,确定所述明文中每个字的语义特征;

计算所述语义特征与所述词性矩阵的相关度

其中,所述表示明文中第个字的语义特征;

根据所述相关度,将所述明文数据中的每种文字按照相关度排列,构成所述词性分类模型。

作为本发明的一种实施例:所述根据所述标记,对所述词性分类模型中每种词性的字再次进行分类,并生成基于二叉树模型的明文分类模型包括:

根据所述标记,确定所述明文数据中每种文字的出现频率;

根据所述出现频率,将不同词性的明文文字再次进行分类,确定二次分类文本;

根据所述二次分类文本,引入所述二叉树排布,生成基于二叉树模型的明文分类模型。

作为本发明的一种实施例:所述对所述分类明文进行同态计算,获得第一同态曲线,包括:

根据所述分类明文,确定每类明文的单属性有效度;其中,

所述单属性有效度

其中,所述表示第类明文;所述表示明文数据生成密匙对,分别对所述密匙对进行加法同态计算和和乘法同态计算,并输出计算结果;

根据所述计算结果,确定第一同态曲线。

作为本发明的一种实施例:所述对所述分类明文进行加密,获得每一类明文的加密密文,包括:

步骤1:获取分类明文,并确定所述分类明文加密时的自变量和响应变量

步骤2:根据所述自变量和响应变量所述分类明文的残差平方和

其中,所述表示第个加密文字的变化参数;所述表示第个加密文字的自变量;所述表示第个加密文字的响应变量;

步骤3:根据所述残差平方和,对所述分类明文进行加密计算,确定加密后的加密密文:

其中,所述表示模反元素;所述表示第个加密文字的明文;

当所述时,所述表示加密密文;

当所述时,重新计算所述残差平方和,并对所述分类明文进行加密密文。

作为本发明的一种实施例:所述对所述加密密文进行同态计算,获得第二同态曲线,包括:

获取所述加密密文,确定所述加密密文的单属性有效度和复杂度;

将所述单属性有效度通过同态计算,确定单属性的有效度;

根据所述复杂度,通过同态计算,确定不同类型加密密文之间的加密关系;

根据所述加密关系和有效度,确定第二同态曲线。

作为本发明的一种实施例:所述比较所述第一同态曲线和第二同态曲线,并根据所述第一同态曲线调整所述加密密文,包括:

根据所述第一同态曲线,确定第一波动特征;

根据所述第二同态曲线,确定第二波动特征;

比较所述第一波动特征和第二波动特征区别点,确定差异波动;

根据所述差异波动,确定所述差异波动在所述第二同态曲线上的波动位置;

根据所述波动位置和第一同态曲线,调整所述加密密文的波动。

作为本发明的一种实施例:所述对调整后的加密密文进行解密,确定结果明文,包括:

根据对所述分类明文进行同态计算,确定第一解密密钥;

根据对所述加密密文的同态计算,确定第二解密密钥;

比较所述第一解密密钥和第二解密密钥确定解密差异;

根据所述解密差异,对所述第二解密密钥进行修改,确定目标解密密钥;

通过所述目标解密密钥对所述加密密文进行解密,得到结果明文。

作为本发明的一种实施例:所述根据所述排序顺序,对所述结果明文进行排序,确定目标排序明文,包括:

根据所述排序顺序,生成第一顺序梯度表格;

根据所述结果明文,确定明文排序顺序,生成第二顺序梯度表格;

将所述第一顺序梯度表格作为标准顺序表格;

根据所述标准顺序,确定所述第二顺序梯度表格中不同点的表格坐标;

根据所述标准顺序,调整所述表格坐标,确定目标排序明文表格;

根据所述目标排序明文表格,确定目标排序明文。

有益效果在于:本发明通过对明文进行分类加密的过程中,保证了数据的双重安全性,既可以加密保密,又可以分类保密。而第一同态曲线是一个标准的数据曲线,能帮助用户发现加密时出现的异常状况。通过解决第二同态曲线的调整解决异常曲线。而最后,将明文进行排序组合,得到完整,顺序正确的明文,也能防止明文缺失。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书以及附图中所特别指出的结构来实现和获得。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:

图1为本发明实施例中一种基于全同态加密的排序方法的方法流程图。

具体实施方式

以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

如附图1所示,本发明为一种基于全同态加密的排序方法,包括:

步骤100:对明文进行分类,确定分类明文和排序顺序;

本发明首先对明文进行分类,分类是以词性进行划分,而词性具有名词、形容词、动词、介词、感叹词、疑问词等等。而排序顺序是,明文最开始的排序顺序,排序顺序表示每个字在明文中的位置顺序,具体的排序方式通过编码或者字符串标记可以实现。

步骤101:对所述分类明文进行同态计算,获得第一同态曲线;

第一同态曲线是分类明文分类后每类明文的同态曲线,而且,第一同态曲线不是一条曲线,是不同类的多种分类明文的同态曲线的集合。

步骤102:对所述分类明文进行加密,确定每一类明文的加密密文;加密操作是分类后进行,其属于不同类型的明文进行依次加密的过程。

步骤103:对所述加密密文进行同态计算,获得第二同态曲线;而对加密的密文进行同态计算,确定第二同态曲线,是在数据进行加密后进行,这时候如果数据出现缺失,已经出现了,因此,第二同态曲线可以很明显的看出缺陷。

步骤104:比较所述第一同态曲线和第二同态曲线,并根据所述第一同态曲线调整所述加密密文;比较的过程,发现缺陷的过程,进而通过调整,修复加密中出现的缺陷。

步骤105:对调整后的加密密文进行解密,确定结果明文;解密后的结果明文还是以分类明文的形式存在。加密是根据加密时分配的密钥进行解密。

步骤106:根据所述排序顺序,对所述结果明文进行排序,确定目标排序明文。将分类的明文重新组合成完整的数据明文。

上述技术方案的有益效果在于:本发明通过对明文进行分类加密的过程中,保证了数据的双重安全性,既可以加密保密,又可以分类保密。而第一同态曲线是一个标准的数据曲线,能帮助用户发现加密时出现的异常状况。通过解决第二同态曲线的调整解决异常曲线。而最后,将明文进行排序组合,得到完整,顺序正确的明文。

作为本发明的一种实施例:所述对明文进行分类,确定分类明文,包括:

获取明文数据,并确定所述明文的词频和词性;词频表示每个词,每个字在明文中出现的频率。词性就表示名词、形容词、介词、感叹词、疑问词等等,也可以通过主语、谓语、宾语等等来进行区分。

根据所述词频,生成词频标记符号;词频代表着一个词出现的次数,而词频的标记符号是以字符串或者数字编码进行标记,标记时,编码或字符串信息中就带着词频的次数信息。

根据所述词频标记符号,分别对所述明文数据中的字进行标记;对明文中的字进行标记,进而可以通过标记对明文数据进行区分处理。

根据所述词性,生成词性分类模型;即,名词类、形容词类、感叹词类等等。

根据所述标记,对所述词性分类模型中每种词性的字再次进行分类,并生成基于二叉树模型的明文分类模型;二叉树模型能够轻易的区分不同类型的明文,实现明文分类。

根据所述明文分类模型,确定分类明文。看出不同类型的词和明文。

上述技术方案的有益效果在于:能够通过词性分类确定不同类型的词,进而实现根据不同类型的词构成词性分类模型,实现对明文和进行分类。而且,本发明基于词频进行词语标记,可以在后期加密后进行验证,防止数据缺失。

作为本发明的一种实施例:所述根据所述词性分类模型通过以下步骤生成:

作为本发明的一种实施例:所述根据所述词性分类模型通过以下步骤生成:

构建不同词性的词性矩阵;其中,

所述表示第个词性的第个文字的词性特征;

对所述明文进行标准化处理,确定所述明文中每个字的语义特征;

计算所述语义特征与所述词性矩阵的相关度

其中,所述表示明文中第个字的语义特征;

根据所述相关度,将所述明文数据中的每种文字按照相关度排列,构成所述词性分类模型。

上述技术方案的有益效果在于:本发明在词性分类模型上,是以对比形式进行判断,词性矩阵的作用是为了通过和所述语义特征结合,以相关度的形式表现出每种类型的词的词性之间的相关关系,进而实现构建词性分类模型,计算词性之间的相关关系,可以防止词性误判,例如,词性的相关关系为1,表示百分百相同;而词性相关关系不到1表示词性不同,因此可以防止词性误判,然后通过相关关系进行分类,也可以是通过相关度的值进行分类排列。

作为本发明的一种实施例:所述根据所述标记,对所述词性分类模型中每种词性的字再次进行分类,并生成基于二叉树模型的明文分类模型包括:二次分类是基于词频,基于词频将不同类型的词划分为多种频率范围;因为每个字再明文中出现的次数是不一定的,词频也具有多种频率,例如:分别出现词频为3、4、5的词,词频区别太小,因为以词频范围进行分类,如果要实时精确分类时,词频可以为单个数字。

根据所述标记,确定所述明文数据中每种文字的出现频率;

根据所述出现频率,将不同词性的明文文字再次进行分类,确定二次分类文本;

根据所述二次分类文本,引入所述二叉树排布,生成基于二叉树模型的明文分类模型。

上述技术方案中,二叉树模型是对明文的双重分类,便于对数据进行处理,而且通过生成二次分类的明文,有益于维护明文的安全性。

作为本发明的一种实施例:所述对所述分类明文进行同态计算,获得第一同态曲线,包括:

根据所述分类明文,确定每类明文的单属性有效度;其中,

所述单属性有效度

其中,所述表示第类明文;所述表示明文数据生成密匙对,分别对所述密匙对进行加法同态计算和和乘法同态计算,并输出计算结果;

根据所述计算结果,确定第一同态曲线。

上述技术方案中,单属性有效度,表示每一类明文数据在所有明文数据中的有效度,也可以认为是每一类明文数据对所有明文数据的贡献度,本发明通过对密匙的加法同态计算和乘法同态计算,实现全同态处理的过程,一般情况下,是对明文进行同态计算,但是本发明通过直接对密匙进行全同态计算,进一步强化了全同态计算的方式。

作为本发明的一种实施例:所述对所述分类明文进行加密,获得每一类明文的加密密文,包括:

步骤1:获取分类明文,并确定所述分类明文加密时的自变量和响应变量

步骤2:根据所述自变量和响应变量所述分类明文的残差平方和

其中,所述表示第个加密文字的变化参数;所述表示第个加密文字的自变量;所述表示第个加密文字的响应变量;

步骤3:根据所述残差平方和,对所述分类明文进行加密计算,确定加密后的加密密文:

其中,所述表示模反元素;所述表示第个加密文字的明文;

当所述时,所述表示加密密文;

当所述时,重新计算所述残差平方和,并对所述分类明文进行加密密文。

上述技术方案中,对分类明文的加密过程中产生的因变量和自变量带入残差平方函数,得到平方和,最后基于对平方和的加密计算,得到最终的加密密文,在加密上即能够保持全局变量对加密文字的影响,全局变量包括自变量和因变量,实现联合变化,使得加密时能够引起连锁的加密过程。

作为本发明的一种实施例:所述对所述加密密文进行同态计算,获得第二同态曲线,包括:

获取所述加密密文,确定所述加密密文的单属性有效度和复杂度;

将所述单属性有效度通过同态计算,确定单属性的有效度;

根据所述复杂度,通过同态计算,确定不同类型加密密文之间的加密关系;

根据所述加密关系和有效度,确定第二同态曲线。

上述技术方案中,本发明通过加密密文的单属性有效度和复杂度的计算,首先单属性有效度通过同态计算,得到单属性的有效度,而复杂度通过同态计算,得到最终的加密密文,同时确定第二同态曲线。

作为本发明的一种实施例:所述比较所述第一同态曲线和第二同态曲线,并根据所述第一同态曲线调整所述加密密文,包括:

根据所述第一同态曲线,确定第一波动特征;表示正常波动的特征。

根据所述第二同态曲线,确定第二波动特征;表示缺陷处的波动特征。

比较所述第一波动特征和第二波动特征区别点,确定差异波动;

根据所述差异波动,确定所述差异波动在所述第二同态曲线上的波动位置;

根据所述波动位置和第一同态曲线,调整所述加密密文的波动。

上述技术方案中,通过对波动特征的确定,进而确定了明文和密文之间的区别,通过对明文和密文之间的区别进行处理,调整,实现明文和密文之间的同向调整。

作为本发明的一种实施例:所述对调整后的加密密文进行解密,确定结果明文,包括:

根据对所述分类明文进行同态计算,确定第一解密密钥;

根据对所述加密密文的同态计算,确定第二解密密钥;

比较所述第一解密密钥和第二解密密钥确定解密差异;

根据所述解密差异,对所述第二解密密钥进行修改,确定目标解密密钥;

通过所述目标解密密钥对所述加密密文进行解密,得到结果明文。

上述技术方案中,第一解密密钥是在加密时产生的密钥,而加密密文的是通过加密密文铜套计算的到的密钥。最后通过两个密钥的双重解密,和解密密钥的修改,实现对目标明文解密;

作为本发明的一种实施例:所述根据所述排序顺序,对所述结果明文进行排序,确定目标排序明文,包括:

根据所述排序顺序,生成第一顺序梯度表格;表格的形式更容易进行对比,进而发现不同之处,表格的顺序也确定了结果明文的顺序;

根据所述结果明文,确定明文排序顺序,生成第二顺序梯度表格;

将所述第一顺序梯度表格作为标准顺序表格;标准的顺序表格代表着标准顺序的数据,即标准的明文位置数据,每个明文的标记和编号等。

根据所述标准顺序,确定所述第二顺序梯度表格中不同点的表格坐标;不同点的坐标,即和标准坐标不同的坐标,进而实现对坐标的调整。

根据所述标准顺序,调整所述表格坐标,确定目标排序明文表格;

根据所述目标排序明文表格,确定目标排序明文。

上述技术方案的有益效果在于:本发明通过以表格的顺序对明文进行顺序调换,通过顺序调换实现对数据调整使得排序顺序和原始明文顺序相同,实现明文的高效读取。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1