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.
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.
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
Whether you implement your dapp using web3 or native go language or any . The concept is the same.