From 4a795f1fb6592311f46ae8567b38a07db06cc2bb Mon Sep 17 00:00:00 2001 From: Paul Lorenc <pj@paul-lorenc.com> Date: Fri, 10 Sep 2021 14:03:25 -0400 Subject: [PATCH] added README --- README.md | 83 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 00000000..3f76a844 --- /dev/null +++ b/README.md @@ -0,0 +1,83 @@ +# Briar Mailbox + +This project aims to develop an easy way for Briar users to increase their +reachability and lower the battery drain of their phone. + +In Briar messages are exchanged directly between contacts (peer-to-peer). +This kind of synchronous message exchange requires contacts to be online and +connected to each other. +While this is great for privacy (no central server which +can log things or be censored) it's bad for reachability, especially in +mobile networks where connectivity can be limited. + +```mermaid +graph LR + A[Alice] + B[Bob] + A1[Alice] + B1[Bob] + style B fill:#8db600 + style A1 fill:#8db600 + subgraph Alice offline + B-. can't send message .-> A + end + subgraph Bob offline + B1-. can't send message .-> A1 + end +``` + +Message delivery could be delayed for an arbitrary time (or even indefinitely) +until both Bob and Alice are online at the same time. +The repeater solves this problem by providing +mailbox-like message buffer where contacts can leave messages for the owner +of the repeater and which is connected to a stable internet connection +(e.g. the wifi at home, cable internet) and a power source. + + +```mermaid +graph LR + A[Alice] + A1[Alice] + B[Bob] + B1[Bob] + RA["Mailbox (always online)"] + style B fill:#8db600 + style RA fill:#8db600 + style A1 fill:#8db600 + subgraph Alice offline + B-. can't send message .-> A + end + subgraph Alices' Mailbox + B-- send message --> RA + end + subgraph Alice online + B1-. can't send message .-> A1 + A1-- get message --> RA + end +``` + +## Hardware + +We want the repeater to be as easy to deploy as possible. The first version +will come as Android application since it will be easy to setup and besides a +spare phone no special hardware is required. Once this is done support for +any hardware supporting Java (e.g. unix server, raspberry pi) will be added. + +## Features + +### Core features + +* Allow contacts to store messages for the owner of the repeater +* Allow the owner to store messages for her contacts. Contacts can pick them up + when syncing with the repeater. +* Owner and contacts connect to the repeater via Tor. + +### Extended features/components + +* The repeater can sync group messages (from groups the owner is part of) with + other group members (increases message circulation) +* Contacts and the owner can connect to the repeater via other transports (Bluetooth, Wifi-Direct, Lan) +* Push-like message notification for the owner to decrease battery drain + + + -- GitLab