Skip to content

Latest commit

Β 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

pin-maze

GitHub License GitHub Stars GitHub Forks GitHub Issues GitHub Pull Requests Contributions Welcome

Last Commit Commit Activity Repo Size Code Size

Top Language Languages Count

Discussions Documentation Open Source Love

Hide your files behind a 4-digit PIN path in a maze of decoy directories.


πŸ”— Links


πŸ“‘ Table of Contents


πŸ“– Description

PIN-Based Filesystem Maze is a fun, experimental CLI tool that buries a file deep inside a recursive directory tree. The only way to retrieve it is to know the 4-digit PIN β€” each digit is a directory level (PIN 4660 β†’ base/4/6/6/0/secret.txt). Every other branch is flooded with decoy files to confuse anyone snooping around.

No encryption. No external dependencies. Just obscurity through sheer filesystem chaos.


✨ Features

  • PIN-based path generation β€” 4-digit PIN maps to a unique 4-level directory path.
  • Decoy files β€” populate every non-PIN branch with realistic-looking junk.
  • Recursive 0-9 tree β€” each level spawns 10 subdirectories (10^4 = 10,000 leaf folders).
  • Colorful terminal output β€” ANSI-colored banners, steps, and tree view.
  • Visual tree display β€” highlights the PIN path in green.
  • Logging β€” every operation logged with timestamps to .pin_maze_logs/.
  • Zero dependencies β€” pure Python 3 standard library.
  • Cross-platform β€” works on Linux, macOS, and Windows.

πŸš€ Installation

Prerequisites

  • Python 3.10+ (uses match/case style type hints and tuple[...] syntax)

Setup

# Clone the repo
git clone https://github.com/H0NEYP0T-466/pin-maze.git
cd pin-maze

# No pip install needed β€” just run it
python pin_maze.py --help

⚑ Usage

CLI

# Basic usage β€” hide a file behind PIN 4660
python pin_maze.py --base ./vault --file ./secret.txt --pin 4660

# Add more decoys per level (default: 3)
python pin_maze.py --base ./vault --file ./secret.txt --pin 4660 --decoys 5

# Disable colors (for non-TTY / piping)
python pin_maze.py --base ./vault --file ./secret.txt --pin 0000 --no-color

# Quiet mode β€” suppress banner and tree
python pin_maze.py --base ./vault --file ./secret.txt --pin 4660 --quiet

Arguments

Flag Short Required Default Description
--base -b βœ… β€” Base directory where the maze is created
--file -f βœ… β€” Path to the file you want to hide
--pin -p βœ… β€” 4-digit PIN (e.g., 4660)
--decoys -d ❌ 3 Number of decoy files per leaf folder
--no-color β€” ❌ False Disable ANSI color output
--quiet -q ❌ False Suppress non-essential output

Retrieve Your File

# Navigate the PIN path
cd ./vault/4/6/6/0/

# Your file is here
cat secret.txt

πŸ“‚ Folder Structure

pin-maze/
β”œβ”€β”€ pin_maze.py          # Main CLI script (single-file tool)
β”œβ”€β”€ run_commands.txt     # Example command reference
β”œβ”€β”€ secret.txt           # Demo secret file
β”œβ”€β”€ README.md            # Project documentation
β”œβ”€β”€ LICENSE              # MIT License
β”œβ”€β”€ CONTRIBUTING.md      # Contribution guidelines
β”œβ”€β”€ SECURITY.md          # Security policy
β”œβ”€β”€ CODE_OF_CONDUCT.md   # Community code of conduct
└── .github/
    β”œβ”€β”€ ISSUE_TEMPLATE/
    β”‚   β”œβ”€β”€ bug_report.yml
    β”‚   β”œβ”€β”€ feature_request.yml
    β”‚   └── config.yml
    └── pull_request_template.md

πŸ›  Tech Stack

Languages

Python

Frameworks & Libraries

argparse pathlib logging shutil

DevOps / Tools

GitHub Git Markdown


πŸ“¦ Dependencies & Packages

This project uses only the Python 3 standard library. No external packages are required.

Runtime Dependencies

No external dependencies detected β€” uses Python standard library only.

Modules used:

  • argparse β€” CLI argument parsing
  • logging β€” structured log output with file handlers
  • os β€” filesystem operations
  • random β€” decoy sampling and content selection
  • shutil β€” file move operations
  • sys β€” stdout checks and exit codes
  • datetime β€” log timestamp formatting
  • pathlib β€” modern path manipulation

Dev / Build / Test Dependencies

No dev dependencies configured. Add a requirements-dev.txt or pyproject.toml if you introduce testing/linting tools (e.g., pytest, ruff, mypy).


🀝 Contributing

We welcome contributions! Please read our Contributing Guide for details on forking, code style, and submitting pull requests.


πŸ“œ License

This project is licensed under the MIT License β€” see the LICENSE file for details.


πŸ›‘ Security

Please review our Security Policy for information on reporting vulnerabilities and our disclosure process.


πŸ“ Code of Conduct

This project adheres to the Contributor Covenant Code of Conduct. By participating, you are expected to uphold this code.


Made with ❀ by H0NEYP0T-466

About

πŸ” Hide your files behind a 4-digit PIN path in a maze of decoy directories β€” obscurity through filesystem chaos.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages