Node.js 中的 crypto.createVerify() 方法
该会创建并返回一个使用通过算法的参数验证对象。可以使用,来获取所有可用签名算法的名称。您可以仅在某些情况下使用签名算法的名称(例如“RHA-SHA256”)而不是摘要算法来创建验证实例。crypto.createVerify()crypto.getHashes()
语法
crypto.createVerify(algorithm, [options])
参数
上述参数描述如下 -
algorithm - 在创建验证对象/实例时,它需要输入要使用的算法名称。
options – 这是一个可选参数,可用于控制流行为。
示例
创建一个具有名称的文件 -createVerify.js并复制以下代码片段。创建文件后,使用以下命令运行此代码,如下例所示 -
node createVerify.js
创建验证.js
//Node.jsprogram 来演示 createVerify() 方法的使用输出结果// 导入加密模块
const crypto = require('crypto');
// 使用输入算法创建验证对象
const verify = crypto.createVerify('SHA256');
// 返回验证对象
console.log(verify);
C:\home\node>> node createVerify.jsVerify {
_handle: {},
_writableState:
WritableState {
objectMode: false,
highWaterMark: 16384,
finalCalled: false,
needDrain: false,
ending: false,
ended: false,
finished: false,
destroyed: false,
decodeStrings: true,
defaultEncoding: 'utf8',
length: 0,
writing: false,
corked: 0,
sync: true,
bufferProcessing: false,
onwrite: [Function: bound onwrite],
writecb: null,
writelen: 0,
bufferedRequest: null,
lastBufferedRequest: null,
pendingcb: 0,
prefinished: false,
errorEmitted: false,
emitClose: true,
autoDestroy: false,
bufferedRequestCount: 0,
corkedRequestsFree:
{ next: null,
entry: null,
finish: [Function: bound onCorkedFinish] } },
writable: true,
_events: [Object: null prototype] {},
_eventsCount: 0,
_maxListeners: undefined }
示例
让我们再看一个例子。
//Node.jsprogram 来演示 createVerify() 方法的使用输出结果// 导入加密模块
const crypto = require('crypto');
// 从 SHA256 算法创建验证对象
const verify = crypto.createVerify('SHA256');
// 写入以下数据进行签名和验证
verify.write('TutorialPoint');
// 结束方法
verify.end();
// 开始执行公钥
const l1 = "-----BEGIN PUBLIC KEY-----\n"
// 加密数据
const l2 = "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEXIvPbzLjaPLd8jgiv1TL/X8PXpJNgDkGRj9U9Lcx1
yKURpQFVavcMkfWyO8r7JlZNMax0JKfLZUM1IePRjHlFw=="
// 完成公钥执行
const l3 = "\n-----END PUBLIC KEY-----"
// 连接所有公钥
const publicKey = l1 + l2 + l3
// 将被验证的签名
const signature = "MEYCIQCPfWhpzxMqu3gZWflBm5V0aetgb2/S+SGyGcElaOjgdgIhALaD4lbxVwa8HUUBFOLz+CGvI
ioDkf9oihSnXHCqh8yV";
// 如果签名被验证,则打印为真,否则为假
console.log(verify.verify(publicKey, signature));
C:\home\node>> node createVerify.jsfalse
以上是 Node.js 中的 crypto.createVerify() 方法 的全部内容, 来源链接: utcz.com/z/322735.html