53683d5d85498d35abfe5afde41d3edefb87199c
PCS - P7MJ's enCryption System
Version: A-1-i Proto
Author: P7MJ
PCS is a lightweight, secure Python utility designed to encrypt and decrypt ZIP files (and other binary data) using industry-standard AES-256 encryption via the Fernet protocol.
🚀 Features
- Hardened Key Derivation: Uses
PBKDF2HMACwith 480,000 iterations to turn your password into a cryptographically strong key. - Salted Encryption: Generates a unique 16-byte random salt for every encryption process, protecting against rainbow table attacks.
- Embedded Metadata: The salt is stored directly inside the encrypted file (
.p7c_enc), so you only need your password to decrypt. - Authenticated Encryption: Uses Fernet, which ensures that if the file is tampered with or the password is wrong, the system will refuse to decrypt rather than producing corrupted data.
- User Safety: Includes file existence verification and optional "shredding" (deletion) of source files after processing.
🛠️ Installation
PCS requires Python 3.x and the cryptography library.
- Clone or download this repository.
- Install the dependency:
pip install cryptography
📖 How to Use
Run the script using:
python PCS-A-1-i-Proto.py
1. Encrypting a File
- Select option
[1]. - Enter the name of your
.zipfile (the script automatically appends the extension). - Create a password. Important: If you lose this password, your data is unrecoverable.
- The script creates a file with the
.p7c_encextension. - Choose whether to "shred" (permanently delete) the original file.
2. Decrypting a File
- Select option
[2]. - Enter the full name of the
.p7c_encfile. - Enter your password.
- The file will be restored as
unencrypted.zip.
⚠️ Important Security Notes
- Password Length: While the script is technically secure, the strength of the encryption relies entirely on the complexity of your password.
- The Salt: The first 16 bytes of your
.p7c_encfile is the salt. Do not modify or "trim" the encrypted file, or it will become undecryptable. - Permanent Deletion: The "shred" feature uses
os.remove(), which bypasses the Recycle Bin/Trash on most systems. Use with caution!
🏗️ Technical Details
- Encryption Engine: AES-128 in CBC mode with PKCS7 padding.
- Authentication: HMAC using SHA256.
- KDF: PBKDF2 with SHA256.
A-3-ii Terminal
Latest
Languages
Python
100%