gpt4 book ai didi

java - AES ECB 模式需要填充,那我们怎么会有这个 AES/ECB/NOPADDING 呢?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:22:24 25 4
gpt4 key购买 nike

我们使用下面的密码

AES/ECB/NOPADDING

但我有点困惑,因为像 ECB 这样的模式需要根据 block 大小填充输入。但是这里我们说 NOPADDING。他们看起来不矛盾吗。

我们能否将未填充的任意数据作为 ECB 模式的输入。

最佳答案

没有应用填充的 ECB 加密的“原始”模式,例如 AES/ECB/NOPADDING,基本上是对 N 个数据 block 的加密功能的纯粹应用。它们对于需要实现默认情况下未提供的自定义模式的开发人员很有用。任何操作模式都是从原始加密函数以某种方式构造的。

不过,由于 block 密码只能对全长 block 进行操作,因此可能必须在最后一个 block 上应用某种形式的填充。这留给开发人员,他们将实现为他们希望实现的模式指定/推荐的任何形式的填充。有很多可能性,这就是为什么我们有“NOPADDING”——将填充的选择留给我们。

这些模式,XXX/ECB/NOPADDING,不应该直接使用。任何欧洲央行模式都不应该,真的。普通 ECB 加密非常不安全,例如它不隐藏明文的统计属性(您可能知道 the examples,其中“加密”图像仍然看起来很像原始图像)。最重要的是,如前所述, block 密码只能对全长 block 进行操作。这需要应用自定义填充方案,这将添加另一个可能出错的层,而不是简单地依赖某些默认实现。

关于java - AES ECB 模式需要填充,那我们怎么会有这个 AES/ECB/NOPADDING 呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10531932/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com