支付系统
支付安全
概念
主要概念:
- 明文和密文
- 明文是原始的、可读的信息
- 密文是经过加密后的、不可读的信息
- 密钥
- 是一串特定的字符序列
- 以位(bit)为单位计量长度
- 例如:128位密钥等于16字节
- 密钥必须保密
- 加密和解密
- 加密:将明文转换为密文的过程
- 解密:将密文还原为明文的过程
- 可分为对称加密和非对称加密两大类
- 加密算法
- 定义了加密和解密的具体操作步骤
- 算法是公开的
- 安全性依赖于密钥的保密性
应用场景 | 加密过程 | 解密过程 | 主要作用 |
---|---|---|---|
加密通信 | 发送方用接收方的公钥加密 | 接收方用自己的私钥解密 | 确保信息的机密性,只有持有私钥的接收方能看到内容 |
身份认证 | 发送方用自己的私钥加密(签名) | 接收方用发送方的公钥解密(验证) | 确保身份的真实性,证明信息确实来自持有私钥的发送方 |
加密方式
三种加密方式主要特点:
- 对称加密
- 特点:使用同一个密钥进行加密和解密
- 优点:运算速度快,效率高
- 缺点:密钥共享难题(如何安全地把密钥传递给通信对方)
- 代表算法:AES
- 非对称加密
- 特点:使用公钥加密,私钥解密
- 优点:解决了密钥分发问题,即使公钥泄露也不会影响安全性
- 缺点:计算速度慢,资源消耗大
- 代表算法:RSA
- 混合加密
- 特点:结合对称加密和非对称加密的优点
- 工作流程:
- 用对称加密处理原始数据(利用速度优势)
- 用非对称加密传输对称密钥(解决密钥分发问题)
- 实际应用:这是现实世界中最常用的加密方式
摘要算法
摘要算法(Hash)是一种将任意长度数据转换成固定长度"指纹"的函数,主要用于保证信息完整性。它具有以下关键特性:
- 不可逆: 只能单向计算,不能从摘要还原原始数据
- 难破解: 只能通过暴力尝试来破解
- 高敏感: 原文稍作改动会导致摘要显著变化
- 唯一性: 不同的输入会产生不同的摘要值
常见的摘要算法包括MD5和SHA系列(SHA1、SHA224、SHA256、SHA384)。
这种算法就像是给数据生成了独特的"数字指纹",能够有效验证数据是否被篡改。
数字签名
数字签名是使用私钥对摘要加密生成签名,需要由公钥将签名解密后进行验证,实现身份认证和不可否认
数字证书
数字证书是一个用于安全分发公钥的可信任电子文档,主要解决以下问题:
- 信任问题:
- 防止黑客伪造和篡改公钥
- 确保公钥确实属于声称的机构/个人
- 工作机制:
- 由可信任的CA(证书颁发机构)统一颁发
- CA用自己的私钥对申请者的公钥和身份信息进行签名
- 接收方可以用CA的公钥验证证书的真实性
- 实际应用:
- HTTPS协议中用于身份认证
- 确保网站身份的真实性
- 安全地传递用于加密通信的公钥
因此,数字证书通过引入可信任的第三方(CA),有效解决了公钥分发过程中的信任问题。