Skip to content

skwasimakram13/Send-Message-Over-Sound

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

7 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🌟 Audio-Based Secret Messaging App

Transmit encrypted messages via sound β€” no Bluetooth, Wi-Fi, or data needed.


πŸ” Project Title:

Audio-Based Secret Messaging App
Transmit encrypted messages via sound β€” no Bluetooth, Wi-Fi, or data needed.


πŸ•΅οΈ Use Case / Why It’s Cool

Imagine two phones sitting next to each other β€” one sends a secret message through high-frequency sound (inaudible to humans), and the other decodes it through its microphone.
It’s like data transfer via sound waves, useful for:

  • Offline data exchange
  • Spy tools or fun secret chat
  • Device pairing without network
  • Classroom/study use for sneaky text transfer 😍

πŸ“± Features Explained

πŸ”Š 1. Data-over-Sound Encoding (18kHz–22kHz)

  • Converts text into data packets.
  • Modulates data as audio tones in the ultrasonic range (above normal human hearing).
  • Sends tones through the phone speaker.

Example: 'HELLO' β†’ binary β†’ mapped to tones like 18000Hz, 18100Hz... etc.

🎧 2. Microphone/Speaker Handshake

  • Before data transfer, devices do a quick tone handshake to sync.
  • Could use a β€œping” tone (like radar) to let the receiver know to start recording.

πŸ’§ 3. Optional Audio Watermarking

  • Embed watermark/fingerprint into sound for authenticity.
  • Could also help in error detection or app branding.

β†Ί 4. Cross-Device (Web/Mobile)

  • Should work between:
    • Android ↔️ Android
    • Android ↔️ Browser (via Web Audio API)
    • Browser ↔️ Browser
  • Web app uses Web Audio API for both generating and analyzing ultrasonic sound.

🧠 Tech Stack Details

πŸ”§ Frontend / Sender

  • Android (Java/Kotlin) or Web (JS)
  • Converts message to binary
  • Maps binary β†’ tone frequencies (FSK, ASK, or custom modulation)
  • Plays modulated sound via speaker

🎧 Receiver

  • Listens using microphone
  • Uses FFT (Fast Fourier Transform) to detect tone frequency
  • Maps back from tone β†’ binary β†’ text

πŸ” Encryption

  • Optional AES-128/256 or custom lightweight cipher
  • Protects messages from being sniffed (e.g., if another mic is listening)

🧬 Error Correction

  • Reed-Solomon ECC helps fix errors caused by noise
  • Useful because ultrasonic waves can be affected by environment (walls, movement, etc.)

πŸ“¦ Project Structure Suggestion

/secret-sound-messenger/
β”‚
β”œβ”€β”€ /android-app/            # Java app for mobile sender/receiver
β”‚   └── AudioSender.java
β”‚   └── AudioReceiver.java
β”‚   └── ReedSolomon.java
β”‚
β”œβ”€β”€ /web-app/                # JS Web Audio app
β”‚   └── encoder.js
β”‚   └── decoder.js
β”‚   └── visualizer.js
β”‚
β”œβ”€β”€ /core-algorithms/        # Shared modulation & encoding logic
β”‚   └── modulation.py (or .js)
β”‚   └── encryption.py
β”‚
β”œβ”€β”€ /docs/                   # Documentation and tech explanations
β”‚   └── signal-diagrams.png
β”‚   └── protocol-spec.md
β”‚
β”œβ”€β”€ README.md
└── LICENSE

πŸ“Š Modulation Methods (Simple Example)

Bit Frequency
0 18000 Hz
1 19000 Hz
Sync 20000 Hz
  • Each bit is played as a tone for a fixed duration (e.g., 50ms)
  • Add start/stop tones to define boundaries

πŸ§ͺ Challenges to Tackle

Issue Solution
Ambient noise Use error correction (Reed-Solomon)
Devices have different speaker/mic quality Dynamic calibration via handshake
Echo/overlap Add delay between packets or unique β€œstart tone”
Sound reflections in room Use filtering and signal smoothing

πŸš€ Extra Features (Future Scope)

  • πŸ“· Use QR codes to pair devices before sending (for added security)
  • πŸ“œ Chat history encryption + storage
  • 🌍 Add a local-only offline chat history
  • πŸ“‘ Add option to "broadcast" message to nearby phones
  • πŸ§‘β€πŸ« Educational Mode: visualize the signal as a waveform

βœ… Sample Use Flow

πŸ” Send Message:

  1. Type your message
  2. App encrypts + encodes it to audio
  3. Plays high-frequency sound

🧠 Receive Message:

  1. Opens mic in receive mode
  2. Listens for handshake tone
  3. Decodes sound to bits β†’ text
  4. Decrypts and shows the message

🌟 Final Thoughts

This is perfect for GitHub because:

  • It involves signal processing, encryption, low-level audio, and cross-platform logic
  • Super unique, not many public repos like this
  • You can write detailed documentation with visuals, diagrams, and live demos

License

This project is licensed under the MIT License.


Author

Develope By - Sk Wasim Akram


About

No description, website, or topics provided.

Resources

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors