我有一个go脚本,它使用crypto/aes来加密和解密明文。
https://play.golang.org/p/le_-uuzWN4
我希望这个脚本可以在不同的机器上使用,并产生相同的加密文本。我认为,通过自定义IV,无论在哪里,它都会导致一致的加密。现在,它在go游乐场上的结果与在https://repl.it/languages/go上的结果不同
是否有可能产生一致的加密,或者会因为内部实现(如加密盐等)而始终不同。
另外,IV到底是什么,我仍然很困惑。医生并没有真正解释它是什么
发布于 2017-03-14 03:39:56
我知道为什么它每次都会生成不同的密文。IV是使用以下语句随机化的
if _, err := io.ReadFull(rand.Reader, iv); err != nil {
panic(err)
}删除它将保持IV恒定,并且它将在任何机器上生成相同密钥和IV的相同加密
https://stackoverflow.com/questions/42707668
复制相似问题