Nodes/ComfyUI-CryptIO/Upload Image ๐Ÿ”’
ComfyUI Node

Upload Image ๐Ÿ”’

A LoadImage for files that arrive encrypted

By Suzu008ยทCreated 8 months agoยทUpdated 2 months agoยท 0
Upload Image ๐Ÿ”’
    • image
    • mask
    โ—„imageโ–พโ–บ

    This node looks and behaves like ComfyUI's stock LoadImage - pick a file from a dropdown, get an IMAGE and a MASK out the other side - with one difference that matters: the file it's expecting has already been encrypted on its way in, and this node's job is to decrypt it server-side before handing you a normal image tensor.

    It belongs to the CryptIO pack, whose whole premise is RSA encryption of data moving between your browser and whatever machine is running ComfyUI. The server generates a keypair on startup, the browser auto-fetches the public key, and the pack's own upload flow encrypts your file client-side with it before the bytes ever leave the browser. UploadImageCryptIO is the node that unlocks that on the receiving end.

    The input and outputs

    There's exactly one required field: image, a dropdown (COMBO) whose tooltip is direct about what it wants - "select an encrypted image file to upload and decrypt." This isn't a general-purpose file picker for any PNG on disk; it's specifically for files that went through CryptIO's own encrypted upload path. Drop a normal, unencrypted image in there expecting it to just load like LoadImage would, and don't be surprised if it doesn't - the node is decrypting, not just reading.

    Outputs are the familiar pair: image (IMAGE) and mask (MASK) - the same shape LoadImage gives you, so anything downstream that already expects that pair (a KSampler's latent path via VAE Encode, an inpainting mask input, a preprocessor) plugs in exactly the same way it would off the stock node.

    Why this exists at all

    The case CryptIO is built for is running ComfyUI somewhere you don't fully control - a remote GPU box, a shared host, anything reachable over a network. ComfyUI ships with no authentication on its API by default, which is exactly why "secure your instance" is a recurring community PSA. Uploading a source image is one of the few moments your actual content crosses that network boundary in the clear on a normal setup; this node (paired with the pack's own encrypted upload widget) keeps that specific hop opaque to anyone just watching the wire.

    Installing it

    It ships as part of the same repo as every other CryptIO node. Through ComfyUI Manager: search "ComfyUI-CryptIO" (or "CryptIO"), install, restart. Manually: cd ComfyUI/custom_nodes && git clone https://github.com/Suzu008/ComfyUI-CryptIO, then restart ComfyUI. No model downloads involved - it's a lightweight Python + frontend-JS pack, so install is quick either way.

    Troubleshooting

    The most likely stumbling block is exactly the one implied above: this node's dropdown is scoped to files uploaded through CryptIO's own encrypted flow, not every file sitting in ComfyUI's input directory. If your image doesn't show up, or shows up but fails to decrypt, check that you actually used the pack's upload widget rather than the standard file picker.

    Beyond that, calibrate your expectations for maturity - the pack's README still carries the unedited scaffolding from ComfyUI's official cookiecutter extension template, which tells you it's a young project without much of a public track record yet. There's no meaningful install-base or forum signal to draw troubleshooting wisdom from beyond what's in the README and the node's own tooltips, so if you hit something unexpected, the repo's issue tracker is genuinely your best next stop rather than a well-worn community thread.

    CategoryCryptIO๐Ÿ”’

    Inputs (1)

    NameTypeDefaultDescription
    imageCOMBOSelect an encrypted image file to upload and decrypt

    Outputs (2)

    NameTypeDescription
    imageIMAGEโ€”
    maskMASKโ€”