数据加密解密基础过程,简单的PKI实现;
2017-03-13 11:52
148 查看
加密的分类:
对称加密:
机制:
加密方使用一个公开的算法对一段数据和特定的口令进行统一加密,解密方使用口令+算法反向解密;
算法:DES,3DES,AES,BlowFish等;
优势:
当对大量的数据进行加密时速度很快;
缺陷:
密钥(口令)的交换;
双方的身份认证;
数据的完整性;
2.非对称加密:
机制:
加密解密双方同时生成一对公钥和私钥,在加密过程中使用自己的私钥对要传递的信息进行加密,而对方使用发送方的公钥进行解密,也就是说,生成的公钥是公开的,而私钥是绝对不能外泄的;
算法:
RSA,DSA
优势:
能够实现双方的身份验证;
与对称加密配合使用可以保证对称加密口令的传输可靠性;
缺陷:
加密速度慢,一般不用过来对数据本身进行加密;
3.单向机密:
机制:
对数据进行特定的算法以生成一段特征码;
算法:
md5,sha1
优势:
雪崩效应:原数据的微小改变,都会造成特征码的大幅变化;
保证数据完整性;
缺陷:
无法保证传输的安全性;
双方身份无法验证;
由此完整的信息加密传输方式的过程为:
数据-->单向加密:抽取特征码,保证数据的完整性;-->非对称加密:对特征码使用自己的私钥进行加密,来保证身份的可靠性;-->对称加密:对原数据和已经使用加密者私钥加密的特征码使用对称加密保证数据的私密性;-->非对称加密:使用解密方的公钥对对称加密产生的口令进行加密,保证数据传输的可靠性;-->传输加密后的数据,完成数据传输;
实现简单的pki基础设施:
使用工具:
openssl:可以用来进行数据的加密,解密,证书的自签,签发等功能的工具;
genrsa:用来生成自身的私钥,实际上会同时生成公钥,但并没有为public创建文件;
用法:openssl genrsa -out /some/path/privateName.pem
rsa:可以用来查看公钥,或者将公钥生成文件;
用法:openssl rsa -text -in /some/path/privateName.pem -pubout //查看公钥;
openssl rsa -text -in /some/path/privateName.pem -pubout -out
/some/path/publicName.pem //将公钥生成文件;
req:自签或生成申请证书;
用法:openssl req -x509 -new -key /some/path/privateName.pem -out /some/path/certName.pem //自签证书;
openssl req -new -key /some/path/privateName.pem -out /some/path/FileName.csr //生成申请表;
ca:签署证书;
用法:openssl ca -in /some/path/FileName.csr -out /some/path/FileName.crt -days 30 //签署证书期限为30天;
openssl ca -revoke /path/to/somefile.crt //吊销证书;
# scp Httpd.csr(需要传输的文件) 192.168.0.166(目标地址):/tmp/(目标路径) ;scp是一个传输工具
创建申请表的格式:
国家: //CN,US,EN之类;
省份:
城市:
组织或公司:
部门:
服务器名: //要与被访问的主机名相同;
管理邮件地址:
对称加密:
机制:
加密方使用一个公开的算法对一段数据和特定的口令进行统一加密,解密方使用口令+算法反向解密;
算法:DES,3DES,AES,BlowFish等;
优势:
当对大量的数据进行加密时速度很快;
缺陷:
密钥(口令)的交换;
双方的身份认证;
数据的完整性;
2.非对称加密:
机制:
加密解密双方同时生成一对公钥和私钥,在加密过程中使用自己的私钥对要传递的信息进行加密,而对方使用发送方的公钥进行解密,也就是说,生成的公钥是公开的,而私钥是绝对不能外泄的;
算法:
RSA,DSA
优势:
能够实现双方的身份验证;
与对称加密配合使用可以保证对称加密口令的传输可靠性;
缺陷:
加密速度慢,一般不用过来对数据本身进行加密;
3.单向机密:
机制:
对数据进行特定的算法以生成一段特征码;
算法:
md5,sha1
优势:
雪崩效应:原数据的微小改变,都会造成特征码的大幅变化;
保证数据完整性;
缺陷:
无法保证传输的安全性;
双方身份无法验证;
由此完整的信息加密传输方式的过程为:
数据-->单向加密:抽取特征码,保证数据的完整性;-->非对称加密:对特征码使用自己的私钥进行加密,来保证身份的可靠性;-->对称加密:对原数据和已经使用加密者私钥加密的特征码使用对称加密保证数据的私密性;-->非对称加密:使用解密方的公钥对对称加密产生的口令进行加密,保证数据传输的可靠性;-->传输加密后的数据,完成数据传输;
实现简单的pki基础设施:
使用工具:
openssl:可以用来进行数据的加密,解密,证书的自签,签发等功能的工具;
genrsa:用来生成自身的私钥,实际上会同时生成公钥,但并没有为public创建文件;
用法:openssl genrsa -out /some/path/privateName.pem
rsa:可以用来查看公钥,或者将公钥生成文件;
用法:openssl rsa -text -in /some/path/privateName.pem -pubout //查看公钥;
openssl rsa -text -in /some/path/privateName.pem -pubout -out
/some/path/publicName.pem //将公钥生成文件;
req:自签或生成申请证书;
用法:openssl req -x509 -new -key /some/path/privateName.pem -out /some/path/certName.pem //自签证书;
openssl req -new -key /some/path/privateName.pem -out /some/path/FileName.csr //生成申请表;
ca:签署证书;
用法:openssl ca -in /some/path/FileName.csr -out /some/path/FileName.crt -days 30 //签署证书期限为30天;
openssl ca -revoke /path/to/somefile.crt //吊销证书;
# scp Httpd.csr(需要传输的文件) 192.168.0.166(目标地址):/tmp/(目标路径) ;scp是一个传输工具
创建申请表的格式:
国家: //CN,US,EN之类;
省份:
城市:
组织或公司:
部门:
服务器名: //要与被访问的主机名相同;
管理邮件地址:
相关文章推荐
- 存储过程基础以及几种简单的实现
- 【Dubbo基础】dubbo学习过程、使用经验分享及实现原理简单介绍
- 储存过程的基础的创建和简单应用[转]
- PKI基础 二.PKI基础--5.数字证书及应用(转,一个加密解密的全过程)
- 使用DELPHI对图片中的文字进行识别的过程(最简单实现)
- 网站信息统计的简单实现过程
- AJAX实现一个简单的相册和里头包含一些DOM基础应用
- 一个简单的oracle分页存储过程的实现和调用
- JavaScript 实现基础--正则表达式--简单模式--
- 网站信息统计的简单实现过程
- 简单、直观的实现优于复杂、难懂的实现,最近开发扑克识别过程的总结
- 网站信息统计的简单实现过程 pcsky(原作)
- 一个简单的oracle分页存储过程的实现和调用
- 存储过程的简单实现[C#]
- 简单的实现事件过程中友好等待提示功能
- 一个简单的oracle分页存储过程的实现和调用
- 一个简单的oracle分页存储过程的实现和调用
- 一个简单的oracle分页存储过程的实现和调用
- PKI数字证书的简单实现