Skip to main content
Sense is Lumera Protocol’s AI powered content authentication service. Submit a file and top ranked SuperNodes analyze it with perceptual fingerprinting. A perceptual fingerprint is a feature vector that captures what the content looks like rather than its exact bytes. The network compares it against every previously registered asset and records a verifiable similarity result on chain through the x/action module. Slightly altered copies still match, which plain hash comparison cannot do. This page covers what Sense is for, how an analysis runs, and how to submit and query Sense actions with lumerad.

Use cases

NFT uniqueness verification

Prove that a digital artwork is not a near duplicate of a registered asset before minting.

Content originality checks

Verify the originality of visual or audio content before publishing or licensing it.

Digital asset provenance

Establish a timestamped on-chain record that a file existed in a unique form at a specific block height.

Duplicate prevention

Keep near duplicates from flooding marketplaces and diluting the value of originals.

How Sense works

1

Register the action on chain

You submit a registration transaction carrying the hash of your file. The x/action module escrows the fee and assigns a unique action_id. The action starts in the PENDING state.
2

SuperNodes run fingerprint analysis

Top ranked SuperNodes, selected through x/supernode, pick up the action and process the file. Each one computes a perceptual fingerprint of the content. The state is PROCESSING.
3

Results are aggregated

The SuperNodes compare the fingerprint against the network’s registered assets. They compute a similarity score and collect any duplicate candidates that exceed the near-duplicate threshold.
4

The result is recorded on chain

The aggregated result is committed and the action moves to DONE. The similarity score, duplicate candidates, and fingerprint hash become part of the permanent record, queryable by anyone.
A failed action becomes FAILED and the escrowed fee is refunded. The architecture page walks the full action state machine that Sense shares with Cascade.

Submitting a Sense action

Register a Sense action with the request-action command. It takes four positional arguments, the action type, a metadata JSON string, the service price you offer, and an expiration timestamp.
Register a Sense action
The metadata JSON carries the hash of the file you want analyzed in its data_hash field. The price is denominated in ulume and the expiration time is a Unix timestamp for when the action expires. After broadcasting, note the action_id returned in the transaction response.

Querying Sense results

Once the action reaches DONE, the result lives in the on-chain action record.
Query a Sense action
The response includes the action metadata, the current state, and the encoded Sense result payload. For a decoded, human readable view over REST, use the LumeScope API.

Result fields

Sense results are permanent. Anyone can query the record, check the similarity score, and audit the duplicate candidates, which gives your assets a transparent provenance trail.

Pricing

A Sense action pays two fees.
  • A standard transaction fee in ulume for the registration message.
  • A service fee escrowed by x/action and paid to the SuperNodes that run the analysis.
Sense costs less than Cascade because only the analysis result is stored, never the file itself. Governance can change fee parameters at any time.

Next steps

Module reference

How x/action and x/supernode coordinate Sense under the hood.

LumeScope API

Decoded action results and network state over REST.

How Cascade works

Permanent file storage, the sibling service to Sense.