openssl - X509证书操作函数】的更多相关文章

原文链接: http://blog.csdn.net/zqt520/article/details/26965797 现有的证书大都采用X.509规范,主要同以下信息组成:版本号.证书序列号.有效期.拥有者信息.颁发者信息.其他扩展信息.拥有者的公钥.CA对以上信息的签名.OpenSSL实现了对X.509数字证书的所有操作.包括签发数字证书.解析和验证证书等.涉及证书操作的主要函数有验证证书(验证证书链.有效期.CRL).解析证书(获得证书的版本.序列号.颁发者信息.主题信息.公钥.有效期等).…
先假设自己是一个CA,而且是一个root CA,Cliu8CA 生成一个CA的private key openssl genrsa -out caprivate.key 1024 当然可以跟密码 openssl genrsa -out caprivatepass.key 1024 -des3 -passout hello:world 1024 CA有一个certificate,里面放着CA的public key,要生成这个certificate,则需要写一个certificate request…
微软的CryptoAPI提供了一套解码X509证书的函数,一个X509证书解码之后,得到一个PCCERT_CONTEXT类型的结构体指针. 通过该结构体,我们就能够获取想要的证书项和属性等. X509证书文件,依据封装的不同,主要有下面三种类型: *.cer:单个X509证书文件,不私钥.能够是二进制和Base64格式.该类型的证书最常见: *.p7b:PKCS#7格式的证书链文件,包括一个或多个X509证书,不含私钥.通常从CA中心申请RSA证书时,返回的签名证书就是p7b格式的证书文件. *…
关于对称和非对称的加密操作,我们已经学习完两篇文章的内容了,接下来,我们就继续学习关于证书的生成. 生成 CSR 证书签名请求 CSR 是用于生成证书的签名请求,在 CSR 中,我们需要一些 dn 信息.其实也就是当前这个证书的服务对象,包含公司名.邮箱之类的内容. $privkey = openssl_pkey_new([ "private_key_bits" => 2048, "private_key_type" => OPENSSL_KEYTYPE…
SKID(证书使用者密钥标识符,subject key identifier 的简称)和 AKID(证书颁发机构密钥标识符,authority key identifier 的简称)是 X509 证书中常见的扩展字段. 下图是一张典型的证书文件(test.der),其中就包含 SKID 和 AKID 字段. 它们是做什么用的?简言之,这两个字段用于(通过 subject 和 issuer)快速区分证书. 数字证书使用已经很广泛,理论上多本证书可能具有相同的 subject name,该如何区分这…
在Windows平台下.假设要解析一个X509证书文件,最直接的办法是使用微软的CryptoAPI. 可是在非Windows平台下,就仅仅能使用强大的开源跨平台库OpenSSL了.一个X509证书通过OpenSSL解码之后,得到一个X509类型的结构体指针. 通过该结构体,我们就能够获取想要的证书项和属性等. X509证书文件,依据封装的不同.主要有下面三种类型: *.cer:单个X509证书文件,不私钥,能够是二进制和Base64格式.该类型的证书最常见: *.p7b:PKCS#7格式的证书链…
在之前的文章"通过OpenSSL解码X509证书文件"里.讲述了怎样使用OpenSSL将证书文件解码,得到证书上下文结构体X509的方法. 以下我们接着讲述怎样通过证书上下文结构体X509,获得想要的证书项. 本文先讲述怎样获取证书的基本项,后面还有文章介绍怎样获取证书的扩展项. 以下的代码,都是假定已经通过解码证书文件.得到了证书上下文结构体X509.至于怎样使用OpenSSL解码证书文件.得到证书上下文结构体X509.请阅读之前的文章. 首先,我们看看关于证书结构体X509定义:…
一.OpenSSL简介 OpenSSL支持多种秘钥算法,包括RSA.DSA.ECDSA,RSA使用比较普遍.官网地址:https://www.openssl.org/,一般CeontOS系统都装有OpenSSL,可使用命令openssl verson查看 openssl verson 二.秘钥操作 A)生成RSA私钥.-out private.key 输出秘钥文件为private.key:128 为秘钥大小,目前认为2048大小是比较安全的,本文测试使用128大小. openssl genrsa…
利用openssl完成X509证书和PFX证书之间的互转 # OpenSSL的下载与安装: 1.下载地址: 官方网址—— https://www.openssl.org/source/ OpenSSL for Windows —— http://gnuwin32.sourceforge.net/packages/openssl.htm 2.安装:此处已OpenSSL for Windows为例 * 点击openssl-0.9.8h-1-setup.exe 进行安装: * 添加环境变量:path…
openssl解析国密X509证书,把公钥拿出来重写一下就行了        x = strToX509(pbCert, pulCertLen);dwRet = getCertPubKey(x, &pRSAPubKeyBlob, &pECCPubKeyBlob);ECCPUBLICKEYBLOB  pec = { 0 };//目标公钥pec.BitLen = 256;int i = 0;for (i = 0; i < 64; i++){if (i <= 31){pec.XCoo…