项目中前后端使用了AES-GCM加密方式,求助怎么在预处理脚本中实现
const crypto = require('crypto'); // 密钥和初始化向量(IV) const key = crypto.randomBytes(32); // AES-256,所以密钥长度为32字节 const iv = crypto.randomBytes(12); // GCM模式的IV通常推荐为12字节 // 要加密的数据 const plaintext = '这是一个需要加密的消息'; // 加密 const cipher = crypto.createCipheriv('aes-256-gcm', key, iv); let encrypted = cipher.update(plaintext, 'utf8', 'hex'); encrypted += cipher.final('hex'); const authTag = cipher.getAuthTag(); console.log('加密后的数据:', encrypted); console.log('认证标签:', authTag.toString('hex')); // 解密 const decipher = crypto.createDecipheriv('aes-256-gcm', key, iv); decipher.setAuthTag(authTag); let decrypted = decipher.update(encrypted, 'hex', 'utf8'); decrypted += decipher.final('utf8'); console.log('解密后的数据:', decrypted);
可以试一下
可是引用node的依赖吗 ,require('crypto');就报错了
我们好像没有这个加密,这个是我问的chat,可能不支持;使用内置 JS 类库 | Apipost支持的加密都在这里了
我们好像没有这个加密,这个是我问的chat,可能不支持;使用内置 JS 类库 | Apipost支持的加密都在这里了
最终实现:通过前置处理调用其他接口返回了加密串