An open API service indexing awesome lists of open source software.

https://github.com/ceq151/lumincrypt

桌面级 Unicode 隐写检测与鲁棒水印(文本/图片)工具箱
https://github.com/ceq151/lumincrypt

blind-watermark desktop-app electron image-processing react security steganography typescript unicode watermark

Last synced: about 1 month ago
JSON representation

桌面级 Unicode 隐写检测与鲁棒水印(文本/图片)工具箱

Awesome Lists containing this project

README

          


LuminCrypt


Local-first Unicode steganography detection and robust watermark toolkit for text and images.


简体中文


Electron
React
TypeScript
Python
License

LuminCrypt logo

---

LuminCrypt is a desktop security toolkit for **Unicode hidden-character detection**, **encrypted invisible text watermarking**, and **robust blind image watermarking**. It helps researchers, creators, publishers, and security teams inspect suspicious Unicode content, embed recoverable text fingerprints, and test image watermarks against compression, resizing, cropping, and platform re-encoding.

## Key Features

- **Unicode hidden character detection**: finds zero-width characters, BiDi controls, homoglyphs, Unicode Tags, variation selectors, and non-standard spaces.
- **Encrypted text watermarking**: embeds AES-256-GCM protected payloads into normal text with invisible Unicode carriers and robust redundancy.
- **Blind image watermarking**: uses a Python image watermark engine based on block-DCT, QIM-style embedding, Reed-Solomon recovery, and multi-scale extraction.
- **Learning-assisted robust watermarking**: includes an experimental MLWM v1 alpha engine for short image payloads, ONNX inference, attack simulation, benchmark manifests, and automatic fallback to the legacy image watermark engine.
- **Batch processing and reports**: scans files in batches and exports detection results as JSON, CSV, or PDF.
- **Local desktop workflow**: built with Electron, React, TypeScript, and a Python helper for image watermark processing.

## Project Status

| Area | Status |
|---|---|
| Unicode hidden-character detection | Usable |
| Encrypted text watermarking | Usable |
| Legacy image blind watermarking | Usable |
| MLWM v1 neural image watermarking | Alpha, short payloads only |

`mlwm-v1-alpha1` is the first promoted neural watermark candidate. It is suitable for internal alpha testing and controlled validation, not yet for unsupported industrial deployment claims.

## Screenshots


LuminCrypt screenshot 1
LuminCrypt screenshot 2


LuminCrypt screenshot 3
LuminCrypt screenshot 4


LuminCrypt screenshot 5
LuminCrypt screenshot 6

## Requirements

| Tool | Version | Notes |
|---|---:|---|
| Node.js | 18+ | Electron and frontend build |
| npm | 9+ | Package manager |
| Python | 3.10+ runtime, 3.12 recommended for ML | Required for the image watermark backend and ML training tools |

## Quick Start

Install Node dependencies:

```bash
npm install
```

Install Python image-watermark dependencies:

```bash
pip install -r blind_watermark/requirements.txt
```

Start the development app:

```bash
npm run dev
```

Run TypeScript checks:

```bash
npm run typecheck
```

Run Python image-watermark tests:

```bash
python -m unittest discover -s blind_watermark/tests
```

Install ML training dependencies only when you need to train or export candidate neural models:

```bash
pip install -r blind_watermark/requirements-ml.txt
```

## Build

```bash
# Windows
npm run build:win

# macOS
npm run build:mac

# Linux
npm run build:linux
```

Build the Python image-watermark helper:

```bash
npm run build:python
```

The packaged helper is written to `resources/bin/bwm_helper.exe` and included by `electron-builder`.

## Windows Helper Scripts

- `start.bat`: interactive launcher for development and preview workflows.
- `pack.bat`: one-click Windows packaging script that checks the environment, installs dependencies, builds the Python helper, and runs `electron-builder`.
- `build.bat`: compatibility wrapper that delegates to `pack.bat` when available.

## Repository Layout

```text
LuminCrypt/
|-- src/
| |-- main/ # Electron main process, security policy, IPC
| |-- preload/ # Context-isolated preload bridge
| `-- renderer/ # React UI and TypeScript logic
| |-- core/ # Text watermarking and Unicode detection
| `-- components/ # React components
|-- blind_watermark/
| |-- rwm_engine.py # Image blind watermark engine
| |-- bwm_helper.py # CLI bridge used by Electron
| |-- mlwm/ # MLWM neural watermark training, export, and inference modules
| `-- tests/ # Python unit tests
|-- configs/mlwm/ # MLWM training, export, and evaluation configs
|-- docs/mlwm/ # MLWM architecture, training, and traceability docs
`-- resources/ # Static assets, packaged binaries, and promoted ONNX models
```

## MLWM v1 Alpha

MLWM v1 is a learning-assisted robust image watermark path for short text or ID payloads. It combines deterministic payload framing, CRC and Reed-Solomon recovery, classical synchronization ideas, lightweight PyTorch encoder/decoder models, and ONNX Runtime inference for desktop use.

Useful references:

- [MLWM Architecture](docs/mlwm/architecture.md)
- [MLWM Training](docs/mlwm/training.md)
- [MLWM Traceability](docs/mlwm/traceability.md)
- [Benchmark Protocol](docs/mlwm/benchmark_protocol.md)

## Search Keywords

Unicode steganography, Unicode watermark, invisible watermark, AI watermark detection, zero-width character detector, homoglyph detection, BiDi control detector, text watermarking, blind image watermark, robust image watermarking, digital watermarking, image forensics, content provenance, Electron security tool.

## License

LuminCrypt is released under the **GPL-3.0** license. See [LICENSE](LICENSE).

The image watermark engine includes customization based on the open-source [blind_watermark](https://github.com/guofei9987/blind_watermark) project. See [NOTICE](NOTICE) for attribution.