Design and implement "Word of Wisdom" tcp server:
- TCP server should be protected from DDOS attacks with the Prof of Work (https://en.wikipedia.org/wiki/Proof_of_work), the challenge-response protocol should be used.
- The choice of the POW algorithm should be explained.
- After Prof Of Work verification, server should send one of the quotes from “word of wisdom” book or any other collection of the quotes.
- Docker file should be provided both for the server and for the client that solves the POW challenge.
Project based on Clean architecture principles.
Requirements:
- Go 1.19+ installed (to run tests, start server or client without Docker)
- Docker installed (to run docker-compose)
- Environment file
.env
(see example in env.example)
# Run server and client by docker-compose
make run-compose
# Run only server
make run-server
# Run only client
make run-client
# other command - call help
make help