在linux中,主要使用openssl和gpg两种方法实现安全机制。
单向加密
单向加密是计算一段数据的特征码,利用特征码对数据完整性进行校验,且输出定长。常见的加密算法有MD5、SHA1。
对称加密
对称加密就是加密和解密使用相同的密钥。常见的算法有DES、AES、3DES。
非对称加密
加密和解密使用的不是一个秘密。常见的算法有DSA、RSA。
openssl
//对称加密
//加密
openssl enc -e -des3 -a -in inputfile -out encryptfile
//解密
openssl enc -d -des3 -a -in encryptfile -out decryptfile
默认情况下,-salt选项开启,盐值随机生成,使用-nosalt关闭此选项。加盐后,相同的明文可以得到不同的密文,密文中包含盐值。-S 指定盐值。
计算文件单向加密的特征码
openssl dgst -sha inputfile
特征码用来检验一个文件的完整性。