您的位置:首页 > 其它

加密解密基础知识

2015-01-29 21:36 246 查看
密码算法和协议:

对称加密:加密和解密方使用同一个密钥.

公钥加密:加密和解密使用不同的密钥,密钥是分为公钥和私钥,成对出现公钥隐含在私钥中.

单向加密:也成数据完整性算法,抽取数据的特征码,二次抽取都和单词进行比较,以验证数据完整性.

认证协议:基于某些算法来验证某些通信实体的真实性.

对称加密:
具体算法:
DES算法,3DES算法,TDEA算法,Blowfish算法,RC5算法,IDEA算法。
特点:

优点:算法公开、计算量小、加密速度快、加密效率高。
缺点:安全性差、每次使用都需要一个唯一的密钥,导致密钥维护困难。

公钥加密:(非对称加密)
具体算法:

RSA、ElGamal、背包算法、Rabin(Rabin的加密法可以说是RSA方法的特例)、Diffie-Hellman (D-H) 密钥交换协议中的公钥加密算法、Elliptic Curve Cryptography(ECC,椭圆曲线加密算法)。
具体解释:

公钥是指一对加密密钥与解密密钥,这两个密钥是数学相关,用某用户密钥加密后所得的信息,只能用该用户的解密密钥才能解密。如果知道了其中一个,并不能计算出另外一个。因此如果公开了一对密钥中的一个,并不会危害到另外一个的秘密性质。称公开的密钥为公钥;不公开的密钥为私钥。
如果加密密钥是公开的,这用于客户给私钥所有者上传加密的数据,这被称作为公开密钥加密(狭义)。例如,网络银行的客户发给银行网站的账户操作的加密数据。
如果解密密钥是公开的,用私钥加密的信息,可以用公钥对其解密,用于客户验证持有私钥一方发布的数据或文件是完整准确的,接收者由此可知这条信息确实来自于拥有私钥的某人,这被称作数字签名,公钥的形式就是数字证书。例如,从网上下载的安装程序,一般都带有程序制作者的数字签名,可以证明该程序的确是该作者(公司)发布的而不是第三方伪造的且未被篡改过(身份认证/验证)。

安全传输数据流程举例:



这个模型中有一个问题就是怎么保证Arya使用的Bran的公钥是可靠的公钥,解决方法就是通过一个可靠的机构发布,就是CA。

数字证书认证中心:

Certificate Authority简称为CA。CA是PKI系统中通信双方都信任的实体,被称为可信第三方(Trusted Third Party,简称TTP)。CA是指发放、管理、废除数字证书的机构。CA的作用是检查证书持有者身份的合法性,并签发证书(在证书上签字),以防证书被伪造或篡改,以及对证书和密钥进行管理。

通过CA验证数据可靠的的流程举例:




CA的证书格式:
CA证书的通用格式为X509。




本文出自 “Bran” 博客,请务必保留此出处http://branguo.blog.51cto.com/9768383/1609768
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: