Cripto do módulo
Módulo de algoritmo de cifrado
Instrucións:
1var crypto = require('crypto');
Obxecto
Cipher
1Cipher crypto.Cipher;
PKey
1PKey crypto.PKey;
X509Cert
X509Cert Construtor, ver X509Cert
1X509Cert crypto.X509Cert;
X509Crl
X509Crl Construtor, ver X509Crl
1X509Crl crypto.X509Crl;
X509Req
X509Req Construtor, ver X509Req
1X509Req crypto.X509Req;
Función estática
createHash
Crea un obxecto de resumo de información baseado no nome do algoritmo dado
1static 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
2static 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
2static 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
1static 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
1static 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
1static 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
1static 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
1static 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
1static 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
3static 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
1static 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
1static 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
1static 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
5static 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 que usa o 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
5static 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 que usa o 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
5static 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 que usa o 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
5static 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 que usa o 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 '
1static 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
1const 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
1const 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
1const 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
1const 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 bloque admite ECB, CBC
1const 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
1const crypto.BLOWFISH = 6;
ARC4
Especifica o algoritmo de cifrado simétrico ARC4, admite claves de 40, 56, 64, 128 bits
1const 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
1const 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
1const crypto.CHACHA20 = 9;
SM4
Especifique o algoritmo de cifrado simétrico SM4, o modo de traballo de cifrado de bloque admite ECB, CBC
1const crypto.SM4 = 10;
ECB
O modo de traballo de cifrado de bloque designado admite ECB
1const crypto.ECB = 1;
CBC
O modo de traballo de cifrado de bloque designado admite CBC
1const crypto.CBC = 2;
CFB64
O modo de traballo de cifrado de bloque designado admite CFB64
1const crypto.CFB64 = 3;
CFB128
O modo de traballo de cifrado de bloque designado admite CFB128
1const crypto.CFB128 = 4;
OFB
O modo de traballo de cifrado de bloque designado admite OFB
1const crypto.OFB = 5;
CTR
O modo de traballo de cifrado de bloque designado admite CTR
1const crypto.CTR = 6;
GCM
O modo de traballo de cifrado de bloque designado admite GCM
1const crypto.GCM = 7;
STREAM
Especificar o modo de cifrado de fluxo
1const crypto.STREAM = 8;
CCM
O modo de traballo de cifrado de bloque designado admite CCM
1const crypto.CCM = 9;
XTS
O modo de traballo de cifrado de bloque designado admite XTS
1const crypto.XTS = 10;
POLY1305
O modo de traballo de cifrado de bloque designado admite POLY1305
1const crypto.POLY1305 = 11;
PKCS7
Especifique o modo de recheo como PKCS7
1const crypto.PKCS7 = 0;
ONE_AND_ZEROS
Especifica o modo de recheo como ONE_AND_ZEROS
1const crypto.ONE_AND_ZEROS = 1;
ZEROS_AND_LEN
Especifique o modo de recheo como ZEROS_AND_LEN
1const crypto.ZEROS_AND_LEN = 2;
ZEROS
Especifique o modo de recheo como ZEROS
1const crypto.ZEROS = 3;
NOPADDING
Especifique o modo de recheo como NOPADDING
1const crypto.NOPADDING = 4;