1.2常用安全加密

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1.2常用安全加密相关的知识,希望对你有一定的参考价值。

哈希算法(单向散列)

数据相同摘要相同,判断文件摘要就能知道文件是否相同,比较哈希值。数据不变哈希值不变。

哈希与加密混合使用,对称与非对称加密一起用

技术分享图片

常见算法
md5: 128bits、sha1: 160bits、sha224、sha256、sha384、sha512

常用工具
? md5sum | sha1sum [ --check ] file

[[email protected] ~]# md5sum apache.sh
9bcfb6fb9a92e728d387d5c7d48e6df7 apache.sh 哈希值

? openssl、gpg
? rpm -V

密钥交换:IKE( Internet Key Exchange )

公钥加密:

DH (Deffie-Hellman):生成会话密钥

DH: A: g,p 协商生成公开的整数g, 大素数p

B: g,p

A:生成隐私数据 :a (a<p),计算得出 g^a%p,发送给B

B:生成隐私数据 :b,计算得出 g^b%p,发送给A

A:计算得出 [(g^b%p)^a] %p = g^ab%p,生成为密钥
B:计算得出 [(g^a%p)^b] %p = g^ab%p,生成为密钥

rpm -V 包名:通过单向散列算法检验rpm包的合法性

rpm -K 包名:通过单向散列算法检验rpm包的签名

gpg实现对称加密

1 对称加密file文件
gpg -c file

(1)在发送方对文件加密
技术分享图片

输入密钥

技术分享图片

(2)在接收方解密

技术分享图片

技术分享图片
技术分享图片
在执行解密时需要接收方输入加密密钥

技术分享图片
ls file.gpg

2 在另一台主机上解密file
gpg -o file -d file.gpg

使用gpg工具实现公钥加密

?在hostB主机上用公钥加密,在hostA主机上解密
?在hostA主机上生成公钥/私钥对
gpg --gen-key
?在hostA主机上查看公钥
gpg --list-keys
?在hostA主机上导出公钥到wang.pubkey
gpg -a --export -o wang.pubkey
?从hostA主机上复制公钥文件到需加密的B主机上
scp wang.pubkey hostB:

?在需加密数据的hostB主机上生成公钥/私钥对
gpg --list-keys
gpg --gen-key
?在hostB主机上导入公钥
gpg --import wang.pubkey
gpg --list-keys
?用从hostA主机导入的公钥,加密hostB主机的文件file,生成file.gpg
gpg -e -r wangxiaochun file
file file.gpg

?复制加密文件到hostA主机
scp fstab.gpg hostA:
?在hostA主机解密文件
gpg -d file.gpg
gpg -o file -d file.gpg
?删除公钥和私钥
gpg --delete-keys wangxiaochun
gpg --delete-secret-keys wangxiaochun

中间×××原理

技术分享图片

CA和证书

证书申请

服务脚本

技术分享图片

以上是关于1.2常用安全加密的主要内容,如果未能解决你的问题,请参考以下文章

常用的安全算法

常用安全算法之对称加密算法与非对称加密算法

java常用加密算法

Linux学习68 运维安全-openssl原理与实战

常用加密方式

电子病历系统安全性-加密解密