由于领导不懂行,直接购买了GlobalSign的证书,结果引起了我这个开发人员痛苦的2星期之旅,说说大体情况:

目的:对买来的一个驱动程序进行签名,使之能够在Win x64情况下安装和使用

下载Windows Kits后安装,得到signtool.exe工具,用它进行签名。

公司名很快签上了,但是时间戳死活签不上,一运行就signtool就崩溃。可是

https://support.globalsign.com/customer/en/portal/articles/1491089

signtool sign /ac MSCrossCert.crt /f CodeSign.pfx /p password1234 /tr http://timestamp.globalsign.com/scripts/timestamp.dll filter.sys

文档上的例子明明写了一个例子啊,为啥我就死活运行不了呢?

一开始还以为timestamp.dll写错了,应该是timstamp.dll(少了一个e,网上搜索出来的结果都是少e的),还是不行。

最后不得不求助GlobalSign的售后,足足报告了5组测试命令与运行过程的全部情况。结果混蛋的GlobalSign售后看都不看内容,直接发给我已经看过一万遍的两个连接(其中第二个链接还是针对过时的驱动):

https://support.globalsign.com/customer/en/portal/articles/1491089
https://support.globalsign.com/customer/portal/articles/1217485

这样来来回回,整整13封邮件,问题还是没有得到解决。最后还是我发现了一件事情,他们给我的证书是不符合 RFC 3161的,所以必须用/t参数,而不是/tr。同时timestamp.dll拼写带e还是不带e,都是正确的,可是没人告诉我这件事情啊,让我疑惑了很久。

时间戳有了,signtool verify /v /kp 也显示正确无误,可是我的驱动还是无法使用,一调用就崩溃,一点有用的提示信息都没有,郁闷啊。。。因为无法判断出错原因,反反复复测试自己调用驱动的代码,试了一遍又一遍,实在是觉得自己的代码没问题,而确实是驱动本身的问题。

没办法,不能让驱动本身耽误开发,先开发业务流程吧。于是启动windows,按F8,进入“不检查签名”模式。

几天后,一切功能都开发完毕了,在“不检查签名模式”下运行良好,于是回到驱动签名的问题。

Windows正常启动模式下,死活还是无法安装驱动啊,更别提我调用的那些功能。

我还把自己的证书、密码、要签名的驱动、我签过名的驱动,全部发给了GlobalSign,要求他们帮我检查比较一下,问题到底出在哪里,可是他们看都不看(后来研究的结果表明,就是这个证书不能用来签名驱动,就这么简单的结果都不愿帮我试一下)。。。这服务,绝对差评。

无奈啊,只能在QQ群里求助,因为QQ群是全国范围的嘛,相关的高手应该都在里面了嘛。至于论坛,虽然也可提问,但是实时性太差,还要注册论坛什么的,放弃。

最后还是在一位VeriSign的朋友热心帮助下解决了问题,当场使用各种签名工具帮我实时测试,很快就有了结果。然后重新向GlobalSign申请内核证书,问题全部搞定。而且据这位VeriSign的朋友说,他们的证书不区分应用级别和内核级别,换而言之,直接就可对驱动签名。

这里是VeriSign的价格:

http://verisign.ert7.com/quotation.html

另外证书小白们,想节省时间精力、减少郁闷、加快项目开发,可联系我上面提到的两位VeriSign的朋友(QQ6220414和QQ1125803355)。

天地良心,我不是他们的托,他们也至今没有收取我一分钱(没一年之内必要买2份证书嘛!)。不过这态度和“售后”真没是没的说,明年一定买他们家的证书!

优秀的VeriSign和混蛋的GlobalSign的更多相关文章

  1. Linux 中优秀的文本化编辑思想大碰撞(Markdown、LaTeX、MathJax)

    这样一个标题可能不太准确,因为确实无法准确地解释什么叫"文本化编辑思想".其实我这篇随笔主要是想探讨 Markdown.LaTeX.MathJax,有兴趣的朋友可以继续往下看,同时 ...

  2. 基于 SailingEase WinForm Framework 开发优秀的客户端应用程序(目录)

    本系统文章将详细阐述客户端应用程序的设计理念,实现方法. 本系列文章以  SailingEase WinForm Framework 为基础进行设计并实现,但其中的设计理念及方法,亦适用于任何类型的客 ...

  3. 国内优秀的Android资源

    因为一些大家都知道的原因,Android很多官方出品的优秀开发资源在国内无法访问. 国内的同行们对此也做出了很多努力,有很多朋友通过各种手段把很多优秀的资源搬运到了国内,为国内android开发者提供 ...

  4. [转]别再抱怨了,国内这么多优秀的Android资源你都知道吗?

    因为一些大家都知道的原因,android很多官方出品的优秀开发资源在国内无法访问. 国内的同行们对此也做出了很多努力,有很多朋友通过各种手段把很多优秀的资源搬运到了国内,为国内android开发者提供 ...

  5. ******IT公司面试题汇总+优秀技术博客汇总

    滴滴面试题:滴滴打车数据库如何拆分 前端时间去滴滴面试,有一道题目是这样的,滴滴每天有100万的订单,如果让你去设计数据库,你会怎么去设计? 当时我的想法是根据用户id的最后一位对某个特殊的值取%操作 ...

  6. CSDN:你认为一名优秀的技术人应该具备怎样的素质?

    CSDN:你认为一名优秀的技术人应该具备怎样的素质? 王晶昱:我个人认为,符合这个世界要求的就是优秀的.在目前这个时代,我认为一个优秀的技术人员的特质可能是: 兴趣驱动,兴趣是最好的老师,写程序本身就 ...

  7. 优秀网站看前端 —— 小米Note介绍页面

    刚开始经营博客的时候,我写过不少“扒皮”系列的文章,主要介绍一些知名站点上有趣的交互效果,然后试着实现它们.后来开始把注意力挪到一些新颖的前端技术上,“扒皮”系列便因此封笔多时.今天打算重开“扒皮”的 ...

  8. [.net 面向对象程序设计进阶] (23) 团队开发利器(二)优秀的版本控制工具SVN(上)

    [.net 面向对象程序设计进阶] (23) 团队开发利器(二)优秀的版本控制工具SVN(上) 本篇导读: 上篇介绍了常用的代码管理工具VSS,看了一下评论,很多同学深恶痛绝,有的甚至因为公司使用VS ...

  9. [转] Android优秀开源项目

    Android经典的开源项目其实非常多,但是国内的博客总是拿着N年前的一篇复制来复制去,实在是不利于新手学习.今天爬爬把自己熟悉的一些开源项目整理起来,希望能对Android开发同学们有所帮助.另外, ...

随机推荐

  1. kindle paperwhite 使用说明

    calibre,eink必备转换软件. easypub,lucida制作的软件,支持txt to epub:txt to mobi,可以实现目录. 售后电话:400 817 0100 正常的设计格式转 ...

  2. android学习之4种点击事件的响应方式

    如题,下面就一一列出对点击事件响应的4种方式: 第一种:内部类的形式: package com.example.dail; import android.net.Uri; import android ...

  3. Andrdoid中相应用程序的行为拦截实现方式之----从Java层进行拦截

    致谢: 感谢 简行之旅的这篇blog:http://blog.csdn.net/l173864930/article/details/38455951,这篇文章是參考这篇blog的进行一步一步操作的, ...

  4. 机器学习笔记——K-means

    K-means是一种聚类算法,其要求用户设定聚类个数k作为输入參数,因此,在执行此算法前,须要预计须要的簇的个数. 如果有n个点,须要聚到k个簇中.K-means算法首先从包括k个中心点的初始集合開始 ...

  5. setWillNotDraw和setFillViewport

    Romain Guy write a little info about a ScrollView attribute that is missing  from documentation : An ...

  6. QTimerLine类学习

      QTimeLine类提供了控制动画的时间轴. 类型:enum CurveShape{EaseInCurve,EaseOutCurve,EaseInOutCurve,LinearCurve,Sine ...

  7. mysql中如何更新一个字段的值为它本身的值连接上一个字符串

    CONCAT(str1,str2,...)     返回结果为连接参数产生的字符串. 如有任何一个参数为NULL ,则返回值为 NULL. 或许有一个或多个参数. 如果所有参数均为非二进制字符串,则结 ...

  8. 10 Questions To Make Programming Interviews Less Expensive--reference

    Conducting Interview is not cheap and costs both time and money to a company. It take a lot of time ...

  9. 判断直线与线段相交 POJ 3304 Segments

    题意:在二维平面中,给定一些线段,然后判断在某直线上的投影是否有公共点. 转化,既然是投影,那么就是求是否存在一条直线L和所有的线段都相交. 证明: 下面给出具体的分析:先考虑一个特殊的情况,即n=1 ...

  10. 【转】解决警告 warning: directory not found for option

    转:http://blog.sina.com.cn/s/blog_6f72ff900101es6x.html 解决方法: 选择项目名称----->Targets----->Build Se ...