Skip to content

On-chain Marking: weighted endorsements via OP_RETURN (use case + ecosystem) #149

Description

@melvincarvalho

Summary

Marking is Bitmark's reputation-plus-value layer: endorse any addressable content on-chain by committing a weighted amount of BTM alongside a structured OP_RETURN. It's already live in the explorer; this issue frames the use case and tracks the ecosystem rollout.

What a Mark is

A normal transaction carrying:

  • an OP_RETURN with MRK | 01 | <type> | sha256(reference), and
  • a weight — the committed value: Legendary 1.00 / Love it 0.10 / Nice 0.05 / Noted 0.01 BTM.

You can mark a URL, address, Nostr profile, Nostr event, git commit, document, timestamp, or URI. The committed BTM is the "earned value" — endorsement strength backed by real value, permanently on-chain.

Why it matters

Most chains do payments only. Marking adds a weighted, value-backed, on-chain endorsement primitive — a reputation layer that is:

  • Composable — mark anything addressable (web, Nostr, git, documents).
  • Permissionless & permanent — anyone can endorse; the record is on-chain.
  • Sybil-resistant by cost — weight is real BTM, so endorsements aren't free.

This is a genuine differentiator and fits Bitmark's long-standing "earned value" / Marking vision.

On-chain format

OP_RETURN payload, 37 bytes: 4d524b("MRK") + 01(version) + <type byte> + sha256(reference).
Canonical implementation: project-bitmark/bitmark-explorer -> web/panes/mark-pane.js.

Ecosystem status

Possible next directions

  • A small spec doc for the MRK format (version, reserved type codes) so third parties can implement compatibly.
  • Aggregation/indexing — derive weight-weighted reputation scores from marks.
  • Nostr bridge — marking Nostr events/profiles ties on-chain reputation to off-chain identity.
  • Standardize and document the TYPE_CODES.

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions