Class: ECCryptoPKey

@nginstack/engine/lib/crypto/ECCryptoPKey~ ECCryptoPKey


new ECCryptoPKey(curve)

Cria um novo par de chaves assimétricas (pública e privada) utilizando curvas elípticas. As chaves criadas são aleatórias.

Parameters:
Name Type Description
curve string

Nome da curva que deve ser utilizada. As curvas atualmente suportadas podem ser obtidas pelo método estático ECCryptoPKey.getCurves. Também são aceitos os nomes registrados pelo NIST dessas curvas. As principais são: B-163, B-233, B-283, B-409, B-571, K-163, K-233, K-283, K-409, K-571, P-192, P-224, P-256, P-384, P-521.

See:
Returns:

Um objeto contendo o novo par de chaves.

Type
ECCryptoPKey

Extends

Members


curveName

Retorna o nome da curva elíptica utilizada nesta chave.

Se ao construir a chave for informado um dos nomes de curva registrados pelo NIST, o nome retornado será o equivalente definido pela rfc3279.

Example
const pkey = new ECCryptoPKey('P-256');
pkey.curveName // => 'prime256v1'

Methods


<static> getCurves()

Retorna um Array contendo a lista dos nomes das curvas suportadas.

Returns:
Type
Array

<static> importPrivateKey(format, key [, password])

Lê uma chave privada serializada em uma string e cria um novo objeto que representa a mesma chave.

Parameters:
Name Type Argument Description
format string

O formato da chave serializada, pode ser 'der' ou 'pem'.

key string

A chave privada que foi serializada em uma string.

password string <optional>

Se o formato for 'pem' e a chave privada foi protegida, este argumento deve conter o segredo da cifra simétrica.

See:
Returns:

Um novo objeto contendo a chave lida.

Type
ECCryptoPKey

<static> importPublicKey(format, key)

Lê uma chave pública serializada em uma string e cria um novo objeto que representa a mesma chave.

Parameters:
Name Type Description
format string

O formato da chave serializada, pode ser 'der' ou 'pem'.

key string

A chave pública que foi serializada em uma string.

See:
Returns:

Um novo objeto contendo a chave lida.

Type
ECCryptoPKey