Skip to main content

A zero-knowledge encrypted vault CLI tool.

Project description

🔐 PaasZK – Secure Vault Sync CLI

Project Logo

PaasZK is a lightweight, CLI-based encrypted vault system that lets you safely store and sync confidential files across cloud providers. It supports encrypted file storage, cloud synchronization, and backend storage abstraction — all under your control.


🔒 Purpose

PaasZK was built to:

  • Encrypt your sensitive files locally using strong AES encryption.
  • Store and synchronize encrypted files across multiple cloud storage providers (S3, Dropbox, Google Drive).
  • Allow easy configuration of storage backends using a secure YAML config file.

🛡️ Encryption Details

  • Algorithm: AES-256 GCM (Galois/Counter Mode)
  • Key Derivation: From passphrase using your master key loading mechanism.
  • Config & metadata are stored in an encrypted YAML file using AES-GCM with random IV and authentication tag.

AES-GCM provides authenticated encryption, meaning it protects both the confidentiality and integrity of your data.


⚙️ Basic Usage

# Initialize a new vault in the current directory
paaszk init [--import-key PATH]
##Sets up the current directory as a new encrypted vault.

## --import-key PATH: Optional path to an existing encrypted derived master key to import instead of generating a new one.

# Encrypt and push encrypted files to remote storage
paaszk push [FILE_OR_FOLDER] [--storage STORAGE_NAME] [--recursive]
##Encrypt and upload files to your configured storage.

##Defaults to current directory if no file/folder specified.

##--storage STORAGE_NAME: Specify which storage backend to use.

##--recursive: If pushing a directory, recursively include all subfiles.


# Pull remote encrypted files into vault
paaszk pull --storage STORAGE_NAME
##Download and decrypt all files from the specified storage backend into your local cache.

# Configure storages
paaszk config <command> [options]
#Available subcommands:

 #   list: List all configured storage backends.

paaszk config list [--yaml]

  #  --yaml: Output the raw YAML config.


#add: Add a new storage backend.

paaszk config add NAME

 #   NAME: The name to assign the new storage backend.

#remove: Remove an existing storage backend.

paaszk config remove NAME

 #   NAME: The storage backend to remove

----------------------------------------------------
#Initialize a vault and import an existing key:

paaszk init --import-key ./my_derived_key.enc

#Push all files from current folder recursively to Dropbox backend:

paaszk push . --storage dropbox --recursive

#Pull all files from the Google Drive backend:

paaszk pull --storage google_drive

#Add a new S3 storage backend called my_s3:

paaszk config add my_s3

#List all storage backends in YAML format:

paaszk config list --yaml
 

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

paaszk-0.1.5.tar.gz (14.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

paaszk-0.1.5-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file paaszk-0.1.5.tar.gz.

File metadata

  • Download URL: paaszk-0.1.5.tar.gz
  • Upload date:
  • Size: 14.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for paaszk-0.1.5.tar.gz
Algorithm Hash digest
SHA256 426f00492c5221e0e64a155986762692b797c051cfacc54a132480c2c818f463
MD5 2cd7c88d3a551dc57998b9acf2abbfab
BLAKE2b-256 cbbbefdb957d148ee67f70cb2b37a869812e79512a8987ccfa9733e68cb48651

See more details on using hashes here.

File details

Details for the file paaszk-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: paaszk-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 15.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for paaszk-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 05c352cd33f8564d8bc2a4f84287d02c12e05a049e541e8cf82859d9c4194520
MD5 82013554ebe113775f670bf99ce65e14
BLAKE2b-256 fafb393aa621543291475069a389435fa4c4a147e1e55ff237b54f7f24926a9c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page