Skip to main content

Setup file for datasafe.

Project description

DataSafe - Utilities for data encryption / decryption

Table of contents

Installation

pip install datasafe

Docker

git clone --depth 1 https://github.com/StephenRicher/datasafe.git
cd datasafe/
docker build -t datasafe .
docker run datasafe --help

Command-line

Encrypt

datasafe encrypt data.csv > data.encrypted

Decrypt

datasafe decrypt data.encrypted > data.decrypted.csv

Python

datasafe can be imported as a python module to encrypt and decrypt files.

Pandas

If a Pandas DataFrame is provided to datasafe.encrypt then it will be encrypted in .parquet format. Following decryption, an in-memory buffer is returned which should be passed to pd.read_parquet to recover the dataframe and datatypes.

import pandas as pd
from datasafe import encrypt, decrypt

df = pd.DataFrame({
    'A': [1, 2, 3],
    'B': ['dog', 'cat', 'bat']
})

encrypt(df, 'df-encrypted.pq')

df = pd.read_parquet(decrypt('df-encrypted.pq'))

Files

The command line functionality can also be achieved within Python. In addition the datasafe.decrypt function returns an in-memory buffer which can be read directly.

Encrypt and write encrypted data to file

import pandas as pd
from datasafe import encrypt, decrypt

with open('data.encrypted', 'wb') as fh:
    fh.write(encrypt('data.csv'))

Decrypt and write decrypted data to file

with open('data.decrypted.csv', 'w') as fh:
    fh.write(decrypt('data.encrypted').getvalue())

Decrypt and read in-memory buffer to Pandas

df = pd.read_csv(decrypt('data.encrypted'))

License

Distributed under the MIT License. See LICENSE for more information.

Contact

If you have any other questions please contact the author Stephen Richer at stephen.richer@proton.me

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

datasafe-0.1.0.tar.gz (5.1 kB view details)

Uploaded Source

File details

Details for the file datasafe-0.1.0.tar.gz.

File metadata

  • Download URL: datasafe-0.1.0.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.7

File hashes

Hashes for datasafe-0.1.0.tar.gz
Algorithm Hash digest
SHA256 3f44d687a9572745c29764ba2c6a33c1b7585fa201260f4e50521162db55abb7
MD5 b0f55cd7edc16d54aa7f2b97d19e0648
BLAKE2b-256 2bc92442ba905208bf0992851792db6d3fa8589f8bf88142047b1c4a9384c05e

See more details on using hashes here.

Supported by

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