> For the complete documentation index, see [llms.txt](https://xeal.gitbook.io/xeal/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://xeal.gitbook.io/xeal/getting-started/invisible-watermarks-blockchain.md).

# Invisible Watermarks - Blockchain

## Watermark Registration

Watermarks are registered and fees are paid on-chain wherever the Xeal Register.sol contract is deployed. Fees serve three purposes: to prove creator authenticity, incentivize nodes that encrypt watermarks, and prevent malicious users from compromising the finite watermark supply.

Don't worry, the system can generate up to 2^42 watermarks, which exceeds the current number of images on the internet!

## Types of Watermarks

### NFT Watermarks

NFT watermarks are registered during the NFT minting process on-chain. There are two methods for registration:

1. Lazy-minting: Creator generates an NFT voucher. Users can mint and register the watermark by paying creator-specified fees.
2. Minting: Anybody can mint and watermark a new NFT by spending the appropriate mimimum fee.
3. Authorized minting: Collection owner mints and watermarks new NFTs directly using the `mint` function.

### Pointer Watermarks

Pointer watermarks are associated with existing NFTs that have a tokenId. These watermarks allow multiple versions to point to a single NFT. This is particularly useful for brands generating multiple watermark versions for the same IP asset. A pointer watermark does not have an owner and points back to the original NFT when scanned.
