ComfyUI Node
The Certivu ComfyUI node signs generated images the moment they leave your graph — provenance exists before the image is ever exported. It wraps the certivu Python SDK, so signing happens server-side with ML-DSA and a resilient watermark.
Install
Section titled “Install”Download and extract the node into your custom_nodes folder, then install its requirements:
cd ComfyUI/custom_nodescurl -L https://cdn.certivu.ai/integrations/comfyui-latest.zip -o certivu-comfyui.zipunzip certivu-comfyui.zip -d certivu-comfyui && rm certivu-comfyui.zippip install -r certivu-comfyui/requirements.txtRestart ComfyUI. The Certivu Sign Image node appears under the Certivu category.
Wire Certivu Sign Image after your image output (e.g. a VAE Decode). It signs each image in the batch, saves the signed file to ComfyUI’s output directory, and passes the images through unchanged so you can chain it.
Inputs:
| Input | Description |
|---|---|
images | The image batch to sign. |
model | Model name to record (e.g. flux-1.0). |
generator_id | A generator that supports the image format. |
api_key | Your ctv_key_… key. Blank falls back to the CERTIVU_API_KEY env var. |
base_url | Defaults to https://api.certivu.ai. Point at the sandbox to avoid quota. |
filename_prefix | Output filename prefix (default certivu). |
Outputs the passthrough images and a tokens string (one ctv_… token per image).
To avoid putting credentials in the graph, set CERTIVU_API_KEY and CERTIVU_GENERATOR_ID as environment variables and leave those inputs blank.
- Each signed image counts against your plan quota. Use a sandbox
base_urlwhile building workflows. - The node raises a clear error in the UI if
certivuisn’t installed or credentials are missing — it won’t silently no-op.