Modulo modulo base

hash del modulo

Il modulo hash viene utilizzato principalmente per implementare algoritmi di digest dei messaggi ed è un sottomodulo molto importante nell'implementazione degli algoritmi di crittografia. Allo stesso tempo, l’algoritmo digest del messaggio è anche la base di molti algoritmi di crittografia.

Prima di utilizzare hashun sottomodulo, è necessario require('hash');caricare il modulo con .

Nel hashmodulo include principalmente le seguenti classi Digest, Hmac. Tra questi, Digestla classe viene utilizzata per calcolare l'algoritmo digest del messaggio e Hmacla classe viene utilizzata per calcolare il messaggio hash con chiave.

Ecco un semplice esempio di codice che utilizza Digestla classe Compute MD5summary:

1 2 3 4 5 6 7 8 9 10 11 12
const hash = require('hash'); // create a MD5 digest object const digest = hash.digest(hash.MD5); // update digest with data const data = 'hello, world'; digest.update(data); // output result in hex const result = digest.digest('hex'); console.log(result);

Nel codice di esempio sopra, inizializziamo prima hash.digest([hash.MD5](hash.md#MD5))un Digestoggetto MD5nel pattern utilizzando . Utilizziamo quindi update()il metodo per aggiungere i dati richiesti per il calcolo del digest all'oggetto Digest. Successivamente, utilizziamo digest()il metodo per calcolare il risultato di riepilogo e restituire la codifica specificata dal parametro (qui viene utilizzata la codifica esadecimale). Infine, vengono emessi i risultati di riepilogo calcolati.

Oltre MD5a , Digestla classe supporta anche altri algoritmi di riepilogo, come SHA-1, SHA-256, SHA-512ecc. Quando lo si utilizza, è necessario md5modificare i parametri nell'algoritmo di riepilogo corrispondente.

funzione statica

digest

Crea un operando Information Digest in base all'identificatore dell'algoritmo specificato.

1 2
static Digest hash.digest(Integer algo, Buffer data = NULL);

Parametri di chiamata:

  • algo: numero intero, specifica l'algoritmo dell'operazione digest
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

md5

Creare un operando digest del messaggio MD5

1
static Digest hash.md5(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

sha1

Crea un operando digest del messaggio SHA1

1
static Digest hash.sha1(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

sha224

Crea un operando digest del messaggio SHA224

1
static Digest hash.sha224(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

sha256

Crea un operando digest del messaggio SHA256

1
static Digest hash.sha256(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

sha384

Crea un operando digest del messaggio SHA384

1
static Digest hash.sha384(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

sha512

Crea un operando digest del messaggio SHA512

1
static Digest hash.sha512(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

ripemd160

Creare un operando digest del messaggio RIPEMD160

1
static Digest hash.ripemd160(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

sm3

Creare un operando digest del messaggio SM3

1
static Digest hash.sm3(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

Creare un operando digest del messaggio SM3 e preelaborarlo

1 2 3
static Digest hash.sm3(PKey pubKey, String id, Buffer data = NULL);

Parametri di chiamata:

  • pubKey:PKey, chiave pubblica della firma
  • id: stringa, ID firma
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

sha3_256

Crea un operando digest del messaggio SHA3_256

1
static Digest hash.sha3_256(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

sha3_384

Crea un operando digest del messaggio SHA3_384

1
static Digest hash.sha3_384(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

sha3_512

Crea un operando digest del messaggio SHA3_512

1
static Digest hash.sha3_512(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

shake128

Crea un operando digest del messaggio SHAKE128

1
static Digest hash.shake128(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

shake256

Crea un operando digest del messaggio SHAKE256

1
static Digest hash.shake256(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

keccak256

Creare un operando digest del messaggio KECCAK256

1
static Digest hash.keccak256(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

keccak384

Creare un operando digest del messaggio KECCAK384

1
static Digest hash.keccak384(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

keccak512

Creare un operando digest del messaggio KECCAK512

1
static Digest hash.keccak512(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

blake2s

创建一个 BLAKE2S 信息摘要运算对象

1
static Digest hash.blake2s(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

blake2b

Creare un operando digest del messaggio BLAKE2B

1
static Digest hash.blake2b(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

blake2sp

Creare un operando digest del messaggio BLAKE2SP

1
static Digest hash.blake2sp(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

blake2bp

Creare un operando digest del messaggio BLAKE2BP

1
static Digest hash.blake2bp(Buffer data = NULL);

Parametri di chiamata:

  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac

Crea un operando della firma del digest del messaggio in base all'identificatore dell'algoritmo specificato.

1 2 3
static Digest hash.hmac(Integer algo, Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • algo: numero intero, specifica l'algoritmo dell'operazione digest
  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_md5

Creare un operando della firma del digest del messaggio MD5

1 2
static Digest hash.hmac_md5(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_sha1

Creare un operando della firma del digest del messaggio SHA1

1 2
static Digest hash.hmac_sha1(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_sha224

Creare un operando della firma del digest del messaggio SHA224

1 2
static Digest hash.hmac_sha224(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_sha256

Creare un operando della firma del digest del messaggio SHA256

1 2
static Digest hash.hmac_sha256(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_sha384

Creare un operando della firma del digest del messaggio SHA384

1 2
static Digest hash.hmac_sha384(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_sha512

Creare un operando della firma del digest del messaggio SHA512

1 2
static Digest hash.hmac_sha512(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_ripemd160

Creare un oggetto operazione firma digest messaggio RIPEMD160

1 2
static Digest hash.hmac_ripemd160(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_sm3

Creare un operando della firma del digest del messaggio SM3

1 2
static Digest hash.hmac_sm3(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

Creare un oggetto operazione firma digest del messaggio SM3 ed eseguire la preelaborazione

1 2 3 4
static Digest hash.hmac_sm3(PKey pubKey, String id, Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • pubKey:PKey, chiave pubblica della firma
  • id: stringa, ID firma
  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_sha3_256

Creare un operando della firma del digest del messaggio SHA3_256

1 2
static Digest hash.hmac_sha3_256(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_sha3_384

Creare un operando della firma del digest del messaggio SHA3_384

1 2
static Digest hash.hmac_sha3_384(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_shake128

Creare un oggetto operazione firma digest messaggio SHAKE128

1 2
static Digest hash.hmac_shake128(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_shake256

Creare un oggetto operazione firma digest messaggio SHAKE256

1 2
static Digest hash.hmac_shake256(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_sha3_512

Creare un operando della firma del digest del messaggio SHA3_512

1 2
static Digest hash.hmac_sha3_512(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_keccak256

Creare un operando della firma del digest del messaggio KECCAK256

1 2
static Digest hash.hmac_keccak256(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_keccak384

Creare un operando della firma del digest del messaggio KECCAK384

1 2
static Digest hash.hmac_keccak384(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_keccak512

Creare un operando della firma del digest del messaggio KECCAK512

1 2
static Digest hash.hmac_keccak512(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_blake2s

Creare un oggetto operazione firma digest messaggio BLAKE2S

1 2
static Digest hash.hmac_blake2s(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_blake2b

Creare un oggetto operazione firma digest messaggio BLAKE2B

1 2
static Digest hash.hmac_blake2b(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_blake2sp

Creare un oggetto operazione firma digest messaggio BLAKE2SP

1 2
static Digest hash.hmac_blake2sp(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

hmac_blake2bp

Creare un oggetto operazione firma digest messaggio BLAKE2BP

1 2
static Digest hash.hmac_blake2bp(Buffer key, Buffer data = NULL);

Parametri di chiamata:

  • key:Buffer, chiave di firma binaria
  • data:Buffer, crea dati binari che vengono aggiornati contemporaneamente. Il valore predefinito è null e i dati non vengono aggiornati.

Risultati restituiti:

  • Digest, restituisce l'oggetto di riepilogo delle informazioni costruito

costante

MD5

Costante di identificazione dell'algoritmo di digest del messaggio MD5

1
const hash.MD5 = 1;

SHA1

Costante di identificazione dell'algoritmo digest del messaggio SHA1

1
const hash.SHA1 = 2;

SHA224

Costante di identificazione dell'algoritmo digest del messaggio SHA224

1
const hash.SHA224 = 3;

SHA256

Costante di identificazione dell'algoritmo digest del messaggio SHA256

1
const hash.SHA256 = 4;

SHA384

Costante di identificazione dell'algoritmo digest del messaggio SHA384

1
const hash.SHA384 = 5;

SHA512

Costante di identificazione dell'algoritmo digest del messaggio SHA512

1
const hash.SHA512 = 6;

RIPEMD160

RIPEMD160 Costante di identificazione dell'algoritmo di digest delle informazioni

1
const hash.RIPEMD160 = 7;

SM3

Costanti di identificazione dell'algoritmo di digest del messaggio SM3

1
const hash.SM3 = 8;

SHA3_256

Costante di identificazione dell'algoritmo digest del messaggio SHA3_256

1
const hash.SHA3_256 = 9;

SHA3_384

Costante di identificazione dell'algoritmo digest del messaggio SHA3_384

1
const hash.SHA3_384 = 10;

SHA3_512

Costante di identificazione dell'algoritmo digest del messaggio SHA3_512

1
const hash.SHA3_512 = 11;

SHAKE128

Costante di identificazione dell'algoritmo digest del messaggio SHAKE128

1
const hash.SHAKE128 = 12;

SHAKE256

Costante di identificazione dell'algoritmo digest del messaggio SHAKE256

1
const hash.SHAKE256 = 13;

KECCAK256

KECCAK256 Costante di identificazione dell'algoritmo di digest delle informazioni

1
const hash.KECCAK256 = 14;

KECCAK384

KECCAK384 Costante di identificazione dell'algoritmo di digest delle informazioni

1
const hash.KECCAK384 = 15;

KECCAK512

KECCAK512 Costante di identificazione dell'algoritmo di digest delle informazioni

1
const hash.KECCAK512 = 16;

BLAKE2S

Costanti di identificazione dell'algoritmo di digest del messaggio BLAKE2S

1
const hash.BLAKE2S = 17;

BLAKE2B

Costanti di identificazione dell'algoritmo di digest del messaggio BLAKE2B

1
const hash.BLAKE2B = 18;

BLAKE2SP

Costanti di identificazione dell'algoritmo di digest del messaggio BLAKE2SP

1
const hash.BLAKE2SP = 19;

BLAKE2BP

Costante di identificazione dell'algoritmo di digest del messaggio BLAKE2BP

1
const hash.BLAKE2BP = 20;