This program can be run on any version of Python 3.
As Libarys you have to install:
os
shutil
opencv
PySimpleGUI
pillow
bitarray
random
csv
math
To use the programm you have to run the GenerateNumbers.py
file, to generate the numbers and key table. This file the must be shared with all users you want to send messages to.
First select an image (Only .png
) by pressing the Choose Image
button on the left side. Then enter your text to the textfield below. Then press the Convert
button. Then you can save the image by clicking the Save
button. Also copy the key
and send it with the image.
First enter the key
send with the image to the textfield at the top right. Then click the Choose Image
button and select your image. Now click the Convert
button and the message appears in the textfield.
First every letter of the message gets converted to a number. Then every number gets charged with the key. All results get converted to binary. Then at every chrominance in every pixel in the image the last bit gets replaced by one bit of the message.
First at every chrominance in every pixel in the image the last bit gets read and added together to a string. Then the strings get split into numbers which get charged with the key. The new numbers get back converted to letters.
This program was original developed for the "Data security" competition of Explore Science 2022 in Mannheim.
With this project, we earned the 1. place.