DAPP Login System – How to Create Without MetaMask

dapp-developmentdappsethereum-wallet-dappmyetherwalletwallets

I'm building Dapp on Ethereum. Imagine I have companies to register in my dapp, I will provide them with their own smart contract and public and private key pair, which they will use to just unlock their account and perform some kind of changes in their smart contract.

So how should this account unlock happen? I just want to make it simple. Maybe I will provide them with ethereum account and just use this account's public and private key?

I Don't want to use Metamask, but I want to make Login system like MyEtherWallet without any chrome extention. What's the best way of doing so?

should I use centralized Database? because I think Dapp won't be decentralized anymore.

Best Answer

For testing purpose we may use metamask/myetherwallet. But for production system in Dapp we have to manage account and its activites like sign the transaction. Here are common steps to make your Dapp functions well.

  1. Account management : This is fundamental part to interact with contract funcitons. Here is web3.eth.accounts module. this explans The web3.eth.accounts contains functions to generate Ethereum accounts and sign transactions and data. you can do almost all things that you do from metamask.

  2. network RPC End point : Above accounts must be reside from the same network where and which you have enabled the RPC port. From web3 we use endpoint like

var web3 = new Web3('http://localhost:8545');

  1. Dapp Hosting : Ultimately your blockchain is distributed and decentralized but your dapp no need to be distributed and decentralized. You can host any where you can like AWS, Google Cloud. Only you need is private/public key to interact with blockchain. It means that you have to take care of your account and signing mechanism that means keep your private key seperate and safe.

Whether you implement your dapp using web3 or native go language or any . The concept is the same.

Related Topic