Skip to content

a Python-based pipeline that: Encrypts system/application logs and saves them as PDF. Uploads the encrypted PDF to IPFS for decentralized, permanent storage. Stores the IPFS CID (hash) on the blockchain to ensure immutability and verifiable proof of existence.

Notifications You must be signed in to change notification settings

EliteCoder18/EncryptedLogStorage

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

8 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

EncryptedLogStorage

LogPin

Secure, encrypted log archiving using IPFS and blockchain-backed immutability.


Overview

LogPin is a Python-based pipeline that:

  1. Encrypts system/application logs and saves them as PDF.
  2. Uploads the encrypted PDF to IPFS for decentralized, permanent storage.
  3. Stores the IPFS CID (hash) on the blockchain to ensure immutability and verifiable proof of existence.

This project is designed for research and practical applications where logs need to be:

  • Securely stored
  • Tamper-proof
  • Decentralized and recoverable

Features

  • Encryption-first: Logs are encrypted before upload for data privacy.
  • Decentralized storage: Uses IPFS to store logs permanently.
  • Immutable hash storage: Stores the IPFS CID on the blockchain for tamper-proof, verifiable logging.
  • Python-powered: Easy to understand, modify, and extend.

Tech Stack

  • Python (processing, encryption, IPFS upload, blockchain interaction)
  • IPFS (via Pinata)
  • Blockchain (Sepolia Ethereum testnet currently)
  • PDF Encryption (PyPDF2, reportlab)

Project Structure

LogPin/
β”‚
β”œβ”€β”€ log_encryptor.py       # Encrypts and generates PDF from logs
β”œβ”€β”€ ipfs_uploader.py       # Uploads encrypted PDFs to IPFS
β”œβ”€β”€ blockchain_pusher.py   # Stores CID/hash on blockchain
β”œβ”€β”€ requirements.txt       # Dependencies
└── README.md              # Documentation

Getting Started

1 Clone the repository:

git clone https://github.com/yourusername/LogPin.git
cd LogPin

2 Install dependencies:

pip install -r requirements.txt

3 Set up environment variables:

Create a .env file:

PINATA_API_KEY=your_pinata_key
PINATA_SECRET_API_KEY=your_pinata_secret
BLOCKCHAIN_RPC_URL=https://sepolia.infura.io/v3/your_project_id
PRIVATE_KEY=your_wallet_private_key

4 Run the pipeline:

python log_encryptor.py
python ipfs_uploader.py
python blockchain_pusher.py

Use Cases

  • Secure ransomware-resistant log storage
  • Forensics-ready system/application log archiving
  • Decentralized log management for distributed environments
  • Academic/research blockchain + IPFS data integrity projects

Contributing

Contributions are welcome! Feel free to open issues or pull requests to add features, fix bugs, or improve documentation.


License

MIT License. See LICENSE for details.


Acknowledgements


πŸ“§ Contact

If you find this project useful, consider ⭐ starring the repo.

For queries, open an issue on GitHub or reach out at [email protected].

About

a Python-based pipeline that: Encrypts system/application logs and saves them as PDF. Uploads the encrypted PDF to IPFS for decentralized, permanent storage. Stores the IPFS CID (hash) on the blockchain to ensure immutability and verifiable proof of existence.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages