Encrypt/decrypt Office and PDFs. Go v2, AI-assisted. https://github.com/AceRodnel14/docuscrypt
485
A small, self-hosted web app for encrypting and decrypting password-protected documents: modern Office files (.docx, .xlsx, .pptx) and PDFs.
Source: https://github.com/AceRodnel14/docuscrypt
v2 is a rewrite in Go. DocusCrypt was formerly msoffcryptool-web, a Python/FastAPI app built on msoffcrypto-tool that handled Office files only. v2 is a single static Go binary with the web UI built in. It adds PDF support and keeps the same UI, routes and port (
8000).🤖 AI-assisted: this project was developed with AI assistance.
.docx gets a clear error instead of a cryptic failure.| Format | Decrypt | Encrypt |
|---|---|---|
.docx / .xlsx / .pptx (2007+) | ✅ | ✅ AES-256, the same scheme Office 2010+ uses by default |
.pdf | ✅ AES-256, AES-128, RC4 | ✅ AES-256 (output is marked PDF 2.0) |
.doc / .xls / .ppt (97–2003) | ❌ | ❌ |
Older 97–2003 Office files are no longer supported in v2. Save them as .docx / .xlsx / .pptx first. Files encrypted by the Python version (v1) still decrypt fine.
For PDFs, the single password you enter is used as both the open password and the permissions password, so anyone who has it gets the full document.
docker run --rm -p 8000:8000 eacer/docuscrypt
Then open http://localhost:8000.
No environment variables or volumes are needed.
8000GET /healthz returns {"status":"ok"}. The image has no shell, so use HTTP liveness/readiness probes, not exec ones.SIGTERM, so it works well with Kubernetes and scale-to-zero setups like KEDA.| Method | Path | Purpose |
|---|---|---|
GET | / | Web UI |
GET | /healthz | Health check |
GET | /api/generate-password?length=16&symbols=false | Random password (length 4–128) |
POST | /api/check | Checks a file is valid for the chosen mode. Form fields: mode, file |
POST | /api/process | Encrypts or decrypts. Form fields: mode, password, file. Returns the processed file |
Content type
Image
Digest
sha256:5a5921742…
Size
6.5 MB
Last updated
10 days ago
docker pull eacer/docuscrypt:v2.20261003