Anonymous instant chat application using RLN
A spam resistant instant messaging application for private and anonymous communication. It has the following general properties:
However, there are a few use cases where not all properties will hold, since the general functionality of the chat is to support different types of rooms - public, private and 1-1 rooms. The anonymity property doesn't apply to the 1-1 chat rooms, while the privacy property doesn't apply to the public chat rooms. On the other hand, the spam resistance applies to all types of chat rooms, as the key property of the entire application.
To prevent the spamming problem, social reputation is used as a collateral by using the InterRep architecture for linking a social network profile with the user credentials (identity commitment). This kind of bonding enables few security properties:
The full technical specification for this project can be found at (this url)[https://www.notion.so/njofce/Technical-Specification-6649797a76ed4858933015360fc76650]
In order to run the application locally, you need to have installed Docker and docker-compose.
docker-compose up -d
in order to spin up Redis and Mongo DBtsc
and react-scripts
globally.app
and server
projects, copy .env.example
to .env
and modify the values to your choice. Default values should work fine.yarn install
yarn build
yarn server
in a terminalyarn app
in another terminal