Plantre Plantre
首页
后端
技术
硬件
  • 前端文章

    • HTML
    • CSS
    • JavaScript
  • 技术

    • 技术文档
    • GitHub技巧
    • Nodejs
    • 博客搭建
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

plantre

一个后端开发者
首页
后端
技术
硬件
  • 前端文章

    • HTML
    • CSS
    • JavaScript
  • 技术

    • 技术文档
    • GitHub技巧
    • Nodejs
    • 博客搭建
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 虚拟化

  • Git

  • 可视化

  • Linux

    • Linux 系统中常见目录符号
    • nohub启动jar并保存日志到文件
    • Linux添加SSH公钥
    • ssh命令常用场景详解
    • lvm是什么,和文件系统什么关系,windows下有吗
    • linux查询某个文件夹大小
    • linux删除某个文件夹
    • linux根目录下的文件夹解析
    • linux的文件权限解析
    • dev-null是什么
    • 2&1是什么意思
    • .ssh下有哪些文件,分别有什么作用
    • known_hosts具体举例说明
    • 非对称加密原理和真实数据举例
    • 查询linux端口是否占用
    • 若 SELinux 处于 Enforcing 模式,需在挂载路径后添加 Z是什么意思
    • linux查看每个进程内存大小
    • 分辨文件的种类
  • 远程串流等

  • SWF

  • 网络

  • 网站收藏
  • 技术
  • Linux
plantre
2025-05-14

非对称加密原理和真实数据举例

非对称加密原理与真实数据实例解析

一、非对称加密核心原理 非对称加密的核心在于使用公钥(Public Key)和私钥(Private Key)配对,实现数据的加密、解密与身份验证功能:

  1. 密钥生成:
    • 每个用户生成一对数学关联的公钥和私钥。公钥可公开,私钥严格保密。

    • 典型算法如RSA中,公钥由模数 ( n )(两个大质数的乘积)和指数 ( e ) 组成,私钥包含模数 ( n ) 和解密指数 ( d ) 。

  2. 加密与解密流程:
    • 加密:发送方用接收方的公钥加密数据,生成密文。

    • 解密:接收方用私钥解密密文,还原原始数据。

    • 数学基础:例如RSA中,加密公式为 ( c = m^e \mod n ),解密公式为 ( m = c^d \mod n ),依赖大数分解难题确保安全性。

  3. 数字签名与验证:
    • 签名:发送方用私钥对数据哈希值加密生成签名,证明身份和完整性。

    • 验证:接收方用公钥解密签名并对比哈希值,确认数据未被篡改。


二、真实数据实例与算法对比 1. RSA算法示例
• 密钥生成:

• 选择两个大质数 ( p=61 )、( q=53 ),计算 ( n = 61 \times 53 = 3233 )。

• 计算欧拉函数 ( \phi(n) = (61-1)(53-1) = 3120 ),选择 ( e=17 )(与 ( \phi(n) ) 互质)。

• 计算私钥 ( d ) 满足 ( 17d \equiv 1 \mod 3120 ),得 ( d=2753 ) 。

• 加密数据:明文 ( m=65 ),加密为 ( c = 65^{17} \mod 3233 = 2790 )。

• 解密数据:( 2790^{2753} \mod 3233 = 65 ) 。

2. 椭圆曲线加密(ECC)示例
• 密钥生成:

• 选择椭圆曲线参数如 secp256r1,基点 ( G ) 坐标为 ( (x, y) )。

• 私钥为随机数 ( k=123 ),公钥为 ( Q = k \times G )(椭圆曲线点乘)。

• 加密流程:

• 发送方生成随机数 ( r=456 ),计算临时点 ( R = r \times G ),共享密钥 ( S = r \times Q )。

• 使用 ( S ) 派生对称密钥加密数据,接收方通过 ( k \times R = S ) 解密。

3. 算法对比

特性 RSA(2048位) ECC(256位)
安全性基础 大数分解难题 椭圆曲线离散对数问题
密钥长度 长(2048位以上) 短(256位)
速度 较慢 高效(适合移动设备)
应用场景 HTTPS、数字证书 物联网、区块链

三、实际应用场景

  1. HTTPS安全通信:
    • 客户端用服务器公钥加密会话密钥(如AES密钥),服务器用私钥解密,后续使用对称加密传输数据。

  2. 比特币交易签名:
    • 用户私钥对交易哈希签名,全网节点通过公钥验证交易合法性,确保不可伪造。

  3. 数字证书认证:
    • CA机构用私钥签名证书,用户通过CA公钥验证网站证书合法性,防止中间人攻击。


四、安全性与挑战 • RSA攻击风险:

• 大数分解难题是RSA安全性的核心,但随着量子计算发展,传统RSA可能面临威胁(如Shor算法)。

• 实际应用中需使用长密钥(2048位以上),并定期更新密钥。

• ECC优势:

• 同等安全下密钥更短,资源消耗低,适用于物联网等场景。


总结 非对称加密通过数学难题构建安全屏障,RSA和ECC是两大主流实现。真实案例中,RSA通过大数分解保障密钥安全,而ECC以更短的密钥实现高效加密。两者的选择需权衡安全需求与性能,未来量子计算的发展可能进一步推动算法演进。

编辑 (opens new window)
上次更新: 2025/06/10, 09:18:05
known_hosts具体举例说明
查询linux端口是否占用

← known_hosts具体举例说明 查询linux端口是否占用→

最近更新
01
集成loki
07-04
02
TCP的ESTABLISHED是什么意思
06-24
03
安装1panel
06-24
更多文章>
Theme by Vdoing | Copyright © 2025-2025 plantre | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式