X509 证书生成

X509证书介绍

X.509 是由国际电信联盟(ITU-T)制定的数字证书标准,相信这是人尽皆知的了,目前X.509证书据我所知有三个版本,.net中使用的是x.509-2,X.509-2 版引入了主体和签发人唯一标识符的概念,以解决主体和/或签发人名称在一段时间后可能重复使用的问题,x509-2(以下简称x509)证书由两把钥匙组成,通常称之为密钥对,公钥加密,私钥解密。今天我想在这里对x509进行一个深入的介绍和了解,因为在WCF的安全体系中,x509证书应用是非常频繁的,或者说是不可缺少的。

1、如何生成证书?

使用微软提供的Makecert.exe测试证书生成工具可以很好的帮助我们得到一个x509标准证书,具体方法如下:下载Makecert.exe或者定位到你的计算机目录:C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin下,找找就看见了,我强烈建议你copy Makecert.exe到一个单独的目录中,如copy到D:\\cers。

  现在点击开始菜单-运行-输入cmd,运行控制台应用程序,定位到D:\\cers,在控制台输入:makecert -r  -pe  -$  individual -n “CN=mailSecurity” -sky exchange -sr currentuser -ss my mailSecurity.cer,即可在当前用户证书存储区下的个人区中生成一个名为mailSecurityr的x509证书,并在当前目录输出了证书文件mailSecurity.cer,以下简单介绍一下各种参数意义,更复杂的参数请参考:证书创建工具帮助

makecert 证书工具名

-r  表示即将生成的证书是自我签署的,自己给自己发奖(这里主要是指颁发机构)

-pe  表示将所生成的私钥标记为可导出。这样可将私钥包括在证书中

-$  证书是个人用还是商用(individual/commercial)老美就是搞啊,这玩意用美元符号还真是形象得很。

-n  表示证书主题,你就当它是标题吧,不管你取什么名字,必须包含CN=前缀

-sky  指定主题的密钥类型,必须是 signature、exchange 或一个表示提供程序类型的整数。默认情况下,可传入 1 表示交换密钥,传入 2 表示签名密钥

-sr  指定主题的证书存储位置。Location 可以是 currentuser(默认值)或 localmachine(实际是必须是这两个中的一个值)

-ss  指定主题的证书存储名称,输出证书即存储在那里

mailSecurity.cer  证书名称,不必与主题一致,不过建议你还是致的好。

时间: 2024-10-10 02:28:50

X509 证书生成的相关文章

WCF如何使用X509证书(安装和错误)(二)

从当前用户导出到本地计算机的的证书格式为.pfx 并且要导出私钥. 如何创建证书: makecert.exe -sr LocalMachine -ss My -a sha1 -n CN=JiangServer -sky exchange -pe     (服务端证书) makecert.exe -sr LocalMachine -ss My -a sha1 -n CN=JiangClient -sky exchange -pe      (客户端证书) 各种参数的介绍 属性解析 -sr 指定的证

使用CryptoAPI解析X509证书和P12证书

读入一个CER文件,CertCreateCertificateContext生成CERT_CONTEXT.CERT_CONTEXT这个数据结构中有一项CERT_INFO,CERT_INFO里面有一项SubjectPublicKeyInfo,  SubjectPublicKeyInfo是一段PUBLICKEY_INFO类型的数据段,里面保存的是算法的ID和DER编码的公钥.有了这段DER编码,我们就可以用其他工具(比如openssl)来解析公钥的各项参数.遗憾的是,CryptoAPI定义的接口却不

Windows下Nginx配置SSL实现Https访问(包含证书生成)

Vincent.李 Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成) 首先要说明为什么要实现https? HTTP全名超文本传输协议,客户端据此获取服务器上的超文本内容.超文本内容则以HTML为主,客户端拿到HTML内容后可根据规范进行解析呈现.因此,HTTP主要负责的是"内容的请求和获取".问题就出在这部分.行监控.劫持.阻挡等行为很容易导致网站泄密,一些关键参数比如登录密码开发者会在客户端

WCF如何使用X509证书 z

WCF如何使用X509证书 如何创建证书: makecert.exe -sr LocalMachine -ss My -a sha1 -n CN=JiangServer -sky exchange -pe     (服务端证书) makecert.exe -sr LocalMachine -ss My -a sha1 -n CN=JiangClient -sky exchange -pe      (客户端证书) makecert-sr localmachine -ss My -n CN=wcf

RSA证书生成******可用 需有RSAEncryptor.h/.m文件

第一步,制作自签名的证书 1.最简单快捷的方法,打开Terminal,使用openssl(Mac OS X自带)生成私钥和自签名的x509证书. openssl req -x509 -out public_key.der -outform der -new -newkey rsa:1024 -keyout private_key.pem -days 3650 按照命令行的提示输入内容就行了. 几个说明: public_key.der是输出的自签名的x509证书,即我们要用的. private_k

ssl证书生成

ssl证书生成 openssl req -new -x509 -days 3650 -nodes -out /opt/ssl/certs/postfix.pem -keyout /opt/ssl/private/postfix.pem 第一个是证书,第二个是key(私钥) 可以应用在很多程序上. 下面举两个例子: nginx postfix nginx ssl server { listen 443; server_name _; ssl on; ssl_certificate /opt/ssl

HTTPS证书生成原理和部署细节

今天摸索了下 HTTPS 的证书生成,以及它在 Nginx 上的部署.由于博客托管在 github 上,没办法部署证书,先记录下,后续有需要方便快捷操作.本文的阐述不一定完善,但是可以让一个初学者了解大致的原理,同时跟着操作可以为自己的博客/网站部署一个 HTTPS 证书. 网站部署 HTTPS 的重要性 看看下面,部分电信用户访问京东首页的时候,会看到右下角有一个浮动广告: 小白用户以为是京东有意放置的,细心的用户会发现,这个 iframe 一层嵌一层的恶心广告很明显是电信/中间人通过 DNS

Openssl CA证书生成以及双向认证,及windows系统证书批量导出,android cer转bks

Openssl CA证书生成以及双向认证 首先本文主要参照这篇文章写的 http://h2appy.blog.51cto.com/609721/1181234 只是途中有些问题折腾了一下,比如openssl.cnf如何来的,这个文件在编译完openssl后,应该openssl根目录下/apps/demoCA有个,可以把他拷贝到openssl.exe同一级目录 里面有些目录配置,自己可以修改下,但是我没有修改,所以最后生成的文件路径必须按openssl.cnf里面来,至于如何编译openssl 请

iOS消息推送证书生成以及Push消息(转)

iOS消息推送的工作机制可以简单的用下图来概括: Provider是指某个iPhone应用程序的Push服务器,APNS是Apple Push Notification Service的缩写,是苹果的服务器. 上图可以分为三个阶段: 第一阶段:应用程序把要发送的消息.目的iPhone的标识打包,发给APNS. 第二阶段:APNS在自身的已注册Push服务的iPhone列表中,查找有相应标识的iPhone,并把消息发送到iPhone. 第三阶段:iPhone把发来的消息传递给相应的应用程序,并且按