签名与摘要个人总结

前些日子发现自己对于签名算法以及摘要算法有点概念模糊,于是在此做个总结,而且回想了下,发现之前面试的时候对于这两种概念也模糊了

摘要算法

摘要的目的

  • 验证消息的完整性

如何实现这个目的?

本质上我们利用的是Hash函数,例如:

x是原本消息

h(x)就是通过hash函数得到的摘要

通常我们是利用Hash函数的性质进行实现,即弱碰撞性以及发生碰撞的概率极低来保证说极大概率原有信息的完整

场景的hash函数

与校验码的相同与区别

相同:

  • 都是为了检测出数据发生一定的修改

区别:

  • 校验码碰撞的概率是大于摘要算法的
  • 一些校验码算法是可逆的,也就是具有一定的纠错功能

签名算法

签名的目的

为了让其他人能够确定签名者

如何实现?

通常是利用非对称密钥

  1. 用私钥加密对应的信息(通常是加密摘要,因为加密大量数据慢,并且有些算法实现可能对于明文大小也有限制)
  2. 把对应加密后的消息让其他人得到
  3. 同时我们公钥暴露在外
  4. 当使用公钥解密得出的结果与预期结果一致,那么则可确定这个签名者,进而可以确定数据来源是否可信
posted @   海山了-  阅读(7)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示