展开

关键词

Nginx配置网站ECC RSA证书

软件版本需求: NGNIX>1.10 Openssl>1.02 首先需要申请ECCRSA两种签名SSL证书,免费证书申请详见:关于免费ssl证书的那些事儿 配置证书路径: ssl_certificate ; ssl_certificate_key example.com.ecdsa.key; 此时由于双证书,浏览器无法区分不同的加密算法使用的配套加密协议该使用哪个证书; 因此重点在于算法的区分,不同的算法对应不同是证书 -SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3 :ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128 至此,双证书配置完成。 原创文章转载请注明

1.2K30

SSL证书中加密算法RSAECC的对比

什么是ECC算法? ECC是EllipticCurves Cryptography的缩写,意为椭圆曲线密码编码学。RSA算法一样,ECC算法也属于公开密钥算法。 ECC算法的数学理论非常深奥复杂,在工程应用中比较难于实现,但它的单位安全强度相对较高,它的破译或求解难度基本上是指数级的,黑客很难用通常使用的暴力破解的方法来破解。 与RSA算法相比,ECC算法拥有哪些优势: 1、更适合于移动互联网:ECC加密算法的密钥长度很短(256位),意味着占用更少的存储空间,更低的CPU开销占用更少的带宽。 3、更好的性能:ECC加密算法需要较短的密钥长度来提供更好的安全,例如,256位的ECC密钥加密强度等同于3072位RSA密钥的水平(目前普通使用的RSA密钥长度是2048位)。 经国外有关权威机构测试,在ApacheIIS服务器采用ECC算法,Web服务器响应时间比RSA快十几倍。 综上,对于两者之间的取舍,也请大家更具自己的用户群体,做出取舍。

54450
  • 广告
    关闭

    腾讯云域名特惠,新用户抢购首年只需1元

    腾讯云域名专场特惠:个人新用户.top仅1元/年,企业新用户.com仅1元/年,另外购买域名赠送免费版证书和解析…

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    ECC证书的生成验签

    一、ECC证书是什么 RSA的计算原理是简单的:对消息进行幂次方取模得到 加密消息。对高安全等级的要求势必增加幂次方的位数。所以这个RSA的加密位数长度是把双刃剑。 而ECC算法在计算复杂度远小于RSA,但是却得到RSA同样的安全等级。 二、ECC证书的生成: ECC证书自签发:openssl可以签发ecc证书,流程如同生成私钥-》csr请求-》X509格式证书ecc算法有多种(openssl ecparam -list_curves)。测试用例用多个参数生成多种ecc算法的证书。 命令dd if=/dev/urandom of=randfile bs=256 count=1 三、验证ECC证书 ECC的握手中主要是完成ECC证书验证(ECDSA签名用途),包括完成签名验签。 对应的指令如下: 3.1.提取ECC公钥(通用方法,同RSA): openssl x509 -noout -pubkey -in certificate.pem 3.2.私钥签名: openssl dgst

    5.9K310

    RSA 证书加解密通信

    接口接口之前的数据也用一样的方式进行加密和解密。 思路 生成公私钥证书 公钥对接口参数明文加密 私钥对接口参数明文解密 通信双方互相持有对方公私钥 如果所有的接口都需要加解密,可以放到拦截器中去统一处理,也可以用注解的方式,控制哪些接口需要加密,哪些接口不需要加密

    36840

    如何在Nginx上为Debian 8创建ECC证书

    简而言之,ECC提供具有类似安全性的较小密钥,这反过来转化为更高的加密性能,适用于SSL等数字签名。 本教程所有ECC证书都依赖于椭圆曲线协议,该协议可以有多种形式。 我们需要将私钥证书存储在一个容易记忆的位置,因此我们需要创建一个新目录。 sudo mkdir /etc/nginx/ssl 第3步 - 创建自签名ECC证书 在本节中,我们将申请新证书并签名。 sudo chmod 600 /etc/nginx/ssl/* 您的证书保护它的私钥现在可以进行设置了。 第4步 - 设置证书 在本节中,我们将使用密钥证书配置Nginx虚拟主机。 在server_name之后,添加您的SSL密钥证书路径。 想要了解更多关于创建ECC证书的相关教程,请前往腾讯云+社区学习更多知识。

    46300

    为什么我强烈建议你使用ECC 证书

    目前最常用的密钥交换算法有 RSA ECDHE:RSA 历史悠久,支持度好,但不支持 PFS(Perfect Forward Secrecy);而 ECDHE 是使用了 ECC(椭圆曲线)的 DH( 内置 ECDSA 公钥的证书一般被称之为 ECC 证书,内置 RSA 公钥的证书就是 RSA 证书。 由于同等安全条件下,ECC 算法所需的 Key 更短,所以 ECC 证书文件体积比 RSA 证书要小一些。以下是本站的对比,可以看到左侧的 ECC 证书要小 1/3: ? RSA 证书可以用于 RSA 密钥交换(RSA 非对称加密)或 ECDHE 密钥交换(RSA 非对称签名);而 ECC 证书只能用于 ECDHE 密钥交换(ECDSA 非对称签名)。 好消息是,Nginx 1.11.0 开始提供了对 RSA/ECC证书的支持。

    6.4K20

    Python实现常见的几种加密算法(MD5,SHA-1,HMAC,DESAES,RSAECC)

    在公开密钥加密电子商业中RSA被广泛使用。它被普遍认为是目前比较优秀的公钥方案之一。RSA是第一个能同时用于加密和数字签名的算法,它能够抵抗到目前为止已知的所有密码攻击。 from rsa import common # 使用 rsa库进行RSA签名和加解密 class RsaUtil(object): PUBLIC_KEY_PATH = 'xxxxpublic_key.pem (message, signature, self.company_public_key) ECC加密 全称:椭圆曲线加密(Elliptic Curve Cryptography),ECC加密算法是一种公钥加密技术 则给定kG,根据加法法则,计算K很容易但反过来,给定KG,求k就非常困难。 因为实际使用中的ECC原则上把p取得相当大,n也相当大,要把n个解点逐一算出来列成上表是不可能的。 椭圆曲线加密*************") ecc_main() 本文主要介绍了MD5,SHA-1,HMAC,DES/AES,RSAECC这几种加密算法python代码示例。

    1.2K30

    Openssl生成RSA算法秘钥,ECC算法秘钥,国密密钥

    ### 生成 RSA 密钥 打开 OpenSSL 工具,使用以下命令行生成 RSA 私钥。 您可以选择生成 1024 或 2048 位的私钥 openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits :2048 根据 RSA 私钥生成 RSA 公钥: openssl rsa -pubout -in private_key.pem -out public_key.pem 生成 ECC 密钥 打开 OpenSSL 工具,使用以下命令行生成 ECC 的密钥对。 椭圆曲线算法 openssl ecparam -name secp256k1 -genkey -noout -out secp256k1-key.pem 根据 secp256k1-key.pem 密钥对生成 ECC

    28230

    假期期间最后的折腾:重新整理优化 SSL 证书

    所谓“双证书”其实就是 SSL 证书加密算法不同的两个证书而已,Let's Encrypt 就支持同时申请同域名不同加密算法的证书,也就是RSA 加密算法ECC 加密算法(椭圆加密算法),俗称 ECC 公钥密码系统的加密算法 ECCRSA 的对比 第六届国际密码学会议对应用于公钥密码系统的加密算法推荐了两种:基于大整数因子分解问题(IFP)的 RSA 算法基于椭圆曲线上离散对数计算问题( 目前用国际上公认的对于 RSA 算法最有效的攻击方法--一般数域筛(NFS)方法去破译攻击 RSA 算法,它的破译或求解难度是亚指数级的。 正是由于 RSA 算法 ECC 算法这一明显不同,使得 ECC 算法的单位安全强度高于 RSA 算法,也就是说,要达到同样的安全强度,ECC 算法所需的密钥长度远比 RSA 算法低(见表 1 图 注意事项 ECC+RSA证书在 CDN 下的注意事项 ECC+RSA证书模式虽然 Nginx 完美的支持了,但是如果你有使用 CDN 的话,这个双证书就会失效,因为用户访问到的都是 CDN

    33520

    老听别人说加密算法,现在给你个机会深入了解下

    三、ECC RSA 在 1976 年,由于对称加密算法已经不能满足需要,Diffie Hellman 发表了一篇叫《密码学新动向》的文章,介绍了公匙加密的概念,由 Rivet、Shamir、Adelman 现在 SSL 证书普遍使用的是 RSA 算法,由于上述的 RSA 算法存在的缺点,使用 ECC 作为其公钥算法的数字证书近几年的发展也不容小觑:2008 年左右 CA 开始储备 ECC证书,2012 年左右 CA 开始对外公开销售 ECC 证书,2014 年 ECC 证书在国外被普遍开始使用,2015 年国内开始接受 ECC 证书。 本测试案例中使用了两个不同的身份验证算法: 我们看到,ECC-256 层次结构优于 RSA-2048 RSA-3072 ? - 1200K GET,重用为 0% 一个有趣的现象是,在 Apache 一例中我们观察到 ECC-256 RSA-2048 的网络传输开始饱和,但 RSA-3072 却达到了 CPU 利用极限。

    24550

    Thawte RSA CA 2018 SSL证书续费及申请

    Thawte RSA CA 2018 SSL证书分为DV、OV、EV三种类型,但无论哪一种SSL证书在最长有效期只有1年,意味着每年就需要申请续订,如果不续订会导致项目业务被终止并且发生错误警告。 可以直接联系Gworg进行Thawte RSA CA 2018 SSL证书续费申请。 image.png 第一步:将网站域名提交到Gworg进行申请并且认证。 第二步:对域名进行认证,如果是选择OVEV进行实名认证。 第三步:拿到SSL证书文件就可以直接配置或者换之前的文件。 说明:DV类型的证书几分钟就可以签发,OV、EV企业级一个工作日签发。 另外证书类型分为:单域名、通配符、多域名,保护的功能不同,域名数量也不同,如果是续费,请将域名提供给Gworg确定类型。

    18000

    Nginx常见异常整理,帮你快速定位

    ,但是还是决定更换一个证书看看,因为之前是RSA证书,那我换个ECC证书试试(推荐七牛云SSL证书申请,可以选择ECC证书) 换过之后有新的发现 curl: (35) Cannot communicate 而在这两个系统上curl默认是禁用ECC加密的,虽然服务端加密套件支持ECC,但是客户端不支持,所以请求失败,需要客户端curl通过指定加密套件来请求 curl --ciphers ecdhe_rsa_aes 指定加密套件后,又回到起点,仍然是原来的错误,看来证书没有关系 柳暗花明 没办法,仔细对比了其他网站的nginx配置,没什么不一样,只是没有配ssl_session_cache,以我对该参数的了解,该参数只是作为 加密,但是服务端证书没有提供RSA公钥 协商采用了DH(EC Diffie-Hellman)加密,但是服务端证书没有提供DH参数 协商采用了fortezza_kea加密,但是服务端证书没有提供参数 ? 证书要比RSA证书更小,加解密更快,推荐

    30420

    Nginx双证书ECCRSA配置

    Nginx1.11.0版本后提供了ESA/ECC证书的支持,以下是参考链接: https://www.mf8.biz/ecc-nginx-double-cert http://www.freebuf.com /articles/database/155912.html ECDSA (椭圆曲线数字签名算法) 就是我们所说的 ECC 证书了,相比 RSAECC 证书具有安全性高, 处理速度更快的优点,尤其适合在移动设备上使用 但是其唯一的缺点就是兼容性问题,古代的 XP Android2.3 不支持这种加密方式。 ECCRSA,可惜只有90天有效期,大家90天后再续期就可以了! 我们继续编辑nginx.conf配置文件 ssl_certificatessl_certificate_key分别放入两个证书文件以及密钥, 使用openssl dhparam -out dhparam.pem

    2.3K80

    RSA算法补充:数字签名和数字证书

    数字签名的过程: 图1 数字签名生成及验证过程 数字证书(Digital Certificate) 数字证书的出现是为了防止一种更复杂的情况出现,即如何确保收到的公钥(Public Key)真的是你要与之通信的信息发送方发过来的 数字证书这一名词并非是我国原有,而是来自于英文digital certificate的翻译。 数字证书从本质上来说是一种电子文档,是由电子商务认证中心(以下简称为CA中心)所颁发的一种较为权威与公正的证书,对电子商务活动有重要影响,例如我们在各种电子商务平台进行购物消费时,必须要在电脑上安装数字证书来确保资金的安全性 (百度百科) 数字证书的生成: 图2 数字证书生成及使用过程 一般数字证书(Digital Certificate)都是由大型机构CA(Certificate Authority)提供,这就保证了接收到的公钥 所以在使用RSA算法的通信过程中,公钥提供方一般是需要将数字签名(Digital Signature)、数字证书(Digital Certificate) 以及消息(Message)一并发给接收方,接收方通过

    9720

    C#使用RSA证书文件加密和解密示例

    修改MSDN上的示例,使之可以通过RSA证书文件加密和解密,中间遇到一个小问题。 A:导入带有私钥的证书时,需要使用"X509KeyStorageFlags"参数标记"私钥可导出"。 //Console.WriteLine(RSA.ToXmlString(false)); //Pass the data to ENCRYPT, the public //Import the RSA Key information. //Import the RSA Key information.

    1K100

    HTTPS虐我千百遍,我却待她如初恋!

    上面展示的便是自己手动计算的值,拿这个值之前的值进行比较是否相等便可知发过来的证书是否被修改过。 那么,为什么不直接使用 RSA 的密钥对进行加密数据? 密钥交换 密钥交换的方式有两种:RSA ECDHE,RSA 的方式比较简单,浏览器生成一把密钥,然后使用证书 RSA 的公钥进行加密发给服务端,服务再使用它的密钥进行解密得到密钥,这样就能够共享密钥了 椭圆曲线加密 现在的证书的签名算法有两种:RSA 新起的 EC。如下图所示,google.com 便是使用的 ECC 证书: ? 更多细节可见 Medium 的这篇文章《ECC elliptic curve encryption》。这样我们便理解了 ECC 的原理,那么怎么利用 ECC 进行密钥交换呢? 综上本文主要讨论了对称加密非对称加密的原理,并介绍了如何利用 RSA证书签名的检验以验证连接服务器的身份,怎么利用 ECC 进行数据加密密钥交换,介绍了下怎么生成使用 HTTPS 证书,并介绍了下客户端证书

    35320

    【HTTPS】407- 记住 HTTPS!

    HTTPS 是使用 RSA 进行身份验证交换密钥,然后再使用交换的密钥进行加解密数据。 身份验证是使用 RSA 的非对称加密,而数据传输是双方使用相同的密钥进行的对称加密。 上面展示的便是自己手动计算的值,拿这个值之前的值进行比较是否相等便可知发过来的证书是否被修改过。 那么,为什么不直接使用 RSA 的密钥对进行加密数据? 密钥交换 密钥交换的方式有两种:RSA ECDHE,RSA 的方式比较简单,浏览器生成一把密钥,然后使用证书 RSA 的公钥进行加密发给服务端,服务再使用它的密钥进行解密得到密钥,这样就能够共享密钥了 椭圆曲线加密 现在的证书的签名算法有两种:RSA 新起的 EC。如下图所示,google.com 便是使用的 ECC 证书: ? 综上本文主要讨论了对称加密非对称加密的原理,并介绍了如何利用 RSA证书签名的检验以验证连接服务器的身份,怎么利用 ECC 进行数据加密密钥交换,介绍了下怎么生成使用 HTTPS 证书,并介绍了下客户端证书

    54030

    让大象起舞第一弹---HTTPS的计算性能

    下面结合腾讯现在主要使用到的证书签名密码套件分别介绍一下。 什么是密码套件(cipher suite)?它其实是一套算法的统称,包括密钥交换算法、消息认证码算法、内容加密算法伪随机数算法。 ECDHE-RSA-AES128-SHA256 5.15% ECDHE-RSA-AES128-SHA256 ~1% 证书签名算法 证书签名算法主要用于身份校验,现在的签名算法主要是SHA(安全哈希)系列 如下表所示,ECC使用224位长度的密钥就能实现RSA2048位长度的安全性 对称密钥大小 RSADH密钥大小 ECC密钥大小 80 1024 160 112 2048 224 128| 3072| 消息认证码算法 消息认证码算法证书签名算法的核心操作有点类似,主要是基于安全哈希函数,比如SHA1或者SHA2。所以这里就不做多余介绍。 简单概括一下: RSA计算相关的事件占全部采样约75%,ECC相关的计算占比约10%。 使用RSA密钥交换时,RSA相关的事件采样占整体采样的比例约85%。

    18920

    TLSSSL 协议详解 (29) 国密SSL协议

    ECC 对应的是标准的RSA,切勿被ECC迷惑,这个ECC并不和标准的椭圆曲线密钥交换算法类似,而是RSA类似。 服务器发送ECC公钥(在证书中)到客户端,客户端拿ECC公钥加密随机数给服务器(client key exchange)。 3:PRF算法 PRF算法TLS 1.2类似,唯一区别:TLS1.2下,PRF算法为SHA256,而GM SSL的算法为SM3。 (2): 国密SSL的ECC的server key exchange只是签名,由于本身不包含任何参数,故签名时的hash是2个随机数加上加密证书(注意国密规范描述证书时采用的尖括号的描述,即证书前需要加上长度信息表示 (3): 国密SSL的ECDHE证书标准TLS就一样了,只是签名算法使用的是sm2。 Sm2签名需要一个ID,规范中建议为”1234567812345678”。实现上,都使用该值。

    7720

    相关产品

    • 代码签名证书

      代码签名证书

      腾讯云代码签名证书(CSC)提供各平台程序的签名服务,标识软件或代码的来源以及软件开发者的真实身份,同时保证软件不被恶意篡改。签名后的软件,在下载安装时不会弹出安全警告,用户能够有效的辨别该软件的可信度,从而建立良好的软件品牌信誉度。

    相关资讯

    热门标签

    活动推荐

    扫码关注腾讯云开发者

    领取腾讯云代金券