🔐
Zero Trust Data Format
Implementation of Zero Trust Data Format (ZTDF) with AES-256-GCM encryption.
Cross-platform encryption library with ZTDF support
npm install sdsdk.tgz// 1. Import Sdsdk class from the sdsdk module
import { Sdsdk } from 'sdsdk';
// 2. Configure sdsdk instance
const sdsdk = new Sdsdk({
defaultKasId: 'myKas',
// 3. List all key access servers that can be used for encryption
kasList: [
{
id: 'myKas',
protocols: [Protocol.Kas],
url: 'https://myKas.com/api/v1/163e04ad-f8b4-4fcb-abf2-9de3640a1f00/kas',
authentication: {
type: 'basic',
value: 'dGVzdEFwaUtle...zSmtBRkxyM0JaL0x4Vw==',
},
publicKey: {
kid: 'f19484ec-3fa2-4603-8de4-afc51d762d30',
value: `-----BEGIN PUBLIC KEY-----
MIICIjANBgkqhki...
-----END PUBLIC KEY-----`,
},
},
],
});
// 4. Encrypt data in Zero Trust Data Format (ZTDF)
const ztdf = await sdsdk.encrypt({
data: new TextEncoder().encode('Hello World!'),
dataAttributes: [{ location: 'france' }],
protocol: Protocol.Kas,
});
// 5.Decrypt ZTDF file
const decrypted = await sdsdk.decrypt(ztdf);
console.log(new TextDecoder().decode(decrypted.data));| Platform | Version |
|---|---|
| Node.js | 20+ |
| Firefox | 146+ |
| Chromium | 145+ |