博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数字摘要、数字签名和加密算法
阅读量:6420 次
发布时间:2019-06-23

本文共 924 字,大约阅读时间需要 3 分钟。

 1、加密算法:对原来为明文的文件或数据按某种算法进行处理,使其成为不可读的一段代码

  • 对称加密:加密和解密使用同一个密钥
  • 非对称加密:加密和解密所使用的不是同一个密钥,通常称为“公钥”和“私钥”,公钥和私钥可以互相解密
    • 签名时,使用私钥加密,公钥解密,用于让所有公钥所有者验证私钥所有者的身份并且用来防止私钥所有者发布的内容被篡改.但是不用来保证内容不被他人获得,保证了数据的唯一性。
    • 加密时,用公钥加密,私钥解密,用于向公钥所有者发布信息,这个信息可能被他人篡改,但是无法被他人获得,保证了数据的安全性。

2、数字签名: 非对称加密算法与数字摘要技术的应用 

      非对称密钥加密: RSAECC等,依赖密钥长度来提高安全性,

      数字摘要:将任意长度的消息变成固定长度的短消息, 常用的加密算法包括 HASH (MD5 SHA1 、SHA256HMAC(HmacMD5/HmacSHA1/HmacSHA256)等,安全性按颜色区分红色安全性高,绿色安全性高

3、一般使用过程: 

      环境:A 的 公钥公开,私钥保密 ,同理B一样 ,A 和 B都使用同样的摘要算法 HASH

  • A 给 B  发送一段数据 data ,首先 A 使用 HASH 算法生成 data 的数字摘要 digestA ,然后利用 A  的私钥对数字摘要 digestA 进行加密生成 digestEncodeA ,然后将 data 和 digestEncodeA 一起发送给 B
  • B 收到 A 发过来的 data 和 digestEncodeA 以后,首先使用 HASH 算法生成 data 的数字摘要 digestB ,然后用 A的公钥对 digestEncodeA 进行解密得到数字摘要 digestDecodeB,然后如果  digestB  =  digestDecodeB ,那么标明data 是由A发送过来的 ,否则不是

     同理,B 如果要发送回执,就在循环执行上面的步骤即可

 

4、总结:  数字摘要验证了原文是否被篡改、公钥私钥保证了数字摘要的安全性,两者配合使用安全性高,速度快 

 

转载于:https://www.cnblogs.com/hack132/p/7126969.html

你可能感兴趣的文章
《Python Cookbook(第3版)中文版》——1.8 与字典有关的计算问题
查看>>
《提高转化率!网页A/B测试与多变量测试实战指南》一2.5 勇气与责任心
查看>>
深入实践Spring Boot3.2 控制器设计
查看>>
《微信小程序:开发入门及案例详解》—— 导读
查看>>
降低JRuby的内存占用的可能方法
查看>>
如何创建和使用Python CGI脚本
查看>>
RHCSA 系列(九): 安装、配置及加固一个 Web 和 FTP 服务器
查看>>
《jQuery、jQuery UI及jQuery Mobile技巧与示例》——3.7 示例:添加函数的返回结果...
查看>>
并发集合(一)引言
查看>>
如何写gdb命令脚本
查看>>
Android ListView展示不同的布局
查看>>
oracle 表(下)
查看>>
iOS宏(自己使用,持续更新)
查看>>
手把手玩转win8开发系列课程(3)
查看>>
NGINX引入线程池 性能提升9倍
查看>>
《淘宝技术这十年》读书笔记 (四). 分布式时代和中间件
查看>>
linux下mongodb定时备份指定的集合
查看>>
SMP架构多线程程序的一种性能衰退现象—False Sharing
查看>>
oVirt JBAS server start failed, ajp proxy cann't server correct. ovirt-engine URL cann't open
查看>>
CDP WebConsole上线公告
查看>>