一种数据库字符串密文存储方法、电子设备和介质技术

技术编号:28221399 阅读:9 留言:0更新日期:2021-04-28 09:45
本发明专利技术公开了一种数据库字符串密文存储方法、电子设备和介质,该方法包括:步骤1:将待存储文本字段进行划分,获得多个分词;步骤2:基于每个分词和向量计算模型,获得每个分词的有效向量值;步骤3:采用哈希函数对每个有效向量值进行计算,获得每个分词的哈希值;步骤4:获得待存储文本字段的总哈希签名;步骤5:获得待存储文本字段的有效向量,将待存储文本字段的总哈希签名和有效向量存储在数据库中。本发明专利技术通过将文本字段的有效向量值(词向量)作为密文存储到数据库中,并同时待存储文本字段的总哈希签名,不同于传统的密文存储,既保证安全,又便于后期的检索,在后续的密文检索中,快速定位到相关的密文区域。速定位到相关的密文区域。速定位到相关的密文区域。

【技术实现步骤摘要】
一种数据库字符串密文存储方法、电子设备和介质


[0001]本专利技术属于互联网
,更具体地,涉及一种数据库字符串密文存储方法、电子设备和介质。

技术介绍

[0002]随着数据发掘的不断深入和在各行业应用的不断推进,大数据云安全的“脆弱性”逐渐凸显,国内外数据泄露事件频发,用户隐私受到极大挑战。而且在大数据环境下隐私泄露的危险,不仅仅在于泄露本身,还在于基于数据对下一步行动的预测和判断,因此大数据时代的隐私保护已经成为大数据应用发展的一项重要课题。
[0003]目前常用的方法是对数据库中有很多敏感的字符串进行加密处理,然后存储加密后的密文,但是这种加密存储密文的方法存在以下问题,在泄露密钥的情况下,密文会被解密,不能确保数据的安全存储,其次,数据库中存储加密后的密文,云端在数据库中无法有效检索数据。
[0004]因此,特别需要一种更加安全的数据库字符串密文存储方法和有效的检索方法。

技术实现思路

[0005]本专利技术的目的是提出更加安全的数据库字符串密文存储方法和有效的检索方法。
[0006]为了实现上述目的,本专利技术提供一种数据库字符串密文存储方法,包括:步骤1:将待存储文本字段进行划分,获得多个分词;步骤2:基于每个分词和向量计算模型,获得每个分词的有效向量值;步骤3:采用哈希函数对每个所述有效向量值进行计算,获得每个分词的哈希值;步骤4:基于每个分词的哈希值和其有效向量值对应的预设权重,获得所述待存储文本字段的总哈希签名;步骤5:基于每个分词的有效向量,获得所述待存储文本字段的有效向量,将所述待存储文本字段的总哈希签名和有效向量存储在数据库中。
[0007]优选的,所述步骤4包括:将每个分词的哈希值乘以其有效向量值对应的预设权重,获得每个分词的哈希签名;将每个分词的哈希签名累加,获得所述待存储文本字段的总哈希签名。
[0008]优选的,收到检索数据后,获取所述检索数据中的多个检索分词,基于多个检索分词和所述向量计算模型,计算获得每个检索分词的有效向量值,基于每个检索分词的有效向量值及其有效向量值对应的预设权重,获得每个检索分词的哈希签名,将每个检索分词的哈希签名累加,获得所述检索数据的总哈希签名。
[0009]优选的,计算所述检索数据的总哈希签名和数据库中存储的每个文本字段的总哈希签名的海明距离,将所述海明距离与预设阈值作比较,小于所述预设阈值的海明距离对应的所有存储文本字段构成检索数据对应的第一范围。
[0010]优选的,获取所述第一范围内的每个文本字段的有效向量;基于所述每个检索分词的有效向量,获得检索数据的有效向量,计算所述检索数据的有效向量与第一范围内的每个文本字段的有效向量的欧式距离,将所述欧式距离最小值对应的文本字段的位置作为
检索数据的位置。
[0011]优选的,其中,将欧式距离最小值对应的文本字段的位置发送至服务器,从服务器中获取文本字段的数据内容。
[0012]优选的,基于初始词向量参数和每个分词的初始词向量,对概率最大值的目标函数进行优化,获得最终词向量参数,基于所述初始词向量参数和最终词向量参数,获得向量计算模型。
[0013]优选的,所述概率最大值的目标函数为:
[0014][0015]其中,θ是词向量参数,T为分词的个数,t为第t个分词,m为上下文词汇的个数,w
t
是中心词的词向量,w
t+j
是中心词周围分词的词向量,P(w
t+j
|w
t
;θ)是中心词和周围分词同时出现的概率。
[0016]第二方面,本专利技术还提供一种电子设备,所述电子设备包括:存储器,存储有可执行指令;处理器,所述处理器运行所述存储器中的所述可执行指令,以实现根据上述数据库字符串密文存储方法。
[0017]第三方面,本专利技术还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述数据库字符串密文存储方法。
[0018]本专利技术的有益效果在于:本专利技术的一种数据库字符串密文存储方法通过将文本字段的有效向量值(词向量)作为密文存储到数据库中,并同时待存储文本字段的总哈希签名,不同于传统的密文存储,既保证安全,又便于后期的检索,在后续的密文检索中,快速定位到相关的密文区域。
[0019]本专利技术的方法具有其它的特性和优点,这些特性和优点从并入本文中的附图和随后的具体实施例中将是显而易见的,或者将在并入本文中的附图和随后的具体实施例中进行详细陈述,这些附图和具体实施例共同用于解释本专利技术的特定原理。
附图说明
[0020]通过结合附图对本专利技术示例性实施方式进行更详细的描述,本专利技术的上述以及其它目的、特征和优势将变得更加明显,其中,在本专利技术示例性实施方式中,相同的参考标号通常代表相同部件。
[0021]图1示出了根据本专利技术的一个实施例的一种数据库字符串密文存储方法的流程图。
具体实施方式
[0022]下面将更详细地描述本专利技术的优选实施方式。虽然以下描述了本专利技术的优选实施方式,然而应该理解,可以以各种形式实现本专利技术而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本专利技术更加透彻和完整,并且能够将本专利技术的范围完整地传达给本领域的技术人员。
[0023]根据本专利技术的一种数据库字符串密文存储方法,包括:步骤1:将待存储文本字段
进行划分,获得多个分词;步骤2:基于每个分词和向量计算模型,获得每个分词的有效向量值;步骤3:采用哈希函数对每个有效向量值进行计算,获得每个分词的哈希值;步骤4:基于每个分词的哈希值和其有效向量值对应的预设权重,获得待存储文本字段的总哈希签名;步骤5:基于每个分词的有效向量,获得待存储文本字段的有效向量,将待存储文本字段的总哈希签名和有效向量存储在数据库中。
[0024]具体的,将待存储文本字段进行划分,获得多个分词,将每个分词代入向量计算模型,向量计算模型是输入一个句子中的某个分词,输出其他所有分词词出现在这个词周围的概率,将这个概论作为该分词的有效向量值,这个分词周围出现的分词的概率的乘积越大越好,因为这个乘积就是这几个词同时出现的概率,用极大似然的思想,希望这个概率尽可能大。
[0025]采用哈希函数对每个有效向量值进行计算,获得每个分词的哈希值;通过hash(哈希)函数计算各个有效向量的hash(哈希)值,hash(哈希)值为二进制数01组成的n

bit签名。在hash(哈希)值的基础上,给所有有效向量进行加权,即W=Hash*weight,且遇到1则hash值和权值正相乘,遇到0则hash值和权值负相乘。每一个有效向量设置1

5等5个级别的权重,权重即为该分词在所有字段中出现的次数,也可以按出现次数的倒序进行编码,出现次数越多权重越大。将上述各个有效向量的加权结果累加,变成只有一个序列串,这样就可以得到每个文本字段的Hash签名,作为文本字段的总哈希签名。将待存储文本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据库字符串密文存储方法,其特征在于,包括:步骤1:将待存储文本字段进行划分,获得多个分词;步骤2:基于每个分词和向量计算模型,获得每个分词的有效向量值;步骤3:采用哈希函数对每个所述有效向量值进行计算,获得每个分词的哈希值;步骤4:基于每个分词的哈希值和其有效向量值对应的预设权重,获得所述待存储文本字段的总哈希签名;步骤5:基于每个分词的有效向量,获得所述待存储文本字段的有效向量,将每个分词的有效向量、所述待存储文本字段的总哈希签名和有效向量存储在数据库中。2.根据权利要求1所述的数据库字符串密文存储方法,其特征在于,所述步骤4包括:将每个分词的哈希值乘以其有效向量值对应的预设权重,获得每个分词的哈希签名;将每个分词的哈希签名累加,获得所述待存储文本字段的总哈希签名。3.根据权利要求1所述的数据库字符串密文存储方法,其特征在于,还包括:收到检索数据后,获取所述检索数据中的多个检索分词,基于多个检索分词和所述向量计算模型,计算获得每个检索分词的有效向量值,基于每个检索分词的有效向量值及其有效向量值对应的预设权重,获得每个检索分词的哈希签名,将每个检索分词的哈希签名累加,获得所述检索数据的总哈希签名。4.根据权利要求3所述的数据库字符串密文存储方法,其特征在于,计算所述检索数据的总哈希签名和数据库中存储的每个文本字段的总哈希签名的海明距离,将所述海明距离与预设阈值作比较,小于所述预设阈值的海明距离对应的所有存储文本字段构成检索数据对应的第一范围。5.根据权利要求4所述的数据库字符串密文存储方法,其特征在于,获取所述第一范围内的每个文本字段的有效向量;基...

【专利技术属性】
技术研发人员:苏斌耿方周珅珅张玮
申请(专利权)人:航天信息股份有限公司
类型:发明
国别省市:

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

1