@evokegroup/crypto
TypeScript icon, indicating that this package has built-in type declarations

2.0.0 • Public • Published

@evokegroup/crypto

Requires NodeJS 18+

Encryption

Classes

UnsupportedAlgorithmError

extends Error

InvalidInputLengthError

extends Error

Interfaces

EncryptOpts

Property Type
inputEncoding BufferEncoding
keyEncoding BufferEncoding
ivEncoding BufferEncoding
outputEncoding BufferEncoding
iterations number
hmac string
authTagLength number
authTagLocation AuthTagLocation

DecryptOpts

extends EncryptOpts

Property Type
authTag Buffer|string

EncryptionResult

Property Type Default Description
data Buffer, string The encrypted data
authTag Buffer, string The authentication tag

Methods

decrypt

returns Promise<Buffer | string>

Parameter Type Default Description
algorithm string The encryption algorithm
data Buffer, string The data to be encrypted
key Buffer, string The encryption key
iv Buffer, string The encryption IV
opts DecryptOpts
opts.inputEncoding BufferEncoding utf8
opts.keyEncoding BufferEncoding base64
opts.ivEncoding BufferEncoding base64
opts.outputEncoding BufferEncoding base64 null will cause the returned value to be a Buffer.
opts.iterations number 1000
opts.hmac string sha256
opts.authTag Buffer, string
opts.authTagLength number 16
opts.authTagLocation number APPEND

decryptSync

returns Buffer | string

Parameter Type Default Description
algorithm string The encryption algorithm
data Buffer, string The data to be encrypted
key Buffer, string The encryption key
iv Buffer, string The encryption IV
opts DecryptOpts
opts.inputEncoding BufferEncoding utf8
opts.keyEncoding BufferEncoding base64
opts.ivEncoding BufferEncoding base64
opts.outputEncoding BufferEncoding base64 null will cause the returned value to be a Buffer.
opts.iterations number 1000
opts.hmac string sha256
opts.authTag Buffer, string
opts.authTagLength number 16
opts.authTagLocation number APPEND

encrypt

returns Promise<Buffer | string | EncryptionResult>

Parameter Type Default Description
algorithm string The encryption algorithm
data Buffer, string The data to be encrypted
key Buffer, string The encryption key
iv Buffer, string The encryption IV
opts EncryptOpts
opts.inputEncoding BufferEncoding utf8
opts.keyEncoding BufferEncoding base64
opts.ivEncoding BufferEncoding base64
opts.outputEncoding BufferEncoding base64 null will cause the returned value to be a Buffer.
opts.iterations number 1000
opts.hmac string sha256
opts.authTagLength number 16
opts.authTagLocation number APPEND

encryptSync

returns Buffer | string | EncryptionResult

Parameter Type Default Description
algorithm string The encryption algorithm
data Buffer, string The data to be encrypted
key Buffer, string The encryption key
iv Buffer, string The encryption IV
opts EncryptOpts
opts.inputEncoding BufferEncoding utf8
opts.keyEncoding BufferEncoding base64
opts.ivEncoding BufferEncoding base64
opts.outputEncoding BufferEncoding base64 null will cause the returned value to be a Buffer.
opts.iterations number 1000
opts.hmac string sha256
opts.authTagLength number 16
opts.authTagLocation number APPEND

generateRandomKey

returns Buffer | string

Generates a random key appropriate for the given encryption algorithm.

Parameter Type Default Description
algorithm string The encryption algorithm
outputEncoding BufferEncoding

generateRandomIV

returns Buffer | string

Generates a random initialization vector appropriate for the given encryption algorithm.

Parameter Type Default Description
algorithm string The encryption algorithm
outputEncoding BufferEncoding

getSupportedAlgorithms

returns string[]

Get a list of algorithms supported by this library.

Parameter Type Default Description
scheme string null Return algorithms only for the given encryption scheme (e.g. aes, aria, camellia, des, des3)

isSupportedAlgorithm

returns boolean

Parameter Type Default Description
algorithm string

Hashing

Interfaces

HashOpts

Property Type
salt Buffer, string
saltEncoding BufferEncoding
saltLocation SaltLocation
inputEncoding BufferEncoding
outputEncoding BinaryToTextEncoding

Methods

calculateHash

returns Buffer | string

Parameter Type Default Description
algorithm string The encryption algorithm
data Buffer, string The data to be encrypted
opts HashOpts
opts.salt Buffer, string
opts.saltEncoding BufferEncoding base64
opts.saltLocation SaltLocation APPEND
opts.inputEncoding BufferEncoding utf8
opts.outputEncoding BinaryToTextEncoding hex null will cause the returned value to be a Buffer.

generateSalt

returns Buffer | string

Parameter Type Default Description
saltLength nmber 16
outputEncoding BufferEncoding

Readme

Keywords

none

Package Sidebar

Install

npm i @evokegroup/crypto

Weekly Downloads

2

Version

2.0.0

License

ISC

Unpacked Size

33.9 kB

Total Files

14

Last publish

Collaborators

  • ybevoke
  • jtsuyuki
  • evokejames
  • evoke-cjamodeo