前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数字证书系列--利用自签名证书实现认证的大致过程

数字证书系列--利用自签名证书实现认证的大致过程

作者头像
qsjs
发布2021-06-17 20:00:44
1.2K0
发布2021-06-17 20:00:44
举报
文章被收录于专栏:MyPanda的学习笔记

对于自签名证书,完成自签名后,我们会获得如下的几个文件: CA 证书文件,CA证书的私钥,个人证书的私钥,获得CA签名的个人证书 ,证书请求文件(.csr) 通常证书请求文件在 获得签名后就没什么用处了;所以重要的是上面的两个证书以及两个私钥.

使用证书进行认证一般分为两种情况:

验证服务器端是可靠的,常用的https 其实就是验证server 不是冒牌的,这种情况下: server 端保存了 CA证书以及对应的私钥, 通信过程是这样的: 客户端发送请求要求服务证书,服务端会发送其证书给客户端(这里就是CA证书),客户端收到后,会进行证书的验证:通过CA证书中包含的public key, 计算概要信息的hash值,然后把这个概要信息 的hash值和 证书中的hash值比对,从而验证证书是否被篡改. 还需要验证证书机构签发机构是否可信任; (这种情况下,服务端需要配置证书以及对应的key,而客户端则需要trust 服务端的证书

客户端用证书作为自己的identity , 从而获得服务器的授权,其通信过程是这样的: 客户端发送证书信息给服务端,其包含了证书的概要以及hash, 这个hash 是客户端用私钥加密的,服务端收到证书后,用自己的公钥来验证客户端证书的完整性,验证通过,那么就认证通过,否则认证无法通过. (这种情况下,客户端需要有一个证书以及对应的私钥,而服务端需要一个证书,特殊的是: 服务端证书的公钥必须和客户端的私钥配对,一般情况下证书都只是包含公钥,不含私钥,但是在这个情景下,客户端的证书是必须包含私钥的,所以通常是 客户端证书 和客户端的 私钥 结合起来的一个证书文件, 而服务端的证书则是客户端的没有包含私钥的那个证书文件,也就是说: 客户端证书比服务端证书的内容多了一个私钥而已

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 使用证书进行认证一般分为两种情况:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档