
Product
Announcing Socket Fix 2.0
Socket Fix 2.0 brings targeted CVE remediation, smarter upgrade planning, and broader ecosystem support to help developers get to zero alerts.
@basis-theory/basis-theory-js-encryption
Advanced tools
The [Basis Theory](https://basistheory.com/) JS Encryption SDK
The Basis Theory JS Encryption SDK
Using Node Package Manager
npm install --save @basis-theory/basis-theory-js-encryption
Using Yarn
yarn add @basis-theory/basis-theory-js-encryption
For further documentation and examples, please refer to our Docs.
import { BasisTheoryEncryption } from '@basis-theory/basis-theory-js-encryption';
const btEncryption = await new BasisTheoryEncryption().init([new EncryptionProvider()]); // replace with an actual provider(s)
Encryption and Key Management is provided to enable you to manage your own data encryption and key storage with your KMS provider(s) of choice.
import { BasisTheoryEncryption } from '@basis-theory/basis-theory-js-encryption';
// Given provider(s) will register it's factories for the services
const btEncryption = await new BasisTheoryEncryption().init([new EncryptionProvider()]);
// Retrieves or creates a key by name with a registered ProviderKeyFactory for the provided provider and algorithm
let providerEncryptionKey = await btEncryption.providerKeyService.getOrCreateKey('encryption-key', 'AZURE', 'RSA');
providerEncryptionKey = await btEncryption.providerKeyService.getKeyByKeyId(providerEncryptionKey.keyId);
import { v4 as uuid } from 'uuid';
import { BasisTheoryEncryption } from '@basis-theory/basis-theory-js-encryption';
// Given provider will register it's factories for the services.
const btEncryption = await new BasisTheoryEncryption().init(new EncryptionProvider());
// Provider Key which was generated from the ProviderKeyService
let providerEncryptionKey: ProviderEncryptionKey = {
keyId: uuid(),
providerKeyId: 'https://custom-kms.vault.azure.net/keys/encryption-key/809b10a3cedb83e83bbaeb5e8c762fab',
algorithm: 'RSA',
provider: 'AZURE'
};
// Encrypt string to get back a wrapped encryptedData with a reference to the providerEncryptionKey
const encryptedData = await btEncryption.encryptionService.encrypt('My Super Secret', providerEncryptionKey);
// Use Encrypted Data and Provider Encryption Key to decrypt the the value and get back the original plainText
const plainText = await btEncryption.encryptionService.decrypt(encryptedData, providerEncryptionKey);
The provided scripts with the SDK will check for all dependencies, start docker, build the solution, and run all tests.
Run the following command from the root of the project:
make verify
FAQs
The [Basis Theory](https://basistheory.com/) JS Encryption SDK
We found that @basis-theory/basis-theory-js-encryption demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 10 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Socket Fix 2.0 brings targeted CVE remediation, smarter upgrade planning, and broader ecosystem support to help developers get to zero alerts.
Security News
Socket CEO Feross Aboukhadijeh joins Risky Business Weekly to unpack recent npm phishing attacks, their limited impact, and the risks if attackers get smarter.
Product
Socket’s new Tier 1 Reachability filters out up to 80% of irrelevant CVEs, so security teams can focus on the vulnerabilities that matter.