很多人问我的https的证书为什么是ECC,快教他怎么配置,所以就有了这篇如何使用ECC算法签发证书请求文件(CSR)
其实,一般的SSL证书都是RSA算法生成的,这种算法要至少2048位的密钥才能够保证安全性,超长的密钥拖累了本就性能不高的小VPS。但是,现在已经有另外一种逐渐发展的SSL证书加密算法可以很好的解决这个问题,那就是ECC(椭圆曲线)算法,这种算法能够提供比其他算法(如RSA DSA)更快但是相当的安全性能
那么ECC的优势有哪些?
- 256位的ECC密钥加密强度等同于3072位RSA密钥的水平(目前普通使用的RSA密钥长度是2048位)
- 经国外有关权威机构测试,在Apache和IIS服务器采用ECC算法,Web服务器响应时间比RSA快十几倍
好了,牛逼吹完了,上面都是谷歌搜到的陈述,我整理了一下,让大家更好地阅读上面的描述简单地理解ECC。
目前支持ECC算法的SSL厂商不多,价格亲民的就有COMODO家,他家的“Comodo Positive SSL”也是支持ECC的,效果如下图,目前本小站linpx.com也是在用这个的。
如何获得ECC的证书?
必须用使用了ECC算法签发证书请求文件(CSR),才能申请ECC的证书。
生成证书私钥和请求文件
在这里我们选择使用 secp384r1
的密钥,这样能在缩短密钥长度的同时保证足够的安全性。
一键生成Key和CSR代码:
openssl ecparam -out www.linpx.com.pkey -name secp384r1 -genkey && openssl req -new -key www.linpx.com.pkey -nodes -out www.linpx.com.csr -subj "/C=CN/ST=Shanghai/L=Shanghai/O=Linpx Inc/OU=IT Dept/CN=www.linpx.com"
其中,www.linpx.com.pkey
,www.linpx.com.csr
换成你自己的,别忘了,pkey是有两处的
其中,/C=CN/ST=Shanghai/L=Shanghai/O=Linpx Inc/OU=IT Dept/CN=www.linpx.com"
换成你自己的,尤其最后处的域名。这段理解为国家、省份、地方市、公司、部门、域名。
然后使用vi/vim/nano或者其他工具箱查看CSR文件,大概是这样的:
-----BEGIN CERTIFICATE REQUEST-----
MIIBbzCB9QIBADB2MQswCQYDVQQGEwJDTjERMA8GA1UECAwIU2hhbmdoYWkxETAP
BgNVBAcMCFNoYW5naGFpMRIwEAYDVQQKDAlMaW5weCBJbmMxFTATBgNVBAsMDE5l
dHdvcmsgRGVwdDEWMB**********************************************
****************************************************************
****************************************************************
****************************************************************
****************************************************************
-----END CERTIFICATE REQUEST-----
复制上面的内容,然后到支持的ECC算法证书的SSL供应商,进行签发。
本文由 Chakhsu Lau 创作,采用 知识共享署名4.0 国际许可协议进行许可。
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。
貌似支持ecc的浏览器不是很广泛