Replies: 1 comment
-
|
@tomjwxf, thanks for bringing it up. Normally we use issue to track those RFC. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Context
Following up on the persistence/event layer RFC (#1850) and the security vulnerabilities in #1646 (unauthenticated MCP config execution) and #1648 (memory disclosure). This proposal adds cryptographic integrity to DeerFlow's control plane.
Problem
DeerFlow's memory and MCP config are currently accessible without authentication. Even with auth added, the integrity of stored data isn't verifiable — a compromised server or rogue sub-agent could modify memory entries or past event records without detection.
For enterprise deployments where DeerFlow orchestrates production sub-agents, teams need:
Proposal
Add Ed25519 receipt signing to the event/persistence layer. Each significant mutation gets a cryptographic receipt:
These receipts chain into a tamper-evident audit trail. Any modification after signing causes the hash chain to break.
Implementation
protect-mcp (MIT) already implements this for MCP tool calls. The persistence layer integration would:
content_hash,signature, andpublic_keyalongside each event/verifyendpoint that recomputes hashes and checks signaturesThe verifier is fully offline:
npx @veritasacta/verify events.jsonlReceipt format follows IETF Internet-Draft: draft-farley-acta-signed-receipts.
This complements (not replaces) auth
Adding authentication to #1646/#1648 prevents unauthorized access. Adding receipt signing prevents undetected tampering even by authorized parties. Both are needed for enterprise-grade security.
Happy to contribute a PR or collaborate on the design. The receipt signing module is ~120 lines with zero external dependencies (Node 22+ native Ed25519).
Beta Was this translation helpful? Give feedback.
All reactions