zoukankan      html  css  js  c++  java
  • AES五种加密模式(CBC、ECB、CTR、OCF、CFB)

     

                              --转载https://www.cnblogs.com/starwolf/p/3365834.html

    https://www.freebuf.com/column/171939.html

    分组密码有五种工作体制:1.电码本模式(Electronic Codebook Book (ECB));2.密码分组链接模式(Cipher Block Chaining (CBC));3.计算器模式(Counter (CTR));4.密码反馈模式(Cipher FeedBack (CFB));5.输出反馈模式(Output FeedBack (OFB))。

    AES弱加密

    风险详情:在AES加密时,使用了“AES/ECB/NoPadding”或“AES/ECB/PKCS5padding”的模式

    危害情况:ECB是将文件分块后对文件块做同一加密,破解加密只需要针对一个文件块进行解密,降低了破解难度和文件安全性

    修复建议:禁止使用AES加密的ECB模式,显式指定加密算法为:CBC或CFB模式,可带上PKCS5Padding填充。AES密钥长度最少是128位,推荐使用256位

    以下逐一介绍一下:
    1.电码本模式(Electronic Codebook Book (ECB)
        这种模式是将整个明文分成若干段相同的小段,然后对每一小段进行加密。
     
    2.密码分组链接模式(Cipher Block Chaining (CBC))
        这种模式是先将明文切分成若干小段,然后每一小段与初始块或者上一段的密文段进行异或运算后,再与密钥进行加密。
     
    3.计算器模式(Counter (CTR))
            计算器模式不常见,在CTR模式中, 有一个自增的算子,这个算子用密钥加密之后的输出和明文异或的结果得到密文,相当于一次一密。这种加密方式简单快速,安全可靠,而且可以并行加密,但是在计算器不能维持很长的情况下,密钥只能使用一次。CTR的示意图如下所示:
     
     
    4.密码反馈模式(Cipher FeedBack (CFB))
        这种模式较复杂。
     
     
    5.输出反馈模式(Output FeedBack (OFB))
        这种模式较复杂。
     
     
  • 相关阅读:
    git push时提示"fatal: The current branch master has no..."
    git push时提示"Everything up-to-date"
    图解vim常用命令
    总结下git中一些常用命令
    SVN服务端的版本对比及创建仓库时的注意事项
    bootstrap字体图标不正常显示的原因
    bigdata_Hadoop jps出现process information unavailable提示解决办法
    bigdata_批量机器执行通用脚本
    bigdata_ambari修改hiveserver_metastore链接库(从0.14 升级到1.2.1 )
    bigdata_一篇文看懂Hadoop
  • 原文地址:https://www.cnblogs.com/AtesetEnginner/p/9870253.html
Copyright © 2011-2022 走看看