211 次查看
crypto.getCiphers() 方法将返回一个包含所有受支持的密码算法名称的数组。crypto 包具有我们可以使用的非常多的密码算法列表。但最常用的密码算法是“AES – 高级加密标准”。语法crypto.getCiphers()参数由于它返回所有密码算法的列表。因此,它不需要任何输入。示例创建一个名为 getCipher.js 的文件,并将以下代码片段复制到其中。创建文件后,使用以下命令运行此代码,如以下示例所示:node getCipher.jsgetCipher.js 实时演示// 获取所有密码算法的 Node 演示程序 ... 阅读更多
1K+ 次查看
crypto.generateKeyPairSync() 可用于以同步方式生成指定类型的新的非对称密钥对。支持生成密钥对的类型为:RSA、DSA、EC、Ed25519、Ed448、X25519、X448 和 DH。当指定 publicKeyEncoding 或 privateKeyEncoding 时,该函数的行为类似于已对结果调用 keyObject.export,否则返回 keyObject 的相应部分。建议的公钥类型为“spki”,私钥类型为“pkcs8”。语法crypto.generateKeyPairSync(type, options)参数上述参数描述如下:type – 它保存需要生成密钥的字符串类型。支持的类型 ... 阅读更多
2K+ 次查看
crypto.generateKeyPair() 可用于生成指定类型的新的非对称密钥对。支持生成密钥对的类型为:RSA、DSA、EC、Ed25519、Ed448、X25519、X448 和 DH。当指定 publicKeyEncoding 或 privateKeyEncoding 时,该函数的行为类似于已对结果调用 keyObject.export,否则返回 keyObject 的相应部分。语法crypto.generateKeyPair(type, options, callback)参数上述参数描述如下:type – 它保存需要生成密钥的字符串类型。支持的类型为 - RSA、DSA、EC、Ed25519、Ed448、X25519、X448 和 DH。options – 它可以保存以下参数:modulusLength – ... 阅读更多
661 次查看
crypto.createVerify() 将创建并返回一个验证对象,该对象使用参数中传递的算法。可以使用 crypto.getHashes() 获取所有可用签名算法的名称。在某些情况下,您可以使用签名算法(如“RHA-SHA256”)的名称来创建验证实例,而不是摘要算法。语法crypto.createVerify(algorithm, [options])参数上述参数描述如下:algorithm – 它接收用于创建验证对象/实例的算法名称的输入。options – 这是一个可选参数,可用于控制流行为。示例创建 ... 阅读更多
271 次查看
crypto.createSign() 将创建并返回一个签名对象,该对象使用参数中传递的算法。可以使用 crypto.getHashes() 获取所有可用摘要算法的名称。在某些情况下,您可以使用签名算法(如“RHA-SHA256”)的名称来创建签名实例,而不是摘要算法。语法crypto.createSign(algorithm, [options])参数上述参数描述如下:algorithm – 它接收用于创建签名对象/实例的算法名称的输入。options – 这是一个可选参数,可用于控制流行为。示例创建 ... 阅读更多
361 次查看
crypto.createECDH() 用于创建椭圆曲线,也称为椭圆曲线 Diffie-Hellman,即 ECDH,它使用输入参数 curveName 预定义的曲线。您可以使用 crypto.getCurves 获取所有可用曲线名称的列表。此方法是“crypto”模块的一部分。语法crypto.createECDH(curveName)参数上述参数描述如下curveName – 它接收曲线名称的输入。此 curveName 将定义用于创建 ECDH 的预定义曲线。示例创建一个名为 createECDH.js 的文件,并将以下代码片段复制到其中。创建文件后,使用以下命令运行此代码,如以下示例所示: ... 阅读更多
89 次查看
crypto.createDiffieHellmanGroup() 用于创建 DiffieHellmanGroup。此方法也可以称为 crypto.getDiffieHellman 的别名。语法crypto.createDiffieHelmmanGroup(name)参数上述参数描述如下:name – 它接收组名称的输入。输入类型为“字符串”。示例创建一个名为 diffieHellmanGroup.js 的文件,并将以下代码片段复制到其中。创建文件后,使用以下命令运行此代码,如以下示例所示:node diffieHellmanGroup.jsdiffieHellmanGroup.js 实时演示// crypto.createDiffieHellmanGroup 演示示例 // 导入 crypto 模块 const crypto = require('crypto'); // 定义组名称 const name = 'modp1'; // 创建 DiffieHellman 组 ... 阅读更多
crypto.createCipheriv() 是“crypto”模块的编程接口。它将根据给定的算法、密钥、iv 和函数中传递的选项创建并返回 Decipher 对象。语法crypto.createDecipheriv(algorithm, key, iv, [options])参数上述参数描述如下:algorithm – 它接收用于创建密码的算法的输入。一些可能的值为:aes192、aes256 等。key – 它接收算法和 iv 使用的原始密钥的输入。可能的值可以是以下类型:字符串、缓冲区、TypedArray 或 DataView。它可以选择是 secret 类型的对象。iv – ... 阅读更多
4K+ 次查看
crypto.createCipheriv() 方法将首先创建然后返回密码对象,根据为给定密钥和授权因子 (iv) 传递的算法。语法crypto.createCipheriv(algorithm, key, iv, options)参数上述参数描述如下:algorithm – 它接收用于创建密码的算法的输入。一些可能的值为:aes192、aes256 等。key – 它接收算法和 iv 使用的原始密钥的输入。可能的值可以是以下类型:字符串、缓冲区、TypedArray 或 DataView。它可以选择是 secret 类型的对象。iv – 也称为初始化向量。这 ... 阅读更多
556 次查看
cipher.update() 用于根据给定的编码格式使用接收到的数据更新密码。它是 crypto 模块中 Cipher 类提供的内置方法之一。如果指定了输入编码,则 data 参数为字符串,否则 data 参数为缓冲区语法cipher.update(data, [inputEncoding], [outputEncoding])参数上述参数描述如下:data – 它接收作为输入传递的数据,以更新密码内容。inputEncoding – 它接收输入编码作为参数。可能的输入值为 hex、base64 等。outputEncoding – 它接收输出编码作为 ... 阅读更多