π¨ No Math Degree Needed β’ π Mathematically Secure β’ π€ PNG Export β’ π§ͺ Tested
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.
| π 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 |
| π 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 |
ββββββββββββββββββββββββββββββββββββββββββββββββββββ
β π 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 β
ββββββββββββββββββββββββββββββββββββββββββββββββββββ
π 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
Found a scheme that needs better handling? Want to add color support?
Distributed under the MIT License. See LICENSE for details.
