Módulo módulo básico

Cripto do módulo

Módulo de algoritmo de cifrado

Instrucións:

1
var crypto = require('crypto');

Obxecto

Cipher

Cipher Construtor, ver Cipher

1
Cipher crypto.Cipher;

PKey

PKey Construtor, ver PKey

1
PKey crypto.PKey;

X509Cert

X509Cert Construtor, ver X509Cert

1
X509Cert crypto.X509Cert;

X509Crl

X509Crl Construtor, ver X509Crl

1
X509Crl crypto.X509Crl;

X509Req

X509Req Construtor, ver X509Req

1
X509Req crypto.X509Req;

Función estática

createHash

Crea un obxecto de resumo de información baseado no nome do algoritmo dado

1
static Digest crypto.createHash(String algo);

Parámetros de chamada:

  • algo: Cadea, especifica o algoritmo do obxecto de resumo da mensaxe

Resultado de volta:

  • Digest, Devolver o obxecto resumo da información

createHmac

Crea un obxecto de resumo de información hmac baseado no nome do algoritmo dado

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

Parámetros de chamada:

  • algo: Cadea, especifica o algoritmo do obxecto de resumo da mensaxe
  • key: Buffer, Clave de sinatura binaria

Resultado de volta:

  • Digest, Devolver o obxecto resumo da información

loadPKey

Cargue un ficheiro clave en formato PEM / DER

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

Parámetros de chamada:

  • filename: Cadea, nome do ficheiro clave
  • password: Cadea, descifra o contrasinal

Resultado de volta:

  • PKey, Devolve un obxecto que contén a clave

loadCert

Cargue un certificado en formato CRT / PEM / DER / TXT, que se pode chamar varias veces

1
static X509Cert crypto.loadCert(String filename);

Parámetros de chamada:

  • filename: Cadea, nome do ficheiro do certificado

Resultado de volta:

  • X509Cert, Devolve o obxecto que contén o certificado

loadFile carga certdata de Mozilla, txt, que se pode descargar e usar en http://hg.mozilla.org/releases/mozilla-release/raw-file/default/security/nss/lib/ckfw/builtins/certdata.txt


loadCrl

Cargue un certificado de revogación en formato PEM / DER, que se pode chamar varias veces

1
static X509Crl crypto.loadCrl(String filename);

Parámetros de chamada:

  • filename: Cadea, nome do ficheiro do certificado revogado

Resultado de volta:

  • X509Crl, Devolve o obxecto que contén o certificado revogado

loadReq

Cargue unha solicitude de certificado en formato PEM / DER, que se pode chamar varias veces

1
static X509Req crypto.loadReq(String filename);

Parámetros de chamada:

  • filename: Cadea, nome do ficheiro de solicitude de certificado

Resultado de volta:

  • X509Req, Devolve o obxecto que contén o certificado solicitado

randomBytes

Xera números aleatorios do tamaño especificado, usa xerador de hasge

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

Parámetros de chamada:

  • size: Enteiro, especifica o tamaño do número aleatorio xerado

Resultado de volta:

  • Buffer, Devolve o número aleatorio xerado

simpleRandomBytes

Xera un número aleatorio de baixa intensidade dun tamaño especificado, usando un algoritmo rápido

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

Parámetros de chamada:

  • size: Enteiro, especifica o tamaño do número aleatorio xerado

Resultado de volta:

  • Buffer, Devolve o número aleatorio xerado

pseudoRandomBytes

Xera números pseudoaleatorios do tamaño especificado usando o xerador de entropía

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

Parámetros de chamada:

  • size: Enteiro, especifica o tamaño do número aleatorio xerado

Resultado de volta:

  • Buffer, Devolve o número aleatorio xerado

randomArt

Xera unha imaxe de carácter visual dos datos dados

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

Parámetros de chamada:

  • data: Buffer, Especifique os datos que se amosarán
  • title: Cadea, especifica o título da imaxe do carácter; os caracteres de varios bytes causarán un erro de ancho
  • size: Entero, tamaño da imaxe do carácter

Resultado de volta:

  • String, Devolve a imaxe da cadea visual xerada

genRsaKey

Xera unha clave privada RSA

1
static PKey crypto.genRsaKey(Integer size) async;

Parámetros de chamada:

  • size: Enteiro, especifique a lonxitude da clave RSA, bit como a unidade

Resultado de volta:

  • PKey, Devolve o obxecto que contén a clave privada xerada

genEcKey

Xera unha clave privada EC

1
static PKey crypto.genEcKey(String curve = "secp521r1") async;

Parámetros de chamada:

  • curve: Cadea, especifica unha curva elíptica predeterminada, os valores opcionais son: "secp521r1", "brainpoolP512r1", "secp384r1", "brainpoolP384r1", "secp256r1", "secp256k1", "brainpoolP256r1", "secp224r1", "secp224k "secp192r1", "secp192k1"

Resultado de volta:

  • PKey, Devolve o obxecto que contén a clave privada xerada

genSm2Key

Xera unha clave privada SM2

1
static PKey crypto.genSm2Key() async;

Resultado de volta:

  • PKey, Devolve o obxecto que contén a clave privada xerada

pbkdf1

Xera a clave binaria requirida segundo pbkdf1 segundo o contrasinal de texto sinxelo

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

Parámetros de chamada:

  • password: Buffer, Especifique o contrasinal empregado
  • salt: Buffer, Especifique o sal usado por hmac
  • iterations: Enteiro, especifique o número de iteracións
  • size: Enteiro, especifica o tamaño da clave
  • algo: Enteiro, especifica que usar hash Algoritmo, ver hash Módulo

Resultado de volta:

  • Buffer, Devolve a clave binaria xerada

Xera a clave binaria requirida segundo pbkdf1 segundo o contrasinal de texto sinxelo

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

Parámetros de chamada:

  • password: Buffer, Especifique o contrasinal empregado
  • salt: Buffer, Especifique o sal usado por hmac
  • iterations: Enteiro, especifique o número de iteracións
  • size: Enteiro, especifica o tamaño da clave
  • algoName: Cadea, especifica que usar hash Algoritmo, ver hash Módulo

Resultado de volta:

  • Buffer, Devolve a clave binaria xerada

pbkdf2

Segundo rfc2898, xera a clave binaria requirida segundo o contrasinal de texto sinxelo

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

Parámetros de chamada:

  • password: Buffer, Especifique o contrasinal empregado
  • salt: Buffer, Especifique o sal usado por hmac
  • iterations: Enteiro, especifique o número de iteracións
  • size: Enteiro, especifica o tamaño da clave
  • algo: Enteiro, especifica que usar hash Algoritmo, ver hash Módulo

Resultado de volta:

  • Buffer, Devolve a clave binaria xerada

Segundo rfc2898, xera a clave binaria requirida segundo o contrasinal de texto sinxelo

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

Parámetros de chamada:

  • password: Buffer, Especifique o contrasinal empregado
  • salt: Buffer, Especifique o sal usado por hmac
  • iterations: Enteiro, especifique o número de iteracións
  • size: Enteiro, especifica o tamaño da clave
  • algoName: Cadea, especifica que usar hash Algoritmo, ver hash Módulo

Resultado de volta:

  • Buffer, Devolve a clave binaria xerada

getHashes

Obtén o apoio do módulo criptográfico hash(Resumo) Algoritmos, como'md5 ',' sha224 '

1
static Array crypto.getHashes();

Resultado de volta:

  • Array, Volver ao soporte de fibjs hash Matriz de algoritmos

constante

AES

Especifica o algoritmo de cifrado simétrico AES, admite claves de 128, 192, 256 bits, o modo de traballo de cifrado de bloques admite ECB, CBC, CFB128, CTR, GCM, CCM, XTS

1
const crypto.AES = 1;

CAMELLIA

Especifica o algoritmo de cifrado simétrico CAMELLIA, admite claves de 128, 192, 256 bits, o modo de traballo de cifrado de bloques admite ECB, CBC, CFB128, CTR, GCM, CCM

1
const crypto.CAMELLIA = 2;

DES

Especifica o algoritmo de cifrado simétrico DES, admite chave de 64 bits, bloquea o modo de traballo de cifrado admite ECB, CBC

1
const crypto.DES = 3;

DES_EDE

Especifica o algoritmo de cifrado simétrico DES-EDE, admite chave de 128 bits, o modo de traballo de cifrado de bloque admite ECB, CBC

1
const crypto.DES_EDE = 4;

DES_EDE3

Especifica o algoritmo de cifrado simétrico DES-EDE3, admite chave de 192 bits, o modo de traballo de cifrado de bloques admite ECB, CBC

1
const crypto.DES_EDE3 = 5;

BLOWFISH

Especifica o algoritmo de cifrado simétrico BLOWFISH, admite chave de 192 bits, o modo de traballo de cifrado de bloque admite ECB, CBC, CFB64, CTR

1
const crypto.BLOWFISH = 6;

ARC4

Especifica o algoritmo de cifrado simétrico ARC4, admite claves de 40, 56, 64, 128 bits

1
const crypto.ARC4 = 7;

ARIA

Especifica o algoritmo de cifrado simétrico ARIA, admite claves de 128, 192, 256 bits, o modo de traballo de cifrado de bloques admite ECB, CBC, CFB128, CTR, GCM, CCM

1
const crypto.ARIA = 8;

CHACHA20

Especifica o algoritmo de cifrado simétrico CHACHA20, admite chave de 256 bits, o modo de traballo de cifrado de bloque admite POLY1305

1
const crypto.CHACHA20 = 9;

SM4

Especifique o algoritmo de cifrado simétrico SM4, o modo de traballo de cifrado de bloques admite ECB, CBC

1
const crypto.SM4 = 10;

ECB

O modo de traballo de cifrado de bloque designado admite ECB

1
const crypto.ECB = 1;

CBC

O modo de traballo de cifrado de bloque designado admite CBC

1
const crypto.CBC = 2;

CFB64

O modo de traballo de cifrado de bloque designado admite CFB64

1
const crypto.CFB64 = 3;

CFB128

O modo de traballo de cifrado de bloque designado admite CFB128

1
const crypto.CFB128 = 4;

OFB

O modo de traballo de cifrado de bloque designado admite OFB

1
const crypto.OFB = 5;

CTR

O modo de traballo de cifrado de bloque designado admite CTR

1
const crypto.CTR = 6;

GCM

O modo de traballo de cifrado de bloque designado admite GCM

1
const crypto.GCM = 7;

STREAM

Especificar o modo de cifrado de fluxo

1
const crypto.STREAM = 8;

CCM

O modo de traballo de cifrado de bloque designado admite CCM

1
const crypto.CCM = 9;

XTS

O modo de traballo de cifrado de bloque designado admite XTS

1
const crypto.XTS = 10;

POLY1305

O modo de traballo de cifrado de bloque designado admite POLY1305

1
const crypto.POLY1305 = 11;

PKCS7

Especifique o modo de recheo como PKCS7

1
const crypto.PKCS7 = 0;

ONE_AND_ZEROS

Especifica o modo de recheo como ONE_AND_ZEROS

1
const crypto.ONE_AND_ZEROS = 1;

ZEROS_AND_LEN

Especifique o modo de recheo como ZEROS_AND_LEN

1
const crypto.ZEROS_AND_LEN = 2;

ZEROS

Especifique o modo de recheo como ZEROS

1
const crypto.ZEROS = 3;

NOPADDING

Especifique o modo de recheo como NOPADDING

1
const crypto.NOPADDING = 4;