roxify-tsvm
v1.0.3
Published
roxify command for typescript-virtual-container virtual shells — encode and decode files as PNG steganography archives.
Downloads
688
Maintainers
Readme
roxify-tsvm
roxify command for typescript-virtual-container virtual shells. Encodes and decodes files as PNG steganography archives using the roxify library.
Installation
import { roxifyCommand } from "roxify-tsvm";
import { VirtualShell } from "typescript-virtual-container";
const shell = new VirtualShell({ /* ... */ });
shell.addCommand("roxify", ["<subcommand>", "<args...>"], roxifyCommand.run);Usage (in VM)
roxify <command> <file>Commands
| Command | Description |
|---|---|
| encode <file> | Encode a file into a PNG archive |
| decode <file.png> | Decode a PNG archive back to the original file |
| list <file.png> | List files stored in a PNG archive |
| havepassphrase <file.png> | Check whether the archive requires a passphrase |
Examples
# Encode a file
roxify encode secret.pdf
# → secret.pdf.png written to the VFS
# Decode it back
roxify decode secret.pdf.png
# → secret.pdf restored (filename preserved from archive metadata)
# List contents
roxify list archive.png
# → Files in archive.png:
# - secret.pdf (42318 bytes)
# Check passphrase
roxify havepassphrase archive.png
# → archive.png does not require a passphraseHow it works
encodereads the file from the VFS as a raw binary buffer, encodes it withroxify(zstd-compressed PNG steganography), and writes the.pngback to the VFS.decodereads the PNG from the VFS, decodes it, and restores the original file using the filename stored in the archive metadata.listandhavepassphraseare read-only inspection commands.
All file I/O goes through the virtual filesystem - no real disk access.
Dependencies
roxify- PNG steganography enginetypescript-virtual-container- virtual shell and VFS runtime
