一个网页过滤改进算法的应用与实现

时间:2022-09-19 03:31:38

一个网页过滤改进算法的应用与实现

摘要:该文在介绍网页过滤技术的基础上,针对非法网页采取给敏感关键词加入“干扰”的特点,提出了一种关键词匹配的改进算法,经测试,该算法取得了良好的效果。

关键词:过滤算法;网页过滤;关键词匹配

中图分类号:TP393文献标识码:A文章编号:1009-3044(2009)33-9192-03

A Web Filtering Application and Implementation of Improved Algorithms

CHENG Ji-peng

(Heifei Railway Engineering School, Hefei 230011, China)

Abstract: On the bases of introducing web filtering technology, the paper puts forward an improved keywords match algorithm which is against that the illegal networks escape the detection of various web-monitoring systems by adding "interference" to the sensitive. After testing, the algorithm has achieved good results.

Key words: filter algorithm; web filtering; keywords matching

随着Web技术的发展成熟,网页逐渐成为互联网上信息交互的重要工具,对网页中不良信息的过滤也成了网络内容过滤的主要应用之一。所谓的网络内容过滤,就是根据某种网络安全的规定,通过一定的工具屏蔽掉网络信息流中不安全的内容,对不安全的内容的定义根据用户的不同而不同。

1 常用的网页过滤技术

目前,被各种过滤系统普遍采用的过滤方法可以概括为五种类型:PICS标签、URL拦截、关键词过滤、智能实时内容分析以及网页分类过滤。

1.1 网页分级标注

网页分级标注是按照一定的分级规定对网页的内容按不同类目的标准分级标注,再根据网页的分级标记进行过滤的方法。目前得到广泛认可的网页内容分级体系是因特网内容选择平台PICS,它是由万维网联盟于1995组织MIT、IBM等当时互联网上的主导力量成立的工作小组制定的一套技术规范。随着PICS技术规范的不断完善,许多网页分级机构都采用了PICS分级体系对网页进行标注,因此,PICS标注成为了网页过滤系统中采用的过滤方法之一。由于目前还没有对的网页加上分级标记的强制或鼓励机制,对一些不良信息的网页,制作者更不可能加上分级标记,因此,PICS对于网络内容过滤系统来说仅仅是个辅助的过滤方法。

1.2 URL过滤

URL规定了某一特定信息资源在WWW中存放地点的统一格式,即地址指针。URL过滤的原理是首先截获用户请求的URL地址,将该地址与预设的URL列表做比较,从而判断用户所请求的网络资源是否合法。通常URL过滤需要维护两种类型的列表,一个称为“黑名单”,包括禁止访问的目标网站的URL,其工作原理是首先假设除了列表中的资源外所有资源都是合法的,仅仅禁止用户访问列表中的资源;另外一个称为“白名单”,包括允许访问的网站的URL列表,其原理是假设除了列表中的资源外所有的资源都是非法的,仅仅允许用户访问列表中的资源。

1.3 关键词过滤

“关键词过滤”通过检查网页中是否出现敏感词语来决定用户请求访问的网页是否合法,其原理是将网页中出现的词和短语与关键词词典中设定的非法敏感关键词进行匹配,当匹配的个数达到预设的值时,则禁止用户访问该网页。关键词过滤方法是一种直接的方法,能快速检查一个网页是否包含非法内容。但此方法因不能区分词在不同语境中的歧义现象,常会以偏概全,存在“过度拦截”的问题。

1.4 实时智能内容分析

实时智能内容分析就是利用自然语言处理、人工智能等技术实时地对网页中的文本、图片等内容进行分析,从而判断网页的内容是否合法。目前实时智能内容分析过滤主要是基于网页文本内容的分析。基于文本内容分析算法方法主要有:潜在语义索引法和神经网络法。潜在语义索引法过滤精度较高,而神经网络法依照人们的长期实践经验,模仿了人脑对信息进行过滤的原理,并结合各种数学模型来实现它的功能,因此具有很强的自学习功能和自适应能力。

1.5 网页分类过滤

这种过滤方法在用户请求访问网页之前,就己经对网页的内容进行分析,并根据分析的结果将网页分类,并生成URL分类列表,用户在请求访问某个网页时,过滤系统会根据系统管理者的设置,按照请求的地址所属的分类列表的过滤策略进行判断是否屏蔽该网页。网页分类过滤方法关键在于如何将网页分类。最初的网页分类是由人工完成的,为了提高网页分类的效率,目前,大多数的Web内容过滤系统都采用智能内容分析的方法对网页进行分类。

2 几种不同过滤方法的比较

为了使网络内容过滤系统能有效地工作,系统设计者们通常根据各个系统的使用领域的实际情况选择合适的过滤方法,有的系统还针对特定的过滤方法进行改进,以改善某个过滤方法的局限性。几种过滤方法都有其自身的优点和缺点如表1所示。

3 关键词过滤的实现

关键词过滤就是将网页中出现的词和短语与设置的过滤关键词典进行匹配,根据匹配的结果判断网页是否允许访问。网页是以超文本语言(HTML)的,URL获取的网页内容是HTML文档,HTML文档里包含了大量的HTML标记,这些标记跟网页内容无关而且还会影响关键词的匹配。因此,为了提高关键词匹配的效率和准确率,在匹配之前先对获得的HTML文档进行去除HTML标记的预处理。

3.1 HTML文档预处理

HTML文档通常由三部分组成:版本信息行、头部信息(HEAD)和主体(BODY)部分,其中主体是HTML文档的主要部分,包含实际的文档内容。

HTML中的元素可以嵌套,但是嵌套的必须是完成的元素,不能出现开始标记嵌套而结束标记却没有嵌套这类情况。HEAD元素里包含了关于所在网页的信息。它通常包括下面四个元素:TITLE元素,LINK元素、STYLE元素、META元素。TITLE元素定义了HTML文档的标题;LINK元素用于建立HTM文档和外部文件的链接;STYLE元素用于设置网页内部样式表;META元素用来描述网页的有关信息,如作者、终止日期等。

3.2 字符串匹配

字符串匹配(简称“串匹配”)问题可以理解为从给定的符号序列T中找出一个或者一组具有某种属性的符号序列p,其中T称为文本,p称为模式串。给定字符串abc,称a是ab的一个前缀,称b是ab的一个后缀,b是abc的一个因子。字符串匹配是计算机科学中最古老、研究最广泛的问题之一。

串匹配算法有两种分类方法:1) 根据功能分,串匹配算法可分为三类:精确匹配算法、近似匹配算法和正则表达式匹配算法; 2) 根据模式串的数量,把字符串匹配分为单模式字符串匹配和多模式字符串匹配。单模式匹配算法每次只能搜索一个目标串,而多模式匹配算法一次可以匹配多个串。

很多非法网站为了逃避各种监控系统的监测,都会在网页上加一些“干扰”,如将“”,表示成“法_”等形式,这样对网页的浏览者阅读影响不大,但对网页过滤系统的匹配算法提出了要求,若采用精确匹配算法,对含有这种“干扰”的网站将不能进行有效的过滤。

上一篇:射频识别标签芯片中基准电压源的设计 下一篇:基于负载平衡的任务调度算法