Sign inTry it

Ed25519 signatures

Ed25519 is a public-key digital signature scheme. It uses the Edwards curve Curve25519 and is specified as EdDSA in RFC 8032. Signatures are 64 bytes and public keys are 32 bytes. The signer keeps a private key. Anyone with the public key can check that data came from that signer and was not changed.

Updated

How Ed25519 signatures work

The signer computes a signature over the exact bytes of a message, using the private key. The verifier checks that signature with the public key. If a single byte of the message changes, the check fails. Checking a signature does not reveal the private key. The scheme is deterministic, so the same message signed with the same key always gives the same signature.

Why it matters for AI agents

Agents load tools and instructions that come from servers. A tool definition that changed without notice could send data somewhere new. A signature lets the client confirm that the content came from the key owner and was not altered after signing. That check is the reason to sign recipes at all.

Wield and Ed25519 signatures

The Wield registry signs every index and recipe with Ed25519. The signature covers the exact response body, with a label for the kind of content and its scope. wield-mcp and the Wield extension check the signature before they use a recipe. They refuse a recipe that is unsigned, signed by an unknown key or changed after signing. The error is recipe_unsigned, and nothing is sent to the site in that case. Private recipes are signed with the organization's own key. Recipes loaded from a local folder for development are not signed, and wield-mcp doctor shows the signature status.

  • Least privilege: the limit on what a verified recipe is allowed to do.
  • Audit log: the record of which recipe ran and what it sent.
  • Security model: how Wield checks signatures and where the keys come from.

FAQ

Why sign recipes?

A recipe tells the client which requests to send to a site. A changed recipe could send requests somewhere the user did not agree to. A signature makes any change visible, because the client refuses a recipe that does not match the registry's signature. Wield also refuses an index older than one it has already accepted, so an old version cannot be replayed.

Ed25519 vs RSA?

Both are public-key signature schemes. Ed25519 uses short 32-byte public keys and 64-byte signatures on an elliptic curve. RSA uses much longer keys and different math. For a reader of this page, the important property is the same in both: a valid signature shows that the content came from the key owner and was not changed.

Sources

  1. RFC 8032datatracker.ietf.org