文章关键词:电子数据取证、哈希算法
一、前言
在电子数据取证领域,哈希、哈希值几乎人人都知道,可知道是一回事,怎么充分利用就是另外一回事了。
本文可以分为两个部分:哈希的理论基础、哈希的花式用法。当然,后面那个部分才是重点,但理论基础不能少,虽然我知道你们都知道,但还是简单地解释一下哈希。
二、哈希的理论基础
什么是「哈希」、「哈希值」?
哈希定义:
英文为「Hash」,也翻译作“散列”,就是把任意长度的输入(又叫做预映射,pre-image),通过散列算法(哈希算法),变换成固定长度的输出,该输出就是哈希值。
Wendy版暴力解释:
1.「哈希」是一种算法;
2.这种算法会把「任意内容」变成一串长度固定的字符;
3.那串字符就是「哈希值」;
一句话的MD5哈希值
继续对哈希性质的解释:
4.「哈希算法」是一类算法,都有“解释2”的特性;
5.MD5、SHA-1等都是「哈希算法」,只不过算法不同,「哈希值」的固定长度也不同;
6.“解释2”中的「任意内容」可以是任何电子数据,如一串数字、一句话、一个图片、文档、音频、压缩文件……
7.任何文件的「哈希值」都是唯一的,输入的「任意内容」哪怕有一丝丝修改,都会导致输出的「哈希值」有很大的不同。
多种不同的哈希算法对比
什么是哈希库?
这个很好理解