数据加密

 数据加密

现在越来越多的应用是基于互联网:传输文件,网上购物,收发邮件等。而在传送任何东西的时候,其安全性是首先应该考虑的。然而我们现在最常使用的tcp/ip协议栈,由于其出现的时间很早,没有考虑到其安全性,所以加密技术就显的很重要了。

常见的加密方式有三种:

1.       单向加密

2.       对称加密

3.       非对称加密

以下分别介绍这几种方法

单向加密:仅提取了一段数据的特征码,不论对于多长的数据,我们都可以得到相同长度的特征码。这样只能保证数据的完整性,加密过程是不可逆的,有雪崩效应,即源数据有小的改变加密结果很很大的改变。常见的方法有MD5(120bit)SHA-1(160bit)

对称加密:主要指加密和解密使用同样的密钥。其方法是将原文和密码(自己设定的)通过某种算法得到一堆的密文,其安全性主要是通过对其密码的保密来提供的,算法是大家公认的。在加密时为了提高加密的速度通常将源数据分成长度相同的段,对每个块分别加密。在分块儿计算时有两种方法(ECBCBC)。对称加密得到的密文解密时必须需要密码。在设置密码时尽可能的让其随即,或增加其长度,这样可以增大破解的难度。常见的对称加密算法有DES(已经废弃)3DESAES(密钥是变长的),BlowfishTwofish。对称加密算法不能进行身份认证。

非对称加密算法(公钥加密算法):主要用于对用户身份的确认,是电子商务应用的基础,这种方法也被称为PKI(Public Key Instructure)。非对称加密有一组Public keyPrivate key,通过公钥加密的用私钥可以解密,反之同理。在对网上银行,等一些对安全性要求高的网站在访问的时候都要求我们下载证书(Certificate),证书中存储的其实就是公钥和一些证书持有者的信息,有证书就需要证书颁发机构CACA的作用就是对用户的公钥就行认证并签发证书。非对称加密还解决了密码分发的问题。由于非对称加密的密钥长度大于1024位加密速度非常慢,所以最长用作身份认证。

 

CA简介:CA的作用主要是确定双方的身份。CA首先是双方都认可的机构。获取证书的方法是将自己公钥和一些必要的信息发送给证书颁发机构,然后又CA对公钥进行签名。

签名:计算证书的特征码并用自己的私钥加密特征码放在其后面

 

PKI公钥基础设施:其核心是CA,但还包括对其的管理,包括颁发,吊销,等一些维护。

IKE互联网密钥交换,是双发的密码不在互联网上传送,而得到相同的密码。主要通过DH算法

 
下面一张图将详细介绍加密数据在互联网上传输加密的过程:


                  

 

图中以主机AB发送数据为例,发送数据DATA首先经过单行加密得到密码,为保证数据的来源,将密码用A的私钥加密得到S1附加到DATA的后面,为了保证数据安全性同时有不至于占用过长的时间,在使用对称加密将前面的数据后加密的得到S2,同时将密码用B的公钥加密得到S3,然后再将以上说有数据数据传送给BB得到数据先使用自己的私钥解密S3得到解密S2的密码,对S2解密的到S1DATA,将S1A的公钥解密得到对DATA加密的密码,然后对DATA进行单向加密和对S1解密的密码比较是否相同,如果相同则表示数据正确。

在传送过程中CA的作用就是确定双发的公钥,如AB传送数据时需要的B的公钥时怎样确认B的公钥就是B的呢,如果有人从中间更改了怎么办?这就需要CA了,CA对传输数据的双发的公钥进行确认,其过程就是用自己的私钥对申请者的公钥进行签名。当传输时确认对方的公钥时,从证书机构的到其证书,就可以对对方的证书进行解密,如果证书是正确的,就可以看到申请证书时提供的信息,进而就确认了传输方的身份了。但是对于怎样得到CA的证书,这个看你个人的决定了,这也是现在的网络唯一不能不能保证安全了。但是现在的系统都内置了全球的一些著名CA的证书了方便了使用。

通过以上的方法就可以安全在网络上传输数据了
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章