Skip to content

Repository files navigation

Data Obfuscation and Security using
Multi-algorithm encryption and Audio Steganography

Open in Streamlit

A novel algorithm to hide payload information in an audio file, while also securing its contents, using multi-algorithm encryption, XOR-based LSB embedding, and Phase Coding.

The "demo samples" folder contains a sample audio file, which can be used to test the algorithm.

Click here for an interactive front-end demo.

Results

The model achieves very good steganographic output, i.e. the presence of encoded data is not perceptible to human ears.

As an example, a long message is encoded into a 17.5 seconds audio using this novel algorithm. The first graph shows the waveform of the original audio, and the second graph shows the waveform after the encoding process. The third graph shows the difference between these two waveforms, to quickly visualize the extent of changes.
The third graph demonstrates that the introduced "noise" is very negligible.

Metric % of max amplitude
Maximum error 99 %ile 1.32%
Average error 0.16%

Shown below is the process:

Environment setup

This project has been tested with Python 3.13.

  1. Create an environment:

    ...using conda:

    conda create -n multi-algo-steganography python=3.13
    conda activate multi-algo-steganography
    pip install -r requirements.txt

    ...using venv:

    python -m venv venv
    venv/Scripts/activate
    pip install -r requirements.txt

    ...or using any other environment manager of your choice.

  2. You can see a sample usage of the module in the supplied Jupyter Notebook, or launch the Streamlit app for an interactive frontend:

    streamlit run app.py

About

A novel algorithm to hide payload in an audio file, while also securing its contents using multi-algorithm encryption.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages