Skip to content

Latest commit

 

History

History
142 lines (85 loc) · 4.46 KB

jwe_general_encrypt.GeneralEncrypt.md

File metadata and controls

142 lines (85 loc) · 4.46 KB

Class: GeneralEncrypt

Support from the community to continue maintaining and improving this module is welcome. If you find the module useful, please consider supporting the project by becoming a sponsor.


The GeneralEncrypt class is used to build and encrypt General JWE objects.

example Usage

const jwe = await new jose.GeneralEncrypt(
  new TextEncoder().encode('It’s a dangerous business, Frodo, going out your door.'),
)
  .setProtectedHeader({ enc: 'A256GCM' })
  .addRecipient(ecPublicKey)
  .setUnprotectedHeader({ alg: 'ECDH-ES+A256KW' })
  .addRecipient(rsaPublicKey)
  .setUnprotectedHeader({ alg: 'RSA-OAEP-384' })
  .encrypt()

console.log(jwe)

Table of contents

Constructors

Methods

Constructors

constructor

new GeneralEncrypt(plaintext)

Parameters

Name Type Description
plaintext Uint8Array Binary representation of the plaintext to encrypt.

Methods

addRecipient

addRecipient(key, options?): Recipient

Adds an additional recipient for the General JWE object.

Parameters

Name Type Description
key Uint8Array | KeyLike Public Key or Secret to encrypt the Content Encryption Key for the recipient with. See Algorithm Key Requirements.
options? CritOption JWE Encryption options.

Returns

Recipient


encrypt

encrypt(options?): Promise<GeneralJWE>

Encrypts and resolves the value of the General JWE object.

Parameters

Name Type Description
options? DeflateOption JWE Encryption options.

Returns

Promise<GeneralJWE>


setAdditionalAuthenticatedData

setAdditionalAuthenticatedData(aad): GeneralEncrypt

Sets the Additional Authenticated Data on the GeneralEncrypt object.

Parameters

Name Type Description
aad Uint8Array Additional Authenticated Data.

Returns

GeneralEncrypt


setProtectedHeader

setProtectedHeader(protectedHeader): GeneralEncrypt

Sets the JWE Protected Header on the GeneralEncrypt object.

Parameters

Name Type Description
protectedHeader JWEHeaderParameters JWE Protected Header object.

Returns

GeneralEncrypt


setSharedUnprotectedHeader

setSharedUnprotectedHeader(sharedUnprotectedHeader): GeneralEncrypt

Sets the JWE Shared Unprotected Header on the GeneralEncrypt object.

Parameters

Name Type Description
sharedUnprotectedHeader JWEHeaderParameters JWE Shared Unprotected Header object.

Returns

GeneralEncrypt