Modul Grundmodul

Modul Krypto

Verschlüsselungsalgorithmus-Modul

Wie man benutzt:

1
var crypto = require('crypto');

Objekt

Cipher

Cipher , siehe Cipher

1
Cipher crypto.Cipher;

PKey

PKey Konstruktor, siehe PKey

1
PKey crypto.PKey;

X509Cert

X509Cert Konstruktor, siehe X509Cert

1
X509Cert crypto.X509Cert;

X509Crl

X509Crl Konstruktor, siehe X509Crl

1
X509Crl crypto.X509Crl;

X509Req

X509Req Konstruktor, siehe X509Req

1
X509Req crypto.X509Req;

Statische Funktion

createHash

Erstellen Sie ein Nachrichtenzusammenfassungsobjekt basierend auf dem angegebenen Algorithmusnamen

1
static Digest crypto.createHash(String algo);

Parameter aufrufen:

  • algo : String, gibt den Algorithmus des Informationszusammenfassungsobjekts an

Ergebnis zurückgeben:

  • Digest , Informationszusammenfassungsobjekt zurückgeben

createHmac

Erstellen Sie ein hmac-Informationszusammenfassungsobjekt gemäß dem angegebenen Algorithmusnamen

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

Parameter aufrufen:

  • algo : String, gibt den Algorithmus des Informationszusammenfassungsobjekts an
  • key : Buffer , binärer Signaturschlüssel

Ergebnis zurückgeben:

  • Digest , Informationszusammenfassungsobjekt zurückgeben

loadPKey

Laden Sie eine Schlüsseldatei im PEM / DER-Format

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

Parameter aufrufen:

  • filename : Zeichenfolge, Schlüsseldateiname
  • password : String, Passwort entschlüsseln

Ergebnis zurückgeben:

  • PKey gibt das Objekt zurück, das den Schlüssel enthält

loadCert

Laden Sie ein Zertifikat im CRT / PEM / DER / TXT-Format, das mehrfach aufgerufen werden kann

1
static X509Cert crypto.loadCert(String filename);

Parameter aufrufen:

  • filename : Zeichenfolge, Name der Zertifikatdatei

Ergebnis zurückgeben:

  • X509Cert gibt das Objekt zurück, das das Zertifikat enthält

loadFile lädt Mozillas Certdata txt, die unter http heruntergeladen werden können


loadCrl

Laden Sie ein Sperrzertifikat im PEM / DER-Format, das mehrfach aufgerufen werden kann

1
static X509Crl crypto.loadCrl(String filename);

Parameter aufrufen:

  • filename : Zeichenfolge, Name der widerrufenen Zertifikatdatei

Ergebnis zurückgeben:

  • X509Crl , Rückgabeobjekt mit widerrufenem Zertifikat

loadReq

Laden Sie eine Zertifikatanforderung im PEM / DER-Format, die mehrfach aufgerufen werden kann

1
static X509Req crypto.loadReq(String filename);

Parameter aufrufen:

  • filename : Zeichenfolge, Name der Zertifikatanforderungsdatei

Ergebnis zurückgeben:

  • X509Req gibt das Objekt zurück, das das angeforderte Zertifikat enthält

randomBytes

Generieren Sie Zufallszahlen der angegebenen Größe und verwenden Sie den Hasge-Generator

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

Parameter aufrufen:

  • size : Integer, geben Sie die size generierten Zufallszahl an

Ergebnis zurückgeben:

  • Buffer , gib die generierte Zufallszahl zurück

simpleRandomBytes

Generieren Sie mit einem schnellen Algorithmus Zufallszahlen mit geringer Intensität und spezifizierter Größe

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

Parameter aufrufen:

  • size : Integer, geben Sie die size generierten Zufallszahl an

Ergebnis zurückgeben:

  • Buffer , gib die generierte Zufallszahl zurück

pseudoRandomBytes

Generieren Sie mit dem Entropiegenerator Pseudozufallszahlen der angegebenen Größe

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

Parameter aufrufen:

  • size : Integer, geben Sie die size generierten Zufallszahl an

Ergebnis zurückgeben:

  • Buffer , gib die generierte Zufallszahl zurück

randomArt

Generieren Sie visuelle Zeichenbilder für bestimmte Daten

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

Parameter aufrufen:

  • data : Buffer , geben Sie die anzuzeigenden Daten an
  • title : String, der Titel des angegebenen Zeichenbildes, Multi-Byte-Zeichen verursachen die falsche Breite
  • size : Ganzzahl, Zeichenbildgröße

Ergebnis zurückgeben:

  • String , gibt das generierte visuelle String-Bild zurück

pbkdf1

Generieren Sie den erforderlichen Binärschlüssel basierend auf dem Klartext-Passwort gemäß pbkdf1

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

Parameter aufrufen:

  • password : Buffer , geben Sie das zu verwendende Passwort an
  • salt : Buffer , geben Sie das von hmac verwendete Salz an
  • iterations : Ganzzahl, geben Sie die Anzahl der Iterationen an
  • size : Integer, geben Sie die Schlüsselgröße an
  • algo : Integer, geben Sie den zu verwendenden hash Algorithmus an, Einzelheiten finden Sie im hash Modul

Ergebnis zurückgeben:

  • Buffer , gibt den generierten Binärschlüssel zurück

Generieren Sie den erforderlichen Binärschlüssel basierend auf dem Klartext-Passwort gemäß pbkdf1

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

Parameter aufrufen:

  • password : Buffer , geben Sie das zu verwendende Passwort an
  • salt : Buffer , geben Sie das von hmac verwendete Salz an
  • iterations : Ganzzahl, geben Sie die Anzahl der Iterationen an
  • size : Integer, geben Sie die Schlüsselgröße an
  • algoName : String, geben Sie den zu verwendenden hash Algorithmus an, Einzelheiten finden Sie im hash Modul

Ergebnis zurückgeben:

  • Buffer , gibt den generierten Binärschlüssel zurück

pbkdf2

Generieren Sie den erforderlichen Binärschlüssel basierend auf dem Klartext-Passwort gemäß rfc2898

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

Parameter aufrufen:

  • password : Buffer , geben Sie das zu verwendende Passwort an
  • salt : Buffer , geben Sie das von hmac verwendete Salz an
  • iterations : Ganzzahl, geben Sie die Anzahl der Iterationen an
  • size : Integer, geben Sie die Schlüsselgröße an
  • algo : Integer, geben Sie den zu verwendenden hash Algorithmus an, Einzelheiten finden Sie im hash Modul

Ergebnis zurückgeben:

  • Buffer , gibt den generierten Binärschlüssel zurück

Generieren Sie den erforderlichen Binärschlüssel basierend auf dem Klartext-Passwort gemäß rfc2898

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

Parameter aufrufen:

  • password : Buffer , geben Sie das zu verwendende Passwort an
  • salt : Buffer , geben Sie das von hmac verwendete Salz an
  • iterations : Ganzzahl, geben Sie die Anzahl der Iterationen an
  • size : Integer, geben Sie die Schlüsselgröße an
  • algoName : String, geben Sie den zu verwendenden hash Algorithmus an, Einzelheiten finden Sie im hash Modul

Ergebnis zurückgeben:

  • Buffer , gibt den generierten Binärschlüssel zurück

Konstante

AES

Geben Sie den symmetrischen Verschlüsselungsalgorithmus AES an, unterstützen Sie 128, 192, 256-Bit-Schlüssel, unterstützen Sie die Blockverschlüsselung im Arbeitsmodus EZB, CBC, CFB128, CTR, GCM, CCM, XTS

1
const crypto.AES = 1;

CAMELLIA

Geben Sie den symmetrischen Verschlüsselungsalgorithmus CAMELLIA an, unterstützen Sie 128, 192, 256-Bit-Schlüssel, unterstützen Sie die Blockverschlüsselung im Arbeitsmodus EZB, CBC, CFB128, CTR, GCM, CCM

1
const crypto.CAMELLIA = 2;

DES

Geben Sie den symmetrischen Verschlüsselungsalgorithmus DES an, unterstützen Sie 64-Bit-Schlüssel, unterstützen Sie die Blockverschlüsselung im Arbeitsmodus EZB, CBC

1
const crypto.DES = 3;

DES_EDE

Geben Sie den symmetrischen Verschlüsselungsalgorithmus DES-EDE an, unterstützen Sie 128-Bit-Schlüssel, unterstützen Sie die Blockverschlüsselung im Arbeitsmodus EZB, CBC

1
const crypto.DES_EDE = 4;

DES_EDE3

Geben Sie den symmetrischen Verschlüsselungsalgorithmus DES-EDE3 an, unterstützen Sie den 192-Bit-Schlüssel und unterstützen Sie die Blockverschlüsselung im Arbeitsmodus, EZB, CBC

1
const crypto.DES_EDE3 = 5;

BLOWFISH

Geben Sie den symmetrischen Verschlüsselungsalgorithmus BLOWFISH an, unterstützen Sie den 192-Bit-Schlüssel und unterstützen Sie die Blockverschlüsselung im Arbeitsmodus EZB, CBC, CFB64, CTR

1
const crypto.BLOWFISH = 6;

ARC4

Geben Sie den symmetrischen Verschlüsselungsalgorithmus ARC4 an und unterstützen Sie 40-, 56-, 64- und 128-Bit-Schlüssel

1
const crypto.ARC4 = 7;

ARIA

Geben Sie den symmetrischen Verschlüsselungsalgorithmus ARIA an, unterstützen Sie 128, 192, 256-Bit-Schlüssel, unterstützen Sie den Blockverschlüsselungs-Arbeitsmodus EZB, CBC, CFB128, CTR, GCM, CCM

1
const crypto.ARIA = 8;

CHACHA20

Geben Sie den symmetrischen Verschlüsselungsalgorithmus CHACHA20 an, unterstützen Sie 256-Bit-Schlüssel und unterstützen Sie den Blockverschlüsselungs-Arbeitsmodus POLY1305

1
const crypto.CHACHA20 = 9;

ECB

Geben Sie den Arbeitsmodus für die Blockverschlüsselung an, um die EZB zu unterstützen

1
const crypto.ECB = 1;

CBC

Geben Sie den Arbeitsmodus für die Blockverschlüsselung an, um CBC zu unterstützen

1
const crypto.CBC = 2;

CFB64

Der angegebene Arbeitsmodus für die Blockverschlüsselung unterstützt CFB64

1
const crypto.CFB64 = 3;

CFB128

Geben Sie den Arbeitsmodus für die Blockverschlüsselung an, um CFB128 zu unterstützen

1
const crypto.CFB128 = 4;

OFB

Der designierte Blockverschlüsselungs-Arbeitsmodus unterstützt OFB

1
const crypto.OFB = 5;

CTR

Geben Sie den Arbeitsmodus für die Blockverschlüsselung an, um die Klickrate zu unterstützen

1
const crypto.CTR = 6;

GCM

Geben Sie den Arbeitsmodus für die Blockverschlüsselung an, um GCM zu unterstützen

1
const crypto.GCM = 7;

STREAM

Geben Sie den Stream-Verschlüsselungsmodus an

1
const crypto.STREAM = 8;

CCM

Geben Sie den Arbeitsmodus für die Blockverschlüsselung an, um CCM zu unterstützen

1
const crypto.CCM = 9;

XTS

Geben Sie den Arbeitsmodus für die Blockverschlüsselung an, um XTS zu unterstützen

1
const crypto.XTS = 10;

POLY1305

Geben Sie den Arbeitsmodus für die Blockverschlüsselung an, um POLY1305 zu unterstützen

1
const crypto.POLY1305 = 11;

PKCS7

Geben Sie den Füllmodus als PKCS7 an

1
const crypto.PKCS7 = 0;

ONE_AND_ZEROS

Geben Sie den Füllmodus als ONE_AND_ZEROS an

1
const crypto.ONE_AND_ZEROS = 1;

ZEROS_AND_LEN

Geben Sie den Füllmodus als ZEROS_AND_LEN an

1
const crypto.ZEROS_AND_LEN = 2;

ZEROS

Geben Sie den Füllmodus als NULL an

1
const crypto.ZEROS = 3;

NOPADDING

Geben Sie den Füllmodus als NOPADDING an

1
const crypto.NOPADDING = 4;