本文共 2465 字,大约阅读时间需要 8 分钟。
对称加密算法: DES(源于IBM公司):支出64位的加密
3DES:DES的加强版,利用DES连续加密3次 AES:支持128、256、512等不同位数的加密 Blowflsh Linux中的工具: openssl enc gpg(pgp) 公钥加密算法: RSA,ELGamal:实现加密和签名 DSA:只能实现签名 Linux中的工具: gpg openssl rsautl 单向加密算法: MD5:默认长度为128位 SHA1:默认长度为160位 CRC-32:循环冗余校验码 Linux中的工具: md5sum sha1sum openssl dgst一、Linux中的openssl
#openssl version #####查看版本 #openssl crl #####证书吊销列表 #openssl speed #####对于某种加密算法的加密速度测试openssl enc -des3 -salt -a -in plaintest -out ciphertext.des3
-a:输出的为ASCII码 -salt:随机数 #openssl enc -des3 -salt -a -in ./fstab -out fstab.des3openssl enc -d -des3 -salt -a -in ciphertext.des3 -out FILE
-d:解密openssl rand [-base64] NUM
-base64:使用base64进行编码,默认输出的是二进制 openssl base64 对某一个数据进行base64编码 #echo -n "redhat" | openssl base64 #####不要传递换行符#md5sum test #####计算文件的校验码 #sha1sum test
注:两者长度不同。openssl dgst -sha1 FILE
#openssl dgst -sha1 test 计算文件的校验码 等同sha1sum test【1】.公钥加密中: openssl genrsa SKLONG #####生成密钥 #openssl genrsa 1024 > ./mykey.sec #####生成长度为1024的密钥对,显示的为私钥,并将其保存到mykey.sec中,公钥是从私钥中提取出来的
openssl genrsa -des3 -out SECRET.FILE 1024
-out:生成后保存到哪 "1024":指密钥长度 #openssl genrsa -des3 -out ./mysk.sec 1024 #####直接保存到mysk.sec #openssl genrsa -in ./mysk.sec -des3 -out ./myk.sec #####生成后对其进行加密提取公钥: #openssl rsa -in ./mykey.sec -pubout #####不输入保存到哪个文件,则输出到屏幕上
注:保存密钥的文件的权限应该是600或者400。
在一个子shell中执行一个命令使用()括起来
#(umask 077;openssl genrsa 1024 > ./mykey.sec)【2】.使用openssl把自己的作为一个CA CA配置文件所在:/etc/pki/ CA配置文件:/etc/pki/tls/openssl.cnf 步骤:1.编辑 /etc/pki/tls/openssl.cnf [ CA_default ] dir = /etc/pki/CA
#cd /etc/pki/CA/ #(umask 077;openssl genrsa 2048 > private/cakey.pem) #####这里存放CA的密钥,固定写法"private/cakey.pem"
2.自己作为CA服务器:申请发证并签证: #openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3650 #####"cacert.pem"也是固定写法 >(国家代码) >(省份) >(城市) >(组织名) >(公司的部门) >(用户名或者服务器名即访问该服务器的域名) >(邮箱地址) -new:表示这是一个新的请求
-req:发出请求 -key:指出私钥位置,会自动提取出公钥 -days:指定有效期限3.生成工作目录: #mkdir certs crl newcerts #####生成证书列表,吊销列表,新的申请 #touch index.txt serial #####生成索引,序列号 #echo 01 > serial #####给序列号一个初始值
4.为申请的证书签发: #openssl ca -in httpd.csr -out httpd.crt #####默认期限为1年 -in:后跟申请的证书
-out:签发的证书,后缀为.crt 一切执行完后,大功告成,CA就配置好了5.我们用另外一台机器向其申请证书: #(umask 077;openssl genrsa 1024 > httpd.key) #####生成密钥对 #openssl req -new -key httpd.key -out httpd.csr #####发起一个新的证书请求固定写法文件后缀为".csr"
然后将这个新申请的证书,后缀为".csr"的文件给CA服务器,通过其签发,生成后缀为".crt"的文件,将其导入到自己的服务器中即可!
6.吊销一个证书:
#openssl ca -revoke httpd.crt