快捷搜索:

ECC+RSA双证书解决方案

什么是ECC

  ECC是Elliptic Curves Cryptography的缩写,意为椭圆曲线密码编码学。和RSA算法一样,ECC算法也属于公开密钥算法。最初由Koblitz和Miller两人于1985年提出,其数学根基是使用椭圆曲线上的有理点构成Abel加法群上椭圆离散对数的谋略艰苦性。

  ECC算法的数学理论异常深奥和繁杂,在工程利用中对照难于实现,但它的单位安然强度相对较高,它的破译或求解难度基础上是指数级的,黑客很难用平日应用的暴力破解的措施来破解。RSA算法的特征之一是数学道理相对简单,在工程利用中对照易于实现,但它的单位安然强度相对较低。是以,ECC算法的可以用较少的谋略能力供给比RSA加密算法更高的安然强度,有效地办理了“前进安然强度必须增添密钥长度”的工程实现问题。

  

\

 

  与RSA算法比拟,ECC算法拥有凸起上风:

  1、更得当于移动互联网: ECC加密算法的密钥长度很短(256位),意味着占用更少的存储空间,更低的CPU开销和占用更少的带宽。跟着越来越多的用户应用移动设备来完成各类网上活动,ECC加密算法为移动互联网安然供给更好的客户体验。

  2、更好的安然性:ECC加密算法供给更强的保护,比今朝的其他加密算法能更好的防止进击,使你的网站和根基举措措施比用传统的加密措施更安然,为移动互联网安然供给更好的保障。

  3、更好的机能: ECC加密算法必要较短的密钥长度来供给更好的安然,例如,256位的ECC密钥加密强度等同于3072位RSA密钥的水平(今朝通俗应用的RSA密钥长度是2048位)。其结果是你以更低的谋略能力价值获得了更高的安然性。经国外有关势力巨子机构测试,在Apache和IIS办事器采纳ECC算法,Web办事器相应光阴比RSA快十几倍。

  4、更大年夜的IT投资回报:ECC可赞助保护您的根基举措措施的投资,供给更高的安然性,并快速处置惩罚爆炸增长的移动设备的安然连接。 ECC的密钥长度增添速率比其他的加密措施都慢(一样平常按128位增长,而 RSA则是倍数增长,如:1024 -2048--4096),将延长您现有硬件的应用寿命,让您的投资带来更大年夜的回报。

  ECC加密算法的通用性赓续增强

  ECC加密算法自1985年提出,因其工程利用中难度较高,到2005年才在各类操作系统中得到广泛支持,在举世安然市场需求的刺激下,ECC算法将慢慢取代RSA算法,成为主流加密算法。今朝,举世各大年夜CA都已经陆续开始为用户签发采纳ECC加密算法的各类证书.ECC加密算法今后支持所有操作系统、所有浏览器和各类移动终端,主要有:

  Mozilla NSS 3.11以上版本支持

  OpenSSL 1.0以上版本支持

  微软CryptoAPI Vista/Win7/Win8都支持

  BouncyCastle 1.32以上版本支持

  JSSE 6 以上版本支持

  BSAFE 4.0 以上版本支持

  各类版本的IE浏览器、火狐浏览器、谷歌浏览器和苹果浏览器都支持

  安卓系统(2.3以上版本)、苹果IOS(5.0以上版本)、Window Phone(各类版本)都支持

  北京天威诚信电子商务办事有限公司是国家授牌CA认证机构;专业从事数字证书等技巧和产品办事,办事于阿里巴巴、百度、腾讯、京东、遐想、金山、中行、工行、建行等全行业超95%的大年夜客户,覆盖超10亿网夷易近,拥有富厚的应对和办理各类繁杂及突发环境的专业办事支持团队,可以为用户供给优质的本地化办事与技巧支持。

  Apache设置设置设备摆设摆设措施

  首先将 ecc 证书和 rsa 证书的证书链合并, ecc 证书链在前, rsa在后, cat chain-ecc.crt chain-rsa.crt > chain-ecc-rsa.crt 打开apache安装目录下conf/extra目录中的httpd-ssl.conf(或conf目录中的ssl.conf)文件

  在设置设置设备摆设摆设文件中的 …… 之间添加或编辑如下设置设置设备摆设摆设项

  SSLProtocol all -SSLv2 -SSLv3

  SSLHonorCipherOrder on

  SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM

  #ECC 将 ecc 证书(不含证书链)和 ecc 证书的密钥文件放在前

  SSLCertificateFile /etc/apache2/SSL2015/ecdsa.cert.crt

  SSLCertificateKeyFile /etc/SSL2015/certs/ecdsa.key

  #RSA 将 rsa 证书(不含证书链)和 rsa 证书的密钥文件放在后

  SSLCertificateFile /etc/apache2/SSL2015/rsa.cert.crt

  SSLCertificateKeyFile /etc/apache2/SSL2015/rsa.cert.key

  #指定 ecc/rsa 合并后的证书链位置

  SSLcertificateChainFile /etc/apache2/SSL2015/chain-ecc-rsa.crt

  假如办事器的 OpenSSL 版本已经为 1.0.2 以及更新的版本,则用以下措施,ecc 和 rsa 证书要包孕证书链:

  #ECC 指定 ecc 证书文件位置(证书以及证书链合并为一个文件为 ecdsa.cert.pem )

  SSLCertificateFile /etc/apache2/SSL2015/ecdsa.cert.pem

  SSLCertificateKeyFile /etc/SSL2015/certs/ecdsa.key

  #RSA 指定 rsa 证书文件位置(证书以及证书链合并为一个文件为 rsa.cert.pem )

  SSLCertificateFile /etc/apache2/SSL2015/rsa.cert.pem

  SSLCertificateKeyFile /etc/apache2/SSL2015/rsa.cert.key

  以上是指定证书的要领,各位根据 OpenSSL 的版本选择对应的要领,当然这还没完,下一步要直接指定证书加密要领,确保 ecc 的加密要领要在 rsa 模式的前面,否则 ecc 证书没法生效了。

  Nginx设置设置设备摆设摆设措施

  nginx 最新的 mainline 版本已经支持了双证书,保举应用nginx 1.11.1版本,openssl 版本保举应用1.0.2h版本。

  改动nginx的设置设置设备摆设摆设文件 nginx.conf 设置设置设备摆设摆设双证书:

  ssl_certificate ssl/ecc/server.pem;

  ssl_certificate_key ssl/ecc/server.key;

  ssl_certificate ssl/rsa/server.pem;

  ssl_certificate_key ssl/rsa/server.key;

  ssl_ciphers ECDHE-RSA-AES256-SHA384:AES256-SHA256:RC4:HIGH:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!AESGCM;

  ssl_prefer_server_ciphers on;

  ssl_stapling on;

  ssl_stapling_verify on;

  ssl_session_cache shared:SSL:10m;

  ssl_session_timeout 10m;

  add_header Strict-Transport-Security "max-age=31536000";

  error_page 497 https://$host$request_uri;



郑重声明:中国软件资讯网站刊登/转载此文出于通报更多信息之目的 ,并不料味着附和其不雅点或论证其描述。中国软件资讯网不认真其真实性 。

【关注微信"民众,"号,微信搜:中国软件资讯网】【关注微信"民众,"号,微信搜:CNIT察看】

您可能还会对下面的文章感兴趣: