加密算法学习笔记之二__一个完整的加密过程
来源:互联网 发布:数据库系统书籍 编辑:程序博客网 时间:2024/04/30 21:30
一个完整的密码/消息传送过程:
- 定义:
- 发送方:S
- 接收方:R
- 消息:M
- 加密:EC(M,K) (其中M为要加密的消息,K为密钥)
- 解密:DC(M,K) (其中M为要加密的消息,K为密钥)
- 对称加密密钥:Key
- 不对称加密: 私钥 PrvK ; 公钥:PubK ; 初始化向量 IV
- 哈希算法: Hash()
- 过程:S要与R进行消息传输,传输的消息为M;在进行消息对话之前,S需要将加密消息M的密钥K传送给R,这样R就可以用K来还原消息M。那如何传送K呢?
- S通过一般渠道传送公钥(PubK)给R
- 传送Key (S-->R)
S:
- 用私钥加密对称加密密钥:EC(Key,PrvK)
- 生成消息摘要并加密:EC(Hash(Key),PrvK)
- 将上面的消息发送给R
R:
- 用公钥(PubKey)解密消息:DC(EC(Key,PrvK),PubK)
- 用公钥解密消息摘要:DC(EC(Hash(Key),PrvK),PubK)
- 将解密的消息用同样的哈希算法生成消息摘要:Hash(DC(EC(Key,PrvK),PubK))
- 比较第二和第三步的消息摘要是否一致,如果一致,则表明消息没有被修改
- 传送消息M
- S: 用私钥加密消息:EC(M,Key)
- R: 将加密的消息用私钥解密: DC(EC(M,Key),Key)
- 加密算法学习笔记之二__一个完整的加密过程
- 加密算法学习笔记之三__加密算法整体框架
- 加密算法学习笔记之一__加密算法概述
- 在D3D中绘制一个三角形的一个完整过程(学习3D游戏笔记一)
- 对称加密算法---加密学习笔记(三)
- 《加密与解密》学习笔记(二) - 加密算法和PE文件
- android学习笔记(二)__系统框架
- maven(二):创建一个可用的maven项目,完整过程
- spserver学习之二__网络通讯模型
- 学习的完整过程!
- RSA加密和解密的完整过程
- kotlin学习笔记之——写一个完整类
- Java开发学习笔记之二:一个简单的Servlet
- 加密篇之二 - 非对称加密算法RSA
- USB的“JoyStickMouse”例程分析——学习笔记(3)__初始化过程
- USB的“JoyStickMouse”例程分析——学习笔记(4)__枚举过程
- 非对称加密算法---加密学习笔记(四)
- gtk学习笔记2(制作一个完整的窗口)
- 个人对应的金庸人物
- fjnu 1142 Error Correction
- API 使用 XML的COM组件
- 实数小数后只保存2位,实现方法
- java 调用命令 备份MYSQL数据库
- 加密算法学习笔记之二__一个完整的加密过程
- 对妹妹的愧疚
- MySql 中文乱码问题,:
- linux软件安装
- A reply from Jeffery Richter
- JBoss Portal and Alfresco integration (集成)
- PHP程序员成长之路
- 关于VC++错误提示WINDOWS.H already included. MFC apps must not #include 的处理办法。
- 其实编码使用代理服务器的门槛非常低