Account to this text, they are different: https://nethereum.readthedocs.io/en/latest/accounts/
But it never mentioned what are the differences.
Anyone know which one to choose from when implementing my own wallet?
Account to this text, they are different: https://nethereum.readthedocs.io/en/latest/accounts/
But it never mentioned what are the differences.
Anyone know which one to choose from when implementing my own wallet?
Basically, the difference between the two is where the private key or the key file is stored.
With a ManagedAccount
, the key file for your wallet is stored on or managed by the blockchain client (Geth, Parity, ...). When sending a transaction, you have to provide your wallet address and the password for the key file. The blockchain client does then decrypt the key file and sign the transaction on your behalf.
With a normal Account
, the key file or private key is not stored on or managed by the blockchain client. Instead, you store the file locally in your application for example. You then need to sign all transactions you send offline and send the already signed transaction to the blockchain client.
To sum it up, some of the differences are:
So, as far as I understand, managed accounts are less secure due to the fact that you are sending your password and are not in full possession of the key file / private key.