基于布隆过滤器过滤数据库数据的数据防泄漏方法及设备技术

技术编号:17780213 阅读:51 留言:0更新日期:2018-04-22 08:58
本发明专利技术提供的基于布隆过滤器过滤数据库数据的数据防泄漏方法及设备,方法为:当有数据通过网络或文件进行传输时,截获传输数据,对传输数据进行分段解析,得到分段后的传输数据;根据传输数据总数据量和预先设定的允许误差率,通过布隆过滤器计算得到需要生成的数据指纹个数,布隆过滤器是基于用户指定的数据库预先建立得到的;根据需要生成的数据指纹个数,对分段后的传输数据进行哈希计算,得到数据指纹;通过布隆过滤器进行数据指纹匹配,实现数据防泄漏。通过本发明专利技术的方法生成的指纹信息,只占常规哈希算法指纹数据的四分之一,从而极大的解决了海量数据库的指纹存储。同时由于利用了布隆过滤器的位操作的特性,极大的提高了查询速度。

【技术实现步骤摘要】
基于布隆过滤器过滤数据库数据的数据防泄漏方法及设备
本专利技术涉及人工智能领域,尤其涉及人机对话系统领域。
技术介绍
现有技术中,对于数据中的敏感信息需要进行防泄漏处理,尤其是在数据传输过程中,常常因为对数据的防范措施不得当,使得造成严重的损失。在现有的对于数据的防泄漏方法中,当有数据通过网络或文件进行传输时,需要对传输数据进行处理,检验传输的数据是否是敏感信息,但由于传输数据量过大,这样就导致数据的存储空间大,且数据量过大,影响数据的处理效率,在判断传输数据是否属于敏感信息时,效率低下。
技术实现思路
针对上述技术问题,本专利技术提供一种基于布隆过滤器过滤数据库数据的数据防泄漏方法及设备,通过本专利技术的方法生成的指纹信息,只占常规哈希算法指纹数据的四分之一,从而极大的解决了海量数据库的指纹存储。同时由于利用了布隆过滤器的位操作的特性,极大的提高了查询速度。第一方面,本专利技术提供一种基于布隆过滤器过滤数据库数据的数据防泄漏方法,包括:步骤S1,当有数据通过网络或文件进行传输时,截获传输数据,对所述传输数据进行分段解析,得到分段后的传输数据;步骤S2,根据所述传输数据总数据量和预先设定的允许误差率,通过布隆过滤器计算得到需要生成的数据指纹个数,所述布隆过滤器是基于用户指定的数据库预先建立得到的;步骤S3,根据所述需要生成的数据指纹个数,对所述分段后的传输数据进行哈希计算,得到数据指纹;步骤S4,根据所述数据指纹,通过所述布隆过滤器进行数据指纹匹配,实现数据防泄漏。本专利技术提供的基于布隆过滤器过滤数据库数据的数据防泄漏方法,其技术方案为:当有数据通过网络或文件进行传输时,截获传输数据,对所述传输数据进行分段解析,得到分段后的传输数据;根据所述传输数据总数据量和预先设定的允许误差率,通过布隆过滤器计算得到需要生成的数据指纹个数,所述布隆过滤器是基于用户指定的数据库预先建立得到的;根据所述需要生成的数据指纹个数,对所述分段后的传输数据进行哈希计算,得到数据指纹;根据所述数据指纹,通过所述布隆过滤器进行数据指纹匹配,实现数据防泄漏。本专利技术的基于布隆过滤器过滤数据库数据的数据防泄漏方法,通过本专利技术的方法生成的指纹信息,只占常规哈希算法指纹数据的四分之一,从而极大的解决了海量数据库的指纹存储。同时由于利用了布隆过滤器的位操作的特性,极大的提高了查询速度。进一步地,所述布隆滤波器的建立,具体为:通过爬虫工具对用户指定的数据库进行数据爬取,得到敏感数据;对所述敏感数据进行哈希计算,生成数据指纹并存储到本地数据库,得到布隆过滤器。进一步地,所述步骤S2,具体为:根据所述传输数据的总数据量和预先设定的误差率,通过所述预先建立的布隆滤波器,计算得到所述布隆过滤器需要的bit数大小;根据所述布隆过滤器需要的bit数大小,结合所述传输数据的元素总个数,计算得到hash函数的个数,进而得到需要生成的数据指纹个数,所述需要生成的数据指纹个数与所述得到的hash函数的个数一致。进一步地,所述步骤S1中,对所述传输数据进行分段解析,得到分段后的传输数据,具体为:将所述传输数据解析成与所述本地数据库中的敏感信息格式相匹配的多个数据段。进一步地,所述步骤S1中,将所述传输数据解析成与所述本地数据库中的敏感信息格式相匹配的多个数据段,具体为:根据特殊分隔符对所述传输数据拆分成多个数据段;对所述拆分后的数据段进行去格式化处理,去除所述拆分后的数据段前后的特殊字符,得到多个数据段,所述多个数据段的格式与所述本地数据库中的敏感信息格式一致。进一步地,所述数据指纹的格式为64位无符号长整型数据。第二方面,本专利技术提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:步骤S1,当有数据通过网络或文件进行传输时,截获传输数据,对所述传输数据进行分段解析,得到分段后的传输数据;步骤S2,根据所述传输数据总数据量和预先设定的允许误差率,通过布隆过滤器计算得到需要生成的数据指纹个数,所述布隆过滤器是基于用户指定的数据库预先建立得到的;步骤S3,根据所述需要生成的数据指纹个数,对所述分段后的传输数据进行哈希计算,得到数据指纹;步骤S4,根据所述数据指纹,通过所述布隆过滤器进行数据指纹匹配,实现数据防泄漏。第三方面,本专利技术提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以下步骤:步骤S1,当有数据通过网络或文件进行传输时,截获传输数据,对所述传输数据进行分段解析,得到分段后的传输数据;步骤S2,根据所述传输数据总数据量和预先设定的允许误差率,通过布隆过滤器计算得到需要生成的数据指纹个数,所述布隆过滤器是基于用户指定的数据库预先建立得到的;步骤S3,根据所述需要生成的数据指纹个数,对所述分段后的传输数据进行哈希计算,得到数据指纹;步骤S4,根据所述数据指纹,通过所述布隆过滤器进行数据指纹匹配,实现数据防泄漏。与现有技术相比,本专利技术的有益效果为:通过本专利技术的方法生成的指纹信息,只占常规哈希算法指纹数据的四分之一,从而极大的解决了海量数据库的指纹存储。同时由于利用了布隆过滤器的位操作的特性,极大的提高了查询速度。附图说明为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。图1示出了本专利技术实施例所提供的一种基于布隆过滤器过滤数据库数据的数据防泄漏方法的流程图。具体实施方式下面将结合附图对本专利技术技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本专利技术的技术方案,因此只是作为示例,而不能以此来限制本专利技术的保护范围。实施例一第一方面,图1示出了本专利技术实施例所提供的一种基于布隆过滤器过滤数据库数据的数据防泄漏方法的流程图;如图1所示,本实施例提供的一种基于布隆过滤器过滤数据库数据的数据防泄漏方法,包括:步骤S1,当有数据通过网络或文件进行传输时,截获传输数据,对传输数据进行分段解析,得到分段后的传输数据;步骤S2,根据传输数据总数据量和预先设定的允许误差率,通过布隆过滤器计算得到需要生成的数据指纹个数,布隆过滤器是基于用户指定的数据库预先建立得到的;其中,根据传输数据总数据量和预先设定的允许误差率,通过布隆过滤器计算得到需要生成的数据指纹个数,具体计算公式为:k=ln2*(m/n)其中,k为需要生成的数据指纹个数,m为布隆过滤器总bit数,n为总数据量。布隆过滤器总bit数在预先建立布隆过滤器时根据传输数据的数据量可计算得到。步骤S3,根据需要生成的数据指纹个数,对分段后的传输数据进行哈希计算,得到数据指纹;步骤S4,根据数据指纹,通过布隆过滤器进行数据指纹匹配,实现数据防泄漏。本专利技术提供的基于布隆过滤器过滤数据库数据的数据防泄漏方法,其技术方案为:当有数据通过网络或文件进行传输时,截获传输数据,对所述传输数据进行分段解析,得到分段后的传输数据;根据所述传输数据总数据量和预先设定的允许误差率,通过布隆过滤器计算得到需要生成的数据指纹个数,所述布隆过滤器是基于用户指定的数据库预先建立得到的;根据所述需要生成的数据指纹个数,对所述分段后的传输数据进行哈希计算,得到数据指纹;根据所述数据指纹,通过所述布隆过滤器进行本文档来自技高网...
基于布隆过滤器过滤数据库数据的数据防泄漏方法及设备

【技术保护点】
基于布隆过滤器过滤数据库数据的数据防泄漏方法,其特征在于,包括:步骤S1,当有数据通过网络或文件进行传输时,截获传输数据,对所述传输数据进行分段解析,得到分段后的传输数据;步骤S2,根据所述传输数据总数据量和预先设定的允许误差率,通过布隆过滤器计算得到需要生成的数据指纹个数,所述布隆过滤器是基于用户指定的数据库预先建立得到的;步骤S3,根据所述需要生成的数据指纹个数,对所述分段后的传输数据进行哈希计算,得到数据指纹;步骤S4,根据所述数据指纹,通过所述布隆过滤器进行数据指纹匹配,实现数据防泄漏。

【技术特征摘要】
1.基于布隆过滤器过滤数据库数据的数据防泄漏方法,其特征在于,包括:步骤S1,当有数据通过网络或文件进行传输时,截获传输数据,对所述传输数据进行分段解析,得到分段后的传输数据;步骤S2,根据所述传输数据总数据量和预先设定的允许误差率,通过布隆过滤器计算得到需要生成的数据指纹个数,所述布隆过滤器是基于用户指定的数据库预先建立得到的;步骤S3,根据所述需要生成的数据指纹个数,对所述分段后的传输数据进行哈希计算,得到数据指纹;步骤S4,根据所述数据指纹,通过所述布隆过滤器进行数据指纹匹配,实现数据防泄漏。2.根据权利要求1所述的基于布隆过滤器过滤数据库数据的数据防泄漏方法,其特征在于,所述布隆滤波器的建立,具体为:通过爬虫工具对用户指定的数据库进行数据爬取,得到敏感数据;对所述敏感数据进行哈希计算,生成数据指纹并存储到本地数据库,得到布隆过滤器。3.根据权利要求1所述的基于布隆过滤器过滤数据库数据的数据防泄漏方法,其特征在于,所述步骤S2,具体为:根据所述传输数据的总数据量和预先设定的误差率,通过所述预先建立的布隆滤波器,计算得到所述布隆过滤器需要的bit数大小;根据所述布隆过滤器需要的bit数大小,结合所述传输数据的元素总个数,计算得到hash函数的个数,进而得到需要生成的数据指纹个数,所述需要生成的数据指纹个数与所述得到的hash函数的个数一致。4.根据权利要求1所述的基于布隆过滤器过滤数据库数据的数据防泄漏方法,其特征在于,所述步骤S1中,对所述传输数据进行分段解析,得到分段后的传输数据,具体为:将所述传输数据解析成与本地数据库中的敏感信息格式相匹配的多个数据段。5.根据权利要求4所述的基于布隆过滤器过滤数据库数据的数据防泄漏方法,其特征在于,所述步骤S1中,将所述传输...

【专利技术属性】
技术研发人员:刘立军苏立权汪楫人
申请(专利权)人:云易天成北京安全科技开发有限公司
类型:发明
国别省市:北京,11

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

1