引言

我们今天来说一下怎么检测从各个“百度”站点推荐下载的程序包是不是正版的?我们知道有很多的程序包,都被人非法“篡改”了,增加各种广告、流氓软件,篡改你的浏览器主页,甚至给你的电脑植入“病毒”等。

最好的方法当然是你从官方正版网站来下载文件啦。

但有的时候,像一些开源网站,下载文件是很慢很慢的,特别是一些超级大的文件,就不怎么可能在官网慢吞吞的下载(有的时候下到八九十的时候还会异常断开,重新下载)

所以很多时候都是从第三方的站点去下载安装包去安装的,那这样,怎么保证我们下载的包都是正版包?我们在这里推荐两种校验方式,具体要用哪一种,就得看要下载的网站支持哪一种了。

MD5校验

这里我举个栗子,MySQL官网下载源码包或其他二进制包的页面,就是使用了MD5校验的,如图

Mysql官网下载文件提供的校验值

可以看到,每个文件都有一串MD5:xxxxxxx | Signature,这个就是校验值了。

具体怎么进行校验呢?

我们可以在命令行中输入命令:

md5Sum 文件名

就可以看到文件计算出来的MD5散列值了。

计算MD5散列值

然后拿这个值跟官网提供的散列值匹配,如果计算的算法一致,而且计算出来的散列值也一致,就代表没有差别。

但这个文件包当中任何信息一旦修改了,计算出来的散列值就会不一致

Sha256校验

比如,我们的PHP官网上的php源码包下载,就是用的Sha256散列。

PHP官网提供的sha256散列值

MD5散列计算差不多,可以在命令行中输入命令:

sha256sum 文件名

就可以看到文件计算出来的sha256散列值了。

也是一样比对就可以知道文件是否有被篡改过了。

如果你觉得这样去对比比较麻烦,还可以结合管道符号进行一些变化。

sha256sum 文件名 | grep 官网提供的散列值

如果看到有输出内容,就代表校验是通过的(有一些系统甚至会把散列值标红,因为默认给grep命令进行过配置)

比如这样

快捷比对散列值


欢迎关注拓行公众号,分享各种技术博客文章

拓行——奋勇进取,开拓未来,砥砺前行

最后修改:2023 年 12 月 15 日
如果您对各种技术博客文章感兴趣,欢迎关注拓行公众号,分享各种专业技术知识~