rfc/README.md

26 lines
1.5 KiB
Markdown
Raw Normal View History

2019-08-02 15:27:59 +00:00
# Specifications
2019-07-25 18:32:54 +00:00
2019-08-02 16:18:06 +00:00
This repository contains the specs for [vac](https://vac.dev), a modular peer-to-peer messaging stack, with a focus on secure messaging. A detailed explanation of the vac and its design goals can be found [here](https://vac.dev/vac-overview).
2019-07-25 18:32:54 +00:00
## Status
2019-08-02 16:18:06 +00:00
The entire vac protocol is under active development, each specification has its own `status` which is reflected through the version number at the top of every document. We use [semver](https://semver.org/) to version these specifications.
2019-08-02 15:01:36 +00:00
2019-07-25 18:32:54 +00:00
## Protocols
2019-08-02 16:18:06 +00:00
These protocols define various components of the [vac](https://vac.dev) stack.
2019-07-25 18:32:54 +00:00
- [mvds](./mvds.md) - Data Synchronization protocol for unreliable transports.
- [remote log](./remote-log.md) - Remote replication of local logs.
- [mdf](./mdf.md) - Metadata field for [MVDS](./mvds.md) messages.
2019-11-21 21:24:45 +00:00
- [waku](./waku.md) - ÐΞVp2p wire protocol, substituting [EIP-627](https://eips.ethereum.org/EIPS/eip-627).
2019-10-03 03:08:30 +00:00
2019-09-24 05:29:48 +00:00
## Style guide
Sequence diagrams are generated using [Mscgen](http://www.mcternan.me.uk/mscgen/) like this: `mscgen -T png -i input.msc -o output.png`. Both the source and generated image should be in source control. For ease of readability, the generated image is embedded inside the main spec document.
2019-11-02 14:52:22 +00:00
## Meta
The keywords “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in [RFC 2119](https://www.ietf.org/rfc/rfc2119.txt).