安全防护的目标
保密性 confidentiality
完整性 integrity
可用性 usability
可控制性 controlability
不可否认性 non-repudiation
安全防护环节
物理安全:设备/主机、机房环境
系统安全:主机/设备的操作系统
应用安全:各种网络服务、应用程序
网络安全:对网络访问的控制、防火墙规则等
数据安全:信息的备份与恢复、加密解密
管理安全:各种保障性的规范、流程和方法
常见的安全攻击STRIDE
Spoofing 欺骗
Tampering 篡改
Repudiation 否认
Information Disclosure 信息泄露
Denial of service 拒绝服务
Elevation of Privilege 提升权限
常用的安全技术
认证、授权、审计、安全通信
加密算法和安全协议
对称加密
对称加密:a的密钥和b的密钥是同一个
特点:因使用同一密钥,加密解密效率高;将原始数据切割成块,一个一个加密
缺点:密钥过多、密钥分发问题、无法确定来源
常见的加密算法:DES(Data Encryption Standard,56bits)、3DES、AES:Advanced(128、192、256bits)、IDEA,RC6,CAST5
非对称加密
非对称加密:密钥成对出现(公钥、私钥)
特点:公钥公开给他人,用于加密使用;私钥自己保密留存,用于自己加密数字签名(主要用于让接收方确认发送方身份);
功能:公钥用于加密数据,只能用私钥解密,适合用公钥加密较小数据,如加密对称密钥;
缺点:密钥长,算法复杂,加密解密效率低
算法:RSA、DSA(数字签名算法)、ECC(椭圆曲线密码编码学)
非对称加密实现数据加密
非对称加密实现数字签名
使用gpg实现对称加密和非对称加密
对称加密文件
gpg -c file
解密
gpg -o file -d file.gpg
gpg实现公钥加密
生成密钥对
gpg --gen-key
注:生成密钥中断后,会有个gpg-agent挂起操作,需要kill掉重新生成密码
查看密钥
gpg --list-key
导出密钥
gpg -a --export -o lgwgw.pubkey
导入密钥
gpg --import lgwgw.public
加密文件
gpg -e -r lgwgw number
解密文件
gpg -d number.gpg
gpg -o number -d number.gpg
注意:解密过程中出现gpg: decryption failed: No secret key(实际已导入密钥);解决方法:到主机上使用 gpg --export-secret-keys -o lgwgw.public导出新密钥,然后导入到解密主机上
单向哈希算法
哈希算法:也叫散列算法;将任意数据缩小成固定大小的指纹,称为digest,即摘要;具有不可逆性
功能:验证数据完整性
常见算法:md5:128bits sha1:160bits sha224 sha256 sha384 sha512
常用工具:md5sum | sha1sum [--check] file openssl rpm -v
数字签名
RPM 文件完整性
rpm --verify package_name (or -V)
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat*
rpm --checksig pakage_file_name (or -K)
综合应用多种加密算法
中间人攻击和安全协议
中间人攻击
安全协议SSL/TLS
SSL:Secure Socket Layer,TLS: Transport Layer Security
目前主流使用tls1.2,最新版本是tls1.3;主要工作在应用层和传输层之间
TLS实现分为握手阶段和应用阶段
握手阶段(协商阶段):客户端和服务器端认证对方身份(依赖于PKI体系,利用数字证书进行身份认证),并协商通信中使用的安全参数、密码套件以及主密钥。后续通信使用的所有密钥都是通过 MasterSecret生成
应用阶段:在握手阶段完成后进入,在应用阶段通信双方使用握手阶段协商好的密钥进行安全通信
目前密钥交换+签名有三种主流选择:
RSA密钥交换、RSA数字签名
ECDHE密钥交换、RSA数字签名
ECDHE密钥交换、ECDSA数字签名
标签:56,加密,证书,--,gpg,解密,数字签名,密钥 From: https://blog.51cto.com/gavenlee/6012029