Open Source Library — by eldr Technologies
Audiocate
An audio encoding authentication library for verifying that audio originates from a trusted source — built to combat the rising threat of AI-generated deepfakes.
The problem it solves
Can you trust what you hear?
AI-generated audio deepfakes are increasingly indistinguishable from genuine recordings. Audiocate addresses this by embedding a cryptographic proof directly into the audio at the point of creation — a proof that can be verified at any point downstream.
Using Least Significant Bit (LSB) steganography, Audiocate encodes a time-bound payload into audio frames without perceptible quality loss. The payload combines a POSIX timestamp with a TOTP (Time-based One-Time Password) value derived from a shared secret key, giving each encoded chunk both an identity and a time horizon.
A decoder holding the same secret key can then independently recalculate the expected TOTP value and verify that the audio originated from a trusted source within a valid time window. Replayed or synthesised audio that lacks the correct payload will simply fail verification.
How it works
Encode
The encoder splits the audio stream into chunks and uses LSB steganography to embed a binary payload containing the current timestamp and a TOTP value into each chunk.
Transmit
The encoded audio is transmitted or stored normally. The embedded payload is imperceptible to listeners and survives standard audio pipelines.
Verify
The decoder reads each chunk, extracts the embedded timestamp and TOTP value, recalculates the expected TOTP from the shared secret, and confirms the audio is authentic and within the valid time window.
Capabilities
What Audiocate gives you
TOTP Authentication
Time-bound cryptographic codes mean replayed or future-forged audio can never pass verification.
Imperceptible Encoding
LSB steganography introduces no audible artefacts. Listeners hear nothing different; the verification payload is invisible.
Real-time Streaming
Composable streaming API allows encode/decode to sit inline in a live audio pipeline, such as a phone call or broadcast.
CLI & GUI Included
Ships with a command-line tool and a GTK desktop app, making it usable without writing code.
Under the hood
Built in Haskell and C
The core library is written in Haskell for its strong type system and functional guarantees, with performance-critical signal-processing routines implemented in C and exposed via FFI. The modular architecture means LSB encoding can be swapped for Echo Hiding in a future release without changing the authentication layer.
- Haskell 56.7% — C 42.1% (by source)
- WAVE audio format, 14-sample test corpus included
-
Built with Cabal, single
make build-allcommand - Spectrogram analysis tools included for visual comparison
Free and open source
Audiocate is open source on GitHub. Read the code, run the tests, file issues, or contribute. The test corpus includes fourteen WAVE samples covering both real recordings and AI deepfakes.
github.com/eldr-io/audiocate