spd-lib

1.1.6 • Public • Published

Secure Packaged Data (SPD)

The Secure Packaged Data (SPD) module provides functionality to securely store and retrieve data using encryption, compression, and hashing. This README explains how to use the SPD class and its methods.

Installation

First, ensure you have Node.js installed. Then, install the required packages:

npm install spd-lib

Usage

Below are the primary functionalities of the SPD class.

Initialization

Create an instance of the SPD class:

const { SPD } = require('spd-lib');

const spd = new SPD();

Setting Passcode

Set a passcode for encrypting the data:

await spd.setPassKey('your-passcode');

Adding Data

Add data to the SPD instance:

await spd.addData('dataName', yourData);

Saving Data to File

Save the encrypted and compressed data to a file:

spd.saveToFile('path/to/output.spd');

Loading Data from File

Load the data from an SPD file:

const loadedSPD = await SPD.loadFromFile('path/to/output.spd', 'your-passcode');

Extracting Data

Extract and decrypt the data from the SPD instance:

const extractedData = await loadedSPD.extractData();
console.log(extractedData);

Example

Here is a complete example of how to use the SPD module:

const { SPD } = require('./path/to/spd.js');

(async () => {
    const spd = new SPD();
    await spd.setPassKey('your-passcode');

    const myData = {
        name: "Alice",
        age: 30,
        isMember: true,
        preferences: ["reading", "gaming"]
    };

    await spd.addData('userData', myData);

    spd.saveToFile('path/to/output.spd');

    const loadedSPD = await SPD.loadFromFile('path/to/output.spd', 'your-passcode');
    const extractedData = await loadedSPD.extractData();

    console.log(extractedData);
})();

Methods

async setPassKey(passcode)

Sets the passcode for encrypting and decrypting data.

  • Parameters: passcode (string) - The passcode to be used.

async addData(name, data)

Adds data to the SPD instance.

  • Parameters:
    • name (string) - The name of the data.
    • data (any) - The data to be stored.

saveToFile(outputPath)

Saves the encrypted and compressed data to a file.

  • Parameters: outputPath (string) - The path to save the file.

static async loadFromFile(spdPath, passcode)

Loads the SPD data from a file.

  • Parameters:

    • spdPath (string) - The path to the SPD file.
    • passcode (string) - The passcode to decrypt the data.
  • Returns: An instance of SPD with the loaded data.

async extractData()

Extracts and decrypts the data from the SPD instance.

  • Returns: An object with the decrypted data.

License

This project is licensed under the MIT License.

Package Sidebar

Install

npm i spd-lib

Weekly Downloads

97

Version

1.1.6

License

ISC

Unpacked Size

14.5 kB

Total Files

3

Last publish

Collaborators

  • alsopss10