【虎.无名】准备用到一个web页面口令保护的小控件,但是发行商自己没有购买商用的数字证书,而是使用自己用openssl生成的私有证书来签名的。公司以前倒是申请过一个用于网站的ssl证书,但不知道能否用来对com控件签名。检查了一下,竟然发现公司的私钥没有做任何安全保护处理,完全是裸露在外面的。当然,这样方便了我重用该证书,给控件签名了。具体的方法,可以参考下面的。

【虎.无名】发现将pfx导入IE后,使用signcode.exe还是无法从证书库中找到该证书。有另外一种文件格式,但是只能使用微软私有的pvk格式私钥。安装PSDK-x86.exe后的工具集中只有pvk2pfx.exe,搜索pfx2pvk,找到一个第三方工具pvk.exe可以将openssl的私钥转换为pvk格式私钥。

搜索:pfx2pvk找到页面:http://www.eggheadcafe.com/forumarchives/securitycrypto/aug2005/post23468123.asp,其有个 回复提到了一个pvk.exe的小工具 http://www.drh-consultancy.demon.co.uk/pvk.html (Conversion Tools:I have written a conversion tool that will convert a standard RSA key in OpenSSL PEM format into a PVK file and vice versa. You can download the Win32 binary here. )

数字签名教程请看(阿泰 20050314) http://www.cnblogs.com/babyt/articles/118264.html,http://www.cnblogs.com/babyt/articles/118302.html,http://www.cnblogs.com/babyt/articles/118309.html

http://www.wotrust.com/support/signcode_guide.htm 微软代码签名证书(.pvk/.spc)签名指南

http://www.cnblogs.com/interdrp/archive/2009/05/03/1448382.html 这几天手上在做一个项目,要用到ActiveX控件,在签名这一步给卡住了,以前可以申请到免费一个月的证书,可我找了一个晚上,发现现在网上都没有这种证书可以申请了(可能有,但我不知道)。     我都快给急死了,要是无法签名,那这个项目可就无法做下去了,这么一个小单专门去买个证书又不合算。前几个月硬盘坏过一次,以前用的签名文件都没了,搬出刻录的备份光盘一张一张的找,发现有一个文件名为“赖起疆.pfx”的证书文件,嘿……一时没想起来这个证书是干嘛用的,试着安装这个证书,发现是淘宝网支付宝的备份证书,看了一下证书的信息,嘿……心想,有门,可以试试。

先从IE中导出证书文件

运行签名工具signcode.exe,文中提到的数字签名工具包,请在此处下载:http://files.cnblogs.com/interdrp/SignTool.rar

时间戳地址为: http://timestamp.verisign.com/scripts/timstamp.dll

好了,现在我们来验证一下签名的结果

在已签名的ActiveX控件单击右键-->属性
我们来看一下签名的详细信息

我们来看看最终在IE上运行的结果

好了,完全成功!

最后说明一下,使用的证书是淘宝网支付宝的证书,只要你有用支付宝,那么你就有这么一个以你名字命名的数字证书,同时也不怕证书会过期,只要证书过期了,你上淘宝网,注销一下证书,重新生成一份就是了。

因我的系统是Windows 2008 所以如果你用Vista以前的系统运行后看到的图片跟我的贴图可能有点不一样。

有一个问题要注意,如果签名成功后,你的控件还是无法在IE中显示,那很大的可能是你控件本身有问题。

在实际应用当中并不是所有的电脑用户都有使用《淘宝》网上购物的,那么,针对这类用户,其实有一个很另类的方法,就是在网页上用JavaScript来判断对方电脑是否安装有《淘宝》的安全插件,如果没有,那么在代码中连接到《淘宝》网下载安装一个控件,这样在客户电脑上就有了淘宝的根证书了,然后会再下载安装我们的控件。

以下为在网页中插入的脚本:

<script type="text/javascript">
var itruspta1;
try {
itruspta1=new ActiveXObject("PTA.iTrusPTA");
}catch(e){
}
//判断是否安装控件
if(itruspta1==null){
document.write("<OBJECT id=/"iTrusPTA/" codeBase=/"https://img.alipay.com/download/1101/aliedit.cab#Version=2,4,2,471/" classid=/"clsid:1E0DFFCF-27FF-4574-849B-55007349FEDA/" style=/"width:1px;height:1px;/"></OBJECT>");
}else {
}                
</script>

给COM/ActiveX控件签名(signcode,cab,pfx,pvk)相关推荐

  1. ActiveX控件打包成Cab置于网页中自动下载安装

    From: http://www.iteye.com/topic/110834 makeCAB.rar (188.5 KB) [背景] 做过ActiveX控件的朋友都知道,要想把自己做的ActiveX ...

  2. 怎样给 ActiveX 控件签名并打包发布

    转载自:http://www.55055.com/blog/user1/1/archives/2007/20071202322.html 必备工具: CabArc.Exe Cert2Spc.Exe ...

  3. ActiveX控件打包成Cab实现浏览器自动下载安装

    前言 我们在浏览器中使用我们自己的一些OCX,或者是DLL这一类的文件,在X86的机器上需要我们手动将这些文件拷贝到Windows/System32 文件夹下面去,然后通过Dos命令regsvr32 ...

  4. ActiveX控件打包成Cab置于网页中自动下载安装 (收藏未实践测试)

    from http://blog.csdn.net/htqlhy/article/details/7937897?locationNum=12 [背景]         做过ActiveX控件的朋友都 ...

  5. ActiveX控件打包成Cab置于网页中自动下载安装(转载)

    原文出自http://www.iteye.com/topic/110834 [背景] 做过ActiveX控件的朋友都知道,要想把自己做的ActiveX控件功能放在自己的网页上使用,那么用户在客户端就必 ...

  6. ActiveX控件签名谈

    在VS安装后发现路径**VC7/Common7/Tools/Bin/下有许多小工具,我对带有Cert的文件比较感兴趣.经过研究,发现是有关证书和签名的,当然,该证书未被证书认证机构认可.下面列出这些工 ...

  7. C#开发ActiveX控件及制作CAB包

    一个项目要用到 ActiveX 控件,参照网上众多的例子,ActiveX控件倒是很容易就搞出来了: 然后做了一个[ 安装项目],倒是可以使用,只不过需要在客户端手动点击安装,下一步,下一步-觉得不是很 ...

  8. C#BS通过ActiveX控件及制作CAB包来调CS

    1) 创建Visual Studio解决方案 "ActiveXSolution". 2)在解决方案ActiveXSolution中添加 Windows窗体应用程序 "CS ...

  9. VB与ActiveX控件签名谈

    在VS安装后发现路径**VC7/Common7/Tools/Bin/下有许多小工具,我对带有Cert的文件比较感兴趣.经过研究,发现是有关证书和签名的,当然,该证书未被证书认证机构认可.下面列出这些工 ...

最新文章

  1. 快速识别Hash加密方式hashid
  2. 你真的懂对抗样本吗?一文重新思考对抗样本背后的含义
  3. CUDA,C++,Java,Python,Fortran运行速度比较
  4. 微信小程序开发之微信支付
  5. 站在汽修厂的角度看需求
  6. [转]树结构表递归查询在ORACLE和MSSQL中的实现方法
  7. java基于ssm的个人博客系统_调研了 100 来个 Java 博客系统,发现这5个最好用
  8. python 定时任务 Apscheduler
  9. IDFT的python实现
  10. 超级计算机操作系统有什么不同,超级计算机功能强大吗?它与普通计算机不同,但也使用Windows系统...
  11. Centos源码安装Python3
  12. 怎样用sql语句复制表table1到表table2的同时复制主键
  13. oracle查看定时任务
  14. 一文搞懂Android抓包
  15. C++Primer 习题 第7章
  16. 关于EPS attach和EPS combined attach with sms only、NBIOT等
  17. CSS实现的带头像的彩色垂直菜单源码
  18. php excel扩展名,excel后缀名是什么
  19. Glide-通过Modules定制Glide
  20. Component属性

热门文章

  1. ae插件:Bodymovin for Mac
  2. [笔记].电机行业常用的中英文对照
  3. Windows系统SVN SERVER迁移。从服务器A迁移到服务器B
  4. GLPT团队程序设计天梯赛 模拟赛 2023
  5. springboot整合redis详细教程
  6. sql server2016 安装成功后无法连接服务器localhost的一种解决方法
  7. java web电影售票系统
  8. adb的安装,手机驱动的安装
  9. linux基础知识-11
  10. oracle常用命令,熟记于心