Модуль Базовый модуль

Модуль крипто

Модуль алгоритма шифрования

Инструкции:

1
var crypto = require('crypto');

объект

Cipher

Cipher конструктор, см. Cipher

1
Cipher crypto.Cipher;

PKey

PKey конструктор, см. PKey

1
PKey crypto.PKey;

X509Cert

X509Cert , см. X509Cert

1
X509Cert crypto.X509Cert;

X509Crl

X509Crl , см. X509Crl

1
X509Crl crypto.X509Crl;

X509Req

X509Req , см. X509Req

1
X509Req crypto.X509Req;

Статическая функция

createHash

Создать объект сводки сообщений на основе заданного имени алгоритма

1
static Digest crypto.createHash(String algo);

Параметры вызова:

  • algo : String, указывает алгоритм объекта сводки информации

Вернуть результат:

  • Digest , возврат информации сводного объекта

createHmac

Создайте сводный объект информации hmac в соответствии с заданным именем алгоритма

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

Параметры вызова:

  • algo : String, указывает алгоритм объекта сводки информации
  • key : Buffer , двоичный ключ подписи

Вернуть результат:

  • Digest , возврат информации сводного объекта

loadPKey

Загрузить файл ключа в формате PEM / DER

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

Параметры вызова:

  • filename : строка, имя файла ключа
  • password : строка, расшифровать пароль

Вернуть результат:

  • PKey , вернуть объект, содержащий ключ

loadCert

Загрузите сертификат в формате CRT / PEM / DER / TXT, который можно вызвать несколько раз

1
static X509Cert crypto.loadCert(String filename);

Параметры вызова:

  • filename : строка, имя файла сертификата

Вернуть результат:

  • X509Cert , возвращает объект, содержащий сертификат

loadFile загружает сертификаты Mozilla, txt, доступные для загрузки по адресу http


loadCrl

Загрузить сертификат отзыва в формате PEM / DER, который можно вызвать несколько раз

1
static X509Crl crypto.loadCrl(String filename);

Параметры вызова:

  • filename : строка, имя файла отзыва сертификата

Вернуть результат:

  • X509Crl , вернуть объект, содержащий отозванный сертификат

loadReq

Загрузите запрос сертификата формата PEM / DER, который можно вызвать несколько раз

1
static X509Req crypto.loadReq(String filename);

Параметры вызова:

  • filename : строка, имя файла запроса сертификата

Вернуть результат:

  • X509Req , возвращает объект, содержащий запрошенный сертификат

randomBytes

Генерация случайных чисел указанного размера, используйте генератор hasge

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

Параметры вызова:

  • size : Integer, укажите size сгенерированного случайного числа

Вернуть результат:

  • Buffer , вернуть сгенерированное случайное число

simpleRandomBytes

Генерация случайных чисел низкой интенсивности заданного размера, используя быстрый алгоритм

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

Параметры вызова:

  • size : Integer, укажите size сгенерированного случайного числа

Вернуть результат:

  • Buffer , вернуть сгенерированное случайное число

pseudoRandomBytes

Генерация псевдослучайных чисел заданного размера с использованием генератора энтропии

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

Параметры вызова:

  • size : Integer, укажите size сгенерированного случайного числа

Вернуть результат:

  • Buffer , вернуть сгенерированное случайное число

randomArt

Генерация визуальных изображений персонажей для заданных данных

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

Параметры вызова:

  • data : Buffer , укажите данные для отображения
  • title : String, заголовок указанного символа изображения, многобайтовые символы приведут к неправильной ширине
  • size : целое число, размер изображения символа

Вернуть результат:

  • String , вернуть сгенерированное визуальное строковое изображение

pbkdf1

Сгенерируйте требуемый двоичный ключ на основе открытого текста в соответствии с pbkdf1

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

Параметры вызова:

  • password : Buffer , укажите пароль для использования
  • salt : Buffer , укажите соль, используемую hmac
  • iterations : целое число, укажите количество итераций
  • size : целое число, укажите размер ключа
  • algo : Integer, указать hash - алгоритм для использования, см hash модуля для получения подробной информации

Вернуть результат:

  • Buffer , возвращает сгенерированный двоичный ключ

Сгенерируйте требуемый двоичный ключ на основе открытого текста в соответствии с pbkdf1

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

Параметры вызова:

  • password : Buffer , укажите пароль для использования
  • salt : Buffer , укажите соль, используемую hmac
  • iterations : целое число, укажите количество итераций
  • size : целое число, укажите размер ключа
  • algoName : String укажите hash - алгоритм для использования, см hash модуля для получения подробной информации

Вернуть результат:

  • Buffer , возвращает сгенерированный двоичный ключ

pbkdf2

Сгенерируйте необходимый двоичный ключ на основе открытого текста в соответствии с rfc2898.

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

Параметры вызова:

  • password : Buffer , укажите пароль для использования
  • salt : Buffer , укажите соль, используемую hmac
  • iterations : целое число, укажите количество итераций
  • size : целое число, укажите размер ключа
  • algo : Integer, указать hash - алгоритм для использования, см hash модуля для получения подробной информации

Вернуть результат:

  • Buffer , возвращает сгенерированный двоичный ключ

Сгенерируйте необходимый двоичный ключ на основе открытого текста в соответствии с rfc2898.

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

Параметры вызова:

  • password : Buffer , укажите пароль для использования
  • salt : Buffer , укажите соль, используемую hmac
  • iterations : целое число, укажите количество итераций
  • size : целое число, укажите размер ключа
  • algoName : String укажите hash - алгоритм для использования, см hash модуля для получения подробной информации

Вернуть результат:

  • Buffer , возвращает сгенерированный двоичный ключ

постоянная

AES

Укажите алгоритм симметричного шифрования AES, поддержку 128, 192, 256-битный ключ, поддержку режима работы блочного шифра, ECB, CBC, CFB128, CTR, GCM, CCM, XTS.

1
const crypto.AES = 1;

CAMELLIA

Укажите алгоритм симметричного шифрования CAMELLIA, поддержка 128, 192, 256-битный ключ, поддержка режима работы блочного шифра ECB, CBC, CFB128, CTR, GCM, CCM.

1
const crypto.CAMELLIA = 2;

DES

Укажите алгоритм симметричного шифрования DES, поддержку 64-битного ключа, поддержку режима работы блочного шифра, ECB, CBC

1
const crypto.DES = 3;

DES_EDE

Укажите алгоритм симметричного шифрования DES-EDE, поддержку 128-битного ключа, поддержку режима работы блочного шифра, поддержку ECB, CBC

1
const crypto.DES_EDE = 4;

DES_EDE3

Укажите алгоритм симметричного шифрования DES-EDE3, поддержку 192-битного ключа, поддержку режима работы блочного шифра, поддержку ECB, CBC

1
const crypto.DES_EDE3 = 5;

BLOWFISH

Укажите алгоритм симметричного шифрования BLOWFISH, поддержку 192-битного ключа, поддержку режима работы блочного шифра, ECB, CBC, CFB64, CTR

1
const crypto.BLOWFISH = 6;

ARC4

Укажите алгоритм симметричного шифрования ARC4, поддержка 40, 56, 64, 128 ключей

1
const crypto.ARC4 = 7;

ARIA

Укажите алгоритм симметричного шифрования ARIA, поддержку 128, 192, 256-битный ключ, поддержку режима работы блочного шифра, ECB, CBC, CFB128, CTR, GCM, CCM.

1
const crypto.ARIA = 8;

CHACHA20

Укажите алгоритм симметричного шифрования CHACHA20, поддержку 256-битного ключа, поддержку режима работы блочного шифра POLY1305.

1
const crypto.CHACHA20 = 9;

SM4

Укажите алгоритм симметричного шифрования SM4, режим работы блочного шифра поддерживает ECB, CBC

1
const crypto.SM4 = 10;

ECB

Укажите режим работы блочного шифра для поддержки ECB

1
const crypto.ECB = 1;

CBC

Укажите режим работы блочного шифра для поддержки CBC

1
const crypto.CBC = 2;

CFB64

Указанный режим работы блочного шифра поддерживает CFB64

1
const crypto.CFB64 = 3;

CFB128

Указанный режим работы блочного шифра поддерживает CFB128

1
const crypto.CFB128 = 4;

OFB

Назначенный режим работы блочного шифра поддерживает OFB

1
const crypto.OFB = 5;

CTR

Укажите режим работы блочного шифра для поддержки CTR

1
const crypto.CTR = 6;

GCM

Укажите режим работы блочного шифра для поддержки GCM

1
const crypto.GCM = 7;

STREAM

Укажите режим потокового шифра

1
const crypto.STREAM = 8;

CCM

Укажите режим работы блочного шифра для поддержки CCM

1
const crypto.CCM = 9;

XTS

Указанный режим работы блочного шифра поддерживает XTS

1
const crypto.XTS = 10;

POLY1305

Укажите режим работы блочного шифра для поддержки POLY1305

1
const crypto.POLY1305 = 11;

PKCS7

Укажите режим заполнения как PKCS7

1
const crypto.PKCS7 = 0;

ONE_AND_ZEROS

Укажите режим заполнения как ONE_AND_ZEROS

1
const crypto.ONE_AND_ZEROS = 1;

ZEROS_AND_LEN

Укажите режим заполнения как ZEROS_AND_LEN

1
const crypto.ZEROS_AND_LEN = 2;

ZEROS

Укажите режим заполнения как НУЛИ

1
const crypto.ZEROS = 3;

NOPADDING

Укажите режим заполнения как NOPADDING

1
const crypto.NOPADDING = 4;