Crypto.createVerify () sẽ tạo và trả về một đối tượng xác minh sử dụng thuật toán đã truyền trong tham số. Người ta có thể sử dụng, crypto.getHashing () để lấy tên của tất cả các thuật toán ký có sẵn. Bạn có thể tạo phiên bản Xác minh bằng cách sử dụng tên của thuật toán chữ ký, chẳng hạn như 'RHA-SHA256' chỉ trong một số trường hợp, thay vì thuật toán thông báo.
Cú pháp
crypto.createVerify(algorithm, [options])
Tham số
Các thông số trên được mô tả như bên dưới -
-
thuật toán - Nó lấy đầu vào cho tên thuật toán được sử dụng trong khi tạo đối tượng / cá thể xác minh.
-
tùy chọn - Đây là một tham số tùy chọn có thể được sử dụng để kiểm soát hành vi của luồng.
Ví dụ
Tạo tệp với tên - createVerify.js và sao chép đoạn mã bên dưới. Sau khi tạo tệp, sử dụng lệnh sau để chạy mã này như được hiển thị trong ví dụ bên dưới -
node createVerify.js
createVerify.js
// Node.js program to demonstrate the use of createVerify() method // Importing the crypto module const crypto = require('crypto'); // Creating verify object with the input algorithm const verify = crypto.createVerify('SHA256'); // Returning the verify object console.log(verify);
Đầu ra
C:\home\node>> node createVerify.js Verify { _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 }
Ví dụ
Hãy xem thêm một ví dụ.
// Node.js program to demonstrate the use of createVerify() method // Importing the crypto module const crypto = require('crypto'); // Creating the verify object from SHA256 algo const verify = crypto.createVerify('SHA256'); // Writing the below data to be signed and verified verify.write('TutorialPoint'); // Ending the method verify.end(); // Beginning public key execution const l1 = "-----BEGIN PUBLIC KEY-----\n" // Encrypted data const l2 = "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEXIvPbzLjaPLd8jgiv1TL/X8PXpJNgDkGRj9U9Lcx1 yKURpQFVavcMkfWyO8r7JlZNMax0JKfLZUM1IePRjHlFw==" // Finishing public key execution const l3 = "\n-----END PUBLIC KEY-----" // concatenating all public keys const publicKey = l1 + l2 + l3 // Signature that will be verified const signature = "MEYCIQCPfWhpzxMqu3gZWflBm5V0aetgb2/S+SGyGcElaOjgdgIhALaD4lbxVwa8HUUBFOLz+CGvI ioDkf9oihSnXHCqh8yV"; // Prints true if signature is verified else false console.log(verify.verify(publicKey, signature));
Đầu ra
C:\home\node>> node createVerify.js false