Login with Blockchain using one time nonce

In the Ethereum context, signing a message allows us to verify that a piece of data was signed by a specific account, in other terms, it's a way to prove to a smart contract/human that an account approved a message. Signing a message with a private or public key does not require interacting with the Ethereum network.

signmsg

Tech stack & packages used 📦

package explain
React.js For building frontend
web3.js Web3 client (Frontend Next.js).
node.js For building API's.
express.js back end web application framework.
Mngodb For saving nonce & user details.
hardhat Ethereum development environment.
JWT For generate JSON Web Token
ethereumjs-util For verify sign message signature

How to run 🏃 ?

Backend

1) cd server
2) npm i
3) npm start

Frontend

1) cd client
2) npm i
3) npm start