Módulo base del módulo

Módulo de cifrado

Módulo de algoritmo de cifrado

Cómo utilizar:

1
var crypto = require('crypto');

Objeto

Cipher

Constructor de Cipher , ver Cipher

1
Cipher crypto.Cipher;

PKey

PKey constructor, ver PKey

1
PKey crypto.PKey;

X509Cert

X509Cert constructor, ver X509Cert

1
X509Cert crypto.X509Cert;

X509Crl

Constructor X509Crl , ver X509Crl

1
X509Crl crypto.X509Crl;

X509Req

Constructor X509Req , ver X509Req

1
X509Req crypto.X509Req;

Función estática

createHash

Crear un objeto de resumen de mensaje basado en el nombre del algoritmo dado

1
static Digest crypto.createHash(String algo);

Parámetros de llamada:

  • algo : String, el algoritmo que especifica el objeto de resumen del mensaje

Devuelve el resultado:

  • Digest , devuelve un objeto de resumen de mensaje

createHmac

Crear un objeto de resumen de mensaje hmac basado en el nombre del algoritmo dado

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

Parámetros de llamada:

  • algo : String, el algoritmo que especifica el objeto de resumen del mensaje
  • key : Buffer , clave de firma binaria

Devuelve el resultado:

  • Digest , devuelve un objeto de resumen de mensaje

loadPKey

Cargue un archivo de clave en formato PEM / DER

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

Parámetros de llamada:

  • filename : String, el nombre del archivo clave
  • password : cadena, contraseña de descifrado

Devuelve el resultado:

  • PKey , devuelve el objeto que contiene la clave

loadCert

Cargue un certificado en formato CRT / PEM / DER / TXT, que se puede llamar varias veces

1
static X509Cert crypto.loadCert(String filename);

Parámetros de llamada:

  • filename : Cadena, nombre del archivo de certificado

Devuelve el resultado:

  • X509Cert , devuelve un objeto que contiene el certificado

loadFile carga los certificados de mozilla, txt, que se pueden descargar y usar en http


loadCrl

Cargue un certificado de revocación en formato PEM / DER, que se puede llamar varias veces

1
static X509Crl crypto.loadCrl(String filename);

Parámetros de llamada:

  • filename : String, el nombre del archivo del certificado de revocación

Devuelve el resultado:

  • X509Crl , devuelve un objeto que contiene el certificado revocado

loadReq

Cargue una solicitud de certificado en formato PEM / DER, que se puede llamar varias veces

1
static X509Req crypto.loadReq(String filename);

Parámetros de llamada:

  • filename : Cadena, nombre del archivo de solicitud de certificado

Devuelve el resultado:

  • X509Req , devuelve un objeto que contiene el certificado solicitado

randomBytes

Genere un número aleatorio de tamaño especificado, use el generador de havege

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

Parámetros de llamada:

  • size : entero, especifique el size número aleatorio generado

Devuelve el resultado:

  • Buffer , devuelve el número aleatorio generado

simpleRandomBytes

Genere números aleatorios de baja intensidad de un tamaño específico, utilizando un algoritmo rápido

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

Parámetros de llamada:

  • size : entero, especifique el size número aleatorio generado

Devuelve el resultado:

  • Buffer , devuelve el número aleatorio generado

pseudoRandomBytes

Genere un número pseudoaleatorio del tamaño especificado, utilizando el generador de entropía

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

Parámetros de llamada:

  • size : entero, especifique el size número aleatorio generado

Devuelve el resultado:

  • Buffer , devuelve el número aleatorio generado

randomArt

Generar una imagen de personaje visual de los datos dados.

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

Parámetros de llamada:

  • data : Buffer , especifica los datos que se mostrarán
  • title : String, el título de la imagen de caracteres especificada, los caracteres multibyte causarán errores de ancho
  • size : entero, tamaño de imagen del personaje

Devuelve el resultado:

  • String , devuelve la imagen de cadena visual generada

pbkdf1

Genere la clave binaria requerida a partir de la contraseña de texto sin formato de acuerdo con pbkdf1

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

Parámetros de llamada:

  • password : Buffer , especifique la contraseña a usar
  • salt : Buffer , especifica la sal utilizada por hmac
  • iterations : Entero, especifique el número de iteraciones
  • size : entero, especifique el tamaño de la clave
  • algo : Entero, especifica el algoritmo hash a usar, vea el módulo hash para más detalles

Devuelve el resultado:

  • Buffer , devuelve la clave binaria generada

Genere la clave binaria requerida a partir de la contraseña de texto sin formato de acuerdo con pbkdf1

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

Parámetros de llamada:

  • password : Buffer , especifique la contraseña a usar
  • salt : Buffer , especifica la sal utilizada por hmac
  • iterations : Entero, especifique el número de iteraciones
  • size : entero, especifique el tamaño de la clave
  • algoName : String, especifica el algoritmo hash a usar, vea el módulo hash para más detalles

Devuelve el resultado:

  • Buffer , devuelve la clave binaria generada

pbkdf2

Genere la clave binaria requerida desde rfc2898 en función de la contraseña de texto sin cifrar

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

Parámetros de llamada:

  • password : Buffer , especifique la contraseña a usar
  • salt : Buffer , especifica la sal utilizada por hmac
  • iterations : Entero, especifique el número de iteraciones
  • size : entero, especifique el tamaño de la clave
  • algo : Entero, especifica el algoritmo hash a usar, vea el módulo hash para más detalles

Devuelve el resultado:

  • Buffer , devuelve la clave binaria generada

Genere la clave binaria requerida desde rfc2898 en función de la contraseña de texto sin cifrar

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

Parámetros de llamada:

  • password : Buffer , especifique la contraseña a usar
  • salt : Buffer , especifica la sal utilizada por hmac
  • iterations : Entero, especifique el número de iteraciones
  • size : entero, especifique el tamaño de la clave
  • algoName : String, especifica el algoritmo hash a usar, vea el módulo hash para más detalles

Devuelve el resultado:

  • Buffer , devuelve la clave binaria generada

Constante

AES

Especifique el algoritmo de cifrado simétrico AES, soporte 128, 192, clave de 256 bits, modo de trabajo de cifrado de bloque compatible con ECB, CBC, CFB128, CTR, GCM, CCM, XTS

1
const crypto.AES = 1;

CAMELLIA

Especifique el algoritmo de cifrado simétrico CAMELLIA, soporte 128, 192, clave de 256 bits, modo de trabajo de cifrado de bloque compatible con ECB, CBC, CFB128, CTR, GCM, CCM

1
const crypto.CAMELLIA = 2;

DES

Especifique el algoritmo de cifrado simétrico DES, soporte de clave de 64 bits, modo de cifrado de bloque compatible con ECB, CBC

1
const crypto.DES = 3;

DES_EDE

Especifique el algoritmo de cifrado simétrico DES-EDE, soporte de clave de 128 bits, modo de trabajo de cifrado de bloque compatible con ECB, CBC

1
const crypto.DES_EDE = 4;

DES_EDE3

Especifique el algoritmo de cifrado simétrico DES-EDE3, soporte de clave de 192 bits, modo de trabajo de cifrado de bloque compatible con ECB, CBC

1
const crypto.DES_EDE3 = 5;

BLOWFISH

Especifique el algoritmo de cifrado simétrico BLOWFISH, soporte de clave de 192 bits, modo de trabajo de cifrado de bloque compatible con ECB, CBC, CFB64, CTR

1
const crypto.BLOWFISH = 6;

ARC4

Especifique el algoritmo de cifrado simétrico ARC4, soporte 40, 56, 64, claves de 128 bits

1
const crypto.ARC4 = 7;

ARIA

Especifique el algoritmo de cifrado simétrico ARIA, soporte 128, 192, clave de 256 bits, modo de trabajo de cifrado de bloque compatible con ECB, CBC, CFB128, CTR, GCM, CCM

1
const crypto.ARIA = 8;

CHACHA20

Especifique el algoritmo de cifrado simétrico CHACHA20, soporte de clave de 256 bits, modo de cifrado de bloque compatible con POLY1305

1
const crypto.CHACHA20 = 9;

ECB

Especifique el modo de trabajo de cifrado de bloque compatible con ECB

1
const crypto.ECB = 1;

CBC

Especifique el modo de cifrado de bloque para admitir CBC

1
const crypto.CBC = 2;

CFB64

Especifique el modo de trabajo de cifrado de bloque para admitir CFB64

1
const crypto.CFB64 = 3;

CFB128

Especifique el modo de trabajo de cifrado de bloque para admitir CFB128

1
const crypto.CFB128 = 4;

OFB

Especifique el modo de trabajo de cifrado de bloque compatible con OFB

1
const crypto.OFB = 5;

CTR

Especifique el modo de cifrado de bloque para admitir CTR

1
const crypto.CTR = 6;

GCM

Especifique el modo de trabajo de cifrado de bloque compatible con GCM

1
const crypto.GCM = 7;

STREAM

Especificación del modo de cifrado de flujo

1
const crypto.STREAM = 8;

CCM

Especifique el modo de trabajo de cifrado de bloque compatible con CCM

1
const crypto.CCM = 9;

XTS

Especifique el modo de trabajo de cifrado de bloque compatible con XTS

1
const crypto.XTS = 10;

POLY1305

Especifique el modo de trabajo de cifrado de bloque compatible con POLY1305

1
const crypto.POLY1305 = 11;

PKCS7

Especifique el modo de relleno como PKCS7

1
const crypto.PKCS7 = 0;

ONE_AND_ZEROS

Especifique el modo de relleno como ONE_AND_ZEROS

1
const crypto.ONE_AND_ZEROS = 1;

ZEROS_AND_LEN

Especifique el modo de relleno como ZEROS_AND_LEN

1
const crypto.ZEROS_AND_LEN = 2;

ZEROS

Especifique el modo de relleno como ZEROS

1
const crypto.ZEROS = 3;

NOPADDING

Especifique el modo de relleno como NOPADDING

1
const crypto.NOPADDING = 4;