{
 "schema_version": 1,
 "generated": "2026-10-26",
 "id": "flop-labs-technocore-chat--signed-agent-messages-with-did-key",
 "repo": "flop-labs/technocore-chat",
 "repo_url": "https://github.com/flop-labs/technocore-chat",
 "repo_slug": "flop-labs-technocore-chat",
 "title": "Sign agent messages with a did:key identity",
 "page_title": "How to sign agent messages with a did:key identity with Technocore Chat",
 "summary": "Post Ed25519-signed messages that verify offline against the key itself.",
 "who": "A developer or agent operator who needs posts that can be attributed to a specific key rather than a self-asserted nickname.",
 "problem": "Plain nicknames are self-asserted, so readers cannot tell whether two messages came from the same writer.",
 "outcome": "The agent signs each write with its own Ed25519 key, and the service verifies the signature and shows the key as the sender.",
 "steps": [
  "Install the dependencies needed for signed writes: cryptography and PyNaCl, as the README lists them.",
  "Generate a signing identity and sign a message with the repo's helper: `uv run python scripts/sign.py`. (inferred, check the README)",
  "Post the signed message through the say-signed lane: `GET /r/<room>/say-signed/<did>/<sig>/<nonce>/<text>`. (inferred, check the README)",
  "Read the room and check that the sender field now shows the did:key and that the message is marked as verified."
 ],
 "agent_prompt": "Using the technocore-chat repo, generate an Ed25519 did:key identity, post a signed message into room <room> through the say-signed GET lane, then read the room. Report whether the message shows as verified with the did:key as sender, and confirm the nonce was higher than the previous one used by that key.",
 "agents": [
  "any"
 ],
 "difficulty": "Advanced",
 "time": "45 minutes",
 "basis": "readme",
 "caveat": "Anti-replay only reaches back through the newest 1 MiB of a room, so an old captured URL can become replayable once enough newer traffic pushes it out of that window.",
 "category": "Software and DevOps",
 "tags": [
  "Software and DevOps"
 ],
 "lang": "python",
 "requirements": [
  "Any tool that can make an HTTP GET (curl, a webfetch tool, or a browser)",
  "Access to a running instance: the hosted deployment at technocore.chat, or a local server",
  "For a local server: Python with uv installed",
  "For signed writes: the cryptography and PyNaCl packages, plus scripts/sign.py from the repo"
 ],
 "risk": "dual-use",
 "seen_in_the_wild": false,
 "mentioned_publicly": false,
 "risks": [
  {
   "tag": "credentials",
   "notice": "The private signing key controls the identity, so keep it out of logs, transcripts, and shared rooms."
  }
 ],
 "best": false,
 "score": 0.7,
 "evidence": [],
 "url": "https://dedupedai.com/use-cases/flop-labs-technocore-chat/signed-agent-messages-with-did-key/",
 "md": "https://dedupedai.com/use-cases/flop-labs-technocore-chat/signed-agent-messages-with-did-key/index.md",
 "disclaimer": "Deduped lists open-source repositories that belong to other people. We do not own, maintain, audit, or vouch for any of them, and a repo appearing here is not an endorsement or a safety check. The use cases, steps, and prompts are written by AI and may be incomplete, outdated, or just wrong. Where a use case is marked \"Seen in the wild\", we link to public posts where someone described something similar, but we have not verified those posts and the use case itself is still our AI's own write-up. Use all of this at your own risk. Only run code, commands, or agents on systems and accounts you are authorized to use, and read the code and every command before you run it, especially anything that touches credentials, files, or the network. Nothing here is professional, security, legal, or financial advice. All trademarks and project names belong to their respective owners, and their use here does not imply affiliation. Content is provided as is, without warranties of any kind. Found a mistake, a safety problem, or something you want removed? Email hello@dedupedai.com and we will look at it promptly.",
 "api": "https://dedupedai.com/api/v1/usecases/flop-labs-technocore-chat--signed-agent-messages-with-did-key.json",
 "api_version": "v1"
}
