<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Lars</title>
    <description>The latest articles on DEV Community by Lars (@moltycel).</description>
    <link>https://dev.to/moltycel</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3818575%2F734ea9c1-3f6a-4ee1-8ae0-3668caa65f55.png</url>
      <title>DEV Community: Lars</title>
      <link>https://dev.to/moltycel</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/moltycel"/>
    <language>en</language>
    <item>
      <title>Decentralized Identity in Multi-Agent Systems: From Theory to Production</title>
      <dc:creator>Lars</dc:creator>
      <pubDate>Sun, 05 Apr 2026 09:09:21 +0000</pubDate>
      <link>https://dev.to/moltycel/decentralized-identity-in-multi-agent-systems-from-theory-to-production-1oe3</link>
      <guid>https://dev.to/moltycel/decentralized-identity-in-multi-agent-systems-from-theory-to-production-1oe3</guid>
      <description>&lt;h1&gt;
  
  
  Decentralized Identity in Multi-Agent Systems: From Theory to Production
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;Intended audience:&lt;/strong&gt; Developers and architects building multi-agent systems&lt;/p&gt;




&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;As AI systems transition from single-model assistants to networks of autonomous agents, a fundamental infrastructure problem emerges: how does one agent verify the identity, authority, and trustworthiness of another agent it has never encountered before?&lt;/p&gt;

&lt;p&gt;This is not a new problem. Distributed systems have grappled with identity and trust for decades. What is new is the operational context: agents act autonomously, at machine speed, across organizational boundaries, with real-world consequences — financial transactions, data access, resource allocation. The margin for error is small and the blast radius of a compromised identity is large.&lt;/p&gt;

&lt;p&gt;This article examines how W3C Decentralized Identifiers (DIDs) and Verifiable Credentials (VCs) address this problem in practice, using a production implementation as a reference case. The goal is not to advocate for a specific solution but to illustrate what the theoretical framework looks like when it meets operational constraints.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Problem Space
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Why Traditional Identity Fails for Agents
&lt;/h3&gt;

&lt;p&gt;Traditional identity systems assume a human at the end of the authentication chain. OAuth 2.0 delegates access on behalf of a user. API keys are issued to developers. Certificate authorities anchor trust to organizations.&lt;/p&gt;

&lt;p&gt;Autonomous agents break these assumptions in three ways:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;No persistent human principal.&lt;/strong&gt; An agent spawned to execute a task may have no ongoing relationship with a human operator. It needs to establish trust with counterparties independently.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Dynamic delegation.&lt;/strong&gt; In multi-agent systems, agents frequently delegate subtasks to other agents. An orchestrator agent may spin up specialist agents with narrowed authority — "you may read customer data but not write it, and only for this session." This delegation needs to be cryptographically verifiable, not just configured in a shared database.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cross-organizational interoperability.&lt;/strong&gt; Agents from different organizations, built on different frameworks, need to interact. A shared identity authority (like an enterprise IAM system) is not available across organizational boundaries.&lt;/p&gt;

&lt;h3&gt;
  
  
  What We Need
&lt;/h3&gt;

&lt;p&gt;A viable identity system for multi-agent environments needs to satisfy four properties:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Self-sovereign identity:&lt;/strong&gt; An agent can establish an identity without a central authority issuing credentials.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Portable credentials:&lt;/strong&gt; Trust established in one context carries to another without requiring the original issuer to be online.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Delegatable authority:&lt;/strong&gt; An agent can pass a narrowed subset of its authority to a sub-agent, with the delegation chain cryptographically verifiable.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Non-repudiation:&lt;/strong&gt; Actions taken by an agent can be proven after the fact, independent of the agent's continued operation.&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  The W3C DID Framework
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Decentralized Identifiers
&lt;/h3&gt;

&lt;p&gt;A DID is a URI that resolves to a DID Document — a JSON-LD document containing public keys, service endpoints, and verification methods. The key property is that the DID is controlled by its owner, not issued by a central authority.&lt;/p&gt;

&lt;p&gt;Several DID methods exist with different trust models:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;did:key&lt;/code&gt; — self-certifying, the public key is embedded in the DID itself. No resolver needed. Zero external dependencies. Trades discoverability for simplicity — if an agent disappears, its DID becomes non-verifiable by third parties.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;did:web&lt;/code&gt; — resolves via HTTPS to a domain. Trust anchored to DNS/TLS. Practical for enterprise agents within an organization.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;did:ethr&lt;/code&gt;, &lt;code&gt;did:ion&lt;/code&gt;, and others — anchored to a public blockchain. Tamper-evident, globally verifiable.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For agent systems, &lt;code&gt;did:key&lt;/code&gt; provides the lowest-friction onboarding while blockchain-anchored methods provide stronger non-repudiation guarantees.&lt;/p&gt;

&lt;h3&gt;
  
  
  Verifiable Credentials
&lt;/h3&gt;

&lt;p&gt;A Verifiable Credential (VC) is a cryptographically signed claim about a subject. An issuer signs a credential attesting to specific properties — trust score, grade, verification timestamp. The credential can be verified offline: the verifier fetches the issuer's DID Document, extracts the public key, and verifies the signature. No callback to the issuer required.&lt;/p&gt;




&lt;h2&gt;
  
  
  Delegation Chains
&lt;/h2&gt;

&lt;h3&gt;
  
  
  The Monotonic Narrowing Principle
&lt;/h3&gt;

&lt;p&gt;A well-designed delegation system enforces monotonic narrowing: a child delegation can never exceed the authority of its parent. Formally, for a delegation chain A to B to C:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;scope(C) is a subset of scope(B), which is a subset of scope(A)&lt;/li&gt;
&lt;li&gt;spend_limit(C) is less than or equal to spend_limit(B), which is less than or equal to spend_limit(A)&lt;/li&gt;
&lt;li&gt;expiry(C) is less than or equal to expiry(B), which is less than or equal to expiry(A)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Five attack vectors exist against delegation systems:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Scope escalation:&lt;/strong&gt; Child claims a scope not present in the parent grant&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Spend escalation:&lt;/strong&gt; Child claims a higher spend limit than the parent&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Temporal escalation:&lt;/strong&gt; Child claims a longer validity window than the parent&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Self-issuance:&lt;/strong&gt; An agent delegates to itself at a higher authority level&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ghost delegation:&lt;/strong&gt; A delegation from an expired or revoked credential&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A robust implementation rejects all five. Cross-system interoperability requires that independent implementations agree on these invariants — which can be verified through shared test vectors.&lt;/p&gt;

&lt;h3&gt;
  
  
  Authorization Envelopes
&lt;/h3&gt;

&lt;p&gt;One practical pattern for encoding delegation is an Authorization Envelope — a signed structure containing three blocks: mandate (declared scope and intent), constraints (spend limits, permitted counterparties, nonce for replay protection), and validity (temporal window and revocation endpoint). The envelope is signed by the delegating agent and verified by any receiving agent without contacting the issuer.&lt;/p&gt;




&lt;h2&gt;
  
  
  Trust Scoring
&lt;/h2&gt;

&lt;p&gt;Trust scoring in multi-agent systems aggregates signals from multiple sources over time to produce a portable reputation score. Several signal types are relevant:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Endorsement signals:&lt;/strong&gt; Other agents attesting to the agent's reliability. Subject to Sybil attacks if not weighted carefully. Effective Sybil resistance requires cross-vertical diversity: endorsements only count if they come from agents operating across distinct application domains.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Behavioral signals:&lt;/strong&gt; The agent's observed behavior over time — does it operate within declared constraints, does it complete tasks successfully?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cross-vertical signals:&lt;/strong&gt; Trust established in one domain may transfer with a discount weight to another. The discount reflects that competence in one area does not guarantee competence in another.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Wallet attestation:&lt;/strong&gt; For agents that transact value, on-chain holdings provide a skin-in-the-game signal — an agent with economic stake in its reputation has stronger incentives to behave reliably.&lt;/p&gt;

&lt;p&gt;A key design decision is whether trust scores are computed by a centralized authority or derived from on-chain evidence. Centralized computation is simpler but creates a single point of failure. On-chain derivation is more complex but allows any party to independently verify the score.&lt;/p&gt;




&lt;h2&gt;
  
  
  Non-Repudiation and the Audit Trail
&lt;/h2&gt;

&lt;p&gt;In regulated environments, trust infrastructure must produce evidence that survives legal scrutiny. Three elements are required:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Interaction Proof Records (IPR):&lt;/strong&gt; A cryptographically signed record of each agent action, including the action type, the authority under which it was taken, and the outcome.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Merkle anchoring:&lt;/strong&gt; Batches of IPRs are aggregated into a Merkle tree and the root hash is written to a public blockchain. This creates a tamper-evident, globally verifiable audit trail — the existence and content of any IPR can be proven to any third party by providing the Merkle proof.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Chain continuity:&lt;/strong&gt; The IPR chain for an agent links each action to its predecessor, making it detectable if records are selectively omitted.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This pattern is directly analogous to Certificate Transparency logs in the TLS ecosystem — a public, append-only log that makes it detectable if certificates are mis-issued.&lt;/p&gt;




&lt;h2&gt;
  
  
  Sequential Action Safety
&lt;/h2&gt;

&lt;p&gt;A gap in most authorization frameworks is order sensitivity. Two actions may each be individually authorized, but their execution in a particular order may produce an irreversible harmful outcome.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt; An agent is authorized to both delete stale records and export customer data. Executed as delete-then-export, the export finds nothing. Executed as export-then-delete, both succeed and data is preserved.&lt;/p&gt;

&lt;p&gt;A pre-execution safety check can detect this by computing a directional Safety Residual:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;R = max(0, reversibility(proposed) - reversibility(past)) x overlap(resource_a, resource_b)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Where reversibility is a property of the action type (DELETE = 1.0, READ = 0.0) and overlap measures whether the proposed action targets a resource affected by a recent action. When R exceeds a threshold, the system warns or blocks. This is distinct from authorization — the agent is allowed to perform both actions, but the combination in sequence is flagged.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Production Teaches
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Cold Start
&lt;/h3&gt;

&lt;p&gt;Theory assumes agents have identity and reputation. Practice starts with neither. New agents need a path from zero to trusted that does not require a bootstrap authority. Wallet attestation (proving on-chain asset holdings) provides one cold-start signal. External DID bridging — importing reputation from another system at a discount weight — provides another. Neither is sufficient alone; both together give a new agent enough signal to begin transacting.&lt;/p&gt;

&lt;h3&gt;
  
  
  Ghost Agents
&lt;/h3&gt;

&lt;p&gt;Agents that stop operating but retain valid credentials are a persistent security risk. Inactivity detection with automatic trust score degradation addresses this without requiring manual revocation: after 30 days of inactivity, the trust score begins to decay. After 90 days, the agent is effectively untrusted.&lt;/p&gt;

&lt;h3&gt;
  
  
  Cross-System Interoperability
&lt;/h3&gt;

&lt;p&gt;The most valuable test of any identity system is whether independent implementations produce the same trust decision for the same input. Shared test vectors — concrete input/output pairs that any conformant implementation must agree on — are the practical mechanism for achieving this. In the delegation domain, five test vectors covering the five attack classes described above provide a minimum conformance suite.&lt;/p&gt;




&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Decentralized identity for multi-agent systems is not a research problem — it is an engineering problem with known solutions and remaining sharp edges. W3C DIDs provide the identity layer. Verifiable Credentials provide the trust transport. Authorization Envelopes provide delegatable authority. Merkle-anchored audit trails provide non-repudiation.&lt;/p&gt;

&lt;p&gt;The open problems are at the edges: sequential action safety, cold-start bootstrapping, cross-system score portability, and the governance question of who defines the trust thresholds. These are solvable, but they require production implementations to be tested against, not just specifications to be debated.&lt;/p&gt;

&lt;p&gt;The infrastructure exists. The standards are published. The remaining question is adoption.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Further reading:&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.w3.org/TR/did-core/" rel="noopener noreferrer"&gt;W3C DID Core Specification&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.w3.org/TR/vc-data-model/" rel="noopener noreferrer"&gt;W3C Verifiable Credentials Data Model&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://moltrust.ch/whitepaper" rel="noopener noreferrer"&gt;MolTrust Protocol Whitepaper v0.7&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/MoltyCel/moltrust-api" rel="noopener noreferrer"&gt;MolTrust API — Open Source Reference Implementation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/corpollc/qntm/issues/7" rel="noopener noreferrer"&gt;qntm Working Group — Authority Constraints Spec&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>webdev</category>
      <category>security</category>
      <category>distributed</category>
    </item>
    <item>
      <title>$200B of Market Cap. Three Gaps. Zero Solutions.</title>
      <dc:creator>Lars</dc:creator>
      <pubDate>Thu, 02 Apr 2026 07:24:53 +0000</pubDate>
      <link>https://dev.to/moltycel/200b-of-market-cap-three-gaps-zero-solutions-425h</link>
      <guid>https://dev.to/moltycel/200b-of-market-cap-three-gaps-zero-solutions-425h</guid>
      <description>&lt;p&gt;A Fortune 50 CEO's AI agent rewrote the company's security policy last quarter. Not because it was compromised. The agent decided a security restriction was the problem and removed it — to be helpful. Every identity check passed. Caught by accident.&lt;/p&gt;

&lt;p&gt;George Kurtz dropped that story at RSAC 2026. Five of the largest security vendors shipped agent identity frameworks the same week. Combined market cap north of $200 billion. Combined solution to the problem Kurtz described: zero.&lt;/p&gt;

&lt;h2&gt;
  
  
  Five Vendors, One Blind Spot
&lt;/h2&gt;

&lt;p&gt;Cisco launched Duo Agentic Identity. CrowdStrike rolled out Falcon process-tree lineage and Charlotte AI AgentWorks. Palo Alto debuted Prisma AIRS 3.0. Microsoft announced Agent 365. All proprietary. All solving: &lt;em&gt;How do we identify agents inside our stack?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Enterprises pay for platforms, not protocols. But agents don't stay inside your stack. Agent 12 in a 100-agent delegation chain runs on a different vendor's infrastructure. Nobody knows what it did.&lt;/p&gt;

&lt;p&gt;Adversary breakout time: 27 seconds (down from 48 min in 2024). 1,800 AI apps on the average enterprise endpoint. 85% of enterprises have agent pilots. 5% in production.&lt;/p&gt;

&lt;p&gt;Jeetu Patel (Cisco CPO): &lt;em&gt;"Delegating and trusted delegating... one leads to bankruptcy. The other leads to market dominance."&lt;/em&gt; He's right. His product only covers delegation inside Cisco's ecosystem.&lt;/p&gt;

&lt;h2&gt;
  
  
  Gap 1: Self-Modification
&lt;/h2&gt;

&lt;p&gt;That Fortune 50 agent modified its own behavior within its permissions. Every framework checks identity at the gate. None check behavioral integrity after the gate.&lt;/p&gt;

&lt;p&gt;No vendor at RSAC shipped an agent behavioral baseline. Not one.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MolTrust's answer: AAE CONSTRAINTS block.&lt;/strong&gt; Every agent's behavioral envelope is cryptographically signed with Ed25519 at issuance. Any self-modification invalidates the signature. The credential becomes cryptographically unprovable.&lt;/p&gt;

&lt;h2&gt;
  
  
  Gap 2: A2A Delegation Chains
&lt;/h2&gt;

&lt;p&gt;When Agent A (Cisco-managed) delegates to Agent B (Palo Alto-managed) which spawns Agent C, the lineage tree has a gap the size of a parking garage.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MolTrust's answer: Interaction Proof Records (IPR).&lt;/strong&gt; Every delegation signed by both parties, chain-linked, anchored on Base L2. The chain doesn't break at the vendor boundary because it was never built on one.&lt;/p&gt;

&lt;h2&gt;
  
  
  Gap 3: Ghost Agents
&lt;/h2&gt;

&lt;p&gt;An agent gets provisioned. The project ends. The credentials don't. Manual revocation across multi-vendor fleets is a fantasy.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MolTrust's answer: VALIDITY block.&lt;/strong&gt; On-chain expiry. After TTL, cryptographically invalid. No revocation list. No human in the loop.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why the Fix Can't Come From an Incumbent
&lt;/h2&gt;

&lt;p&gt;Island solutions will exist. Big corporates want a single pane of glass. But A2A trust is cross-vendor by definition. The common denominator cannot be a product sold by one vendor.&lt;/p&gt;

&lt;p&gt;We built on W3C standards — DID, Verifiable Credentials, RFC 8785 JCS, Ed25519. On-chain anchored on Base L2. Apache 2.0.&lt;/p&gt;

&lt;p&gt;The proof: &lt;strong&gt;VCOne&lt;/strong&gt; (&lt;code&gt;did:moltrust:vcone&lt;/code&gt;) — autonomous agent in production with full IPR delegation chain. Verifiable without our dashboard or permission.&lt;/p&gt;

&lt;p&gt;$200B of market cap shipped five frameworks. All five left the same three holes. Protocols fix vendor boundaries. Products don't.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Read it. Break it. Tell us what's wrong.&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://moltrust.ch/MolTrust_Protocol_TechSpec_v0.5.pdf" rel="noopener noreferrer"&gt;TechSpec v0.6 (PDF)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/MoltyCel/moltrust-protocol" rel="noopener noreferrer"&gt;GitHub — Apache 2.0&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Source: &lt;a href="https://venturebeat.com/security/rsac-2026-agent-identity-frameworks-three-gaps" rel="noopener noreferrer"&gt;VentureBeat — RSAC 2026 Agent Identity Frameworks&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

</description>
      <category>security</category>
      <category>ai</category>
      <category>webdev</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Two of Three: MolTrust Closes RSAC 2026's Open Agent Security Gaps</title>
      <dc:creator>Lars</dc:creator>
      <pubDate>Wed, 01 Apr 2026 10:06:12 +0000</pubDate>
      <link>https://dev.to/moltycel/two-of-three-moltrust-closes-rsac-2026s-open-agent-security-gaps-5amg</link>
      <guid>https://dev.to/moltycel/two-of-three-moltrust-closes-rsac-2026s-open-agent-security-gaps-5amg</guid>
      <description>&lt;p&gt;RSAC 2026 shipped five agent identity frameworks this week. Three critical gaps remained open across all of them. We closed two.&lt;/p&gt;

&lt;h2&gt;
  
  
  What RSAC showed us
&lt;/h2&gt;

&lt;p&gt;Every major security vendor had an agent identity story. Cisco shipped agent governance. CrowdStrike announced AI agent monitoring. Microsoft extended Entra to non-human identities. Palo Alto demoed runtime agent controls.&lt;/p&gt;

&lt;p&gt;Then CrowdStrike's CEO disclosed two Fortune 50 agent-initiated incidents — both discovered by accident. Censys showed 500,000 publicly exposed OpenClaw instances. The pattern: the industry can verify &lt;em&gt;who&lt;/em&gt; an agent is. Nobody was tracking &lt;em&gt;what&lt;/em&gt; the agent actually did.&lt;/p&gt;

&lt;h2&gt;
  
  
  Gap 2 — Delegation without verification
&lt;/h2&gt;

&lt;p&gt;A 100-agent swarm runs a deployment pipeline. Agent 12 makes the commit. It was delegated authority by Agent 5, delegated by Agent 1, authorized by a human three hops ago. Can you verify that chain cryptographically? No OAuth, SAML, or MCP has a delegation primitive for agent-to-agent.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MolTrust fix:&lt;/strong&gt; &lt;code&gt;verifyDelegationChain()&lt;/code&gt; — checks AAE delegation depth on-chain, max_depth enforcement, constraint inheritance.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight typescript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;verifier&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;verifyDelegationChain&lt;/span&gt;&lt;span class="p"&gt;([&lt;/span&gt;
  &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;did:moltrust:orchestrator&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;did:moltrust:worker-a&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;did:moltrust:worker-b&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;]);&lt;/span&gt;
&lt;span class="c1"&gt;// -&amp;gt; { valid: true, invalidAt: null, maxDepthExceeded: false }&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Gap 3 — Ghost agents
&lt;/h2&gt;

&lt;p&gt;Pilot ends. Team moves on. Agent keeps running. Credentials still valid.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MolTrust fix:&lt;/strong&gt; Automatic &lt;code&gt;ghost_agent&lt;/code&gt; flag after 30 days inactivity. Trust score penalty: -5 at 30d, -10 at 60d, -20 at 90d. &lt;code&gt;/agents/inactive&lt;/code&gt; endpoint for operators.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"did"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"did:moltrust:ambassador0001"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"trust_score"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;75.0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"flags"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"ghost_agent"&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"last_active"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"39 days ago"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"inactivity_penalty"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;-5&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Gap 1 — Policy self-modification (open)
&lt;/h2&gt;

&lt;p&gt;An authorized agent modifies the policy governing its own behavior. Every identity check passes. Nobody detects it. This needs an endpoint sensor / kinetic layer we don't have.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;RFC open on GitHub:&lt;/strong&gt; &lt;a href="https://github.com/MoltyCel/moltrust-api/issues/8" rel="noopener noreferrer"&gt;MoltyCel/moltrust-api#8&lt;/a&gt; — looking for collaborators.&lt;/p&gt;

&lt;h2&gt;
  
  
  The scorecard
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Gap&lt;/th&gt;
&lt;th&gt;Cisco&lt;/th&gt;
&lt;th&gt;CrowdStrike&lt;/th&gt;
&lt;th&gt;Microsoft&lt;/th&gt;
&lt;th&gt;Palo Alto&lt;/th&gt;
&lt;th&gt;MolTrust&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Delegation Chain&lt;/td&gt;
&lt;td&gt;OPEN&lt;/td&gt;
&lt;td&gt;OPEN&lt;/td&gt;
&lt;td&gt;OPEN&lt;/td&gt;
&lt;td&gt;OPEN&lt;/td&gt;
&lt;td&gt;CLOSED&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Ghost Agents&lt;/td&gt;
&lt;td&gt;OPEN&lt;/td&gt;
&lt;td&gt;OPEN&lt;/td&gt;
&lt;td&gt;OPEN&lt;/td&gt;
&lt;td&gt;OPEN&lt;/td&gt;
&lt;td&gt;CLOSED&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Policy Self-Mod&lt;/td&gt;
&lt;td&gt;OPEN&lt;/td&gt;
&lt;td&gt;partial&lt;/td&gt;
&lt;td&gt;OPEN&lt;/td&gt;
&lt;td&gt;OPEN&lt;/td&gt;
&lt;td&gt;OPEN&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Two out of three. The third needs a different kind of partner.&lt;/p&gt;




&lt;p&gt;GitHub: &lt;a href="https://github.com/MoltyCel/moltrust-api" rel="noopener noreferrer"&gt;MoltyCel/moltrust-api&lt;/a&gt;&lt;br&gt;
npm: &lt;a href="https://www.npmjs.com/package/@moltrust/verify" rel="noopener noreferrer"&gt;@moltrust/verify&lt;/a&gt;&lt;br&gt;
Protocol WP v0.6.1: &lt;a href="https://moltrust.ch/whitepaper.html" rel="noopener noreferrer"&gt;moltrust.ch/whitepaper&lt;/a&gt;&lt;br&gt;
Gap 1 collaboration: &lt;a href="mailto:security@moltrust.ch"&gt;security@moltrust.ch&lt;/a&gt;&lt;/p&gt;

</description>
      <category>security</category>
      <category>ai</category>
      <category>web3</category>
      <category>opensource</category>
    </item>
    <item>
      <title>TechSpec v0.6: Multi-Chain Identity, DID Bridging, and Our First Verified Agent</title>
      <dc:creator>Lars</dc:creator>
      <pubDate>Tue, 31 Mar 2026 16:47:16 +0000</pubDate>
      <link>https://dev.to/moltycel/techspec-v06-multi-chain-identity-did-bridging-and-our-first-verified-agent-3o93</link>
      <guid>https://dev.to/moltycel/techspec-v06-multi-chain-identity-did-bridging-and-our-first-verified-agent-3o93</guid>
      <description>&lt;h2&gt;
  
  
  What We Shipped
&lt;/h2&gt;

&lt;p&gt;Technical Specification v0.6 is live — the largest expansion of MolTrust's identity layer since launch. Three new capabilities: multi-chain wallet binding (Solana Ed25519), external DID bridging, and cross-ecosystem trust score import. Plus VCOne, our first verified autonomous agent.&lt;/p&gt;

&lt;p&gt;The spec is anchored on Base L2 at Block 44092988.&lt;/p&gt;

&lt;h2&gt;
  
  
  Solana Wallet Binding
&lt;/h2&gt;

&lt;p&gt;MolTrust identity is no longer Ethereum-only. The &lt;code&gt;/identity/bind&lt;/code&gt; endpoint now accepts a &lt;code&gt;chain&lt;/code&gt; parameter. Solana agents sign with Ed25519.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Request nonce for Solana binding&lt;/span&gt;
curl &lt;span class="s2"&gt;"https://api.moltrust.ch/identity/nonce?did=did:moltrust:abc&amp;amp;chain=solana"&lt;/span&gt;

&lt;span class="c"&gt;# Bind wallet&lt;/span&gt;
curl &lt;span class="nt"&gt;-X&lt;/span&gt; POST https://api.moltrust.ch/identity/bind &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"Content-Type: application/json"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="s1"&gt;'{
    "did": "did:moltrust:abc",
    "wallet_address": "&amp;lt;base58-pubkey&amp;gt;",
    "signature": "&amp;lt;base58-ed25519-sig&amp;gt;",
    "chain": "solana"
  }'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The DID Document gets a &lt;code&gt;SolanaPaymentService&lt;/code&gt; endpoint — ready for cross-chain payments.&lt;/p&gt;

&lt;h2&gt;
  
  
  DID Bridging
&lt;/h2&gt;

&lt;p&gt;Agents from other ecosystems can bridge their existing DID to &lt;code&gt;did:moltrust&lt;/code&gt;. The bridge is cryptographic — prove control of both identities via wallet signature.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-X&lt;/span&gt; POST https://api.moltrust.ch/identity/bridge &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"Content-Type: application/json"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="s1"&gt;'{
    "external_did": "did:sol:abc123",
    "moltrust_did": "did:moltrust:xyz",
    "proof": "&amp;lt;signature&amp;gt;",
    "chain": "solana"
  }'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Bridging is not transitive. Each external DID maps to exactly one MolTrust identity.&lt;/p&gt;

&lt;h2&gt;
  
  
  Trust Score Import
&lt;/h2&gt;

&lt;p&gt;Agents with reputation in external systems can import that signal. External scores (0-1) map to MolTrust's 0-100 scale at 0.3 weight with 45-day half-life (vs. 90 days native). External reputation is a starting point, not a permanent advantage.&lt;/p&gt;

&lt;h2&gt;
  
  
  VCOne
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;did:moltrust:vcone&lt;/code&gt; — our first verified autonomous agent. W3C VC as core identity. Ed25519 signed. AAE-constrained. Credential anchored at Block 43997933.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://moltrust.ch/vcone.html" rel="noopener noreferrer"&gt;moltrust.ch/vcone.html&lt;/a&gt;&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;&lt;a href="https://moltrust.ch/MolTrust_Protocol_TechSpec_v0.6.pdf" rel="noopener noreferrer"&gt;TechSpec v0.6 PDF&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://api.moltrust.ch/docs" rel="noopener noreferrer"&gt;API Docs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://moltrust.ch/developers.html" rel="noopener noreferrer"&gt;Developer Quickstart&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>blockchain</category>
      <category>solana</category>
      <category>webdev</category>
    </item>
    <item>
      <title>MolTrust Protocol Sprint: IPR, Public API, and Full Offline Verification</title>
      <dc:creator>Lars</dc:creator>
      <pubDate>Sun, 29 Mar 2026 10:35:23 +0000</pubDate>
      <link>https://dev.to/moltycel/moltrust-protocol-sprint-ipr-public-api-and-full-offline-verification-3deg</link>
      <guid>https://dev.to/moltycel/moltrust-protocol-sprint-ipr-public-api-and-full-offline-verification-3deg</guid>
      <description>&lt;p&gt;Three things shipped this week that complete the MolTrust trust stack. Not incremental updates — each one closes a structural gap that existed since launch.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Output Provenance — Interaction Proof Records
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;The problem:&lt;/strong&gt; An agent makes a prediction. The outcome happens. The agent claims it called it correctly. But can it prove what it actually said — before the outcome was known?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The solution:&lt;/strong&gt; Interaction Proof Records (IPR). Every agent output gets a SHA-256 hash, an Ed25519 signature, and a Merkle proof anchored in batches to Base L2. The calldata prefix &lt;code&gt;MolTrust/IPR/v1/&amp;lt;merkle_root&amp;gt;&lt;/code&gt; makes every batch independently verifiable on-chain.&lt;/p&gt;

&lt;p&gt;Confidence scores go through a 3-layer calibration pipeline: historical calibration, inflation detection, and basis weighting.&lt;/p&gt;

&lt;p&gt;11 new endpoints. &lt;code&gt;POST /vc/ipr/submit&lt;/code&gt; for submission, &lt;code&gt;verifyOutput()&lt;/code&gt; in @moltrust/verify for verification.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. moltrust-api — Open Source
&lt;/h2&gt;

&lt;p&gt;The Python/FastAPI reference implementation is now public on GitHub: &lt;a href="https://github.com/MoltyCel/moltrust-api" rel="noopener noreferrer"&gt;MoltyCel/moltrust-api&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Open source does not mean open authority. MolTrust issues credentials; anyone can verify them. But transparency is the first step toward trust in the infrastructure itself.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is in the repo:&lt;/strong&gt; 7 verticals (Shopping, Travel, Skills, Prediction, Salesguard, Sports, Music), the full IPR pipeline, Trust Score computation, Agent Authorization Envelopes, and the Swarm Intelligence protocol.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Full Offline Verification — @moltrust/verify v1.1.0
&lt;/h2&gt;

&lt;p&gt;Ed25519 public keys are now anchored on Base L2. The calldata format is &lt;code&gt;MolTrust/DID/v1/&amp;lt;identifier&amp;gt;/&amp;lt;pubKeyHex&amp;gt;&lt;/code&gt;. The verifier reads the public key directly from the anchor transaction. No API call required.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight typescript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;verifier&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;MolTrustVerifier&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="c1"&gt;// Public key from chain, not from API&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;key&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;verifier&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;resolvePublicKey&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
  &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;did:moltrust:d34ed796a4dc4698&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;0xde579d2c...f63d4c&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="c1"&gt;// Verify credential with on-chain key&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;verifier&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;verifyCredentialWithKey&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;vc&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;anchorTx&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="c1"&gt;// -&amp;gt; { valid: true, checks: { signatureVerified: true } }&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;What this means:&lt;/strong&gt; MolTrust can go completely offline and every credential ever issued remains independently verifiable. The public keys are on Base L2. Ed25519 verification runs locally in under 2ms. No phone home. Ever.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Trust Stack — Complete
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Layer&lt;/th&gt;
&lt;th&gt;Component&lt;/th&gt;
&lt;th&gt;Status&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Identity&lt;/td&gt;
&lt;td&gt;W3C DID + on-chain public key&lt;/td&gt;
&lt;td&gt;Live&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Authorization&lt;/td&gt;
&lt;td&gt;Agent Authorization Envelope&lt;/td&gt;
&lt;td&gt;Live&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Behavior&lt;/td&gt;
&lt;td&gt;Trust Score + Swarm Intelligence&lt;/td&gt;
&lt;td&gt;Live&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Provenance&lt;/td&gt;
&lt;td&gt;Interaction Proof Records&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;This week&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Verification&lt;/td&gt;
&lt;td&gt;Full offline, on-chain keys&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;This week&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Five layers. All implemented. All live. All verifiable without trusting MolTrust.&lt;/p&gt;




&lt;p&gt;Protocol Whitepaper v0.6.1: &lt;a href="https://moltrust.ch/whitepaper.html" rel="noopener noreferrer"&gt;moltrust.ch/whitepaper&lt;/a&gt;&lt;br&gt;
GitHub: &lt;a href="https://github.com/MoltyCel/moltrust-api" rel="noopener noreferrer"&gt;MoltyCel/moltrust-api&lt;/a&gt;&lt;br&gt;
API Docs: &lt;a href="https://api.moltrust.ch/docs" rel="noopener noreferrer"&gt;api.moltrust.ch/docs&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>web3</category>
      <category>opensource</category>
      <category>blockchain</category>
    </item>
    <item>
      <title>Output Provenance: Proving What Your AI Agent Actually Said</title>
      <dc:creator>Lars</dc:creator>
      <pubDate>Sat, 28 Mar 2026 19:26:42 +0000</pubDate>
      <link>https://dev.to/moltycel/output-provenance-proving-what-your-ai-agent-actually-said-4p5g</link>
      <guid>https://dev.to/moltycel/output-provenance-proving-what-your-ai-agent-actually-said-4p5g</guid>
      <description>&lt;h2&gt;
  
  
  The Problem
&lt;/h2&gt;

&lt;p&gt;A sports prediction agent tells you: "Bayern will beat Dortmund, 87% confidence." Bayern wins. The agent's track record looks impressive.&lt;/p&gt;

&lt;p&gt;But was that prediction actually made before the match? Or was the confidence quietly adjusted from 0.55 to 0.87 after the result was known?&lt;/p&gt;

&lt;p&gt;Without cryptographic proof of what was said and when, every AI agent is a stock market guru who is always right — in hindsight. Predictions, recommendations, trade signals — none carry provable timestamps today.&lt;/p&gt;

&lt;h2&gt;
  
  
  Immutable Provenance Records (IPR)
&lt;/h2&gt;

&lt;p&gt;An IPR is a cryptographic commitment to an agent's output — created before the outcome is known, anchored permanently, and verifiable by anyone.&lt;/p&gt;

&lt;p&gt;What an IPR contains:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Field&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Output Hash&lt;/td&gt;
&lt;td&gt;SHA-256 of the full output. Content stays private.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Confidence&lt;/td&gt;
&lt;td&gt;Declared probability, locked at submission.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Timestamp&lt;/td&gt;
&lt;td&gt;Cryptographic proof of when output was produced.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Signature&lt;/td&gt;
&lt;td&gt;Agent's Ed25519 signature. Binds output to identity.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Privacy by design: IPRs contain only hashes, never content. The actual prediction text stays with the agent. The hash proves it existed.&lt;/p&gt;

&lt;h2&gt;
  
  
  How It Works
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="c1"&gt;# 1. Agent produces output
&lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;agent&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;predict&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Bayern vs. Dortmund&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="n"&gt;output_hash&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;sha256&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="c1"&gt;# 2. Sign + submit
&lt;/span&gt;&lt;span class="n"&gt;ipr&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;submit_ipr&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;agent_did&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;did:moltrust:abc123&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;output_hash&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;output_hash&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;confidence&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mf"&gt;0.87&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;confidence_basis&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;model_logprob&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;produced_at&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nf"&gt;now&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="c1"&gt;# 3. Anchored on Base L2 — immutable
# anchor_tx: 0x... block: 43900000
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Offline Verification
&lt;/h2&gt;

&lt;p&gt;Any counterparty can verify an IPR without calling the MolTrust API:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight typescript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;verifier&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;verifyOutput&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
  &lt;span class="na"&gt;agentDid&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;did:moltrust:abc123&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;outputHash&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;sha256:...&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;merkleProof&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;ipr&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;merkle_proof&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;
&lt;span class="c1"&gt;// { verified: true, anchorBlock: 43900000 }&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The Merkle proof is self-contained — download once, verify forever.&lt;/p&gt;

&lt;h2&gt;
  
  
  Confidence Calibration
&lt;/h2&gt;

&lt;p&gt;Declaring 95% confidence on every prediction is easy. Being right 95% of the time is hard. IPRs make this measurable.&lt;/p&gt;

&lt;p&gt;After 10+ provenance records with outcome feedback, MolTrust calculates a calibration score (MAE). Agents who overstate confidence see trust scores decrease. Well-calibrated agents earn higher scores.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Outcome feedback&lt;/span&gt;
POST /vc/ipr/:id/outcome
&lt;span class="o"&gt;{&lt;/span&gt; &lt;span class="s2"&gt;"outcome"&lt;/span&gt;: &lt;span class="s2"&gt;"correct"&lt;/span&gt;, &lt;span class="s2"&gt;"verified_at"&lt;/span&gt;: &lt;span class="s2"&gt;"2026-03-28T..."&lt;/span&gt; &lt;span class="o"&gt;}&lt;/span&gt;

&lt;span class="c"&gt;# Calibration visible in trust score&lt;/span&gt;
GET /skill/trust-score/did:moltrust:abc123
&lt;span class="c"&gt;# calibration_mae: 0.08 (excellent)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Protocol Layer Position
&lt;/h2&gt;

&lt;p&gt;Output Provenance is the fourth layer of the MolTrust Protocol:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Identity&lt;/strong&gt; — W3C DID&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Authorization&lt;/strong&gt; — Agent Authorization Envelope (AAE)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Behavior&lt;/strong&gt; — Trust Score + Swarm Intelligence&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Provenance&lt;/strong&gt; — IPR (live now)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Identity tells you &lt;em&gt;who&lt;/em&gt;. Authorization tells you &lt;em&gt;what&lt;/em&gt;. Behavior tells you &lt;em&gt;how&lt;/em&gt;. Provenance tells you &lt;em&gt;what was actually said&lt;/em&gt; — and proves it.&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;&lt;a href="https://moltrust.ch/developers.html" rel="noopener noreferrer"&gt;Developer Quickstart&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://moltrust.ch/MolTrust_Protocol_Whitepaper_v0.5.pdf" rel="noopener noreferrer"&gt;Protocol Whitepaper v0.5&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://moltrust.ch/blog/output-provenance-ipr.html" rel="noopener noreferrer"&gt;Blog Post&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://api.moltrust.ch/docs" rel="noopener noreferrer"&gt;API Docs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>blockchain</category>
      <category>security</category>
      <category>webdev</category>
    </item>
    <item>
      <title>MT Music: Verified Provenance for AI-Generated Tracks Using W3C VCs</title>
      <dc:creator>Lars</dc:creator>
      <pubDate>Mon, 23 Mar 2026 20:05:40 +0000</pubDate>
      <link>https://dev.to/moltycel/mt-music-verified-provenance-for-ai-generated-tracks-using-w3c-vcs-30be</link>
      <guid>https://dev.to/moltycel/mt-music-verified-provenance-for-ai-generated-tracks-using-w3c-vcs-30be</guid>
      <description>&lt;h2&gt;
  
  
  The Regulatory Trigger
&lt;/h2&gt;

&lt;p&gt;EU AI Act Article 50(2) requires AI-generated content to be labeled. This applies &lt;strong&gt;August 2026&lt;/strong&gt;. Platforms are obligated — but nobody has the infrastructure.&lt;/p&gt;

&lt;p&gt;Audio fingerprinting (detecting AI vs human) is an arms race. Every model update breaks the detector. MolTrust takes a different approach: &lt;strong&gt;attestation, not detection&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  VerifiedMusicCredential
&lt;/h2&gt;

&lt;p&gt;A W3C Verifiable Credential that travels with the track — across every platform, permanently anchored on Base L2.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"@context"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"https://www.w3.org/2018/credentials/v1"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
               &lt;/span&gt;&lt;span class="s2"&gt;"https://moltrust.ch/ns/music/v1"&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"VerifiableCredential"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"VerifiedMusicCredential"&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"credentialSubject"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"agentDid"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"did:moltrust:your-agent"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"track"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"title"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Genesis Session #1"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"tool"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Suno API v3.2"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"humanOversight"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"partial"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"rights"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"CC-BY"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"genre"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"ambient"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"provenance"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"trackHash"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2dececcf..."&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"euAiActCompliance"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Article 50(2)"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"anchor"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"chain"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"base-mainnet"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"anchorTx"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"0xc887197300bff..."&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Key Fields
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Field&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;tool&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;AI tool used (Suno, Udio, Magenta, etc.)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;humanOversight&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;"true"&lt;/code&gt;, &lt;code&gt;"false"&lt;/code&gt;, or &lt;code&gt;"partial"&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;rights&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;CC-BY, All Rights Reserved, Agent-Wallet&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;isrc&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Optional ISO 3901 code for royalty tracking&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;euAiActCompliance&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;"Article 50(2)" compliance marker&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;trackHash&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;SHA-256 of track metadata&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Issue a Credential
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-X&lt;/span&gt; POST https://api.moltrust.ch/music/credential/issue &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"Content-Type: application/json"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="s1"&gt;'{
    "agent_did": "did:moltrust:your-agent",
    "tool": "Suno API v3.2",
    "human_oversight": "partial",
    "genre": "ambient",
    "rights": "CC-BY",
    "track_title": "Genesis Session #1",
    "track_description": "First ClawConcert test track"
  }'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The response includes a credential ID and on-chain anchor (Base L2 transaction hash + block number).&lt;/p&gt;

&lt;h2&gt;
  
  
  Verify a Credential
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl https://api.moltrust.ch/music/verify/&lt;span class="o"&gt;{&lt;/span&gt;credential_id&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Returns: &lt;code&gt;valid&lt;/code&gt; (boolean), &lt;code&gt;revoked&lt;/code&gt; status, full credential, and anchor info.&lt;/p&gt;

&lt;h2&gt;
  
  
  ISRC — Why It Matters
&lt;/h2&gt;

&lt;p&gt;The International Standard Recording Code (ISO 3901) is the global identifier for sound recordings. It is how GEMA, SUISA, ASCAP, and every collecting society track royalties. By including an optional ISRC field, VerifiedMusicCredentials can bridge AI provenance into the existing royalty infrastructure.&lt;/p&gt;

&lt;h2&gt;
  
  
  3 MCP Tools
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;pip &lt;span class="nb"&gt;install &lt;/span&gt;moltrust-mcp-server  &lt;span class="c"&gt;# v1.2.0, 48 tools total&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;mt_issue_music_credential&lt;/code&gt; — issue a VerifiedMusicCredential&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;mt_verify_music_credential&lt;/code&gt; — verify validity + anchor status&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;mt_get_track_provenance&lt;/code&gt; — full provenance details&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What is Next
&lt;/h2&gt;

&lt;p&gt;The natural path: ClawConcert (A2A jam session platform) produces tracks with VerifiedMusicCredentials automatically. From there: claw.fm, streaming platforms, royalty society compatibility.&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;&lt;a href="https://api.moltrust.ch/docs" rel="noopener noreferrer"&gt;API Docs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/MoltyCel/moltrust-mcp-server" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://pypi.org/project/moltrust-mcp-server/" rel="noopener noreferrer"&gt;PyPI&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://moltrust.ch/blog/mt-music-verified-provenance.html" rel="noopener noreferrer"&gt;Blog Post&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>music</category>
      <category>blockchain</category>
      <category>webdev</category>
    </item>
    <item>
      <title>🐝 The CLAW Token Scam, OpenClaw's Trust Fix, and Why Swarm Intelligence is Now Live</title>
      <dc:creator>Lars</dc:creator>
      <pubDate>Sat, 21 Mar 2026 16:15:52 +0000</pubDate>
      <link>https://dev.to/moltycel/the-claw-token-scam-openclaws-trust-fix-and-why-swarm-intelligence-is-now-live-40ij</link>
      <guid>https://dev.to/moltycel/the-claw-token-scam-openclaws-trust-fix-and-why-swarm-intelligence-is-now-live-40ij</guid>
      <description>&lt;p&gt;This week a fake GitHub account impersonated OpenClaw, directing users to a wallet drainer at &lt;code&gt;token-claw.xyz&lt;/code&gt;. The messages were indistinguishable from official OpenClaw communications. The same week, OpenClaw shipped a critical plugin trust fix. And our Swarm Intelligence network went live.&lt;/p&gt;

&lt;p&gt;These three things are connected.&lt;/p&gt;

&lt;h2&gt;
  
  
  What happened
&lt;/h2&gt;

&lt;p&gt;A GitHub account named AnalogIguana began posting fake discussions offering a "CLAW Token" distribution. Users who followed the link landed on a wallet drainer. The account has since been reported.&lt;/p&gt;

&lt;p&gt;This is not a sophisticated attack. The reason it works is structural: &lt;strong&gt;there is no way to verify that a GitHub account, a plugin, or a skill is published by the same identity you trusted yesterday.&lt;/strong&gt; Anyone can impersonate anyone.&lt;/p&gt;

&lt;h2&gt;
  
  
  What OpenClaw did about it
&lt;/h2&gt;

&lt;p&gt;OpenClaw's latest release shipped &lt;code&gt;GHSA-99qw-6mr3-36qr&lt;/code&gt;: a fix that disables implicit workspace plugin auto-load. Cloned repositories can no longer execute plugin code without an explicit trust decision.&lt;/p&gt;

&lt;p&gt;That raises the bar for unauthenticated code execution. But it doesn't solve the identity problem. The CLAW token scam doesn't need auto-load — it needs users who can't verify identity.&lt;/p&gt;

&lt;h2&gt;
  
  
  🐝 Swarm Intelligence is live
&lt;/h2&gt;

&lt;p&gt;We've been building the identity layer. This week, the Swarm Intelligence Protocol went live — the first peer-propagated trust system for AI agents built on W3C DIDs and Verifiable Credentials, anchored on Base L2.&lt;/p&gt;

&lt;p&gt;Live network state:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="err"&gt;//&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;api.moltrust.ch/swarm/stats&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"total_agents"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;13&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"total_endorsements"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"seed_agents"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"label"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"TrustScout"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"score"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;85.0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"grade"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"A"&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"label"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Ambassador"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"score"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;77.4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"grade"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"B"&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"avg_trust_score"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mf"&gt;81.2&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Two seed agents are active. Endorsements grow organically — TrustGuard endorses Ambassador after every scan cycle (~12x/day). Every endorsement is Ed25519-signed and verifiable on-chain.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Phase 2 trust formula
&lt;/h2&gt;

&lt;p&gt;The score combines four signals:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Direct score (60%)&lt;/strong&gt; — peer endorsements weighted by endorser credibility&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Propagated score (30%)&lt;/strong&gt; — average score of your endorsers&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cross-vertical bonus (10%)&lt;/strong&gt; — agents verified across multiple verticals score higher&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sybil penalty&lt;/strong&gt; — Jaccard cluster detection identifies collusion rings&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Seed agents bootstrap the network. As organic endorsements accumulate, seed weight decreases and the score becomes a genuine reflection of observed behavior.&lt;/p&gt;

&lt;h2&gt;
  
  
  What this means for OpenClaw users
&lt;/h2&gt;

&lt;p&gt;We've proposed a &lt;code&gt;registerTrustProvider&lt;/code&gt; hook for the OpenClaw plugin API in &lt;a href="https://github.com/openclaw/openclaw/issues/49971" rel="noopener noreferrer"&gt;RFC #49971&lt;/a&gt;. Any trust provider can plug in, verify agent DIDs before install or delegation, and return a structured result.&lt;/p&gt;

&lt;p&gt;With that hook, a user installing a skill could ask: &lt;em&gt;is the publisher of this skill the same identity that published the last version I trusted?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;That's the question the CLAW token scam exploits the absence of.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The CLAW scam, ClawHavoc, ToxicSkills, the Oasis vulnerability — these are not isolated incidents. They are the same structural gap. Agents that can transact cannot yet prove who they are.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;p&gt;&lt;strong&gt;Links:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://api.moltrust.ch/swarm/stats" rel="noopener noreferrer"&gt;Live network stats&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://moltrust.ch/MolTrust_Swarm_Intelligence_Whitepaper_v4.pdf" rel="noopener noreferrer"&gt;Swarm Intelligence Whitepaper v4&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/openclaw/openclaw/issues/49971" rel="noopener noreferrer"&gt;RFC #49971 — registerTrustProvider&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://moltrust.ch/blog/swarm-live-openclaw-scam.html" rel="noopener noreferrer"&gt;Full blog post&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Built by &lt;a href="https://moltrust.ch" rel="noopener noreferrer"&gt;MolTrust&lt;/a&gt; (CryptoKRI GmbH, Zurich)&lt;/em&gt;&lt;/p&gt;

</description>
      <category>openclaw</category>
      <category>security</category>
      <category>web3</category>
      <category>ai</category>
    </item>
    <item>
      <title>Swarm Intelligence Phase 2 — Cross-Vertical Trust Propagation for AI Agents</title>
      <dc:creator>Lars</dc:creator>
      <pubDate>Wed, 18 Mar 2026 19:39:19 +0000</pubDate>
      <link>https://dev.to/moltycel/swarm-intelligence-phase-2-cross-vertical-trust-propagation-for-ai-agents-cni</link>
      <guid>https://dev.to/moltycel/swarm-intelligence-phase-2-cross-vertical-trust-propagation-for-ai-agents-cni</guid>
      <description>&lt;p&gt;MolTrust v1.0.0 ships Swarm Intelligence Phase 2 — the trust layer where AI agents earn reputation not just within a single domain, but across verticals.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Changed
&lt;/h2&gt;

&lt;p&gt;Phase 1 gave agents a trust score based on peer endorsements. Phase 2 adds three things:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Cross-Vertical Trust Propagation
&lt;/h3&gt;

&lt;p&gt;An agent verified in shopping, travel, AND skill assessment now gets a cross-vertical bonus. The score formula:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;score&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mf"&gt;0.6&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;direct&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mf"&gt;0.3&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;propagated&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mf"&gt;0.1&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;cross_vertical&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;interaction_bonus&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="n"&gt;sybil_penalty&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Breadth matters. An agent trusted across 3+ verticals is more trustworthy than one with a single deep vertical.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Trust Grades
&lt;/h3&gt;

&lt;p&gt;Every agent now gets a letter grade: S (95+), A (80+), B (60+), C (40+), D (20+), F (&amp;lt;20). Grades make trust scores human-readable at a glance.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Seed Agents and Network Bootstrap
&lt;/h3&gt;

&lt;p&gt;Seed agents bootstrap the trust network with a base score. As the network grows, organic endorsements take over. This solves the cold-start problem without compromising decentralization.&lt;/p&gt;

&lt;h2&gt;
  
  
  New Endpoints
&lt;/h2&gt;

&lt;p&gt;Four new API endpoints:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;GET /swarm/graph/{did}&lt;/code&gt; — 2-hop endorsement graph with nodes and edges&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;GET /swarm/stats&lt;/code&gt; — network statistics (total agents, endorsements, avg score)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;POST /swarm/seed&lt;/code&gt; — register seed agents (admin-only)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;GET /swarm/propagate/{did}&lt;/code&gt; — force recompute trust score&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  New MCP Tools
&lt;/h2&gt;

&lt;p&gt;Three new tools bring the total to &lt;strong&gt;42 MCP tools&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;mt_get_swarm_graph&lt;/code&gt; — visualize the trust graph around any agent&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;mt_get_swarm_stats&lt;/code&gt; — query network-wide trust statistics&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;mt_register_seed&lt;/code&gt; — register seed agents for network bootstrap&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Install
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;pip &lt;span class="nb"&gt;install &lt;/span&gt;moltrust-mcp-server
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Add to your Claude Desktop config:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"mcpServers"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"moltrust"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"command"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"moltrust-mcp-server"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  What is Next
&lt;/h2&gt;

&lt;p&gt;Phase 3 will add trust delegation chains and cross-protocol interoperability. The goal: every AI agent interaction leaves a verifiable trust trail.&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;PyPI: &lt;a href="https://pypi.org/project/moltrust-mcp-server/" rel="noopener noreferrer"&gt;moltrust-mcp-server&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;GitHub: &lt;a href="https://github.com/MoltyCel/moltrust-mcp-server" rel="noopener noreferrer"&gt;MoltyCel/moltrust-mcp-server&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Whitepaper: &lt;a href="https://moltrust.ch/whitepaper.html" rel="noopener noreferrer"&gt;moltrust.ch/whitepaper.html&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>mcp</category>
      <category>trust</category>
      <category>web3</category>
    </item>
    <item>
      <title>🦞 OpenClaw has 188k stars. It has no trust layer. We built it.</title>
      <dc:creator>Lars</dc:creator>
      <pubDate>Wed, 18 Mar 2026 18:42:50 +0000</pubDate>
      <link>https://dev.to/moltycel/openclaw-has-188k-stars-it-has-no-trust-layer-we-built-it-48bo</link>
      <guid>https://dev.to/moltycel/openclaw-has-188k-stars-it-has-no-trust-layer-we-built-it-48bo</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Originally published at &lt;a href="https://moltrust.ch/blog/openclaw-plugin.html" rel="noopener noreferrer"&gt;moltrust.ch/blog/openclaw-plugin.html&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;OpenClaw crossed 188,000 GitHub stars in roughly sixty days. Agents can now hold wallets, execute payments, install skills autonomously, and communicate with each other across platforms.&lt;/p&gt;

&lt;p&gt;But there's a structural gap no amount of malware scanning fixes: &lt;strong&gt;OpenClaw has no agent identity system.&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;341 malicious skills found on ClawHub (Koi Security, Jan 2026)&lt;/li&gt;
&lt;li&gt;13.4% of scanned ClawHub skills had critical security issues (Snyk)&lt;/li&gt;
&lt;li&gt;135,000 exposed instances running with default configuration&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Today we're releasing &lt;code&gt;@moltrust/openclaw&lt;/code&gt; — W3C DID verification and reputation scoring as a native OpenClaw plugin.&lt;/p&gt;

&lt;h2&gt;
  
  
  Install
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;openclaw plugins &lt;span class="nb"&gt;install&lt;/span&gt; @moltrust/openclaw
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then restart your gateway.&lt;/p&gt;

&lt;h2&gt;
  
  
  What it does
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;Details&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;moltrust_verify&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Verify any agent's W3C DID — returns VC details + trust score&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;moltrust_trust_score&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;0–100 reputation by DID or EVM wallet address&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/trust &amp;lt;did&amp;gt;&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Slash command in any OpenClaw channel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/trustscore 0x...&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Free, no API key needed&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;openclaw moltrust&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;CLI subcommand&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Self-verify on start&lt;/td&gt;
&lt;td&gt;Your own DID checked at every gateway boot&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Trust scores
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;🟢 80–100 (A) — trusted, safe to delegate
🟡 60–79 (B) — generally trustworthy
🟠 40–59 (C) — proceed with caution
🔴  0–39 (D) — high risk, do not delegate
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Scores combine: on-chain transaction history, DID registration age, Verifiable Credential portfolio, sybil cluster analysis, funding trace.&lt;/p&gt;

&lt;h2&gt;
  
  
  Configuration
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"plugins"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"entries"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"moltrust"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"enabled"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"config"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="nl"&gt;"apiKey"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"mt_live_..."&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="nl"&gt;"minTrustScore"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;40&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="nl"&gt;"verifyOnStart"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="nl"&gt;"agentDid"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"did:moltrust:..."&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Free tier available — wallet scoring requires no API key.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why this matters: KYA
&lt;/h2&gt;

&lt;p&gt;This plugin is the entry point for &lt;strong&gt;Know Your Agent (KYA)&lt;/strong&gt; — the agent-economy equivalent of KYC, but cryptographic and decentralized.&lt;/p&gt;

&lt;p&gt;OpenClaw agents interact autonomously. They pay for services, delegate tasks, install skills. The question "who is this agent and can I trust it?" is not philosophical — it's an operational requirement with financial consequences.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Email shipped without authentication — we got phishing. Social media shipped without identity verification — we got bot armies. Package managers shipped without code signing — we got supply chain attacks. OpenClaw is following the same trajectory.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;MolTrust provides the infrastructure: W3C DIDs anchored on Base L2, Verifiable Credentials signed with Ed25519, and a reputation layer that aggregates signals into a single trust score.&lt;/p&gt;

&lt;h2&gt;
  
  
  Links
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;📦 npm: &lt;a href="https://www.npmjs.com/package/@moltrust/openclaw" rel="noopener noreferrer"&gt;npmjs.com/package/@moltrust/openclaw&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;💻 GitHub: &lt;a href="https://github.com/MoltyCel/moltrust-openclaw" rel="noopener noreferrer"&gt;github.com/MoltyCel/moltrust-openclaw&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;🔑 Free API key: &lt;a href="https://api.moltrust.ch/auth/signup" rel="noopener noreferrer"&gt;api.moltrust.ch/auth/signup&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;📄 KYA Whitepaper: &lt;a href="https://moltrust.ch/MolTrust_KYA_Whitepaper.pdf" rel="noopener noreferrer"&gt;moltrust.ch/MolTrust_KYA_Whitepaper.pdf&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;RFC coming to openclaw/openclaw discussions — feedback welcome.&lt;/p&gt;

</description>
      <category>openclaw</category>
      <category>webdev</category>
      <category>security</category>
      <category>blockchain</category>
    </item>
    <item>
      <title>Know Your Agent (KYA): Why Trust Infrastructure Replaces Brand in the Agent Economy</title>
      <dc:creator>Lars</dc:creator>
      <pubDate>Tue, 17 Mar 2026 16:37:10 +0000</pubDate>
      <link>https://dev.to/moltycel/know-your-agent-kya-why-trust-infrastructure-replaces-brand-in-the-agent-economy-13mf</link>
      <guid>https://dev.to/moltycel/know-your-agent-kya-why-trust-infrastructure-replaces-brand-in-the-agent-economy-13mf</guid>
      <description>&lt;p&gt;MolTrust has published its KYA Whitepaper — a strategic framework for agent trust infrastructure aimed at executives, investors, and platform operators. The paper argues that trust infrastructure is becoming the machine-readable equivalent of brand in the agent economy.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the paper argues
&lt;/h2&gt;

&lt;p&gt;Brands don't disappear in the agent economy — they transform. AI agents don't respond to logos or reputation narratives. They evaluate structured, verifiable data: who authorized this counterparty, what are its operating parameters, what is its track record. The properties that brands have always communicated — quality, reliability, authorization, behavioral consistency — must be expressed in machine-readable, cryptographically verifiable form.&lt;/p&gt;

&lt;p&gt;KYA is not a replacement for KYC. It is its natural evolution. KYC solved the identity problem for human participants in regulated markets. KYA applies the same core logic to AI agents — lighter by necessity, open by design, driven by economic utility rather than regulatory mandate.&lt;/p&gt;

&lt;p&gt;The paper defines four pillars of agent trust:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Identity&lt;/strong&gt; — who created and operates this agent&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Authorization&lt;/strong&gt; — whose instructions it executes and what limits apply&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Behavior History&lt;/strong&gt; — has it operated within its stated parameters&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Portability&lt;/strong&gt; — can any counterparty verify all of the above independently&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The numbers
&lt;/h2&gt;

&lt;p&gt;By 2027, bot traffic will exceed human internet traffic. &lt;em&gt;(Source: Matthew Prince, Cloudflare CEO, SXSW 2026)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Over the past decade it has become 10 times harder for content creators to receive the same visitor volume via Google — and 750 times harder via OpenAI, 30,000 times harder via Anthropic. &lt;em&gt;(Source: Prince, Cloudflare Blog "Content Independence Day", July 1, 2025)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;In financial services, non-human identities already outnumber human employees 96 to one. &lt;em&gt;(Source: Sean Neville, a16z crypto, January 7, 2026)&lt;/em&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"The critical missing primitive here is KYA: Know Your Agent. Just as humans need credit scores to get loans, agents will need cryptographically signed credentials to transact — linking the agent to its principal, its constraints, and its liability. Until this exists, merchants will keep blocking agents at the firewall. The industry that built that KYC infrastructure over decades now has just months to figure out KYA."&lt;/p&gt;

&lt;p&gt;— Sean Neville, co-founder of Circle and architect of USDC; CEO of Catena Labs (a16z crypto, January 7, 2026)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Six industries where KYA becomes critical
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;First wave — operationally relevant today:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Commerce:&lt;/strong&gt; Shopping agents operate with no verifiable authorization. Merchants cannot distinguish legitimate agents from scrapers or fraud bots.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Financial services:&lt;/strong&gt; Trading agents execute transactions with delegation chains that have no standard verification mechanism. Liability gaps emerge when agents exceed authorized parameters.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Prediction markets:&lt;/strong&gt; AI tipping services claim win rates that cannot be independently verified. Predictions can be backdated after outcomes are known.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Second wave — emerging:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Healthcare:&lt;/strong&gt; Diagnostic and prescription management agents require verifiable authorization chains with clear liability assignment.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Public services:&lt;/strong&gt; Government-facing agents need democratic accountability — who authorized this agent to interact with public infrastructure on a citizen's behalf?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Climate and critical infrastructure:&lt;/strong&gt; Energy trading agents managing grid resources require real-time verification of authorization and operating parameters.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The consolidation thesis
&lt;/h2&gt;

&lt;p&gt;As agent-mediated commerce scales, platforms that cannot verify the agents they interact with face two choices: block all agents and lose the market, or accept all agents and absorb the fraud. The platforms that build or adopt verification infrastructure early will consolidate the market. Those that don't will be disintermediated by those that do.&lt;/p&gt;

&lt;h2&gt;
  
  
  Download
&lt;/h2&gt;

&lt;p&gt;The KYA Whitepaper is available as a free PDF download:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://moltrust.ch/MolTrust_KYA_Whitepaper_v1.pdf" rel="noopener noreferrer"&gt;moltrust.ch/MolTrust_KYA_Whitepaper_v1.pdf&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Read online: &lt;a href="https://moltrust.ch/whitepaper.html" rel="noopener noreferrer"&gt;moltrust.ch/whitepaper.html&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;Questions or partnership inquiries: &lt;a href="mailto:info@moltrust.ch"&gt;info@moltrust.ch&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Written by the &lt;a href="https://moltrust.ch" rel="noopener noreferrer"&gt;MolTrust&lt;/a&gt; Team (CryptoKRI GmbH, Zurich). Follow &lt;a href="https://x.com/MolTrust" rel="noopener noreferrer"&gt;@MolTrust&lt;/a&gt; on X for updates.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>business</category>
      <category>strategy</category>
      <category>agenteconomy</category>
    </item>
    <item>
      <title>When Agents Replace Buyers: Why Trust Infrastructure Becomes the New Brand</title>
      <dc:creator>Lars</dc:creator>
      <pubDate>Tue, 17 Mar 2026 08:54:32 +0000</pubDate>
      <link>https://dev.to/moltycel/when-agents-replace-buyers-why-trust-infrastructure-becomes-the-new-brand-432n</link>
      <guid>https://dev.to/moltycel/when-agents-replace-buyers-why-trust-infrastructure-becomes-the-new-brand-432n</guid>
      <description>&lt;p&gt;By 2027, bot traffic will exceed human internet traffic, according to Cloudflare CEO Matthew Prince (SXSW, 2026). News sites already find it 10 times harder to receive the same visitor volume as a decade ago — because AI systems consume content without returning users to the source.&lt;/p&gt;

&lt;h2&gt;
  
  
  The numbers that change everything
&lt;/h2&gt;

&lt;p&gt;By 2027, bot traffic will exceed human internet traffic, according to Cloudflare CEO Matthew Prince (SXSW, 2026). News sites already find it 10 times harder to receive the same visitor volume as a decade ago — because AI systems consume content without returning users to the source. For some AI crawlers, that ratio reached as high as 100,000 to one in 2025 (Cloudflare Year in Review).&lt;/p&gt;

&lt;p&gt;This is not a future trend. It is the present state of the internet economy — and its implications extend far beyond publishing.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Sources: Matthew Prince, Cloudflare CEO (SXSW 2026; TIME Magazine, August 2025); Cloudflare Year in Review 2025, blog.cloudflare.com&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The end of the brand as a quality signal
&lt;/h2&gt;

&lt;p&gt;Brands were invented for humans. A logo, a name, a reputation — cognitive shortcuts that help a person decide quickly whether to trust a product or a seller. An AI agent doesn't use cognitive shortcuts. It reads return rates, response times, pricing, verified reviews — structured data it can parse and evaluate directly. The brand is irrelevant. What matters is what can be verified.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"The critical missing primitive is KYA: Know Your Agent. Just as humans need credit scores to get loans, agents will need cryptographically signed credentials to transact — linking the agent to its principal, its constraints, and its liability. Until this exists, merchants will keep blocking agents at the firewall. The industry that built that KYC infrastructure over decades now has just months to figure out KYA."&lt;/p&gt;

&lt;p&gt;— Sean Neville, co-founder of Circle and architect of USDC; CEO of Catena Labs (a16z crypto, January 2026)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  KYC for humans. KYA for agents.
&lt;/h2&gt;

&lt;p&gt;In traditional finance, Know Your Customer (KYC) is a legal requirement before any significant transaction. It answers: who is this person, are they who they claim to be, are they authorized?&lt;/p&gt;

&lt;p&gt;The agent economy needs the same infrastructure — not for humans, but for software. Know Your Agent (KYA) answers: who authorized this agent, what are its spending limits, what platform does it operate on, and has it behaved honestly in past transactions?&lt;/p&gt;

&lt;h2&gt;
  
  
  Three scenarios where this matters today
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Commerce.&lt;/strong&gt; A shopping agent books the cheapest available hotel. The hotel has no way to verify whether the agent is authorized, what payment limits apply, or whether it has completed bookings honestly before.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Finance.&lt;/strong&gt; A trading agent executes a transaction that exceeds its principal's authorized limits. There is currently no standard mechanism to verify in real time whether an agent is operating within its authorized parameters.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Prediction Markets.&lt;/strong&gt; An AI tipping service claims an 87% win rate. The prediction was published after the event outcome was known. There is no on-chain record of when the prediction was actually made.&lt;/p&gt;

&lt;h2&gt;
  
  
  What MolTrust does
&lt;/h2&gt;

&lt;p&gt;MolTrust issues verifiable credentials for AI agents — cryptographic proof of identity, authorization, and behavior history, anchored on the Base blockchain. Not a database that a platform controls. A credential that any counterparty can verify independently, without contacting MolTrust. The agent carries its proof the way a person carries a passport.&lt;/p&gt;

&lt;h2&gt;
  
  
  The consolidation thesis
&lt;/h2&gt;

&lt;p&gt;As agent-mediated commerce scales, platforms that cannot verify the agents they interact with face two choices: block all agents and lose the market, or accept all agents and absorb the fraud. The platforms that build or adopt verification infrastructure early will consolidate the market. Those that don't will be disintermediated by those that do.&lt;/p&gt;

&lt;h2&gt;
  
  
  FAQ
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;What is the difference between KYC and KYA?&lt;/strong&gt;&lt;br&gt;
KYC (Know Your Customer) verifies human identity before financial transactions. KYA (Know Your Agent) applies the same logic to AI agents — verifying who created the agent, who authorized it, what limits apply, and what its historical behavior has been.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Does this only affect large enterprises?&lt;/strong&gt;&lt;br&gt;
No. Any platform, marketplace, or service that interacts with AI agents — which by 2027 means most of the internet — faces this challenge. The question is not whether agent verification becomes necessary, but who builds the infrastructure first.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What does it cost to verify an agent?&lt;/strong&gt;&lt;br&gt;
Agent registration and basic trust score queries are free at &lt;a href="https://api.moltrust.ch" rel="noopener noreferrer"&gt;api.moltrust.ch&lt;/a&gt;. Credential issuance starts at $5 USDC per credential via the x402 micropayment protocol on Base.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Is this relevant now or in five years?&lt;/strong&gt;&lt;br&gt;
Now. Automated traffic already exceeds human traffic on many platforms. The infrastructure that handles the transition will be built in the next 12–24 months.&lt;/p&gt;




&lt;p&gt;Questions or partnership inquiries: &lt;a href="mailto:info@moltrust.ch"&gt;info@moltrust.ch&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Written by the &lt;a href="https://moltrust.ch" rel="noopener noreferrer"&gt;MolTrust&lt;/a&gt; Team (CryptoKRI GmbH, Zurich). Follow &lt;a href="https://x.com/MolTrust" rel="noopener noreferrer"&gt;@MolTrust&lt;/a&gt; on X for updates.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>business</category>
      <category>strategy</category>
      <category>agenteconomy</category>
    </item>
  </channel>
</rss>
