加密算法与随机数

流加密攻击

有些加密算法是将流中的每个字节逐个进行异或

这导致只需要知道两个加密后的密文,便解密密文

ECB模式的曲线

分组加密算法改变分组密文的顺序,也将改变解密后的明文顺序,这很有可能将导致数据传输过程中关键数据被伪造

密钥管理

  • 密码学里的原则:密码系统的安全性应该依赖于密钥的复杂性,而非算法的保密性
  • web应用的密钥可以存放在配置文件或数据库中,但对密钥的获取要有严格的权限管理

伪随机数问题

  • 弱随机数
  • 时间戳当随机数
  • 随机数种子猜测

加密算法

对称加密

发件人和收件人使用其共同拥有的单个密钥 ,这种密钥既用于加密,也用于解密

常见的对称加密算法:DES、3DES、DESX、Blowfish、IDEA、RC4、RC5、RC6和AES

优点

只需记忆一个密钥,就可用于加密、解密; 与非对称加密方法相比,加密解密的计算量小,速度快,简单易用,适合于对海量数据进行加密处理

缺点

如果密钥交换不安全,密钥的安全性就会丧失

非对称加密

密钥依据性质划分,将其中的一个向外界公开,称为公钥;另一个则自己保留,称为私钥。公钥(Public key)常用于数据加密(用对方公钥加密)或签名验证(用对方公钥解密),私钥(Private key)常用于数据解密(发送方用接收方公钥加密)或数字签名(用自己私钥加密)

常见的对称加密算法:RSA、Elgamal、背包算法、Rabin、D-H、ECC

优点

难破解

缺点

加密速度慢

results matching " "

No results matching " "

results matching " "

No results matching " "