Skip to content

Applying Steganography followed by Visual Cryptography Encode and Decode data

Notifications You must be signed in to change notification settings

nishnash54/TwoStepEncryption

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Two Step Encryption

Introduction

Applying Steganography followed by Visual Cryptography. Implementation based on the research paper titled "Combine use of Steganography and Visual Cryptography for Secured Data hiding in Computer Forensics"

Steganography is the method of hiding secret data inside any form of digital media. The main idea behind steganography is to hide the existence of a data in any medium like audio, video, image etc.

Visual cryptography is a cryptographic technique which allows visual information (pictures, text, etc.) to be encrypted in such a way that the decrypted information appears as a visual image.

Architecture

image

Project

Structure
.
├── images
├── main.py
├── README.md
├── Reference_paper.pdf
├── requirements.txt
└── src
    ├── lsb_stegno.py
    └── n_share.py
File description
File Description
lsb_stegno.py Methods to Encode and Decode data using LSB Steganography
n_share.py Methods to Split and Compress LSB Encoded images

Algorithms

Steganography
Encoding data in image
# Putting modified pixels in the new image
newimg.putpixel((x, y), pixel)
if (x == w - 1):
    x = 0
    y += 1
else:
    x += 1
Decoding data from image
# string of binary data
binstr = ''

for i in pixels[:8]:
    if (i % 2 == 0):
        binstr += '0'
    else:
        binstr += '1'

data += chr(int(binstr, 2))
if (pixels[-1] % 2 != 0):
    return data
Visual Cryptography
Generating shares
# Split image based on random factor
n = int(np.random.randint(data[i, j, k] + 1))
img1[i, j, k] = n
img2[i, j, k] = data[i, j, k] - n
Compressing shares
img[i, j, k] = img1[i, j, k] + img2[i, j, k]
Usage
Setup

Install dependencies

pip install -r requirements.txt

Run using python

streamlit run main.py

About

Applying Steganography followed by Visual Cryptography Encode and Decode data

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages