Build a private group messaging system on BSV where a defined set of recipients each decrypt a message using a shared key tree structure.
Implement blockchain-anchored access control where a subscription funds on-chain sessions and expired session outputs automatically revoke access.
Use the key graph layer to build a data access system where a user's position in the tree determines what they can decrypt, without sending actual keys.
Integrate HSM or KMS backends via the provided key storage crates to meet enterprise key management requirements in a BSV application.
Requires deep Rust systems knowledge, the two-patent architecture adds significant conceptual complexity beyond the code itself.
overlay-broadcast is a Rust library that implements two granted patents related to encrypted data management on the BSV blockchain. BSV (Bitcoin SV) is a variant of Bitcoin focused on large-scale data storage on-chain. The code is written to aerospace-grade standards (JPL Power-of-Ten rules, full MC-DC test coverage) and includes a requirements-traceability matrix linking every feature back to a patent claim. The library has two main layers. The first, based on a European patent (EP 4 046 048 B1), lays a key graph over ordinary BSV data transactions. A key graph is a structured tree of cryptographic keys where each key's position in the tree determines what it unlocks. The design allows a sender to tell a receiver only a position in the graph, rather than transmitting an actual key, because both sides can independently re-derive the key from that position combined with a shared seed. Three distinct key sets at each node handle writing, obfuscation, and application-level access separately. The second layer, from a British patent (GB 2623780 B), handles group broadcast encryption: encrypting a message so that a defined set of users can each decrypt it. A balanced key tree connects all members, and the message key sits at the root. When group membership changes, the system supports three different rekeying strategies that trade off the number of messages sent against how many keys need to be updated. Sessions tie everything to the blockchain: a subscription funds a number of sessions, each of which is anchored to an on-chain transaction. An unspent session output past its expiry acts as automatic revocation. The project is structured as about twenty Rust crates covering cryptographic primitives, key derivation, encryption, key storage (with HSM and KMS support), a command-line interface, fuzz tests, and compliance gates. It is dual-licensed MIT and Apache-2.0, that code license is separate from the underlying patent rights.
← prof-faustus on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.