Skip to main content

User-friendly Python GUI for seamless and secure file encryption and transfer, enhancing data privacy.

Project description

Secure Data Transfer Device 🛡️

A Raspberry Pi-based solution for secure and user-friendly data encryption and transfer.

Secure Data Transfer Device

Content Table 📑

Project Overview 🚀

Protecting Sensitive Data Made Simple.

The Secure Data Transfer Device seamlessly combines hardware and software components to create a robust solution for safeguarding and sharing sensitive information.

📦 Software & Hardware Components

Explore the Core Components 🧩

Software Components | Hardware Components

Software Components 📂

  • main.py: The intuitive graphical interface, allowing you to encrypt or decrypt files effortlessly.

  • encryption/symmetric.py: Handles symmetric encryption, perfect for secure group sharing using the AES algorithm.

  • encryption/asymmetric.py: Employs RSA encryption with public keys for individual sharing, ensuring data security.

  • decryption/symmetric.py: Handles symmetric decryption, allowing the user to decrypt files that were encrypted using the AES algorithm.

  • decryption/asymmetric.py: Employs RSA decryption with private keys, enabling the user to decrypt files that were encrypted using the RSA algorithm.

  • decryption_gui.py: The graphical interface for decrypting files.

  • encryption_gui.py: The graphical interface for encrypting files.

  • file_operations.py: Contains file operation functions for reading, writing, and manipulating file paths.

Hardware Components 🧰

  • Raspberry Pi: The invisible guardian between your computer and an external hard drive, fortifying data security.

  • External Hard Drive: A secure vault for your encrypted files, ensuring data remains protected, even if the drive is misplaced.

Usage 📋

Your Data, Your Control.

Auto-Start | Encrypting Files | Decrypting Files | Hardware Integration | Alternative Usage

Auto-Start

Connect the Raspberry Pi to your computer, and the MainGUI.py application will auto-launch, offering a seamless user experience.

Encrypting Files

Secure your files for:

  • Group Sharing (Symmetric Encryption): Select a file, pick the encryption method, and specify the destination directory on the connected hard drive.

  • Individual Sharing (Asymmetric Encryption): Select a file, provide the recipient's public key, and choose the destination directory.

Decrypting Files

To decrypt files:

  • Symmetric Encryption: Enter the encryption key and choose the destination directory.

  • Asymmetric Encryption: Pick your private key file and the destination directory.

Hardware Integration 🔌

Seamless, Yet Robust.

  1. Connect the external hard drive to the Raspberry Pi.
  2. Power up the Raspberry Pi to recognize and auto-mount the hard drive upon connection.
  3. Connect the Raspberry Pi to the computer handle file encryption, decryption, and data transfer to/from the hard drive.

Alternative Usage 📋

To use the Secure Data Transfer Software on another hardware, follow these steps:

  1. Upgrade pip to the latest version:
pip install --upgrade pip
  1. Install the Secure Data Transfer package:
pip install securedatatransfer
  1. Run the package.
secure-transfer

User Documentation 📖

Guides, Tips, and Support.

For comprehensive instructions on using the "Secure Data Transfer Device," please refer to the user documentation provided with the project. This documentation includes step-by-step guides, troubleshooting tips, and contact information for support.

Testing and Feedback 🧪

We Value Your Input.

The Secure Data Transfer Device project has undergone extensive testing to ensure both security and usability. However, user feedback is invaluable for further enhancements. Please feel free to provide feedback and report any issues in the project's repository.

Dependencies 🛠️

The Building Blocks.

This project relies on the following dependencies:
  • Python: The primary programming language used for scripting and development.

  • PyQt5: A Python binding for the Qt application framework, used for creating the graphical user interface (GUI).

  • Crypto: A cryptographic library for Python, providing support for encryption and decryption operations.

  • Raspberry Pi OS: The operating system for the Raspberry Pi, which serves as the core hardware component.

Please ensure that these dependencies are installed and configured correctly to run the Secure Data Transfer Device.

pip install -r requirements.txt

License 📜

Open Source and Free to Use.

This project is open-source and released under the [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0) - check the [License](LICENSE) file for more details.

Contributions 🤝

Join Us and Make a Difference.

If you would like to contribute to this project, please review our Contribution Guidelines for detailed information on creating issues, suggesting new features, and submitting pull requests.

Made with ❤️

This Project Was Crafted with Passion and Dedication.

We poured our hearts and countless hours into creating the Secure Data Transfer Device. Our team of dedicated senior students and university researchers worked tirelessly to ensure that your data remains secure and your user experience is seamless.

We hope this project brings you value and simplifies the way you protect and share sensitive information. Your support and feedback mean the world to us.

Project details


Release history Release notifications | RSS feed

This version

1.0

Download files

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

Source Distribution

securedatatransfer-1.0.tar.gz (15.2 kB view details)

Uploaded Source

Built Distribution

securedatatransfer-1.0-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

Details for the file securedatatransfer-1.0.tar.gz.

File metadata

  • Download URL: securedatatransfer-1.0.tar.gz
  • Upload date:
  • Size: 15.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.12.2 Darwin/21.6.0

File hashes

Hashes for securedatatransfer-1.0.tar.gz
Algorithm Hash digest
SHA256 12b2f989303d9381d90556c130deeb16ad79260a21d70a54447353323bc5b9b4
MD5 3b4c7f0ba5ee5b1352c7ecdedf64c316
BLAKE2b-256 544173f7142c93eb950f942af255a801c13afce9a6a6623ac0b6e90c9a6c94ea

See more details on using hashes here.

File details

Details for the file securedatatransfer-1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for securedatatransfer-1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7f2cf0501e99712e41c775f8359ec2b0a314fbd566e1f87b83510af7f38049ca
MD5 895352b610b7183598969d258b66e6b1
BLAKE2b-256 e5c71409c5da4d467a29da84028541cddd95ae5aa5c6bb1b58af0da528f73a8e

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