icrc/docs/concepts.md

21 lines
735 B
Markdown

# ICRC - Concepts
## Client
A user or bot. Or to be more precise: the program something uses to communicate with the icrc server.
## Relay
A relay is like a group chat. Clients that are part of a relay have the key to it. The server proofs if a client has
access to a relay by hashing the clients key to that relay and comparing it with a saved hash.
### User index
Every relay has their own user index, which has the following columns:
- **userid_relay**: The id that other users use to identify a user in this relay.
- **userid_main**: The users "real" id. (The id they use to authenticate.)
- **name**: The users nickname in this relay.
- **public_key**: The public key to exchange symmetric encryption keys with that user.