基于ASP.NET运行时模型的数字水印探究与实现

2016-07-09 08:06沈阳
数字技术与应用 2016年6期
关键词:数字水印

沈阳

摘要:ASP.NET运行时模型是用于进行Http请求处理的系统框架,其中HttpHandler对象是Http请求的处理中心,在HttpHandler中,ASP.NET框架才真正对客户端请求的所有服务器资源做出处理和执行,并将处理后的结果放入Http响应流中,然后返回给客户端。本文通过基于ASP.NET运行时模型实现图片数字水印来阐述ASP.NET平台通过HttpHandler对象对客户端请求资源进行处理的过程。

关键词:ASP.NET 运行时模型 HttpHandler 数字水印

中图分类号:TP309.7 文献标识码:A 文章编号:1007-9416(2016)06-0000-00

现在是一个网络信息高速发展的年代,我们在平时构建网站时需要给相关图片添加数字水印,或者是为了营销需要,或者是为了防止盗图。如何在不够买和不安装图片处理软件的条件下来给图片加水印,并且要求省时省力有效的实现该功能,本文通过ASP.NET运行时模型中的HttpHandler来实现网站的图片数字水印功能。

1 相关概念

要想实现图片的数字功能必须先了解ASP.NET运行时模型的执行过程。

1.1 ASP.NET运行时模型执行过程

当客户端向IIS服务器发出一个HTTP请求时,IIS服务器会调用aspnet_isapi.dll将请求传递给ASP.NET运行时(Runtime),在ASP.NET运行时中HttpApplication组件会首先接收到请求,由它将请求依次传递给若干个HttpModule中进行请求过滤,如果请求不合法就会在某个HttpModule中抛弃从而结束请求过程。如果请求合法HttpApplication会将该请求传递到HttpHandler中,HttpHandler 是HTTP请求处理的终点,处理完毕后会将HTTP响应返回到客户端。如图1所示。

在本文中我们关注的是ASP.NET运行时模型如何通过HttpHandler 来处理Http请求。

1.2 数字水印的作用

数字水印是将一个能唯一确认身份的标识嵌入到图片、音视频、文档等信息中。在不影响信息使用的情况下,不容易被别人修改或未经同意而使用。数字水印是保护知识产权、溯源的有效办法。数字水印技术基本上具有下面几个方面的特点:

(1)安全性:数字水印应该是安全的,难以伪造。(2)嵌入容量:指加入水印的数量,即对水印的容量需求很大。比如图片加入水印后可以不影响原图片的查阅。(3)健壮性:指即被未授权方擅自修改的困难度,能尽量保持该图片的唯一性,比如下载加有数字水印的图片,擅自修改会造成原图信息的丢失并增加修改难度。

本文以图片上添加网站图标做为数字水印为例,阐述通过ASP.NET运行时模型实现数字水印的过程。如果图片存在则在该图片上动态添加水印,如果图片不存在则在该图片显示的位置显示一个默认图片。

1.2 数字水印的实现方式选择

(1)直接编辑每张图片。这种方式需要大量的人力来进行这样的工作。(2)编程实现批量编辑图片,这种方式较之于第一种方式节省人力,效率高,但原始图片丢失了。(3)在显示图片时,动态添加数字水印效果。这种方式较之于前两种来说比较可行,可使用ASP.NET运行时模型通过HttpHandler来实现。

2 实现结果及分析

以下以图片上添加网站图标做为数字水印为例,说明ASP.NET运行时模型在处理Http请求中的应用,并使用HttpHandler实现图片的数字水印的实现步骤:

(1)准备一张默认图片和一张做为水印的网站图标图片。

(2)创建名为BookCoverProcess类来生成数字水印,该类实现了IHttpHandler接口。

(3)实现IHttpHandler类的ProcessRequest方法。该方法是HttpHandler类的核心方法,用于最终的请求处理。

当用户访问某张图片时,获取图片的URL并交到HttpHandler中进行处理,如果该图片不存在,服务器将绘制一张默认图片并交给客户端,如果图片存在,服务器将数字水印图片绘制到当前图片上。

3 结语

利用ASP.NET运行时模型中的HttpHandler进行Http请求中的图片数字水印,可以在图片上增加网站标识,能够很好地保护著作权,防止他人盗用图片,使用ASP.NET运行时模型还可以实现例如动态页面静态化、防盗链等其他功能,应用范围相当丰富。

参考文献

[1] (美)Adam Freeman精通ASP.NET 4.5(第5版)[M].北京:人民邮电出版社,2014.

[2] (美)Myers, G.J.软件测试的艺术(原书第3版)[M].北京:机械工业出版社,2012.

[3] 胡琳.网站安全管理的技术性分析[J].微计算机信息,2005(14).

[4] 廖江福.基于HttpHandler的ASP.NET软件RSA签名研究[J]. 重庆工商大学学报,2010(1).

猜你喜欢
数字水印
基于网屏编码的数字水印技术
基于数字水印的人脸与声纹融合识别算法
基于矩阵分解和混沌置乱的数字水印算法