一、网络安全
数据在网络上进行传输,无论是通过有线还是无线传输都有可能别黑客截取到,如果用一些特别重要的数据如密码等被截取到那就出问题了,所以工程师们就利用算法对数据进行加密,将数据进行加密后再在网络上进行传输,客户端或服务器接收后再进行解密,这样就算黑客截取到数据也是一堆乱码,不知道数据加密的算法和秘钥拿到的数据就是一垃圾。
二、加密技术
常见的加密算法有两种:对称加密和非对称加密
a、对称加密算法:常见的对称加密有DES和AES,之所以叫对称加密是因为它加密和解密都用的同一个秘钥。就如上面所说的一样,将数据通过算法用秘钥进行加密再到网络上去传输,客户端或者服务器接收到数据再用同一秘钥进行解密即可。
b、非对称加密算法:常用的非对称加密算法:RSA,它的秘钥是成对出现的,分公钥和私钥,用公钥加密的用私钥解密,用私钥加密的用公钥解密,可想而知,其安全程度相对于对称加密是要高的,因为对称加密只要秘钥一泄露就可以直接看到传输的数据了,而非对称加密中的私钥一般是放在服务器的,服务器一般是很难攻破的,所以就算你拿到了公钥,私钥也不是那么好获取的。所以非对称加密一般用在对安全程度较高的应用中,如支付。
公钥互换实现认证:现在的黑客技术比较高,可以冒充服务器,可以将客户端引入到黑客自己的服务器,这样一来所有的数据就一览无余了,那么怎么来认证服务器是不是冒充的服务器呢?首先服务器会生成一对秘钥,服务器将私钥保存在服务器端,将公钥发送给客户端,当客户端要向服务器传送数据时,先进行服务器的认证,防止假冒:客户端用公钥加密一个数据发送给服务器端,服务器拿到数据用私钥进行解密,再发送回客户端,如果客户端收到的数据一致证明服务器是真的,如果是假冒的服务器,由于它没有私钥,它是不可能解密数据的,也就没法向客户端发送回正确的数据,这样实现了一个服务器的认证。同样,黑客也可以冒充客户端向服务器请求数据,怎么证明客户端不是冒充的呢?同理,用客户端生成一对秘钥,将公钥发送给服务器即可。这就是所谓的公钥互换实现认证。但是客户端很容易被攻破,那样就可以拿到私钥,照样可以冒充客户端,那怎么办呢?用过网银的u盾吧,那其实就是客户端的一个私钥 。