Module module de base

Module crypto

Module d'algorithme de chiffrement

Instructions:

1
var crypto = require('crypto');

Objet

Cipher

Constructeur de Cipher , voir Cipher

1
Cipher crypto.Cipher;

PKey

Constructeur PKey , voir PKey

1
PKey crypto.PKey;

X509Cert

Constructeur X509Cert , voir X509Cert

1
X509Cert crypto.X509Cert;

X509Crl

Constructeur X509Crl , voir X509Crl

1
X509Crl crypto.X509Crl;

X509Req

Constructeur X509Req , voir X509Req

1
X509Req crypto.X509Req;

Fonction statique

createHash

Créer un objet de résumé d'informations basé sur le nom d'algorithme donné

1
static Digest crypto.createHash(String algo);

Paramètres d'appel:

  • algo : String, spécifie l'algorithme de l'objet de résumé d'informations

Résultat de retour:

  • Digest , renvoie l'objet de résumé d'informations

createHmac

Créer un objet de résumé d'informations hmac basé sur le nom d'algorithme donné

1 2
static Digest crypto.createHmac(String algo, Buffer key);

Paramètres d'appel:

  • algo : String, spécifie l'algorithme de l'objet de résumé d'informations
  • key : Buffer , clé de signature binaire

Résultat de retour:

  • Digest , renvoie l'objet de résumé d'informations

loadPKey

Charger un fichier clé au format PEM / DER

1 2
static PKey crypto.loadPKey(String filename, String password = "");

Paramètres d'appel:

  • filename : chaîne, nom du fichier de clé
  • password : chaîne, déchiffrer le mot de passe

Résultat de retour:

  • PKey , retourne un objet contenant la clé

loadCert

Charger un certificat au format CRT / PEM / DER / TXT, qui peut être appelé plusieurs fois

1
static X509Cert crypto.loadCert(String filename);

Paramètres d'appel:

  • filename : chaîne, nom du fichier de certificat

Résultat de retour:

  • X509Cert , retourne l'objet contenant le certificat

loadFile charge les certdata de Mozilla, txt, qui peuvent être téléchargés et utilisés à http


loadCrl

Charger un certificat de révocation au format PEM / DER, qui peut être appelé plusieurs fois

1
static X509Crl crypto.loadCrl(String filename);

Paramètres d'appel:

  • filename : String, le nom du fichier de certificat révoqué

Résultat de retour:

  • X509Crl , retourne l'objet contenant le certificat révoqué

loadReq

Charger une demande de certificat au format PEM / DER, qui peut être appelée plusieurs fois

1
static X509Req crypto.loadReq(String filename);

Paramètres d'appel:

  • filename : String, nom du fichier de demande de certificat

Résultat de retour:

  • X509Req , retourne l'objet contenant le certificat demandé

randomBytes

Générer des nombres aléatoires de taille spécifiée, utiliser le générateur de hasge

1
static Buffer crypto.randomBytes(Integer size) async;

Paramètres d'appel:

  • size : Integer, spécifiez la size du nombre aléatoire généré

Résultat de retour:

  • Buffer , renvoie le nombre aléatoire généré

simpleRandomBytes

Générer un nombre aléatoire de faible intensité d'une taille spécifiée, à l'aide d'un algorithme rapide

1
static Buffer crypto.simpleRandomBytes(Integer size) async;

Paramètres d'appel:

  • size : Integer, spécifiez la size du nombre aléatoire généré

Résultat de retour:

  • Buffer , renvoie le nombre aléatoire généré

pseudoRandomBytes

Générer des nombres pseudo-aléatoires de taille spécifiée, à l'aide du générateur d'entropie

1
static Buffer crypto.pseudoRandomBytes(Integer size) async;

Paramètres d'appel:

  • size : Integer, spécifiez la size du nombre aléatoire généré

Résultat de retour:

  • Buffer , renvoie le nombre aléatoire généré

randomArt

Générer une image de caractère visuel des données données

1 2 3
static String crypto.randomArt(Buffer data, String title, Integer size = 8);

Paramètres d'appel:

  • data : Buffer , spécifiez les données à afficher
  • title : Chaîne, spécifie le titre de l'image du caractère, les caractères multi-octets provoqueront une erreur de largeur
  • size : Integer, taille de l'image des caractères

Résultat de retour:

  • String , renvoie l'image de chaîne visuelle générée

pbkdf1

Selon pbkdf1, générez la clé binaire requise en fonction du mot de passe en clair

1 2 3 4 5
static Buffer crypto.pbkdf1(Buffer password, Buffer salt, Integer iterations, Integer size, Integer algo) async;

Paramètres d'appel:

  • password : Buffer , spécifiez le mot de passe utilisé
  • salt : Buffer , spécifiez le sel utilisé par hmac
  • iterations : Entier, spécifiez le nombre d'itérations
  • size : Integer, spécifiez la taille de la clé
  • algo : Integer, spécifiez l'algorithme de hash à utiliser, voir le module de hash pour plus de détails

Résultat de retour:

  • Buffer , retourne la clé binaire générée

Selon pbkdf1, générez la clé binaire requise en fonction du mot de passe en clair

1 2 3 4 5
static Buffer crypto.pbkdf1(Buffer password, Buffer salt, Integer iterations, Integer size, String algoName) async;

Paramètres d'appel:

  • password : Buffer , spécifiez le mot de passe utilisé
  • salt : Buffer , spécifiez le sel utilisé par hmac
  • iterations : Entier, spécifiez le nombre d'itérations
  • size : Integer, spécifiez la taille de la clé
  • algoName : String, spécifiez l'algorithme de hash à utiliser, voir le module de hash pour plus de détails

Résultat de retour:

  • Buffer , retourne la clé binaire générée

pbkdf2

Selon rfc2898, générez la clé binaire requise en fonction du mot de passe en clair

1 2 3 4 5
static Buffer crypto.pbkdf2(Buffer password, Buffer salt, Integer iterations, Integer size, Integer algo) async;

Paramètres d'appel:

  • password : Buffer , spécifiez le mot de passe utilisé
  • salt : Buffer , spécifiez le sel utilisé par hmac
  • iterations : Entier, spécifiez le nombre d'itérations
  • size : Integer, spécifiez la taille de la clé
  • algo : Integer, spécifiez l'algorithme de hash à utiliser, voir le module de hash pour plus de détails

Résultat de retour:

  • Buffer , retourne la clé binaire générée

Selon rfc2898, générez la clé binaire requise en fonction du mot de passe en clair

1 2 3 4 5
static Buffer crypto.pbkdf2(Buffer password, Buffer salt, Integer iterations, Integer size, String algoName) async;

Paramètres d'appel:

  • password : Buffer , spécifiez le mot de passe utilisé
  • salt : Buffer , spécifiez le sel utilisé par hmac
  • iterations : Entier, spécifiez le nombre d'itérations
  • size : Integer, spécifiez la taille de la clé
  • algoName : String, spécifiez l'algorithme de hash à utiliser, voir le module de hash pour plus de détails

Résultat de retour:

  • Buffer , retourne la clé binaire générée

constant

AES

Spécifier l'algorithme de cryptage symétrique AES, prendre en charge la clé 128, 192, 256 bits, le mode de travail de chiffrement par bloc prend en charge ECB, CBC, CFB128, CTR, GCM, CCM, XTS

1
const crypto.AES = 1;

CAMELLIA

Spécifiez l'algorithme de chiffrement symétrique CAMELLIA, prend en charge les clés 128, 192, 256 bits, le mode de travail de chiffrement par bloc prend en charge ECB, CBC, CFB128, CTR, GCM, CCM

1
const crypto.CAMELLIA = 2;

DES

Spécifiez l'algorithme de chiffrement symétrique DES, prend en charge la clé 64 bits, le mode de travail de chiffrement par bloc prend en charge ECB, CBC

1
const crypto.DES = 3;

DES_EDE

Spécifiez l'algorithme de cryptage symétrique DES-EDE, prend en charge la clé de 128 bits, le mode de travail de chiffrement par bloc prend en charge ECB, CBC

1
const crypto.DES_EDE = 4;

DES_EDE3

Spécifiez l'algorithme de cryptage symétrique DES-EDE3, prend en charge la clé 192 bits, le mode de travail de chiffrement par bloc prend en charge ECB, CBC

1
const crypto.DES_EDE3 = 5;

BLOWFISH

Spécifiez l'algorithme de cryptage symétrique BLOWFISH, prend en charge la clé 192 bits, le mode de travail de chiffrement par bloc prend en charge ECB, CBC, CFB64, CTR

1
const crypto.BLOWFISH = 6;

ARC4

Spécifier l'algorithme de cryptage symétrique ARC4, prendre en charge les clés 40, 56, 64, 128 bits

1
const crypto.ARC4 = 7;

ARIA

Spécifier l'algorithme de cryptage symétrique ARIA, prendre en charge les clés 128, 192, 256 bits, le mode de travail de chiffrement par bloc prend en charge ECB, CBC, CFB128, CTR, GCM, CCM

1
const crypto.ARIA = 8;

CHACHA20

Spécifiez l'algorithme de cryptage symétrique CHACHA20, prend en charge la clé de 256 bits, le mode de travail de chiffrement par bloc prend en charge POLY1305

1
const crypto.CHACHA20 = 9;

SM4

Spécifiez l'algorithme de chiffrement symétrique SM4, le mode de fonctionnement du chiffrement par bloc prend en charge ECB, CBC

1
const crypto.SM4 = 10;

ECB

Le mode de fonctionnement de chiffrement par bloc désigné prend en charge ECB

1
const crypto.ECB = 1;

CBC

Le mode de fonctionnement de chiffrement par bloc désigné prend en charge CBC

1
const crypto.CBC = 2;

CFB64

Le mode de fonctionnement de chiffrement par bloc désigné prend en charge CFB64

1
const crypto.CFB64 = 3;

CFB128

Le mode de fonctionnement de chiffrement par bloc désigné prend en charge CFB128

1
const crypto.CFB128 = 4;

OFB

Le mode de fonctionnement de chiffrement par bloc désigné prend en charge OFB

1
const crypto.OFB = 5;

CTR

Le mode de fonctionnement de chiffrement par bloc désigné prend en charge le CTR

1
const crypto.CTR = 6;

GCM

Le mode de fonctionnement de chiffrement par bloc désigné prend en charge GCM

1
const crypto.GCM = 7;

STREAM

Spécifier le mode de chiffrement du flux

1
const crypto.STREAM = 8;

CCM

Le mode de fonctionnement de chiffrement par bloc désigné prend en charge CCM

1
const crypto.CCM = 9;

XTS

Le mode de fonctionnement de chiffrement par blocs désigné prend en charge XTS

1
const crypto.XTS = 10;

POLY1305

Le mode de fonctionnement de chiffrement par bloc désigné prend en charge POLY1305

1
const crypto.POLY1305 = 11;

PKCS7

Spécifiez le mode de remplissage PKCS7

1
const crypto.PKCS7 = 0;

ONE_AND_ZEROS

Spécifiez le mode de remplissage sur ONE_AND_ZEROS

1
const crypto.ONE_AND_ZEROS = 1;

ZEROS_AND_LEN

Spécifiez le mode de remplissage comme ZEROS_AND_LEN

1
const crypto.ZEROS_AND_LEN = 2;

ZEROS

Spécifiez le mode de remplissage comme ZEROS

1
const crypto.ZEROS = 3;

NOPADDING

Spécifiez le mode de remplissage comme NOPADDING

1
const crypto.NOPADDING = 4;