网络上如何保证安装包的安全

Posted licky

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络上如何保证安装包的安全相关的知识,希望对你有一定的参考价值。

经常在网上下载各种安装包,但也没有深究过安装包是否是官方的、是否是安全没有被篡改的。
最近在用elasticsearch做移动端在线日志收集,本地安装ES的时候,发现下载文件有两个,下面是下载命令:
1. wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.4.zip
2. wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.4.zip.sha512
3. shasum -a 512 -c elasticsearch-6.2.4.zip.sha512 
  • 1是下载es安装包;
  • 2是下载校验包(签名文件);
  • 3是用签名文件校验网络下载的安装包是否完整

原理

这里用到了哈希算法和非对称加密串,哈希算法是为了验证原始数据(ES安装包)是否被篡改;对称加密是为了验证签名文件是不是官方发出的(安装包和签名文件都有可能被替换)。
哈希算法:

同一个文件包,通过哈希得到的哈希码是一样的。如果安装包活签名文件被替换了,哈希码就对不上了。

非对称加密:

软件发布时,作者用自己的私钥,对发布的软件生成一个签名文件,用户使用作者的公钥验证签名文件。

生成签名

Linux 系统可以用md5sum、sha1sum、sha256sum这三个命令,计算哈希码
md5sum foo.zip

sha1sum foo.zip

sha256sum foo.zip

以上是关于网络上如何保证安装包的安全的主要内容,如果未能解决你的问题,请参考以下文章

什么是yarn,如何使用yarn安装项目依赖

安全与加密

yarn的安装和简单使用

包管理工具-yarn

程序员之网络安全系列

网络高手请进