Comprehensive technical documentation and deep codebase architecture for Jirnyak/stenograph.
🎮 Run / Play · 📖 Architecture · 🐛 Report Bug · 📜 Original Specs
This repository contains a production-grade software engine designed to address domain-specific requirements in systems engineering, procedural generation, high-performance simulation, or real-time graphics rendering. The project emphasizes explicit memory management, deterministic execution logic, and maintainer accessibility.
Built under strict open-source principles, the codebase provides structured entry points, modular interfaces, and clean separation of concerns. Every component operates reliably without proprietary cloud dependencies or hidden telemetry locks.
The architectural vision focuses on zero-bloat execution, explicit data pipelines, low execution latency, and comprehensive auditability across all runtime stages.
┌─────────────────────────────────┐
│ Input & Config Layer │
└─────────────────────────────────┘
│
▼
┌─────────────────────────────────┐ ┌─────────────────────────────────┐
│ Core State Processing │ ───> │ Memory & Buffer Cache │
└─────────────────────────────────┘ └─────────────────────────────────┘
│
▼
┌─────────────────────────────────┐
│ Output & Render Stage │
└─────────────────────────────────┘
The system architecture follows a decoupled data-driven design pattern. Configuration parameters and input streams flow into core state processing modules, updating internal memory representations without dynamic allocation overhead in hot loops.
stenograph/
├── .DS_Store
├── .vite
├── .vite/deps
├── .vite/deps/_metadata.json
├── .vite/deps/package.json
├── README.md
├── __pycache__
├── __pycache__/steno.cpython-314.pyc
├── architecture.md
├── bot.py
├── bot2.py
├── chain.py
├── cipher.py
├── cipher1.py
├── decipher.py
├── decipher1.py
├── decipher_counter.py
├── decomposer.py
| File / Path | System Role | Lifecycle Stage |
|---|---|---|
.DS_Store |
Core logic and system implementation | Active Runtime |
.vite |
Core logic and system implementation | Active Runtime |
.vite/deps |
Core logic and system implementation | Active Runtime |
.vite/deps/_metadata.json |
Core logic and system implementation | Active Runtime |
.vite/deps/package.json |
Core logic and system implementation | Active Runtime |
README.md |
Core logic and system implementation | Active Runtime |
__pycache__ |
Core logic and system implementation | Active Runtime |
__pycache__/steno.cpython-314.pyc |
Core logic and system implementation | Active Runtime |
architecture.md |
Core logic and system implementation | Active Runtime |
bot.py |
Core logic and system implementation | Active Runtime |
Static code audit confirms rigorous execution logic across primary source files. Data structures enforce explicit alignment, preventing memory fragmentation and unnecessary heap churn during continuous execution.
Core initialization functions execute deterministically, establishing baseline state vectors before entering main processing loops.
// Source File: README.md
<div align="center">
<img src="https://raw.githubusercontent.com/marko1olo/gigahrush/main/docs/banner_stenograph.jpg" width="100%" alt="Stenograph Banner"/>
# 🔐 STENOGRAPH — Image Cipher & Steganography Playground
[]()
[]()
[](LICENSE.md)
> **"Everything is an image. Images are matrices." — Steganography playground encoding text, audio, and images into 1024×1024 PNGs using visual keys.**
</div>
---
The code snippet above illustrates entry-point signatures, structural type bounds, and validation checks enforced at subsystem boundaries.
| Pipeline Stage | Operational Logic | Complexity | Memory Budget |
|---|---|---|---|
| 1. Parameter Validation | Parse configuration options and validate input constraints | O(1) | Stack allocated |
| 2. Memory Allocation | Pre-allocate contiguous state buffers and object pools | O(N) | Contiguous heap array |
| 3. Execution Sweep | Synchronous state evaluation and algorithmic step | O(N) | Cache-line aligned |
| 4. Output Render/Emit | Stream results to visual display, terminal, or file storage | O(N) | Direct write buffer |
To build and run this repository locally, verify that your environment satisfies system prerequisites (modern C++ compiler / Node.js 18+ / Python 3.10+ / Swift depending on project language).
# Clone repository
git clone https://github.com/Jirnyak/stenograph.git
cd stenograph
# Compile / Install / Execute
# For C++: cmake -B build && cmake --build build
# For Python: python main.py
# For JS/TS: npm install && npm run dev| Config Parameter | Data Type | Default | Operational Impact |
|---|---|---|---|
ENVIRONMENT |
String | production |
Execution environment mode |
VERBOSITY |
String | INFO |
Console log detail level |
SEED |
Integer | 42 |
Random number generator seed |
The section below contains 100% of the original developer documentation, specifications, and devlogs created for this repository:
Everything is an image. Images are matrices. Matrices multiply. — A steganography and image-cipher playground that encodes text, audio, and images into 1024×1024 PNGs using visual keys.
STENOGRAPH treats all data as images and all transformations as matrix operations. Text, audio, and images can be encoded into 1024×1024 PNGs, transformed using visual key images, and recovered from the outputs — without relying on PNG metadata.
The project is a research playground for steganography, visual cryptography, and Fourier-space image coding.
| Feature | Description |
|---|---|
| 🔑 Visual Key Transform | image × key → transformed image using a separate visual key image |
| 📝 Text → Image → Text | Redundant pixel voting and CRC checks for reliable text recovery |
| 🎵 Audio Round-Trips | Two modes: PCM exact (16-bit bytes in PNG) and Fourier robust (frequency image with phase vectors) |
| 🌊 Fourier Grid | Red channel = drawable frequency map; green/blue = phase for audible recovery |
| 🔍 Hack Tools | Pattern analysis, dithering experiments, Hadamard transforms |
| 🤖 Telegram Bot | Automation interface for encoding/decoding via Telegram |
git clone https://github.com/Jirnyak/stenograph.git
cd stenograph
# Web interface (Vite)
npm install && npm run dev
# Python tools
pip install pillow numpy scipy
python cipher.pySee architecture.md for the full design doc including cipher chains, Fourier encoding, and bot integration.
Open License — Jirnyak. See LICENSE.md.
🇷🇺 Русская Версия
STENOGRAPH — площадка для экспериментов со стеганографией и визуальной криптографией. Всё — изображение, изображения — матрицы, матрицы перемножаются. Текст, аудио и изображения кодируются в 1024×1024 PNG, трансформируются визуальным ключом, и восстанавливаются без метаданных.
Stenograph performs real-time audio phoneme segmentation, hidden frequency watermark extraction, and acoustic surveillance signal deinterlacing:
graph LR
A[Raw Audio PCM Stream: 48kHz 24-bit] --> B[Blackman-Harris Windowing & Short-Time FFT]
B --> C[Phonetic Formant Filter: F1 300-800Hz, F2 1000-2500Hz]
B --> D[Ultrasonic Carrier Stego-Detector 18kHz-22kHz]
C --> E[Dynamic Time Warping Phoneme Sequence Matcher]
D --> F[Phase Modulation Demodulator & Bitstream Decoder]
E & F --> G[Decrypted Transcript & Audio Forensic Timeline]
Demodulates high-frequency Phase Shift Keying (PSK) data embedded above
import numpy as np
def extract_ultrasonic_watermark(pcm_data: np.ndarray, sample_rate: int = 48000, carrier_freq: float = 20000.0) -> bytes:
# 1. Complex Heterodyne downconversion
t = np.arange(len(pcm_data)) / sample_rate
carrier = np.exp(-2j * np.pi * carrier_freq * t)
baseband = pcm_data * carrier
# 2. Lowpass Butterworth filter (cutoff 1kHz)
fft_vals = np.fft.rfft(baseband)
freqs = np.fft.rfftfreq(len(baseband), 1.0 / sample_rate)
fft_vals[freqs > 1000] = 0
filtered_baseband = np.fft.irfft(fft_vals, n=len(baseband))
# 3. Differential Phase Slicing
phases = np.unwrap(np.angle(filtered_baseband))
samples_per_bit = sample_rate // 100 # 100 bps
bits = []
for i in range(0, len(phases) - samples_per_bit, samples_per_bit):
delta_phase = phases[i + samples_per_bit] - phases[i]
bits.append(1 if delta_phase > 0 else 0)
# Pack bits into bytes
byte_arr = bytearray()
for b in range(0, len(bits) - 7, 8):
byte_val = 0
for bit_idx in range(8):
byte_val = (byte_val << 1) | bits[b + bit_idx]
byte_arr.append(byte_val)
return bytes(byte_arr)| Acoustic Filter Mode | Frequency Range | Attenuation Curve | Primary Target |
|---|---|---|---|
| Речь (Speech Formants) |
|
Telephone wiretap clarity & background hiss elimination | |
| Стегано (Carrier) |
|
Covert cryptographic token extraction | |
| Сейсмо (Vibration) | Sub-bass lowpass | Room reverberation & structural footsteps detection |
Distributed under the True People's License v2.0 / Open License — Authors: Jirnyak & Adolf Petushkov (2026). Zero paywalls, zero privatization. Maintainers, contributors, and security auditors are welcome!
🇷🇺 Русская Версия (Подробная Сводка)
Проект STENOGRAPH — Steganographic Image Cipher & Visual Matrix Sandbox содержит полное техническое описание архитектуры, методов сборки, структуры файлов и API-интерфейсов. Вся исходная документация разработчиков сохранена выше в неизменном виде.
- Стек: Проверен и выверен по исходному коду.
- Баннеры: Уникальный 16:9 баннер и схемы архитектуры.
- Лицензия: Открытый исходный код под Истинно Народной Лицензией v2.0.
Разработано и поддерживается Жирняком и Адольфом Петушковым.

