Notoriously Problematic Merge

    @sliksafe/protect
    TypeScript icon, indicating that this package has built-in type declarations

    1.0.6 • Public • Published

    Ransomware Protection

    Slik offers you the ability to protect all your data from ransoms by storing data on an immutable permanent storage, as a simple drop in NPM package.


    Once your data is secured using the @slik/protect package, it is stored on an immutable permanent storage after being encrypted. You can use this package to permanently store a file version, or a mission critical document with complete privacy.

    API Keys

    Before getting started you would need an API key. Create an API key via the console: https://console.developers.sliksafe.com

    Demo

    You can play around with the demo app that uses the protect SDK at: https://slikprotectdemo.web.app/

    Docs

    Please see a few samples below, but you can find the detailed docs here: https://developers.sliksafe.com/docs/package/ransomware-protection

    Install via yarn

    yarn add @sliksafe/protect

    Upload a File

    You can simply upload a file by calling the uploadFile method after initializing the library. The upload method accepts different parameters based on your requirements, specified in detail below.

    // Import SlikProtect
    import { SlikProtect } from '@sliksafe/protect'
    
    // Initialize protect
    const initParams = { apiKey: "api_key_string" }
    const protectHandler = await SlikProtect.initialize(initParams)
    
    // A file/blob/json/text object that needs to be secured.
    let data: File | Blob | String = "hello world"
    
    // Protect options
    const protectOptions = {
        data: data,
    }
    
    protectHandler.secure(protectOptions, (handle, dataId, err) => {
        console.log("The unique identifier of the data protected: ", dataId);
        
        if (!!err) {
          console.error('Failed to protect data: ', err)
        } else {
          console.log("Uploading data progress: ", handle.percentage);
    
          if (handle.status === "uploaded") {
            console.log("Data protection finished");
            console.log("The uid of protected data: ", dataId);
          }
        }
    });

    Fetch Data

    You can fetch the data protected above in the secure API call by simply calling the get api call. The get api call downloads the data and decrypts it using the encryption key. Example below:

    // Get protected file 
    const downloadOptions = { 
        dataId: "-N-ZESm8wbGeFuxpawPi",
    }
    
    protectHandler.get(downloadOptions, (downloadHandle, data, err) => {
        console.log("Downloading data progress: ", downloadHandle.percentage);
        
        if (downloadHandle.status === "downloaded") {
            console.log("Data download finished");
            console.log("Downloaded data: ", data);
        }
    });

    Encryption

    The protect package automagically handles end-to-end encryption for all your files protected.

    Each file is encrypted using military grade AES-256 symmetric key encryption, before it is protected using the package. Also, the file is seamlessly decrypted after being downloaded, before being returned back in the callback.

    Scalability

    The Slik infrastructure has been designed to scale with the needs of the developer. It is currently used by thousands of users worldwide to backup terabytes of data.

    Install

    npm i @sliksafe/protect

    DownloadsWeekly Downloads

    1

    Version

    1.0.6

    License

    MIT

    Unpacked Size

    25.4 MB

    Total Files

    25

    Last publish

    Collaborators

    • manisoni28
    • arpwal