密码学基础-身份认证

密码学基础-身份认证

概述

书信的亲笔签名;公文、证书的印章起到了核准、认证的功能。

如前文密码学基础-数据加密所述,信息安全少不了身份认证的话题。只有认证了信息的来源,我们才能知道这条信息是否是正确的,合法的,安全可用的。

非对称加密技术实现身份认证

上节提到的非对称加密技术不仅可以用于实现实现机密性保护,还可以用于身份认证。

非对称加密体系依赖于一对密钥。其中一个为私钥private key,只有自己知道;另一个为公钥public key,可以分享给其他人。

  • 用于机密性保护时,使用公钥进行加密,并且只能通过对应的私钥进行解密。
  • 用于身份认证时,使用私钥对一段数据进行签名(对一段数据进行加密,比如对一段消息的 hash 做签名),对应的公钥进行签名认证(解密)。

    这种认证方式,需要确保数据接收方的公钥一定与数据发送方的私钥进行匹配。即通信双方约定的这对私钥-公钥要正常。否则可能发生中间人攻击,导致安全风险。上节提到的 ECDSA、RSA 非对称加密算法均可以用于这种身份认证机制。

中间人攻击

中间人攻击是对私钥-公钥认证体系的一种安全威胁。其基本原理如下:

  • 中间人截获了数据发送方要发给数据接收方的公钥1。
  • 中间人生成自己的私钥-公钥对,即私钥2、公钥2。
  • 中间人把自己的公钥2发送给数据接收方,伪装成正经的公钥1
  • 这样中间人就可以冒充合法的通信双方,使用公钥1破解数据发送方的数据,使用私钥2对数据进行签名,冒名顶替合法的数据发送方,给数据接收方发送数据。

基于 CA 系统的身份认证

为了避免中间人攻击。实际的通信系统会建立 CA 认证。CA 的身份认证系统中,除了数据发送方、数据接收方,还有一个第三方的认证机构,称为 CA。

就像警察局一样,CA是负责管理证书(颁发、续期、吊销)的权威机构,是一个可信的第三方。很多城市都有自己的网络 CA 认证服务器,这通常不被普通的用户感知到,他们是通信代理商自动部署的。

让我们来看以下,CA 系统如何避免中间人攻击。

  • 首先数据发送方向 CA 认证中心注册自己的公钥信息。CA 认证中心用自己的私钥签名公钥以及数据发送方的信息,生成对应的证书。以百度作为数据发送方为例:

    证书中的内容包括:
  • 数据接收方从 CA 中心申请一个根证书,内部含可信的CA中心认证证书。
  • 数据发送方对 CA 证书+公钥进行签名,并发送给数据接收方
  • 数据接收方拿到 CA 证书+公钥+签名后,先验证签名,然后上报 CA 证书+公钥到CA认证中心
  • CA 认证中心对公钥、CA 证书进行确认。以此判断此公钥的确来自已经在 CA 中心注册的、名字信息合法的数据发送方。
    总之,第三方校验机构(CA认证中心)的私钥-公钥对,来增强通信双方的身份认证。这将在下面的 TLS 连接中详细了解。

总结

  • 身份认证技术确保数据来源于可信合法的数据发送方。
  • 可以基于非对称加密算法,如 ECDSA、RSA来对数据进行签名,实现身份认证。
  • 简单的非对称加密算法实现的身份认证技术可能存在中间人攻击,可以通过 CA 认证体系,在第三方认证机构下增强身份认证,避免中间人攻击。
    (感谢点赞或收藏,持续更新)
相关推荐
Evaporator Core1 天前
信息安全工程师软考进阶:第二章密码学与应用深度习题解析
密码学
長琹2 天前
AES加密算法详细加密步骤代码实现--身份证号码加解密系统
网络·数据库·人工智能·python·密码学
有点不太正常3 天前
《A Study of Probabilistic Password Models》(IEEE S&P 2014)——论文阅读
论文阅读·密码学·口令猜测·马尔可夫链
Blockchain Learning4 天前
椭圆曲线的数学基础
golang·密码学
yjx233325 天前
《应用密码学》——基础知识及协议结构模块(笔记)
笔记·密码学
默辨6 天前
密码学基础
密码学·非对称加密·数字签名·对称加密·摘要加密
浩浩测试一下8 天前
Windows驱动开发与双机调试环境[驱动开发环境配置高阶]
安全·web安全·网络安全·密码学·网络攻击模型·安全架构
东皇太星10 天前
模运算(密码学/数论/算法)
数据结构·算法·密码学
蒋星熠11 天前
区块链技术探索与应用:从密码学奇迹到产业变革引擎
python·语言模型·web3·去中心化·区块链·密码学·智能合约
有点不太正常13 天前
《Password Guessing Using Large Language Models》——论文阅读
人工智能·语言模型·自然语言处理·密码学