Skip to content

Security: ShellMinisterSnare/visual-cryptography-free

Security

security.md

πŸ” Visual Cryptography Free


Version Python License Schemes


πŸ–ΌοΈ Split any image into shares that reveal the secret only when stacked

🎨 No Math Degree Needed β€’ πŸ”’ Mathematically Secure β€’ πŸ“€ PNG Export β€’ πŸ§ͺ Tested


Try Online Β Β  Get Code Β Β  Docs
fea3e248-488d-4191-8d55-77442309820b

🌟 About

Visual Cryptography Free is a clean, easy-to-use implementation of visual secret sharing β€” a cryptographic technique that splits an image into multiple "shares" that look like random noise. Stack the right shares and the original secret appears to the human eye β€” no computer, no decryption math, no keys.

It's cryptography you can literally see. Perfect for teaching, research, and fun demonstrations.

πŸ’‘ Perfect for: Computer science students, educators, puzzle makers, and anyone curious about the beautiful intersection of math and images.

🎯 Key Features

πŸ” Image Splitting πŸ–ΌοΈ Share Stacking 🎨 Multiple Schemes
Any B&W image
becomes N shares
Combine shares
to reveal the secret
(2,2), (3,3), and
general (k,n) schemes
πŸ“€ PNG Export πŸ§ͺ Verified πŸŽ“ Educational
Save shares with
zero quality loss
Unit tests validate
every pixel
Well-commented code
& included tutorials

πŸ† Why This Tool

πŸ’Ž Advantage πŸ“ Description
🧠 Real Cryptography Implements well-known Naor–Shamir visual secret sharing schemes
🎯 Pixel-Perfect No lossy compression β€” the stacked result matches the original exactly
πŸ“š Well Documented Every function is commented; the theory is explained in docs/
🎨 Clean Output Shares look like proper random noise β€” no information leaks
πŸ§ͺ Battle-Tested 500+ unit tests verify correctness and information-theoretic security
πŸ†“ Truly Free MIT-licensed, no ads, no accounts, no cloud uploads

🎬 Tool in Action

╔══════════════════════════════════════════════════╗
β•‘  πŸ”  Visual Cryptography Free  v2.0.0            β•‘
╠══════════════════════════════════════════════════╣
β•‘                                                  β•‘
β•‘  πŸ”’ Step 1: Load secret image                    β•‘
β•‘  βœ… secret.png  (128 Γ— 128 px, B&W)              β•‘
β•‘                                                  β•‘
β•‘  βš™οΈ  Step 2: Choose scheme                       β•‘
β•‘  β–Ά (2, 2)  β€” 2 shares, both required             β•‘
β•‘                                                  β•‘
β•‘  πŸ“€ Step 3: Generate shares                      β•‘
β•‘  βœ… share_1.png  (256 Γ— 256, noise)              β•‘
β•‘  βœ… share_2.png  (256 Γ— 256, noise)              β•‘
β•‘                                                  β•‘
β•‘  πŸ–ΌοΈ Step 4: Preview stacked result               β•‘
β•‘  β–“β–“β–“β–‘β–‘β–“β–“β–“β–‘β–‘β–“β–“β–“β–‘β–‘β–“β–“β–“   ← reveals secret!          β•‘
β•‘  β–‘β–‘β–‘β–“β–“β–“β–‘β–‘β–“β–“β–“β–‘β–‘β–“β–“β–“β–‘β–‘                              β•‘
β•‘                                                  β•‘
β•‘  βœ… Stacking share_1 + share_2 = secret          β•‘
β•‘  ❌ share_1 alone = pure noise                   β•‘
β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•

🧩 Project Structure

πŸ” visual-cryptography-free/
β”œβ”€β”€ 🎯 src/
β”‚   β”œβ”€β”€ schemes/               # Visual crypto schemes
β”‚   β”‚   β”œβ”€β”€ scheme_2_2.py
β”‚   β”‚   β”œβ”€β”€ scheme_3_3.py
β”‚   β”‚   └── scheme_general.py
β”‚   β”œβ”€β”€ image/                 # Image I/O
β”‚   β”‚   β”œβ”€β”€ loader.py
β”‚   β”‚   └── exporter.py
β”‚   β”œβ”€β”€ stack/                 # Share stacking logic
β”‚   └── cli/                   # Command-line interface
β”œβ”€β”€ πŸ§ͺ tests/                  # Unit & pixel-perfect tests
β”œβ”€β”€ πŸ“– docs/                   # Theory & tutorials
└── πŸ–ΌοΈ examples/               # Sample secrets & shares

πŸ› οΈ Tech Stack

Python Pillow NumPy pytest Matplotlib

🀝 Community

Found a scheme that needs better handling? Want to add color support?

πŸ“œ License

Distributed under the MIT License. See LICENSE for details.


πŸ” Made with πŸ–ΌοΈ by the Visual Cryptography Team

If this project sparked your curiosity β€” star the repo!

There aren't any published security advisories