当前位置: 首页 > 知识库问答 >
问题:

Nodejs中的AES-256-GCM

彭畅
2023-03-14
salt = crypto.randomBytes(64)
crypto.createCipheriv('aes-256-gcm', key, iv)
tag = cipher.getAuthTag();

tag到底是什么意思?我们为什么需要它?

共有1个答案

冯星剑
2023-03-14

salt的作用是确保使用相同密钥对相同数据进行两次加密不会产生相同的加密数据。

对于每次加密,它应该是不同的随机值。由于它不需要是秘密的,它可以是加密的前缀,所以解密功能将使它可用。

想象一下每天发送的一条信息是“买进”还是“卖出”,这条信息的含义就会变得很明显。

 类似资料:
  • 这是一个错误: 1.JS

  • 问题内容: 这是我在Node.js中拥有的: 返回: 这就是我在Go中所拥有的: 最终返回 许多Go代码都来自https://gist.github.com/manishtpatel/8222606 我也尝试过此方法:如何在golang中解密在nodejs中加密的AES256位密码?(在这种情况下,无需进行一些修改),但会抛出错误 这是我尝试的代码: 我搜索了很多东西,但似乎无法弄清楚。 我究竟做

  • 问题内容: 我正在尝试编写一个简单的Java程序,该程序将使用加密纯文本。有上课: 有可能的用法: 我的输出是,但是执行此命令时: 我得到的东西与Java程序()有所不同。可悲的是,我不知道为什么结果不一样,因为我使用相同的算法和相同的键和iv。这是否意味着我的Java程序无法正常运行?任何帮助,将不胜感激。 问题答案: 两种方法都可以正常工作,但是您正在加密不同的事物。 此处的字符串语法()在字

  • 这是我在Node.js: 返回: 这就是我的围棋: 最终返回

  • 我希望有帮助,因为我不知道为什么我的AES-GCM实现中断了文件编码。 我有一个API使用1函数用AES-256-GCM加密/解密。(key=32个随机字节的缓冲区) 下面是函数: 使用这段代码,我对结果进行加密并写入文件: 最后,我解密并将内容写入一个文件:

  • 我在Erlang中加密AES 256位CBC然后用c代码解密它时遇到了一个问题。而加密/解密在Erlang和C中有效,但不能从一个到另一个。 和 c 代码 我得到的错误是 当我在Erlang中解密时,它可以正常工作,当我在C中加密时,它也可以使用相同的Key和IV。它是否是密码模式不匹配。虽然在我看来是正确的。任何指针都会非常有用。谢谢。 我算出,同样的数据我用C加密和解密,然后进行十六进制转储。