2012-03-29 58 views
0

我只是在erlang中使用crypto时使用填充模式:des_ecb_encrypt/2时感到困惑。 在此先感谢!使用加密时使用的填充模式是什么:erlang中的des_ecb_encrypt/2

+0

呃,如果我没有弄错,它似乎没有做任何填充。您可能必须自行打开/取消打印。你可以尝试加密单个字节或字符吗?如果失败,则无需填充即可运行。如果有效,请尝试解密并查看输出是否匹配。如果没有,则执行某种自动但未定义的填充。 – 2012-03-29 19:27:15

+0

只是为了我的信息,那/ 2是什么意思? – 2012-03-29 19:32:41

+1

函数/ 2是arity 2函数的语法(两个参数)。 – butter71 2012-03-30 03:39:40

回答

0

为了找出问题,加密一些不是整数个块的明文。使用“无填充”解密它,并查看加密过程添加到最后一个块的末尾。

如果加密失败,那么它可能会期望您先添加自己的填充。如前所述,使用PKCS5或PKCS7填充。

+0

我没有发布它作为答案,因为我不确定什么样的填充使用了rossum,你的回答基本上是我的评论,而不告诉实际的填充机制。 – 2012-03-31 14:40:05

+0

我给你一种方法来找出正在使用的填充机制:使用“无填充”解密并查看添加到最后一个块的填充。 – rossum 2012-03-31 18:27:46

+0

不要介意rossum,我正在发表评论,而不是提问。我已经建议加密一个字节并解密输出 - 我只是没有把它作为答案,因为它不是一个可以直接使用的答案。 – 2012-03-31 19:36:22

相关问题