美文网首页
如何选择加密算法

如何选择加密算法

作者: zoro_x | 来源:发表于2017-01-02 13:44 被阅读94次

作为一个数学一般, 又不是安全相关专业的程序猿. 每次碰到需要加密的时候都不知道如何选择一种合适的加密的算法. 总结一下图解加密算法书中对各个算法的评价. 以后需要选择的时候也有了依据.

首先需要了解密码的一些常识与原则.

  1. 不要使用保密的密码算法.
  • 不要试图通过保密算法来提高安全性.
  • 不要使用自己发明的算法
  1. 使用低强度的密码比不使用密码更不安全
  2. 任何密码总有一天会被破解(除了随机密码本)
  3. 密码只是信息安全的一部分

单向散列函数

单向散列函数也称哈希函数, 单向散列函数的评价标准就是抗碰撞性. 抗碰撞性分为强和弱两种:

  • 强碰撞性: 要找到散列值相同的两条不同的消息是非常困难
  • 弱碰撞性: 要找到和一个消息散列值相同的另一个消息是非常困难

常见的 Hash 算法有: MD4/MD5, SHA-1/SHA-2/SHA-3, RIPEMD-160. 格式算法的情况如下:

|算法|强碰撞性被攻破|推荐度|
|:--- :|:----------------:|:-------:|
|MD4/MD5 |是 |不推荐使用|
|SHA-1 |是 |不应该被用于新环境中|
|SHA-2 |否 |推荐使用|
|SHA-3 |否 |推荐使用|
|RIPEMD-160 |否 |可以使用|

综上所述, 需要使用散列函数的时候最好选择 SHA-2 和 SHA-3, RIPEMD-160 也可以选择, 但是实际使用范围没有 SHA-2 和 SHA-3 广.

相关文章

  • 如何选择加密算法

    作为一个数学一般, 又不是安全相关专业的程序猿. 每次碰到需要加密的时候都不知道如何选择一种合适的加密的算法. 总...

  • 密码学-札记

    一、加密算法的选择: 1.1 对称加密: 不安全的加密算法: a.DES系加密算法(DES/DESX/3DES/2...

  • RSA公私钥和签名、验签过程

    RSA加密算法介绍 RSA又叫非对称加密算法,这类加密算法有2个秘钥,你可以选择一个作为私钥(自己保存,重要),另...

  • iOS签名机制

    如何选择加密算法 摘要算法默认就使用SHA1准没错。 首先从加密的类型区分,AES——对称加密;RSA——非对称加...

  • HTTPS协议传输过程

    握手流程 客户端发起https请求客户端告诉服务端支持哪些加密算法。 服务端响应选择合适的加密算法(比如:RSA、...

  • sha1 sha256 md5 crc32几种摘要签名算法的效率

    最近使用到了加密算法,仔细对比了几种加密算法的效率以及实现方法。我们选择了一个差不多1G大小的system.img...

  • IOS开发——各类加密算法总结(MD5,CHA,BASE64,A

    一.MD5加密算法 二.sha1加密算法 三.base64加密算法 四.AES 256加密算法 五.加密算法分析 ...

  • 常用加密算法

    1 常用加密算法 常用加密算法有 对称加密算法、非对称加密算法、Hash算法 对称加密算法 加密和解密使用相同的秘...

  • 2018-04-23

    1、客户端在数据安全方面会使用那些常用加密算法? 2、如何灵活结合不同加密算法实现数据安全交互? 3、数字签名原理...

  • iOS-探究密码学-加密算法特性总结

    加密算法分为三大类:哈希算法、对称加密算法、非对称加密算法。 加密算法特性: 加密算法都是对二进制数据进行加密哦!...

网友评论

      本文标题:如何选择加密算法

      本文链接:https://www.haomeiwen.com/subject/bnjwvttx.html