工作

安全加密技术

2016-08-03  本文已影响48人  大空ts翼

分类

加密技术通常分为两大类:“对称式”和“非对称式”。

一、对称算法

只有一个密钥key进行加密解密,可以逆向加解密。

常见的对称式算法:

  • DES设计中使用了分组密码设计的两个原则:混淆(confusion)和扩散(diffusion),其目的是抗击敌手对密码系统的统计分析。混淆是使密文的统计特性与密钥的取值之间的关系尽可能复杂化,以使密钥和明文以及密文之间的依赖性对密码分析者来说是无法利用的。扩散的作用就是将每一位明文的影响尽可能迅速地作用到较多的输出密文位中,以便在大量的密文中消除明文的统计结构,并且使每一位密钥的影响尽可能迅速地扩展到较多的密文位中,以防对密钥进行逐段破译。

二、非对称算法

非对称密钥算法是指一个加密算法的加密密钥和解密密钥是不一样的,或者说不能由其中一个密钥推导出另一个密钥。

常见的非对称式算法:

  • RSA算法基于一个十分简单的数论事实:将两个大质数相乘十分容易,但是想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。

三、基本的单向加密算法

常见的单向加密算法

Base64的作用:将非ASCII字符的数据转换成ASCII字符的一种方法,因为某些系统中只能使用ASCII字符(比如传输邮件)

信息摘要算法,用于确保信息传输完整一致。广泛用于加密和解密技术,常用于文件校验。不管文件多
大,经过MD5后都能生成唯一的MD5值(SHA-1与此类似)
特点
1、任意长度的数据,MD5值长度都是固定的。
2、对原数据进行任何改动,哪怕只修改1个字节,所得到的MD5值都有很大区别。
3、弱抗碰撞:已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的。
4、强抗碰撞:想找到两个不同的数据,使它们具有相同的MD5值,是非常困难的。

SHA1比MD5安全,是因为SHA-1摘要为160位,MD5摘要为128位,相差32位,因此SHA1的强度更大。

四、相关应用

这里举个例子,server和app之间的通信

  1. 采用ras加密通信数据,由server产生公钥和私钥,公钥给app:
  • app通过公钥加密数据,发送给server,server通过私钥解密数据

这里就产生了一个问题:公钥是公开的,第三方可以截取数据后用公钥解密,造成数据泄露
这个问题可以通过双向ras加密解决,也就是:server和app各自产生一对公钥和私钥,然后把各自的公钥暴露给对方:

  • app通过公钥(server_public_key)加密数据,发送给server,server通过私钥(server_private_key)解密数据

上面这种方式看起来很牢固,然并卵
第三方依旧可以介入,通过中间人的方式,对于server端,第三方可以拿app端的公钥

上一篇下一篇

猜你喜欢

热点阅读