Computer >> Máy Tính >  >> Lập trình >> Javascript

Phương thức crypto.createVerify () trong Node.js

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