Tanker client-side encryption SDK for JavaScript
This release is strictly speaking a major version bump, but does not introduce any major API changes.
VerificationMethod
objects of type oidcIdToken
now contain the provider_id
and provider_display_name
information corresponding to the verification method's OIDC provider.Status
type is now a regular TypeScript enum
instead of a const enum
.
This provides compatibility with the verbatimModuleSyntax
TypeScript configuration flag.UnknownError: DatabaseClosedError
occurring after a schema upgrade.decrypt()
and share()
. Local storage errors were misleadingly converted into InvalidArgument('could not find key for resource')
. Local storage errors are now forwarded as is.TooManyRequests
error when calling upload()
or download()
and being throttled by the underlying storage service (was InternalError
).This release enable the new "transparent session" encryption formats by default.
These formats optimize resource key usage. Encryption for the same recipients will reuse the same key for several hours. As a result, performance of encrypt and decrypt operations should be improved, due to less network requests.
This release adds forward compatibility for decrypting and sharing the upcoming "transparent session" encryption formats.
Please note that this release upgrades the storage format, so it cannot be rolled back to a previous version.
Version v2.30.0 introduced forward compatibility for padded encryption scheme. Make sure your end users use at least v2.30.0 before upgrading to v3.0.0.
Tanker now uses a padded symmetric encryption scheme by default. Adding padding to encrypted data aims at hiding the length of the clear message, see the dedicated guide.
We no longer ship the fully bundled UMD build of the JS SDK for @tanker/client-browser
.
deviceId()
functiongetDeviceList()
functionFix a browser compatibility issue introduced in v2.32.0 that triggers a TypeError: arrayBuffer is not a function
on some platforms, specifically Safari < 14.1 and Chrome < 76.