您的位置:首页 > 运维架构

常见的加密类型及其算法

2017-08-12 17:09 525 查看
加密类型使用算法基本特性
对称加密DES(数据加密标准,56位密钥)、AES(高级加密标准,128位密钥)、3DES、Blowfish、Twofish、CAST5、IDEA、RC6加密、解密使用同一个密钥通常用来加密数据,加解密速度快密钥过多,管理密钥困难密钥交换困难
加密:# 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-1:160位
SHA-2:
SHA-224:224位
SHA-256:256位
SHA-384:384位
SHA-512:512位
CRC-32:提取数据特征码CBC-MAC、HMAC:消息认证算法
只能加密,不能解密,整个过程不可逆通常用来提取数据特征码(数据指纹),验证数据的完整性定长输出:无任输入数据多长,只要使用同一种单向加密算法,输出结果的长度都相同雪崩效应:输入数据的微小改变,会导致结果的巨大变化使用不同加密工具单向加密同一文件,只要加密算法一样,输出的消息摘要信息都一样
# openssl dgst -md5 | -sha1 fstab [-out FILENAME]# md5sum | sha1sum | sha224sum | sha256sum | sha384sum | sha512sum fstab
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  openssl 加密解密 sha