加密和安全

1.对称加密算法

加密和安全

 

 对称加密:加密和密钥使用同一个密钥

特性:

加密,解密使用同一个密钥,效率高

将原始数据分割成固定大小的块,逐个进行加密

缺陷:

密钥过多

密钥分发

数据来源无法确认

常见对称加密算法:DES,3DES,AES

2.非对称加密算法

加密和安全

 

 非对称加密:密钥是成对出现

公钥:public key,公开给所有人,主要给别人加密使用

私钥:secret key,自己留存,必须保证其私密性,用于自己加密签名

特点:用公钥加密数据,只能使用与之配对的私钥解密;反之亦然

功能:

数据加密:适合加密较小数据,比如:加密对称密钥

数字签名:主要在于让接收方确认发送方身份

缺点:

密钥长,算法复杂

加密解密效率地下

常见算法:RSA,DSA

非对称加密实现数字签名

加密和安全

 

 发送者

生成公钥/私钥对:P和S

公开公钥P,保密密钥S

使用密钥S来加密消息M

发送给接收者S(M)

接收者

使用发送者的公钥来解密M=P(S(M))

3.使用gpg实现对称和非对称加密

实现对称加密

对称加密file文件

gpg -c file

在另一台主机上解密file

gpg -o file -d file.pgp

实现公钥加密

目标:在hostB主机上用hostA公钥加密,在hostA主机上解密

在hostA主机上生成公钥/私钥对

gpg --gen-key

在hostA主机上查看公钥

gpg --list-key

在hostA主机上导出公钥到yang.pubkey

gpg -a --export -o yang.pubkey

从hostA主机上复制公钥文件到需加密的B主机上

scp yang.pubkey hostB:

在需要加密数据的hostB主机上生成公钥/私钥对

gpg --list-keys
gpg --gen-key

在hostB主机上导入公钥

gpg --import yang.pubkey
gpg --list-keys

用从hostA主机导入的公钥,加密hostB主机的文件file,生成file.gpg

gpg -e -r yangbowen file
file file.gpg

复制加密文件到hostA主机

scp fstab.gpg hostA:

在hostA主机解密文件

gpg -d file.gpg
gpg -o file -d file.gpg

删除公钥和私钥

gpg --delete-keys yangbowen
gpg --delete-secret-keys yangbowen

4.单项哈希算法

 

上一篇:GPG


下一篇:GitHub 如何让你的提交显示被校验