一 加密的目的及方式
1 确保数据的机密性
对称加密:加密解密用同一个密钥
非对称加密:加密解密用不同的密钥(公钥 私钥)
2 保护信息的完整性
信息摘要:基于输入的信息生成长度较短 位数固定的散列值
二 常见的加密算法(加解密时的计算规则)
对称加密:DES AES
非对称加密:RSA DSA
Hash散列技术,用于信息摘要:MD5 SHA
三 MD5完整性检验
使用md5sum校验工具
生成MD5校验值(md5sum 安装包)–>与软件官方提供的校验值对比(iptables -nL | md5sum)
四 GPG加解密工具
1 GnuPG简介
官网:http://www.gnupg.org/
时下最流行的数据加密 数字签名工具软件
查看版本信息 gpg --version
2 GPG对称加解密
加密操作: --symmetric 或 -c
解密操作:–decrypt 或 -d
案例:给1.txt文件进行加密 解密
touch 1.txt
加密
gpg -c test.txt
设置密码
file 1.txt*
解密
gpg -d 1.txt.gpg > 1.txt
cat ~/1.txt
3 GPG非对称加解密
3.1 创建密钥对
–gen-key
gpg --gen-key
3.2 导出公钥
–export --armor 或 -a
gpg --export -a > /tmp/userb.pub
3.3 导入公钥
–import
gpg --import /tmp/userb.pub
3.4 加密
–encrypt 或 -e
touch 2.txt
gpg -e -r userb 2.txt
3.5 解密
–devrypt 或 -d
mv 2.txt.gpg /tmp/
gpg -d /tmp/2.txt.gpg > d2.txt
3.6 GPG软件签名与验证
软件签名与验证过程
- 软件官方以私钥对软件包执行数字签名
- 用户下载软件包 软件官方的公钥
- 以官方公钥验证软件包签名 确保数据来源正确
为软件包建立签名文件
–detach-sign 或 -b
验证软件包签名
–verify