Papers
Topics
Authors
Recent
Search
2000 character limit reached

SteganoSNN: Neuromorphic Audio-in-Image Steganography

Updated 16 November 2025
  • SteganoSNN is a neuromorphic steganographic framework that converts 16-bit PCM audio into LIF neuron–generated spike trains for secure multimedia data hiding.
  • It employs a modulo-based encryption scheme and LSB embedding with dithering, achieving high capacity (8 bpp) and superior fidelity compared to deep-learning approaches.
  • Implemented in Python and on FPGA, SteganoSNN offers real-time performance in Edge-AI and IoT applications with robust resistance to steganalysis.

SteganoSNN is a neuromorphic steganographic framework that applies spiking neural networks (SNNs) and lightweight encryption to achieve secure, efficient, and high-capacity multimedia data hiding. Designed for audio-in-image steganography, SteganoSNN converts digitized audio into LIF neuron–derived spike trains, encrypts the resulting features via a modulo mapping scheme, and robustly embeds these at high bit rates into least significant bits (LSBs) of RGBA images using dithering for perceptual fidelity. Implemented in Python with NEST for neuron simulation and realized in hardware on the PYNQ-Z2 FPGA, SteganoSNN demonstrates real-time operation and quantitative superiority over deep-learning-based steganographic approaches in both embedding capacity and image quality (Sahoo et al., 9 Nov 2025).

1. Audio-to-Spike Conversion with Leaky Integrate-and-Fire Neurons

SteganoSNN initiates encoding by transforming 16-bit signed PCM audio samples (s[32768,32767]s\in[-32768,32767]) into spike train patterns generated by a Leaky Integrate-and-Fire (LIF) neuron model. The neuron membrane evolution is described by

CmdV(t)dt=gL(V(t)EL)+Iinj(t)C_m\,\frac{dV(t)}{dt} = -g_L\left(V(t)-E_L\right) + I_{\text{inj}}(t)

with parameters:

  • Cm=250pFC_m = 250\,\mathrm{pF}, τm=10ms  gL=Cmτm\tau_m = 10\,\mathrm{ms}\ \Rightarrow\ g_L = \frac{C_m}{\tau_m}
  • EL=0mVE_L = 0\,\mathrm{mV}
  • Spike threshold Vth=20mVV_{\mathrm{th}} = 20\,\mathrm{mV}
  • Reset Vreset=10mVV_{\text{reset}} = 10\,\mathrm{mV}, initial V(0)=70mVV(0) = -70\,\mathrm{mV}
  • Absolute refractory tref=2mst_{\text{ref}} = 2\,\mathrm{ms}

Audio sample encoding proceeds as follows:

  • For each sample, IinjI_{\text{inj}} is swept from 370 pA upward in 1 pA steps for a 60 ms window.
  • The total spike count (0–9) identifies the represented decimal digit.
  • The precise spike times CmdV(t)dt=gL(V(t)EL)+Iinj(t)C_m\,\frac{dV(t)}{dt} = -g_L\left(V(t)-E_L\right) + I_{\text{inj}}(t)0 within this window encode additional information.

This mapping is established via NEST 3.9 simulations, where each distinct spike count and pattern uniquely represent a digit for further secure embedding. The approach exploits the deterministic mapping from input current to spike timing, allowing a reproducible transform from audio digits to temporal SNN patterns.

2. Modulo-Based Encryption Scheme

After conversion, each 16-bit audio sample is decomposed into a sign bit CmdV(t)dt=gL(V(t)EL)+Iinj(t)C_m\,\frac{dV(t)}{dt} = -g_L\left(V(t)-E_L\right) + I_{\text{inj}}(t)1 and five decimal digits CmdV(t)dt=gL(V(t)EL)+Iinj(t)C_m\,\frac{dV(t)}{dt} = -g_L\left(V(t)-E_L\right) + I_{\text{inj}}(t)2. For each digit CmdV(t)dt=gL(V(t)EL)+Iinj(t)C_m\,\frac{dV(t)}{dt} = -g_L\left(V(t)-E_L\right) + I_{\text{inj}}(t)3, a characteristic spike time CmdV(t)dt=gL(V(t)EL)+Iinj(t)C_m\,\frac{dV(t)}{dt} = -g_L\left(V(t)-E_L\right) + I_{\text{inj}}(t)4 is chosen, and encryption is performed using

CmdV(t)dt=gL(V(t)EL)+Iinj(t)C_m\,\frac{dV(t)}{dt} = -g_L\left(V(t)-E_L\right) + I_{\text{inj}}(t)5

where CmdV(t)dt=gL(V(t)EL)+Iinj(t)C_m\,\frac{dV(t)}{dt} = -g_L\left(V(t)-E_L\right) + I_{\text{inj}}(t)6 is the 4-bit ciphertext of digit CmdV(t)dt=gL(V(t)EL)+Iinj(t)C_m\,\frac{dV(t)}{dt} = -g_L\left(V(t)-E_L\right) + I_{\text{inj}}(t)7, and CmdV(t)dt=gL(V(t)EL)+Iinj(t)C_m\,\frac{dV(t)}{dt} = -g_L\left(V(t)-E_L\right) + I_{\text{inj}}(t)8 is the corresponding 4-bit key indexing the spike time.

For example, for digit 6 with available spike times CmdV(t)dt=gL(V(t)EL)+Iinj(t)C_m\,\frac{dV(t)}{dt} = -g_L\left(V(t)-E_L\right) + I_{\text{inj}}(t)9, selecting Cm=250pFC_m = 250\,\mathrm{pF}0 results in Cm=250pFC_m = 250\,\mathrm{pF}1.

Each audio sample yields six pairs Cm=250pFC_m = 250\,\mathrm{pF}2; only the Cm=250pFC_m = 250\,\mathrm{pF}3 values (steganographic payload) are embedded, while key values are transmitted or stored separately for decryption. This scheme achieves one-time pad–like security without computationally intensive cryptography, relying on secure key exchange. Digit 0 (no spike) trivially maps to Cm=250pFC_m = 250\,\mathrm{pF}4.

3. LSB Embedding with Dithering in RGBA Images

SteganoSNN encodes the Cm=250pFC_m = 250\,\mathrm{pF}5 values into cover images stored as PNGs with 8-bit RGBA channels. By altering the two least significant bits in each channel per pixel, an embedding capacity of 8 bits per pixel (bpp) is achieved. To prevent perceptually detectable artifacts (blockiness), dithering noise Cm=250pFC_m = 250\,\mathrm{pF}6 is introduced before embedding:

Cm=250pFC_m = 250\,\mathrm{pF}7

Cm=250pFC_m = 250\,\mathrm{pF}8

where Cm=250pFC_m = 250\,\mathrm{pF}9 is the original pixel intensity and τm=10ms  gL=Cmτm\tau_m = 10\,\mathrm{ms}\ \Rightarrow\ g_L = \frac{C_m}{\tau_m}0 are the payload bits. The constraint τm=10ms  gL=Cmτm\tau_m = 10\,\mathrm{ms}\ \Rightarrow\ g_L = \frac{C_m}{\tau_m}1 ensures visually imperceptible distortion, while effective dithering suppresses quantization error and maintains gradient smoothness.

This LSB substitution method with dithering operates losslessly for cover image content while enabling near-theoretical channel capacity, outperforming many GAN-based architectures in both efficiency and imperceptibility.

4. System Implementation: Software and Hardware

SteganoSNN is realized both in software and FPGA hardware, enabling application in Edge-AI and low-power scenarios:

Software Pipeline:

  • Implemented in Python using NEST 3.9.
  • SNN_patterns.py simulates LIF neurons and extracts spike-time patterns.
  • Discretelevel.py calibrates current intervals per digit.
  • Key_and_Map.py establishes the lookup between remainder values and digits.
  • Image_analysis.py pre-processes RGBA compliance.
  • encrypt.py and decrypt.py manage end-to-end digitization, encryption, dithering, embedding, and extraction.

FPGA Co-Design:

  • Target hardware: PYNQ-Z2 Board (Artix-7 PL, dual-core ARM Cortex-A9 PS).
  • The PS runs NEST simulation and manages data streaming over AXI-DMA.
  • The PL hosts two custom Verilog IP cores:
    • Encryptor: BCD conversion, pseudo-noise dithering, modulo-16 mapping, two-bit LSB embedding.
    • Decryptor: LSB extraction, inverse mapping, KEY-guided digit reconstruction.
  • Both encryptor and decryptor operate on 32-bit AXI-Stream data; overlays are dynamically loaded.
  • Full real-time support for images up to 1920×1080 and stereo 48 kHz audio.

FPGA Resource Utilization (Artix-7, 100 MHz PL)

Resource Encryptor % Decryptor %
LUTs 5,185 9.8 34,768 65
LUTRAM 185 1.1 185 1.1
FFs 4,266 4.0 3,909 3.7
BRAM18K 3 2.1 3 2.1
BUFG 2 6.3 1 3.1

5. Quantitative Evaluation and Comparative Analysis

Evaluations on DIV2K 2017 (train/valid, various upsampling factors) demonstrate the following performance:

  • Embedding Capacity: 8 bpp (τm=10ms  gL=Cmτm\tau_m = 10\,\mathrm{ms}\ \Rightarrow\ g_L = \frac{C_m}{\tau_m}2), outperforming SteganoGAN’s 2–5 bpp.
  • Fidelity Metrics:
    • PSNRτm=10ms  gL=Cmτm\tau_m = 10\,\mathrm{ms}\ \Rightarrow\ g_L = \frac{C_m}{\tau_m}3: 40.42–41.35 dB
    • SSIMτm=10ms  gL=Cmτm\tau_m = 10\,\mathrm{ms}\ \Rightarrow\ g_L = \frac{C_m}{\tau_m}4: τm=10ms  gL=Cmτm\tau_m = 10\,\mathrm{ms}\ \Rightarrow\ g_L = \frac{C_m}{\tau_m}50.9693 (up to 0.9801)
    • PSNRτm=10ms  gL=Cmτm\tau_m = 10\,\mathrm{ms}\ \Rightarrow\ g_L = \frac{C_m}{\tau_m}6: 40.48–41.10 dB, SSIMτm=10ms  gL=Cmτm\tau_m = 10\,\mathrm{ms}\ \Rightarrow\ g_L = \frac{C_m}{\tau_m}7
  • Compared to SteganoGAN: Dense models at 2.44–2.63 bpp yield PSNR τm=10ms  gL=Cmτm\tau_m = 10\,\mathrm{ms}\ \Rightarrow\ g_L = \frac{C_m}{\tau_m}836.5–41.6 dB, SSIM τm=10ms  gL=Cmτm\tau_m = 10\,\mathrm{ms}\ \Rightarrow\ g_L = \frac{C_m}{\tau_m}90.85–0.95.

Thus, SteganoSNN achieves higher capacity (8 bpp) and preserves superior or comparable fidelity (PSNR EL=0mVE_L = 0\,\mathrm{mV}040 dB, SSIM EL=0mVE_L = 0\,\mathrm{mV}10.97) even at peak rates.

  • Steganalysis Resistance (Aletheia tool):
    • EL=0mVE_L = 0\,\mathrm{mV}2: [0.3362, 0.7603]
    • EL=0mVE_L = 0\,\mathrm{mV}3: 0.7368
    • EL=0mVE_L = 0\,\mathrm{mV}4: [1.1176, 2.0519]

These values indicate statistical imperceptibility of payload even at maximum embedding rate, confirming robustness to standard detection techniques.

6. Applications and Significance

SteganoSNN’s biologically inspired approach enables secure, energy-efficient audio-in-image steganography with high channel capacity, real-time throughput, and minimal resource consumption. By operating efficiently on both conventional (Python, NEST) and low-power embedded (FPGA) platforms, SteganoSNN is well-suited for applications in Edge-AI, IoT, and biomedical domains where on-device privacy, low latency, and resilience to steganalysis are critical.

This paradigm establishes a foundation for neuromorphic steganography, combining temporal neural coding, lightweight encryption, and constrained device compatibility, distinguishing it from GAN-based steganography in capacity, computational efficiency, and implementation versatility. SteganoSNN’s modular structure also facilitates future exploration of alternative neural coding schemes and cryptographic primitives.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (1)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to SteganoSNN.