Licence
Apache-2.0
Version
1.1.0
Deps
0
Size
290 kB
Vulns
0
Weekly
0
WinCrypt
Windows Only
WinCrypt is built in rust and uses the native windows api's CryptProtectData and CryptUnprotectData functions
Example
const wincrypt = require("wincrypt");
const text = Buffer.from("test");
const pass = Buffer.from("123");
const encrypted = wincrypt.protectData(text, pass);
console.log(wincrypt.unprotectData(encrypted, pass).toString()); // Prints "test"
Types
export const enum Flags {
CurrentUser = "CurrentUser",
LocalMachine = "LocalMachine"
}
export function protectData(
data: Buffer,
optionalEntropy?: Buffer | undefined | null,
flags?: Flags | undefined | null
): Buffer;
export function unprotectData(
data: Buffer,
optionalEntropy?: Buffer | undefined | null,
flags?: Flags | undefined | null
): Buffer;
Usage
Without password
wincrypt.protectData(Buffer.from("test"));
With custom flag (only CRYPTPROTECT_LOCAL_MACHINE supported)
INFO: Default flag is
0("CurrentUser")
wincrypt.protectData(Buffer.from("test"), null, wincrypt.Flags.LocalMachine);
// or
wincrypt.protectData(Buffer.from("test"), null, "LocalMachine");
The usage for
unprotectDatamethod is the same asprotectData
(C) Angelo II Apache-2.0 license, all right reserved