## FS-Encrypted
- [FS-Encrypted](#fs-encrypted)
- [Introduction](#introduction)
- [Installation](#installation)
- [Usages](#usages)
- [Development](#development)
### Introduction
The EncryptedFS is a file system implementation that provides encryption and decryption functionalities for files. It is built using PyFilesystem and AES encryption.
This allows minimal modification for existing applications to use
Example:
```python
from fs_encrypted.encrypted_fs import EncryptedFS
import base64
#Generate and Store your keys securely !!!
key = base64.urlsafe_b64encode(b"Hello I'm a 32bit encoded string")
# Create a directory called secure_data
file_system = EncryptedFS("./secure_data", key)
# create a file called my_secrets.txt and encrypt as it's written to
with file_system.open("my_secrets.txt", "w") as file :
file.write(b"Top Secret Data!!")
# read and decrypt my_secrets
with file_system.open("my_secrets.txt", "r") as file :
file.read()
```
### Installation
Use pip or poetry to install
```
pip install fs-encrypted
```
or
```
poetry add fs-encrypted
```
### Usages
Applications that may require sensitive data storage should use an encrypted file system.
By providing a layer of abstraction on top of the encryption our hope is to make it easier to store this data.
* PII / PHI
* Print Billing systems
* Insurance services / Identity cards
* Data Transfer
* Secure distributed configuration
Fernet is used as the encryption method (v0.1), this may become a configurable option in future revisions
### Development
Clone the fs-encrypted repository https://github.com/thevgergroup/fs-encrypted
Development is done using poetry
Tests are run as
```
poetry run python -m unittest tests/*.py
```
Raw data
{
"_id": null,
"home_page": "https://github.com/thevgergroup/fs-encrypted",
"name": "fs-encrypted",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.9",
"maintainer_email": null,
"keywords": "filesystem, encryption, pyfilesystem2",
"author": "patrick o'leary",
"author_email": "pjaol@pjaol.com",
"download_url": "https://files.pythonhosted.org/packages/0d/de/a2a173ff09fc64c9acf356aee3c131a49fd51af583ad64c3ddc05ca36bbf/fs_encrypted-0.1.5.tar.gz",
"platform": null,
"description": "## FS-Encrypted \n\n- [FS-Encrypted](#fs-encrypted)\n - [Introduction](#introduction)\n - [Installation](#installation)\n - [Usages](#usages)\n - [Development](#development)\n\n\n### Introduction\n\nThe EncryptedFS is a file system implementation that provides encryption and decryption functionalities for files. It is built using PyFilesystem and AES encryption. \nThis allows minimal modification for existing applications to use\nExample: \n\n```python\n\nfrom fs_encrypted.encrypted_fs import EncryptedFS\nimport base64\n\n#Generate and Store your keys securely !!!\nkey = base64.urlsafe_b64encode(b\"Hello I'm a 32bit encoded string\") \n\n# Create a directory called secure_data \nfile_system = EncryptedFS(\"./secure_data\", key)\n\n# create a file called my_secrets.txt and encrypt as it's written to\nwith file_system.open(\"my_secrets.txt\", \"w\") as file : \n file.write(b\"Top Secret Data!!\")\n\n# read and decrypt my_secrets\nwith file_system.open(\"my_secrets.txt\", \"r\") as file : \n file.read()\n\n```\n\n### Installation\n\nUse pip or poetry to install\n```\npip install fs-encrypted\n```\nor \n```\npoetry add fs-encrypted\n```\n\n### Usages \nApplications that may require sensitive data storage should use an encrypted file system.\nBy providing a layer of abstraction on top of the encryption our hope is to make it easier to store this data.\n\n* PII / PHI \n * Print Billing systems \n * Insurance services / Identity cards \n* Data Transfer \n* Secure distributed configuration\n\n\nFernet is used as the encryption method (v0.1), this may become a configurable option in future revisions\n\n\n### Development\n\nClone the fs-encrypted repository https://github.com/thevgergroup/fs-encrypted\n\nDevelopment is done using poetry\n\nTests are run as \n```\npoetry run python -m unittest tests/*.py\n```\n\n\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "An encrypted filesystem for python using PYFilesystem2",
"version": "0.1.5",
"project_urls": {
"Homepage": "https://github.com/thevgergroup/fs-encrypted",
"Repository": "https://github.com/thevgergroup/fs-encrypted.git"
},
"split_keywords": [
"filesystem",
" encryption",
" pyfilesystem2"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "e438d244ae1ea501c69ee1ec8090074e47bad5a93119943ae7066ea6566fa98e",
"md5": "af5942065e32a0cbdf3a682912b316e9",
"sha256": "a0e9dee794068fbd9f643880d399d5fb01850d05d19980932f0b26460c3ec9b2"
},
"downloads": -1,
"filename": "fs_encrypted-0.1.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "af5942065e32a0cbdf3a682912b316e9",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.9",
"size": 5273,
"upload_time": "2024-03-30T17:34:23",
"upload_time_iso_8601": "2024-03-30T17:34:23.156376Z",
"url": "https://files.pythonhosted.org/packages/e4/38/d244ae1ea501c69ee1ec8090074e47bad5a93119943ae7066ea6566fa98e/fs_encrypted-0.1.5-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0ddea2a173ff09fc64c9acf356aee3c131a49fd51af583ad64c3ddc05ca36bbf",
"md5": "c39d4b540e4b91b77cf41b8039c63a7d",
"sha256": "ce66a5b362402b3dfc18b36c0f7c91440549832fcfa55b4359d697af03091625"
},
"downloads": -1,
"filename": "fs_encrypted-0.1.5.tar.gz",
"has_sig": false,
"md5_digest": "c39d4b540e4b91b77cf41b8039c63a7d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.9",
"size": 4256,
"upload_time": "2024-03-30T17:34:24",
"upload_time_iso_8601": "2024-03-30T17:34:24.651266Z",
"url": "https://files.pythonhosted.org/packages/0d/de/a2a173ff09fc64c9acf356aee3c131a49fd51af583ad64c3ddc05ca36bbf/fs_encrypted-0.1.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-03-30 17:34:24",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "thevgergroup",
"github_project": "fs-encrypted",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "fs-encrypted"
}