grouphstegafy's People
grouphstegafy's Issues
Non alphabetic characters not removed
When encrypting text message, non-alphabetic characters are not removed, but replaced by other characters (spaces become T's)
Add Wiki
Provide a short summary of the project and a link to the assignment description.
extracting an embedded text message
When extracting an embedded text message, you will also need to determine how many bits per color channel were used to embed the message so it can be extracted. Additional, the following requirements must be met:
- Extract the message until the following characters are encountered: #.-.-.-#, which means the end of the message has been reached.
- The extracted message should be displayed within the GUI. The #.-.-.-# characters should not be displayed.
Store header information
When embedding the message, it also needs to embed that it contains a secret message, the type of message that is being embedded (text or image), the number of bits per color channel (BPCC) that were used, and whether encryption was used and the type of encryption that was used. Therefore, when extracting the message the program will automatically be able to determine what type of message was hidden, the encryption technique, if applicable, and extract the message accordingly.
This “header” information should be stored as follows in the first and second pixel:
- First pixel:
- RGB value of (212, 212, 212) means the image has a secret message and the GUI should automatically extract and display the secret message.
- Second pixel
- LSB of red
- 0: no encryption
- 1: encryption
- Green color value will indicate the number of BPCC from 1 to 8. Default will be 1 BPCC.
- LSB of green
- 0: image
- 1: text
- LSB of red
display cipher when opening image with embedded secret text
Display the keyword for the Vigenère cipher
add encrypted image display to gui
When encrypt is checked after secret image is loaded, the gui should display both the encrypted and unencrypted versions. Also show both when loading a modified image in
create bitmap image from extracted image
When extracting an embedded image message, use the LSB of each image pixel to create a new bitmap image. Additional, the following requirements must be met:
- Extract a pixel value for the entire image file. If the monochrome bitmap was smaller than the original image file then there may be a lot of noise in the outer bounds of the new image, as exemplified in Figure 6, but the message will still be extracted.
- The extracted image should be displayed within the GUI and also allow the user to save the resulting extracted message image file. You may write it out as a PNG file, 24-bit BMP file, or a monochrome BMP file. The choice is yours. If you write it out as a PNG or 24-bit bitmap file, a black pixel is created with the following RGB value, (0, 0, 0), which as the integer value of 0, while a white is (255, 255, 255), which has the integer value of 16,777,215.
monochrome bitmap encryption
Encrypt the monochrome bitmap by swapping the opposite quadrants of the monochrome image
- The image should be divided into quadrants based by halving the image both height and width wise. The swapping of quadrants for the image message will be based on the size of the source image
- The user should be able to see an unencrypted and encrypted version of the message.
extract header info
Get header info from modified image to be able to determine how to read the embedded data
add encrypted text message display to gui
When loading secret text message and encrypt box is checked, user should be able to see an unencrypted and encrypted version of the message
other extracting message notes
- You may assume that the image file to extract the message from will be a 24-bit BMP or PNG file. You will know that the image contains a secret message to extract by the first pixel having the RGB value of (212, 212, 212).
- If when extracting the image, it is determined that encryption was used (see next section), then decrypt the message upon extraction.
- Display both the encrypted and decrypted message
fix swapped x and y
x and y are switched throughout program
hide image
If the message to hide is an image, the program must meet the following requirements:
- a. You may assume that the message image is a monochrome BMP file.
- b. When embedding the monochrome image within the image file only modify the least significant bit of the RGB color value for each pixel in the source image file. This means that the only bit for each pixel that will be manipulated is the very last bit of the color value, which is the LSB of the blue color channel.
- c. If the height, width, or both dimensions of the message image exceeds the corresponding dimension of the source image, then output a message indicating that the message file exceeds the dimensions of the source image and do not embed the image.
- d. The message file needs to be loaded and displayed within the GUI.
specify message type when embedding
Allow the user to specify either a text file or an image file to hide within the image
bpcc box does not work
When trying to embed text message, I get invalid bpcc
error with all values, including 1 through 8.
John final code check
check naming, error list, task list, clean code, documentation, make sure no comments are in code
Reid final code check
check naming, error list, task list, clean code, documentation, make sure no comments are in code
encryption gui
The GUI must provide a mechanism to indicate whether encryption should be applied when embedding the message and the type of encryption to use.
hide text file
Notes:
- You may assume that all the text in the file is legal text.
- The text file may have more than one line of text.
Requirements:
- user should be able to view the contents of the text file within the GUI
- You must encode all alphabetic characters in the file, but you will exclude all non-alphabetic characters, e.g., white space and punctuation characters.
- When embedding the text file within the image file it will use the specified number of BPCC for each color channel. The user needs to be able to specify the number of least significant bits to use for each color channel within the app. This value will be from 1-8. Default value is 1.
- If the number of pixels required to embed the text file exceeds the total number of pixels in the image file, then output a message indicating that the message will not fit in the image file and indicate the number of bits needed per color channel to store the text message in the image.
- To indicate the end of the text file (message) when embedding the text, the embedded text should be terminated with the following character sequence:
#.-.-.-#
- i. The end of message text will not be in the text file.
text message encryption
A Vigenère cipher will be used. The user must be able to specify the keyword for the Vigenère cipher
- You will need to write out the keyword at the beginning of the message followed by #KEY# This will indicate what the keyword is and where it stops and the message will begin write after
the second #. - Do not encrypt keyword, the end of keyword and end of message characters: #KEY# and #.-.-.-#
- The user should be able to see an unencrypted and encrypted version of the message.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.