诛仙张小凡重生小说:数字证书生成方法
数字证书生成方法
证书生成方法一
——————————————————————————–
准备工作:
下载http://ftp.intron.ac/pub/security/authenticode.zip,里面包含了由Microsoft、OpenSSL和其它人提供的各种必要工具:
cabarc.exe: 制作.cab压缩包
openssl.exe: 制作PEM格式公钥、密钥
pvk.exe: 将PEM格式的RSA密钥转换为PVK格式
makecert.exe: 制作证书
cert2spc.exe: 转换证书格式
signcode.exe: 签署二进制代码或.cab压缩包
1.用openssl创建CA证书的RSA密钥(PEM格式):
openssl genrsa -des3 -out ca.key 1024
//ca.key为生成的Key文件,1024为密钥的长度.也可以为2048或4096等,长度越长,加密强度越高.
2.用openssl创建CA证书(PEM格式,假如有效期为一年):
openssl req -new -x509 -days 365 -key ca.key -out ca.crt -config openssl.cnf
//ca.crt为生成的证书文件,openssl.cnf为配置文件.
3.将PEM格式的ca.key转换为Microsoft可以识别的pvk格式。
pvk -in ca.key -out ca.pvk -nocrypt -topvk
证书生成方法二
——————————————————————————–
1.下载签名工具包
http://msdn.microsoft.com/MSDN-FILES/027/000/219/codesign.exe
运行
makecert -sk myNewKey -r -n “CN=JR21066 CA,OU=JR21066 CA,O=JR21066,E=jr@wn163.net” -ss myNew.cer JR21066CA.cer
//myNewKey是私钥,用于证明此证书属于你.-n后边是证书颁发者LDAP的路径.JR21066CA.cer是证书文件.
//OU=后边为颁发证书的机构名,E=后边是电子邮件地址.
给文件签名
——————————————————————————–
现在你就可以给你的.EXE、 .CAB、 .OCX、或者 .DLL文件签名了。范例如下:
signcode -prog myfilename -name displayname -info http://www.mycompany.com -spc mycredentials.spc -pvk myprivatekey.pvk
myfilename:要签名的文件名称
displayname:证书中对该文件的描述
http://example.microsoft.com 提供给用户关于下载文件的更详细的信息。
mycredentials:从CA获得的证书文件
myprivatekey:在向CA申请过程期间生成的秘钥。
(注意如果你不带任何参数运行signcode,它将会激活一个向导帮助你一步一步完成签名过程)
测试签名
——————————————————————————–
运行chktrust文件名 测试.EXE、 .DLL、或 .OCX 文件的签名
运行chktrust -c cab文件名.cab测试cab文件的签名
签名进程一旦工作,即会显示一个证书。
好了,现在你已经完成了为文件签名的工作。当使用Internet Explorer从一个Web站点下载这个文件时,用户将会看到一个相同的证书。如果这个文件在经过签名程序后被篡改,就会有提示出现告诉用户不要安装。