Modular p2p messaging stack, with a focus on secure messaging. https://rfc.vac.dev/
Go to file
Dean Eigenmann 456b7deca0
Update remote-log.md
2019-12-16 13:14:10 +01:00
.github/ISSUE_TEMPLATE Update research-issue.md 2019-11-14 13:20:14 +08:00
assets Update remote log asset 2019-10-01 12:52:02 +08:00
404.html Create 404.html 2019-09-22 20:39:34 +02:00
CNAME Create CNAME 2019-08-04 15:25:11 +02:00
README.md spec/envelope (#76) 2019-12-16 13:05:11 +08:00
_config.yml Update _config.yml 2019-08-02 18:20:01 +02:00
mdf.md Add CC0 copyright notice on specs (#38) 2019-11-21 10:51:16 +08:00
mvds.md Add CC0 copyright notice on specs (#38) 2019-11-21 10:51:16 +08:00
remote-log.md Update remote-log.md 2019-12-16 13:14:10 +01:00
waku.md spec/envelope (#76) 2019-12-16 13:05:11 +08:00
wedf.md spec/envelope (#76) 2019-12-16 13:05:11 +08:00
wms.md spec/mail-server (#77) 2019-12-13 11:06:54 +01:00

README.md

Specifications

This repository contains the specs for vac, 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.

Status

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 to version these specifications.

Protocols

These protocols define various components of the vac stack.

  • mvds - Data Synchronization protocol for unreliable transports.
  • remote log - Remote replication of local logs.
  • mdf - Metadata field for MVDS messages.
  • waku - ÐΞVp2p wire protocol, substituting EIP-627.
  • wedf - Waku envelope data field specification.
  • wms - Mailserver specification for archiving and delivering historical waku envelopes on demand.

Style guide

Sequence diagrams are generated using 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.

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.