Skip to content

Latest commit

 

History

History
63 lines (40 loc) · 3.61 KB

README.md

File metadata and controls

63 lines (40 loc) · 3.61 KB

Steganography

Steganography is the technique of hiding secret data within an ordinary, non-secret, file or message in order to avoid detection; the secret data is then extracted at its destination. The use of steganography can be combined with encryption as an extra step for hiding or protecting data. The word steganography is derived from the Greek words steganos (meaning hidden or covered) and the Greek root graph (meaning to write).

Steganography can be used to conceal almost any type of digital content, including text, image, video or audio content; the data to be hidden can be hidden inside almost any other type of digital content. The content to be concealed through steganography -- called hidden text -- is often encrypted before being incorporated into the innocuous-seeming cover text file or data stream. If not encrypted, the hidden text is commonly processed in some way in order to increase the difficulty of detecting the secret content.

Steganography is practiced by those wishing to convey a secret message or code. While there are many legitimate uses for steganography, malware developers have also been found to use steganography to obscure the transmission of malicious code.

Forms of steganography have been used for centuries and include almost any technique for hiding a secret message in an otherwise harmless container. For example, using invisible ink to hide secret messages in otherwise inoffensive messages; hiding documents recorded on microdot -- which can be as small as 1 millimeter in diameter -- on or inside legitimate-seeming correspondence; and even by using multiplayer gaming environments to share information.

In this project we are dealing with a special type of Steganography: Audio Steganograpy

Audio Steganography

We will be encrypting song of .emb format with messages wich later on can be decrypted. Webpage is created for facilitating user-friendly-interface.

All about the interface

Webpage is created using:

  1. html
  2. CSS
  3. javaScript Frameworks used:
  4. Bootstrap
  5. Bulma

A total of 5 interconnected webpages are constructed. homepage.html is the starting page, where the user is given option for encryption and decryption in his selected type ( audio/ image/text). Thereafter the user is directed to his desired option. There are two different pages for audio encryption and decryption. For encryption, user is directed to audio_encrypt.html where he has to submit the song and message. After submiting the details, he is forwarded to encrpy_success.html from where he can download his/her encrypted song. For decryption, user is directed to audio_decrypt.html where he has to submit the song. After submiting the details, he is forwarded to decrpy_success.html from where he can view his/her encrypted message. Beautification of there webpages is done through:

  1. layout.html
  2. loader.html
  3. website.css

templates folder contains all these pages. They are called using ajax as per their requirement.

Encryption

audio_encrpy.py contains the code for audio encryption.

  1. Algorithm used: LSB(Least Significant Bit)
  2. Library (for working with audio fie): wave
  3. Input: song an message
  4. Output: encrypted song

Encryption is made by changing the least significant bit of the song by the message.

Decryption

audio_encrpy.py contains the code for audio encryption.

  1. Algorithm used: LSB(Least Significant Bit)
  2. Library (for working with audio fie): wave
  3. Input: encrypted message
  4. Output: decrypted message

Main controller

All these different parts are connected and activated using app.py. It renders the desired template using Flask.