This project is inspired from pastebin service. The main goal is to offer a solution for sharing text with Nym products to offer full anonymity, even on metadata level
Get shared text: https://pastenym.ch/#/cuc0yBM7&key=331362fb93d7d7730ae182660edba661
Share a text: http://pastenym.ch/
Nym is developing the infrastructure to prevent this data leakage by protecting every packet’s metadata at the network and application layers.
Your text is sent to a client which is connected to the Nym network and which stores it in a database (eventually a more distributed solution will be considered),
This system allows you to share information while respecting your privacy by protecting your data and metadata.
On the side of No Trust Verify we only see an anonymous id when sending the text, and therefore impossible to know who is behind and from where the data was sent. Moreover, data is end-to-end encrypted: your browser generates a key used to encrypt the text, the key is placed in the URL you share with your friends and is used in their browser to decrypt the text received by the server.
- Download nym-client
- Give exec permissions and init the client
chmod u+x nym-client
./nym-client init --id pastenym --gateway EBT8jTD8o4tKng2NXrrcrzVhJiBnKpT1bJy5CMeArt2w
- Run the client
./nym-client run --id pastenym
It uses pipenv
- Go to
backend/
pipenv shell
to start the python envpipenv install
to install the dependancies from the PipFilepython main.py
to start the service. On the first run, it will create and initialize a local database atbackend/data/data.db
.
If you wish to contribute to the project, you will need to run the Nym client and Backend as explained in the Init part above AND run a local frontend.
NodeJS (v16.13.1
) and NPM (v8.19.2
) are used for the frontend.
- Go to the
frontend/
directory - Create a
.env
file with the same keys are in.env.example
with your values. TheREACT_APP_NYM_CLIENT_SERVER
value should match the address displayed by the backend. - Run
npm install
and grab a cup of coffee - Run
npm run start
and go to http://localhost:8080 in your favorite browser.
- Download the custom nym-client. It just a recompiled version that can listen to
0.0.0.0
- Init the nym-client and copy files
cd nym-client
chmod u+x nym-client
./nym-client init --id docker-client --gateway EBT8jTD8o4tKng2NXrrcrzVhJiBnKpT1bJy5CMeArt2w
cp -r ~/.nym/clients/docker-client nym-data/clients
- Change path in config.toml. For example with user root, search
/home/root
and replace by/home/user
docker compose up --build -d
backend/
manage the websockets connections and DBfrontend/
web applicationnym-client/
store the configuration,keys for the nym-clientresources/
store img or files for documentation