ActiveX控件及其签名
1 简介
1.1 什么是ActiveX
根据微软权威的软件开发指南MSDN(Microsoft Developer Network)的定义,ActiveX插件以前也叫做OLE控件或OCX控件,它是一些软件组件或对象,可以将其插入到WEB网页或其它应用程序中。
在因特网上,ActiveX插件软件的特点是:一般软件需要用户单独下载然后执行安装,而ActiveX插件是当用户浏览到特定的网页时,IE浏览器即可自动下载并提示用户安装。 ActiveX插件安装的一个前提是必须经过用户的同意及确认。
ActiveX插件技术是国际上通用的基于Windows平台的软件技术,除了网络实名插件之外,许多软件均采用此种方式开发,例如Flash动画播放插件、Microsoft MediaPlayer插件、CNNIC通用网址插件等。
1.2 什么是软件代码数字签名和代码签名数字证书?
软件代码数字签名是以电子方式通过信息来标记文件的方式。此时,文件将由创建者(发行商)来数字签名。有效的数字签名将告诉您关于文件的下面两项内容:发行商名称,以及文件在签名后没有被更改。任何篡改都将使签名无效。软件代码数字签名将:
* 允许您验证文件的发行商。
* 确认文件自数字签名以来没被更改过。
任何软件开发商都可以向 IE浏览器中的“受信任的根证书颁发机构”中的证书颁发机构(如GeoTrust)申请软件代码签名证书来签名代码。
1.3.浏览器如何保证ActiveX插件的安全性?
当通过Internet发行软件时,软件的安全性是一个非常引人注意的问题,IE浏览器通过以下的方式来保证ActiveX插件的安全:
ActiveX使用了两个补充性的策略:安全级别和证明,来追求进一步的软件安全性;
Microsoft提供了一套工具,可以用它来增加ActiveX对象的安全性;
通过Microsoft的验证代码工具,可以对ActiveX控件进行签名,这告诉用户你的确是控件的作者而且没有他人篡改过这个控件;
为了使用验证代码工具对组件进行签名,必须从证书授权机构获得一个数字证书;证书包含表明特定软件程序是正版的信息,这确保了其他程序不能再使用原程序的标识。证书还记录了颁发日期。当您试图下载软件时,Internet Explorer 会验证证书中的信息,以及当前日期是否在证书的截止日期之前。如果在下载时该信息不是最新的和有效的,Internet Explorer 将显示一个警告;
在IE默认的安全级别中,ActiveX控件安装之前,用户可以根据自己对软件发行商和软件本身的信任程度,选择决定是否继续安装和运行此软件。
网络实名插件使用了国际权威安全厂商例如Verisign所颁发的数字证书进行签名,因此可以确保网络实名插件的真实性.
注意:有效的数字签名只能保证软件代码的发行商的真实身份是通过第三方权威证书颁发机构验证的,但并不保证文件的内容就一定无害。您必须自己确定是否应当信任该文件的
内容。
记住,数字签名不保证文件一定无害。 签名的文件可能仍然包含有害的代码,如果该文件是按照这种有害方式创建的话。这就是为什么当您开始从浏览器打开某些文件类型时,即使它具有有效的数字签名, Windows 也将询问您是否希望打开该文件的原因。
如果该文件没有有效的数字签名,则无法确保该文件确实来自它所声明的来源,或者无法确保它在发行之后未被篡改过(可能由病毒篡改)。较为安全的做法是,除非您确定该文件的创建者而且知道其内容才可以安全地打开,否则不要打开该文件
记住,数字签名不保证文件一定无害。 签名的文件可能仍然包含有害的代码,如果该文件是按照这种有害方式创建的话。这就是为什么当您开始从浏览器打开某些文件类型时,即使它具有有效的数字签名, Windows 也将询问您是否希望打开该文件的原因。
如果该文件没有有效的数字签名,则无法确保该文件确实来自它所声明的来源,或者无法确保它在发行之后未被篡改过(可能由病毒篡改)。较为安全的做法是,除非您确定该文件的创建者而且知道其内容才可以安全地打开,否则不要打开该文件
1.4 为什么要安装证书
为了帮助您防止计算机受到可能有害的文件的侵害, Windows 有时会阻止您安装通过 Internet 请求或接收的文件。如果该文件包含没有有效数字签名的 ActiveX 控件或 Web 浏览器加载项,那么就会发生这种情况。 所以对于ActiveX控件,我们需要安装微软认证的数字证书
1.5 一张证书可以签名几个软件?
这个没有限制,
1.6 使用代码签名证书能得到什么实际价值?
从用户角度,可以通过代码签名证书鉴别软件的发布者及软件在传输过程中是否被篡改。例如:如果某软件产品在用户计算机上执行后造成恶性后果,由于代码签名证书的可审计性,用户可依法向软件发布者索取赔偿,将很好的制止发布攻击性代码的行为。
从软件开发者和Web管理者的角度,利用代码签名的抗伪造性,可为其商标和产品建立一定信誉。利用代码签名证书,一方面开发者可借助Java 小程序、各种插件和执行文件创建出丰富多彩的页面,另一方面用户也可理性地选择所需下载的软件包。用户在多次成功下载并运行具有代码签名的软件后,用户和开发者间的信任关系将会得到巩固。
如何签名
开发的ActiveX控件发布方式有三种:
1. 制作客户端安装包,分发给客户机安装;
2. 制作在线安装包,客户机联机安装;
3. 使用html中object的codebase指向安装包地址。
前两个比较简单,适合在局域网内实施,生成安装包时需要装Register属性设置为vsdrpCOM;最后一种方式,需要在安装包上进行数字签名,以保证客户机的安全信任。受信任的签名证书应该向证书提供商(如Versign)购买,然后使用签名工具对安装包进行签名。
浏览器的activex控件
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论