常见的加密类型及其算法

加密类型

使用算法

基本特性

对称加密

DES(数据加密标准,56位密钥)、

AES(高级加密标准,128位密钥)、

3DESBlowfishTwofishCAST5IDEARC6

加密、解密使用同一个密钥

通常用来加密数据,加解密速度快

密钥过多,管理密钥困难

密钥交换困难

加密:# openssl enc -e -des3 -a -salt -in fstab -out fstab.ciphertext

常用选项:

  • -e:加密

  • -des3:加密数据时使用的算法,可用# openssl ? --> Cipher commands子命令中的各种其它算法代替

  • -a:对加密后的数据进行base64编码,或解密前先对数据进行base64解码

  • -salt:加盐。加盐后,相同的明文可以得到不同的密文。默认情况下,盐值是随机生成的

  • -in FILENAME:指定要加密的文件

  • -out FILENAME:指定加密后生成的文件

解密:# openssl enc -d -des3 -a -salt -in fstab.ciphertext -out  fstab.plaintext

常用选项:

  • -d:解密

公钥加密

(非对称加密)

RSA(既能用于加密,又能用于数字签名)、

DSA(只能用于数字签名,不能用于数据加密)、

DH(一般用于密钥交换)

密钥成对出现

公钥:public key,可公开给所有人

私钥:private key,保证其私密性

使用公钥加密的数据,只能使用与之配对的私钥解密

使用私钥加密的数据,只能使用与之配对的公钥解密

通常用来身份认证(数字签名),很少用来加密数据

身份认证:发送方使用自己的私钥加密数据,接收方使用发送方的公钥解密数据,如果解密成功,就能证明发送方的身份

数据保密性:发送方使用接收方的公钥加密数据,接收方使用自己的私钥解密数据,此方法能保证数据的保密性

# openssl genrsa -out ca.key 2048

# openssl req -new -key ca.key -out ca.csr

# openssl x509 -req -days 3650 -in ca.csr-signkey ca.key -out ca.crt

单向加密

MD5:消息摘要算法第五版,128

SHA:安全哈希算法,包括如下5种算法

  • SHA-1160

  • SHA-2

  • SHA-224224

  • SHA-256256

  • SHA-384384

  • SHA-512512

CRC-32:提取数据特征码

CBC-MACHMAC:消息认证算法

只能加密,不能解密,整个过程不可逆

通常用来提取数据特征码(数据指纹),验证数据的完整性

定长输出:无任输入数据多长,只要使用同一种单向加密算法,输出结果的长度都相同

雪崩效应:输入数据的微小改变,会导致结果的巨大变化

使用不同加密工具单向加密同一文件,只要加密算法一样,输出的消息摘要信息都一样

# openssl dgst -md5 | -sha1 fstab [-out  FILENAME]

# md5sum | sha1sum | sha224sum | sha256sum |  sha384sum | sha512sum fstab







      本文转自Marion0728  51CTO博客,原文链接:http://blog.51cto.com/qiuyue/1955775,如需转载请自行联系原作者




  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值