什么是公钥和私钥?
本文解析公钥与私钥的核心区别(加密/解密、公开性/保密性),详解其基于RSA/ECC算法的生成逻辑、在SSL证书和数字签名中的实际应用场景,并说明如何通过公钥基础设施(PKI)保障数据传输安全
公钥概述
公钥(Public Key),是公开密钥的简称,是一个用于加密数据的大数值,是公开密钥加密的密钥对中的一个密钥。公钥由软件程序生成,也可以由受信任的指定机构(比如证书颁发机构CA)提供,并通过一个可公开访问的存储库或目录提供给所有人使用。公钥通常对应一个只有公钥所有者才知道的私钥。 公钥主要用于加密数据和验证数字签名。
私钥概述
私钥(Private Key),是私有密钥的简称,是在密码学中用于加密和解密数据的变量,是公钥/私钥对中的另一个密钥。私钥通常是一长串随机或伪随机生成的比特序列,只能与密钥生成者或有权解密数据的各方共享。 私钥主要用于解密数据和创建数字签名。
公钥和私钥的区别
公钥 | 私钥 | |
---|---|---|
可访问性 | 公开 任何人都可以获取 | 保密 仅持有者知晓 |
密钥类型 | 不对称 | 不对称 |
生成 | 与私钥一起生成 | 与公钥一起生成 |
基于算法 | 基于RSA、ECC等加密算法 | 基于与公钥相同的算法 |
功能作用 | 加密数据,验证数字签名 | 解密数据,创建数字签名 |
安全性要求 | 无特别要求 | 必须高度保密,防止泄露 |
存储位置 | 存储在数字证书、外发电子邮件和可执行文件中 | 存储在授权设备和非公开服务器中 |
常见用例 | SSL证书,区块链 | 安全交易,身份验证 |