Module de base

hachage du module

Le module de hachage est principalement utilisé pour implémenter des algorithmes de résumé de message et constitue un sous-module très important dans l'implémentation d'algorithmes de chiffrement. Dans le même temps, l’algorithme de résumé de message constitue également la base de nombreux algorithmes de chiffrement.

Avant d'utiliser hashun sous-module, vous devez require('hash');charger le module avec .

Dans hashle module, il comprend principalement les classes suivantes Digest, Hmac. Parmi eux, Digestla classe est utilisée pour calculer l'algorithme de résumé du message, et Hmacla classe est utilisée pour calculer le message de hachage à clé.

Voici un exemple de code simple utilisant 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);

Dans l'exemple de code ci-dessus, nous initialisons d'abord hash.digest([hash.MD5](hash.md#MD5))un Digestobjet avec MD5le modèle en utilisant . Nous utilisons ensuite update()la méthode pour ajouter les données requises pour le calcul du digest à l'objet Digest. Ensuite, nous utilisons digest()la méthode pour calculer le résultat récapitulatif et renvoyer le codage spécifié par le paramètre (le codage hexadécimal est utilisé ici). Enfin, les résultats récapitulatifs calculés sont affichés.

En MD5plus de , Digestla classe prend également en charge d'autres algorithmes de synthèse, tels que SHA-1, SHA-256, SHA-512etc. Lors de son utilisation, vous devez md5modifier les paramètres en fonction de l'algorithme de résumé correspondant.

fonction statique

digest

Crée un opérande Information Digest basé sur l’identifiant d’algorithme spécifié.

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

Paramètres d'appel :

  • algo: Entier, spécifiez l'algorithme d'opération de résumé
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

md5

Créer un opérande de résumé de message MD5

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

sha1

Créer un opérande de résumé de message SHA1

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

sha224

Créer un opérande de résumé de message SHA224

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

sha256

Créer un opérande de résumé de message SHA256

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

sha384

Créer un opérande de résumé de message SHA384

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

sha512

Créer un opérande de résumé de message SHA512

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

ripemd160

Créer un opérande de résumé de message RIPEMD160

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

sm3

Créer un opérande de résumé de message SM3

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

Créez un opérande de résumé de message SM3 et prétraitez-le

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

Paramètres d'appel :

  • pubKey:PKey, clé publique de signature
  • id: Chaîne, identifiant de signature
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

sha3_256

Créer un opérande de résumé de message SHA3_256

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

sha3_384

Créer un opérande de résumé de message SHA3_384

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

sha3_512

Créer un opérande de résumé de message SHA3_512

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

shake128

Créer un opérande de résumé de message SHAKE128

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

shake256

Créer un opérande de résumé de message SHAKE256

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

keccak256

Créer un opérande de résumé de message KECCAK256

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

keccak384

Créer un opérande de résumé de message KECCAK384

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

keccak512

Créer un opérande de résumé de message KECCAK512

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

blake2s

Créer un opérande de résumé de message BLAKE2S

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

blake2b

Créer un opérande de résumé de message BLAKE2B

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

blake2sp

Créer un opérande de résumé de message BLAKE2SP

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

blake2bp

Créer un opérande de résumé de message BLAKE2BP

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

Paramètres d'appel :

  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac

Crée un opérande de signature de résumé de message basé sur l'identifiant d'algorithme spécifié.

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

Paramètres d'appel :

  • algo: Entier, spécifiez l'algorithme d'opération de résumé
  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_md5

Créer un opérande de signature de résumé de message MD5

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_sha1

Créer un opérande de signature de résumé de message SHA1

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_sha224

Créer un opérande de signature de résumé de message SHA224

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_sha256

Créer un opérande de signature de résumé de message SHA256

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_sha384

Créer un opérande de signature de résumé de message SHA384

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_sha512

Créer un opérande de signature de résumé de message SHA512

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_ripemd160

Créer un objet d'opération de signature de résumé de message RIPEMD160

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_sm3

Créer un opérande de signature de résumé de message SM3

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

Créer un objet d'opération de signature de résumé de message SM3 et effectuer un prétraitement

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

Paramètres d'appel :

  • pubKey:PKey, clé publique de signature
  • id: Chaîne, identifiant de signature
  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_sha3_256

Créer un opérande de signature de résumé de message SHA3_256

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_sha3_384

Créer un opérande de signature de résumé de message SHA3_384

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_shake128

Créer un objet d'opération de signature de résumé de message SHAKE128

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_shake256

Créer un objet d'opération de signature de résumé de message SHAKE256

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_sha3_512

Créer un opérande de signature de résumé de message SHA3_512

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_keccak256

Créer un opérande de signature de résumé de message KECCAK256

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_keccak384

Créer un opérande de signature de résumé de message KECCAK384

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_keccak512

Créer un opérande de signature de résumé de message KECCAK512

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_blake2s

Créer un objet d'opération de signature de résumé de message BLAKE2S

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_blake2b

Créer un objet d'opération de signature de résumé de message BLAKE2B

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_blake2sp

Créer un objet d'opération de signature de résumé de message BLAKE2SP

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

hmac_blake2bp

Créer un objet d'opération de signature de résumé de message BLAKE2BP

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

Paramètres d'appel :

  • key:Buffer, clé de signature binaire
  • data:Buffer, créez des données binaires qui sont mises à jour en même temps. La valeur par défaut est null et les données ne sont pas mises à jour.

Résultats de retour :

  • Digest, renvoie l'objet récapitulatif des informations construit

constante

MD5

Constante d'identification de l'algorithme de résumé de message MD5

1
const hash.MD5 = 1;

SHA1

Constante d'identification de l'algorithme de résumé de message SHA1

1
const hash.SHA1 = 2;

SHA224

Constante d'identification de l'algorithme de résumé de message SHA224

1
const hash.SHA224 = 3;

SHA256

Constante d'identification de l'algorithme de résumé de message SHA256

1
const hash.SHA256 = 4;

SHA384

Constante d'identification de l'algorithme de résumé de message SHA384

1
const hash.SHA384 = 5;

SHA512

Constante d'identification de l'algorithme de résumé de message SHA512

1
const hash.SHA512 = 6;

RIPEMD160

Constante d'identification de l'algorithme de synthèse d'informations RIPEMD160

1
const hash.RIPEMD160 = 7;

SM3

Constantes d'identification de l'algorithme de résumé de message SM3

1
const hash.SM3 = 8;

SHA3_256

Constante d'identification de l'algorithme de résumé de message SHA3_256

1
const hash.SHA3_256 = 9;

SHA3_384

Constante d'identification de l'algorithme de résumé de message SHA3_384

1
const hash.SHA3_384 = 10;

SHA3_512

Constante d'identification de l'algorithme de résumé de message SHA3_512

1
const hash.SHA3_512 = 11;

SHAKE128

Constante d'identification de l'algorithme de résumé de message SHAKE128

1
const hash.SHAKE128 = 12;

SHAKE256

Constante d'identification de l'algorithme de résumé de message SHAKE256

1
const hash.SHAKE256 = 13;

KECCAK256

KECCCAK256 Constante d'identification de l'algorithme de résumé d'informations

1
const hash.KECCAK256 = 14;

KECCAK384

KECCCAK384 Constante d'identification de l'algorithme de résumé d'informations

1
const hash.KECCAK384 = 15;

KECCAK512

KECCCAK512 Constante d'identification de l'algorithme de résumé d'informations

1
const hash.KECCAK512 = 16;

BLAKE2S

Constantes d'identification de l'algorithme de résumé de message BLAKE2S

1
const hash.BLAKE2S = 17;

BLAKE2B

Constantes d'identification de l'algorithme de résumé de message BLAKE2B

1
const hash.BLAKE2B = 18;

BLAKE2SP

Constantes d'identification de l'algorithme de résumé de message BLAKE2SP

1
const hash.BLAKE2SP = 19;

BLAKE2BP

Constante d'identification de l'algorithme de résumé de message BLAKE2BP

1
const hash.BLAKE2BP = 20;