数字签名(以ActiveXDemo为例)
1.创建Install.inf文件和run.bat
Install.inf:
[version] signature="$CHICAGO$" AdvancedINF=2.0 [Setup Hooks] HOOKRUN1=HOOKRUN1 [Deployment] InstallScope=user [HOOKRUN1] run=%EXTRACT_DIR%\run.bat
run.bat:
set CURDIR=%cd% msiexec.exe /i "%CURDIR%\ActiveXDemo.Setup.msi" /qn
2.创建cab文件(下载cabsdk.exe,加压之后需要其中的cabarc.exe---打包)
F:\Projects\ActiveXDemo\CABARC.EXE N
F:\Projects\ActiveXDemo\ActiveXDemo.cab
F:\Projects\ActiveXDemo\ActiveXDemo.Setup.msi
F:\Projects\ActiveXDemo\Install.inf F:\Projects\ActiveXDemo\run.bat
注释:将canarc.exe、ActiveXDemo.Setup.ms、Install.inf和run.bat保存到同一目录,进入cmd执行上面的命令,将ctiveXDemo.Setup.ms、Install.inf和run.bat打包成ActiveXDemo.cab文件
3.在网上下载signtool.rar并解压,进入DOS系统,通过cd命令进入到解压后的文件夹下面(“cd %path%\signtool\”),并将刚才生成的ActiveXDemo.cab拷贝到当前m目录下
4.创建证书文件
进入到上面的目录后,输入以下命令:
makecert -sv ActiveXDemo.pvk -r -n "CN=SunStar" ActiveXDemo.cer
利用MakeCert生成一个 证书.cer和一个私钥.pvk,同时创建私钥和公钥
5.转换证书
cert2spc ActiveXDemo.cer ActiveXDemo.spc
用Cert2Spc将.cer文件转换成为PKCS #7软件发布Certificate(.spc文件)
6.创建另外一个自签名证书,叫test.cer
makecert -sv test.pvk -r -n "CN=SunStar" test.cer cert2spc test.cer test.spc
7.从test.cer创建test.ctl文件
makectl test.cer test.ctl
8. 用ActiveXDemo.pvk和ActiveXDemo.spc这两个文件给test.ctl作数字签名
signcode -v ActiveXDemo.pvk -spc ActiveXDemo.spc test.ctl
9. 把test.ctl移动到受信系统存储区(管理证书)
certmgr -add -ctl test.ctl -s trust
10. 把ActiveXDemo.cer移动到根系统存储区
certmgr -add -c ActiveXDemo.cer -s root
11. 用test.pvk和test.spc给ActiveXDemo.cab作数字签名(将证书部署到.cab)
singcode -v test.pvk -spc test.spc ActiveXDemo.cab
12. 检查文件是否通过验证(检查部署证书后的.cab是否正确)
chktrust ActiveXDemo.cab
13.如果文件通过了数字签名检测,系统会询问是否安装这个文件,这时候一定要选择安装,整个签名过程才能完成。
(8-11类似于图形化的运行signcode.exe进行数字签名向导)
数字签名(以ActiveXDemo为例)的更多相关文章
- 公钥、私钥、CA认证、数字签名、U盾
感谢传智播客的方立勋老师,在一个教学视频上,他巧妙地以蒋介石给宋美龄写密信作为例子,生动地讲述了软件密码学知识. 加密分为对称加密和非对称加密,我们传统理解的,发送数据之前使用一个加密器加密,接到数据 ...
- Microsoft.Net中数字签名技术
概 述:本文以Microsoft.Net中创建签名的CAB文件为例,说明如何创建签名文件,从而使你的代码能够安全的在INTERNET上公布.希望能起到抛转引玉的作用. keyword:数字签名,Act ...
- JAVA 上加密算法的实现用例---转载
通常 , 使用的加密算法 比较简便高效 , 密钥简短,加解密速度快,破译极其困难.本文介绍了 MD5/SHA1,DSA,DESede/DES,Diffie-Hellman 的使用. 第 1 章基础知识 ...
- 浅谈IM软件业务知识——非对称加密,RSA算法,数字签名,公钥,私钥
概述 首先了解一下相关概念:RSA算法:1977年由Ron Rivest.Adi Shamirh和LenAdleman发明的.RSA就是取自他们三个人的名字. 算法基于一个数论:将两个大素数相乘很ea ...
- 微信JS-SDK“分享信息设置”API及数字签名生成方法(NodeJS版本)
原文:微信JS-SDK"分享信息设置"API及数字签名生成方法(NodeJS版本) 先上测试地址以示成功: 用微信打开下面地址测试 http://game.4gshu.com/de ...
- 为通过ClickOnce部署的应用程序进行数字签名
为通过ClickOnce部署的应用程序进行数字签名 ClickOnce是.NET用于Windows应用程序的一种便捷部署方式.不过由于便捷,导致缺少自定义操作的空间.比如需要对通过ClickOnce部 ...
- Google研究人员宣布完成全球首例SHA-1哈希碰撞!
2004年的国际密码讨论年会(CRYPTO)尾声,我国密码学家王小云及其研究同事展示了MD5.SHA-0及其他相关杂凑函数的杂凑碰撞并给出了实例.时隔13年之后,来自Google的研究人员宣布完成第一 ...
- 【传输协议】TCP、IP协议族之数字签名与HTTPS详解
文章转载出自:https://blog.51cto.com/11883699/2160032 安全的获取公钥 细心的人可能已经注意到了如果使用非对称加密算法,我们的客户端A,B需要一开始就持有公钥,要 ...
- 以e2e_cli为例漫谈fabric的一些基础知识点
在刚接触fabric的时候一般都是直接跟着wiki的教程一步步安装配置,执行一系列命令,最终将其运行起来,但很多人对其中的运行流程及其基础知识点可能不是很了解.基于此今天我将以$FABRIC_ROOT ...
随机推荐
- 【Codeforces Round #406 (Div. 2)】题解
The Monster 签到题,算一下b+=a和d+=c,然后卡一下次数就可以了. Not Afraid 只要一组出现一对相反数就是安全的. Berzerk 题意:[1,n],两个人轮流走,谁能走到1 ...
- 周记【距gdoi:133天】
蔡大神坚持每天写日记记录他所剩的oi生涯. 可是我呢?自从搞完数据结构后都不知道在干什么,整天在傻叉.也许是给自己压力太大了,或许是真的自己在迷茫以及犹豫,更或者自己真的是想太多不想写题,觉得烦了,没 ...
- 三个月死磕Python是种什么样的体验?
3个月的死磕Python后,参加「 楼+ Python实战 · 第4期 」的学员们感想如何?下面带来他们的真实评价. 作为实验楼的网红课程——「 楼+ Python实战 」已经走过了第四期,经过了三个 ...
- BZOJ4355:Play with sequence——题解
https://www.lydsy.com/JudgeOnline/problem.php?id=4355 维护一个长度为N的序列a,现在有三种操作: 1)给出参数U,V,C,将a[U],a[U+1] ...
- webpack散记
1. manifest manifest存储了webpack的chunk相关的信息.具体为一个对象,或者包含runtime的一段代码.其中包含着一个chunkId,已经对应chunkId的相关信息,例 ...
- GoLand安装配置
目录 下载 安装 破解 运行 参考网址 GoLand配置 下载 1 下载路径:https://pan.baidu.com/s/1JJ-Oxx9NkEK-PrwcvLys7Q,提取码:o0e5 2 下载 ...
- dubbo在项目中的应用
关于dubbo的使用,我们举个简单例子: 存在2个系统,A系统和B系统,A系统调用B系统的接口获取数据,用于查询用户列表. 在上一篇博文介绍了dubbo的创建,zookeeper的创建完成后,我们可以 ...
- bzoj 1142 [POI2009]Tab 最小表示
[POI2009]Tab Time Limit: 40 Sec Memory Limit: 162 MBSubmit: 373 Solved: 167[Submit][Status][Discus ...
- JSX 的基本语法规则
JSX 的基本语法规则:遇到 HTML 标签(以 < 开头),就用 HTML 规则解析:遇到代码块(以 { 开头),就用 JavaScript 规则解析
- JAVA、android中常用的一些jar包的作用
正文: 这里主要介绍的是hibernate使用到的.jar Hibernate一共包括了23个jar包,令人眼花缭乱.本文将详细讲解Hibernate每个jar包的作用,便于你在应用中根据自己的需要进 ...