Skip to content

Repository files navigation

Cardano PubSub

A native publish/subscribe communication layer for the Cardano ecosystem: nodes subscribe to topics and receive every message honest publishers send on them, under an adversary model with silent Byzantine participants.

The project is currently in Phase 2 — empirically-driven architecture (#46): candidate dissemination topologies (the M models) are analysed formally and validated experimentally, converging on a design proposal by mid-August 2026.

Important Disclaimer & Acceptance of Risk

This is a proof-of-concept implementation that has not undergone security auditing. This code is provided "as is" for research and educational purposes only. It has not been subjected to a formal security review or audit and may contain vulnerabilities. Do not use this code in production systems or any environment where security is critical without conducting your own thorough security assessment. By using this code, you acknowledge and accept all associated risks, and our company disclaims any liability for damages or losses.

Repository map

Path What it holds
web/ Public GitHub Pages site: workstream overview and progress presentations
docs/ Design documents: technical reviews, gap analyses, design synthesis, extension proposals
formal_spec/ Formal models (Quint, PRISM): peer sampling, hybrid dissemination (the M models), topic registry
pubsub-node/ Rust prototype of the PubSub node — see its README for the spec-driven workflow
logbook.md Running log of technical decisions and progress, most recent first
biweekly-reports/ Biweekly progress reports

Following progress

  • Website — public overview and the latest progress presentation.
  • Logbook — decision-level progress notes, updated weekly.
  • Biweekly reports — periodic summaries.
  • Phase 2 issue (#46) — goals, outcomes, and the three work tracks: formal analysis (#76), prototype & experiments (#79), design proposal (#91).

Running the prototype

The Rust node prototype lives in pubsub-node/:

cd pubsub-node
cargo test

Protocol design background lives in docs/ and formal_spec/; the prototype README explains how specs, plans, and implementation connect.

Website & documentation

The public site is deployed from web/ on every merge to main. The earlier MkDocs documentation (product vision, use cases, architecture, economics) is retired and preserved on the archive/mkdocs-site branch.

Contributing & security

See CONTRIBUTING.md for how to get involved and SECURITY.md for reporting vulnerabilities.

License

Copyright 2025 Input Output Global

Licensed under the Apache License, Version 2.0 (the "License"). You may not use this repository except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

About

Cardano PubSub — research workstream toward a verifiable publish/subscribe communication layer for the Cardano ecosystem

Resources

Contributing

Security policy

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages