Git Product home page Git Product logo

sakship31 / text-steganography Goto Github PK

View Code? Open in Web Editor NEW
22.0 1.0 6.0 4.14 MB

Flask website for implementation of paper on text-based steganography i.e. hiding a secret message in a cover message and sending it over social media which in turn can be revealed.

Python 66.35% HTML 22.99% CSS 10.65%
steganography cryptography decryption text-steganography flask aes-encryption aes-decryption

text-steganography's Introduction


๐Ÿ•ต๏ธโ€โ™‚๏ธ Text Cloak ๐Ÿ•ต๏ธโ€โ™€๏ธ

The Cloak of Invisibility for your texts

Text Cloak is a steganography technique implemented in python, to hide secrets inside text by encrypting the secret before cloaking it with special unicode invisible characters. It can be used to safely watermark strings, invisible scripts on webpages, texts on social media or for any other covert communication. Completely invisible!

Resources

The following paper was implemented for generating and embedding Zero Width Characters in cover message and extracting the secret message from the cover message and generating ascii from extracted Zero Width Characters.

  • Taleby Ahvanooey, Milad & Li, Qianmu & Hou, Jun & Dana Mazraeh, Hassan & Zhang, Jing.
AITSteg: An Innovative Text Steganography Technique for Hidden Transmission of Text Message via Social Media.
IEEE Access

Features

  • Protect your invisible secret using passwords
  • Cryptographically secure by encrypting the invisible secret using AES-256-CTR encryption and decryption.
  • Uses Invisible characters in unicode characters that works everywhere in the web - Tweets, Gmail, WhatsApp, Telegram, Instagram, Facebook, and many more!
  • Completely invisible, uses Zero Width Characters instead of white spaces or tabs.
  • The secret message which is encrpted using password can be embedded in the cover message by the sender and extracted from the cover message and decrypted using the same password by the receiver.

Functions implemented

  • Embed algorithm: To embed the secret message into the cover message by converting it into invisible zero width unicode characters.
  • Extract algorithm: To extract the secret message from the cover message by converting it back into ascii characters from invisible zero width unicode characters.
  • AES-encryption: We take password for encrypting the secret message before embeding it,the key for encryption is generated from the password based key derivation function PBKDF2.
  • AES-decryption: For decrpytion,we need to pass the same password used while encryption since AES-256 is a symmetric cipher.

Demo


Screensots


Enter secret message to be sent, cover message and passowrd


On clicking Hide button, the cover message with embedded secret message is displayed and copied to clipboard


Enter received embedded cover message and mutually decided password


On clicking Reveal button, the secret message is displayed

Installation

Install the dependency for AES by running:

    pip install pycryptodomex

Run using Command Prompt

Clone the repository and run the following commands-

    set FLASK_ENV=development
    set FLASK_APP=app.py
    flask run

Tech stack

Backend : Python3,Flask
Frontend : Html,CSS

Developed with โค๏ธ by Sakshi Shelar, Nishi Shah and Sakshi Pandey

text-steganography's People

Contributors

nishigthb avatar sakshi107 avatar sakship31 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

text-steganography's Issues

Reveal function doesn't work

Hello!

After doing:

pip install pycryptodomex
+
set FLASK_ENV=development
set FLASK_APP=app.py
flask run

going to 127.0.0.1:5000

hiding is working ok, but reveal secret - not works at all... no result, just reload of page

Thanks!

Cryptographic API Misuse Vulnerability: Do not use constant salts for PBE

Hello!
First and foremost, I would like to express my sincere gratitude for your contributions to this project.

Description:

I have identified a security vulnerability in the Text-steganography project's use of constant salt for PBKDF for key derivation by our cryptographic api misuse detector. The issue is that a constant salt is being used, which can lead to security vulnerabilities.

Locations:

https://github.com/sakship31/Text-steganography/blob/master/AES.py#L7

References:

CWE-330: Use of Insufficiently Random Values

Suggested Fix:

I would recommend using a secure random salt for PBKDF2 key derivation. Here's an example of how to generate a secure random salt:

import os
salt = os.urandom(16)  # 16 bytes (128 bits) is a common choice for a salt length.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.