Class: RSACryptoPKey

@nginstack/engine/lib/crypto/RSACryptoPKey~ RSACryptoPKey


new RSACryptoPKey(bits)

Cria um novo par de chaves assimétricas (pública e privada) RSA para assinatura digital de dados. As chaves criadas são aleatórias.

Parameters:
Name Type Description
bits number

O tamanho das chaves em bits. Este parâmetro é opcional, o padrão é 2048.

Returns:

Um objeto contendo o novo par de chaves.

Type
RSACryptoPKey

Extends

Methods


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

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.

opt_sec 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
RSACryptoPKey

<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
RSACryptoPKey

privateDecrypt(text, padding)

Decripta uma string utilizando uma chave privada previamente importada. Esta é uma operação inversa à função #publicEncrypt, ou seja, uma string que foi criptografada com a função #publicEncrypt pode ser descriptografada com esta função, desde que a chave privada aqui utilizada seja a gerada a partir da chave pública utilizada na encriptação.

Parameters:
Name Type Description
text string

String a ser decriptada com a chave privada.

padding number

Constante utilizada para caracterizar o padding na encriptação. Pode-se utilizar CryptoPKey.RSA_NO_PADDING ou CryptoPKey.RSA_PKCS1_PADDING

Returns:

Uma nova string com o parâmetro text já descriptografado.

Type
string

privateEncrypt(text, padding)

Encripta um string utilizando uma chave privada previamente importada. Os dados encriptados devem ser descriptografados pelo método #publicDecrypt.

Parameters:
Name Type Description
text string

String a ser encriptada com a chave privada.

padding number

Constante utilizada para caracterizar o padding na encriptação. Pode-se utilizar CryptoPKey.RSA_NO_PADDING ou CryptoPKey.RSA_PKCS1_PADDING

Returns:

Uma nova string com o parâmetro text já criptografado.

Type
string

publicDecrypt(text, padding)

Decripta uma string utilizando uma chave pública previamente importada. Esta é uma operação inversa à função #privateEncrypt, ou seja, uma string que foi criptografada com a função #privateEncrypt pode ser descriptografada com esta função, desde que a chave pública aqui utilizada seja a gerada a partir da chave privada utilizada na encriptação.

Parameters:
Name Type Description
text string

String a ser decriptada com a chave pública.

padding number

Constante utilizada para caracterizar o padding na encriptação. Pode-se utilizar CryptoPKey.RSA_NO_PADDING ou CryptoPKey.RSA_PKCS1_PADDING

Returns:

Uma nova string com o parâmetro text já descriptografado.

Type
string

publicEncrypt(text, padding)

Encripta um string utilizando uma chave pública previamente importada. Os dados encriptados devem ser descriptografados pelo método #privateDecrypt.

Parameters:
Name Type Description
text string

String a ser encriptada com a chave privada.

padding number

Constante utilizada para caracterizar o padding na encriptação. Pode-se utilizar CryptoPKey.RSA_NO_PADDING ou CryptoPKey.RSA_PKCS1_PADDING

Returns:

Uma nova string com o parâmetro text já criptografado.

Type
string