Most internet messaging solutions use centralized servers and/or middlemen to deliver messages on behalf of users. We'll refer to
this as "intermediaries". It lowers the barrier to entry for users by moving some responsibility onto
whoever is running the intermediaries (usually a corporation). However this is a tradeoff. Users gain convenience but lose control,
as their ability to communicate relies on passing through the intermediaries.
WireTile makes a different tradeoff. It delivers messages directly without intermediaries, which puts users in control of their
communication. This is accomplished by moving some responsibility back onto individual users and having each run their own
self-hosted server. Therefore setup may require more time and effort depending on your familiarity with computers.
Use cases
WireTile is suitable for:
-
Messaging individuals and small groups. Peers exchange contact codes to begin messaging each other, which is analogous to
exchanging phone numbers.
-
Transferring files. Peer-to-peer communication allows efficiently transferring files of arbitrary size. Whereas centralized
platforms must often impose low limits such as 10 MB.
WireTile is not:
-
A community hub. Large communities benefit from centralized management and a hierarchy of power, which is a poor fit for
peer-to-peer. Consider Matrix for this use case.
- Social media. In many ways it is the complete opposite.
Operating Systems
WireTile consists of two major parts: a web app and a server (both are in the binary).
The web app requires a modern web browser, and is tested on Firefox and Chromium-based. Multiple modern web browsers are
available on all major operating systems. The server requires Linux x64/arm64.
How do i login/signup or create an account?
There are no login/signup buttons, instead each user runs their own self-hosted server and uses a web browser to access the web
app. Each server belongs to one user, so you could think of that as the "account".
Encryption
All communication over the network is encrypted and verified using various cryptographic standards.
Server peer-to-peer communication utilizes: ED25519 to verify authenticity of peers, AES256-GCM to encrypt data payloads,
HMAC-SHA256 to verify integrity & authenticity of payloads, and ML-KEM1024 to establish shared secrets between peers.
Web app communication to/from the server is encrypted via HTTPS-TLS1.3.
DNS & domain names
WireTile is designed to operate without the Domain Name System (DNS). Owning a domain name is not required.