校验、加密、压缩、哈希值这几个我老是弄混,现在总结一下。

校验:

就是对一组数据进行计算,得出一个校验值,发送方把数据及校验值都发出去,接收方收到后也用相同的校验方法对数据计算得出新的校验值,新校验值与收到的校验值做对比,如果一样说明数据在传输过程中没有受到干扰,没有改变。常用的校验方法:校验和、CRC,其中CRC校验是一种运用非常广泛的校验方法,CRC是一类校验,

根据位数不同分为CRC8、CRC16、CRC32,

根据多项式的不同又分为 CRC-ITU CRC-USB CRC-MODBUS CRC-CCITT,这几种都比较常用,也可以自定义一个多项式来作计算。

加密:

加密这个更容易理解,就是不想让别人知道自己发送的什么数据,即使有人在传输过程中截获了数据,由于数据是加密的,黑客也不知道数据的内容。还以上面的例子,发送方发送数据之前,先把数据通过事先设定的密码对数据进行加密,然后只把加密后的数据发给接收方;接收方收到数据后,会使用解密密码对数据进行解密,解密之后就会得到正确的数据了。加密方法根据密码大概分为2大类,

加密密钥与解密密钥相同的为对称加密,比如AES加密;

加密密钥与解密密钥不相同的为非对称加密,类型为RSA加密。

压缩:

这个也容易理解,现在最常用的是zlib压缩了,这已经成为事实上压缩界的标准了。我们日常用的文件,在编码结构上安排不够合理,造成文件比较大,比较冗余,使用压缩软件就可以把文件压缩小,比如大名顶顶的WINRAR,(单片机上常用的quicklz \ fastlz)。有些文件比如视频文件在编码上已经经过了精心选择,所以即使你使用最好的压缩工具,也不能把视频文件压缩的很小。但是TXT文件你就可以把它压缩到很小。作用:文件压缩小后,便于储存、传输。

哈希值:

可以简单地把哈希值理解成是一段数据的DNA,或者身份证。

使用哈希函数对一段数据一个文件进行运算,得到它的哈希值。当文件中某一位发生变化时,再次计算它的哈希值,肯定也原来的相比会变化很大。但是你不能通过哈希值来得到原来的数据,不可逆性。

常用 的哈希算法有MD5 SHA

(个人理解,哈希算法就是比较高级的校验算法,常用的校验算法了不起是32bit的,CRC32,但是以最简单的MD5来说,它已经是128bit的了,所以2组数据的CRC32值可能一样,但2组数据的哈希值不可能一样)

所以哈希值常配合RSA加密用在身份验证、数字签名方面!

校验、加密、压缩、哈希值的区别,我老是弄混,现在总结一下相关推荐

  1. (BAT批处理)批处理命令怎么校验文件MD5哈希值?

    网友求助:目录中有 "今天.txt" ,"昨天.jpg","以前.jpg" 三个文件, 如何在已知晓这三个文件的原始md5哈希值的情况下,写 ...

  2. Kali学习 | 密码攻击:6.5 哈希值识别工具Hash ldentifier

    Kali学习 | 密码攻击:6.5 哈希值识别工具Hash ldentifier 哈希值是使用HASH算法通过逻辑运算得到的数值. 不同的内容使用HASH算法运算后,得到的哈希值不同. 下面将介绍使用 ...

  3. Hash Verification哈希值校验工具

    最后更新:2021-8-19 Hash Verification最新版:Hash Verification V1.0  NEW! 版本号:V1.0.0.14973 大小: 21KB/zip格式压缩,6 ...

  4. 使用Windows自带命令校验文件哈希值

    文章目录 Certutil Get-FileHash Certutil Certutil是一个windows预装的CLI程序,主要作用是转储和显示证书颁发机构(CA),配置信息,证书服务, CA 组件 ...

  5. Merkle 树——空间换时间,分而治之的hash表,通过根节点是由它的两个子节点内容的哈希值组成来校验数据完整性,定位篡改的数据位置...

    Merkle 树 图 1.5.6.1 - Merkle 树示例 默克尔树(又叫哈希树)是一种二叉树,由一个根节点.一组中间节点和一组叶节点组成.最下面的叶节点包含存储数据或其哈希值,每个中间节点是它的 ...

  6. 哈希值+非对称加密+网络+数字签名,你真的知道怎么给游戏充钱吗

    前文 使用socket实现局域网不同主机通信 SHA256算法的实现和消息的哈希散列值计算 python实现RSA算法,对数据进行加密认证 文章目录 数字签名与认证 攻击类型 算法选择 实现流程 总结 ...

  7. MD5工具类,提供字符串MD5加密(校验)、文件MD5值获取(校验)功能

    import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.nio.Byt ...

  8. 通过python利用哈希值实现比较两个文件的一致性

    背景 近来学习到python的内置函数hash(),深入发现通过python的哈希值可以做很多的事情,最典型的可能就是文件加密了,在我们现实生活中大约有如下一些用途: 加密网站注册用户的密码. 网站用 ...

  9. md5值最大长度_豆长老之比特币-哈希值是什么11月16日分享篇

    哈希值,或哈希散列(Hash),又称为哈希算法 是密码学里的经典技术,它是一种单向密码体制,是从明文到密码的不可逆过程,即只有加密没有解密过程.哈希算法将任意长度的二进制值映射为较短的固定长度的二进制 ...

  10. Linux加密和安全篇(一)gpg、对称和非对称加密、哈希算法

    对于linux运维工作者而言,加密技术已经很早就用于数据的存储和数据之间的交换.我们可以会为了防止你的网站.服务器或者系统,我们会使用一些手段来防止一些恶意的攻击或者访问.一下就对linux的安全和加 ...

最新文章

  1. 重磅 | 谷歌Waymo最新发布可完全脱离人类操控的自动驾驶汽车
  2. 让你的博士经历更加轻松愉快的10个tips
  3. SLAM工具|GDB调试从入门到精通
  4. tabcontainer控件太长_asp.net AjaxControlToolKit--TabContainer控件的介绍
  5. java 打开gc日志_在运行时打开GC日志记录
  6. ARM入门笔记(7)
  7. 美团的大数据产品,互联网的数字化转型,如何从0做到100?
  8. 《Adobe Photoshop CS4中文版经典教程》—第1课1.7节检查更新
  9. android 获取GPS定位,
  10. Web 2.0下一个版本是什么 3.0就要到来了吗?
  11. 用信号量及其PV操作处理实际问题
  12. java用户登录窗口怎么删除_JAVA图形界面用户登录后如何关闭登录的对话框
  13. android apk加密技术,android apk 自我保护技术-加密apk
  14. CnOpenData国际货物贸易数据
  15. word自带公式批量转成MythType格式的采坑小记
  16. UVALive3713 Astronauts
  17. Tomcat与JDK版本对应关系,Tomcat各版本特性,鸟哥linux视频教程
  18. 【评测】Invent脂肪组织蛋白质快速提取
  19. solidworks2022 - 双开
  20. git报错”fatal: unable to access ‘https://github.com/defnull/bottle/‘: Empty reply from server“

热门文章

  1. VO快速搜索 宝马VO 宝马VO翻译 VO码查询工具
  2. JavaScript数组filter方法
  3. java cnzz爬数据_PHPcurl抓取cnzz统计数据
  4. iPhone 苹果手机尺寸大全
  5. 几款比较有名的刷流量软件
  6. Python运用Xpath爬取故宫壁纸
  7. 乐视贾跃亭任酷派集团执行董事 成酷派第二股东
  8. mac brew的安装方法
  9. 计算机弹奏两只老虎爱跳舞,原神风物之诗琴乐谱大全 原神风物之诗琴谱乐谱弹奏攻略...
  10. 汽车自主品牌与国际品牌差距为十年来最小;智选假日酒店大中华区已开业200家 | 美通企业日报...