keyless

Keyless了解

  1. SSL加解密分为两个阶段:非对称加解密(预主密钥交换)和对称加解密(数据传输加解密)。SSL的握手过程,实质是先使用非对称加解密算法来交换数据,然后经计算得出相同的对称加解密所需的会话密钥。

  2. 常规握手主要流程如下:
    (1)客户端发送client hello,携带支持的SSL握手版本和加密套件、client random随机数等信息。
    (2)服务端根据收到的client hello数据,选择合适的(通常选择安全性最高的)加密套件,并将选择结果以及server random、公钥证书等返回给客户端。
    (3)客户端使用拿到的公钥加密客户端生成的预主密钥(premaster secret),并将密文发送给服务端。
    (4)服务端使用私钥解密密文,得到和客户端相同的预主密钥,此时完成了预主密钥的交换。
    (5)此时,客户端、服务端具有相同的client random、server random 、premaster secret,根据三者产生相同的master key,即为后续所需的会话密钥。握手完成。

预主密钥:
预主密钥的生成方式与密钥交换协议有关,如果采用D-H密钥交换,客户端可以产生随机数k1,然后计算a(k1)modp作为预主密钥,并用证书中的非对称加密方法及其公钥加密。

在这里插入图片描述
主密钥是由预主密钥、客户端随机数和服务器随机数通过PRF函数来生成;会话密钥是由主密钥、客户端随机数和服务器随机数通过PRF函数来生成,会话密钥里面包含对称加密密钥、消息认证和CBC模式的初始化向量,但对于非CBC模式的加密算法来说,就没有用到这个初始化向量。

Keyless SSL握手流程如下:
(1)客户端发送client hello,携带支持的SSL握手版本和加密套件、client random随机数等信息。
(2)服务端根据收到的client hello数据,选择合适的(通常选择安全性最高的)加密套件,并将选择结果以及server random、公钥证书等返回给客户端。
(3)客户端生成预主密钥(premaster secret),使用公钥对其加密,并将密文发送给服务端。
(4)服务端不解密密文,而是将经加密后的预主密钥(premaster secret)等数据打包发送给远端keyserver。
(5)Keyserver根据对应的私钥对预主密钥(premaster secret)的密文进行解密,并将解密后数据
响应给服务端。
(6)此时,虽然服务端并没有私钥,但还是拿到了keyserver的解密数据即客户端的premaster secret。客户端、服务端最终具有相同的client random、server random 、premaster secret,根据三者产生相同的master key,即为后续所需的会话密钥。握手完成。

可见,非Keyless和Keyless SSL握手流程的区别仅在于私钥使用部分。前者情况是服务端自身保有私钥,自行解密;后者情况是私钥存放在keyserver,依赖keyserver解密,在服务端实现了无私钥加解密,即Keyless。

Keyless使用场景
Keyless的特性包括:

  • 私钥证书集中管理,增加安全性(传统使用上的作用)。
  • 支持旁路模式,可将计算旁路到远程keyserver上。Keyserver使用加速卡替代服务端上的CPU进行计算,即可以增加服务上限,解放CPU,又可以降低成本。
  • 支持本地local模式,计算在旁路模式失败时回退到本地CPU,保证加密服务可用性。
  • 支持私有协议证书。
  1. 应用方向
    证书管理方向
  • 场景1:随着业务增长机器数量增长,私钥数量规模增大,集中管理私钥,防止私钥泄漏。
  • 场景2:A业务需要B业务接入HTTPS, 但是不便将私钥共享给B业务,此时可使用Keyless 技术,A业务保留自己的私钥。
  • 场景3:A业务自身想要保护机器上的私钥证书,Keyless使用本地模式,本地私钥为私有协议加密数据保证私钥安全。

SSL卸载方向
场景: SSL握手导致CPU负载升高,为了解放CPU算力以及节省成本。

证书防护方向
场景: A业务需要在外部物理机或虚机上部署服务,无法接入TLB,需要部署证书,采用Keyless local模式,使用私有协议封装的证书,保护证书安全。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值