{
  "id": 3099566,
  "title": "MS Paint and Photos inivisibly watermark even locally generated output with GUID",
  "url": "https://urgent.news/2026/08/24/ms-paint-and-photos-inivisibly-watermark-even-locally-generated-3099566",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-08-24T15:28:04.000Z",
  "source": {
    "name": "Hacker News Best",
    "slug": "hacker-news-best",
    "url": "https://xusheng.dev/posts/reversing/mspaint_invisible_watermark/main/"
  },
  "original_language": "en",
  "account": "This research began with curiosity about Microsoft Paint. The author recently explored less-explored Windows features like UCPD, WHESCVC, and the AI features added to Paint. While expecting remote image generation via an API, the author discovered that Microsoft ships local models as part of Copilot. The Paint app is located in a specific Windows Apps path, and there are four model files with the .onnxe extension. Microsoft did not change the algorithm, only the key, as evidenced by the use of the same decoder for all files.\n\nWithin the DLL files, the author found a Watermarker.dll responsible for adding both visible and invisible watermarks. The visible watermark is a Copilot logo at the bottom right of generated images. The invisible watermark is added by the WmkWriteWatermark function, triggered after local Stable Diffusion image generation. The function takes a 16-byte payload, which is a GUID received from a network request. Microsoft receives and moderates the prompt, then issues a unique GUID that is embedded into the locally generated image.\n\nAdditionally, Paint attaches Content Credentials to the saved file using the ProvenanceHelper.dll library. This process involves sending the prompt, style, and previous promptGenerationId to a moderation endpoint, which responds with two GUIDs: watermarkId and containsHumanReference. The watermarkId becomes part of the generated image, while the containsHumanReference field classifies whether the prompt refers to a human.",
  "summary": "Article URL: https://xusheng.dev/posts/reversing/mspaint_invisible_watermark/main/ Comments URL: https://news.ycombinator.com/item?id=49421158 Points: 315 # Comments: 134",
  "key_points": [],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 2,
    "also_reported_by": [
      {
        "outlet": "Hacker News",
        "title": "MS Paint and Photos inivisibly watermark even locally generated output with GUID",
        "url": "https://urgent.news/2026/08/24/ms-paint-and-photos-inivisibly-watermark-even-locally-generated",
        "published": "2026-08-24T15:28:04.000Z"
      }
    ]
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}