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 hashes)

Uploaded Source

Built Distribution

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

Uploaded Python 3

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