4

I am trying to create a private network consotium in Azure by following this tutorial:

https://github.com/Azure/azure-quickstart-templates/tree/master/ethereum-consortium-blockchain-network

Problem 1 - solidity can´t connect to the private network

Connecting to the network using MetaMask works fine, so I can create accounts and transfer balance from one account to the other. However, I can´t connect to my network using solidity browser (so I can´t deploy contracts) because of the https->http issue. Running solidity from local host also does not work. It says that the accounts are locked. The goal here is to easily deploy my own contracts to this private network.

Problem 2 - connecting from geth or Mist from localhost doesn´t work

Since solidity browser din´t work, I tried another ways to connect to the network and deploy my contracts. Using Mist the problem is:

method personal_newAccount does not exist/is not available

other threads tell me to start get with --rpcapi="db,eth,net,web3,personal,web3" but why does it work with MetaMask then?

2 Answers 2

2

The problem is that the Azure marketplace is hosting an old version of Geth that does not support EIP 155 replay protection, which the latest version of MetaMask does.

The solutions are:

  • Use a different client for testing (like TestRPC).
  • Get Azure to update their hosted Geth version.
  • MetaMask could add the ability to support the old transaction signing format, which requires a solution to this issue.

As a member of the MetaMask team, I'd love if we didn't have to support old, more dangerous Ethereum clients like this, and would greatly prefer if Azure just updated their Geth version.

Lastly, you can run an older version of MetaMask. Version 3.5.2 was the last version that did not implement EIP155 replay protection: https://github.com/MetaMask/metamask-plugin/releases/tag/v3.5.2

1
  • Are you a MetaMask developer,my screen had been struck fro more than 3 hrs after selecting connect to local private network.Any Help? Mar 30, 2018 at 9:32
0

but why does it work with MetaMask then? Metamask uses a thing called brainwallet, basically an authentication "on the fly" without creating any key files.

Of course ou need to unlock your account before using it, alternatively you can unlock it permanently ( = untill you close/ restart geth) with the launch parameter --unlock 0. For multiple accounts, use --unlock 0,1,2,3,4 . When they're unlocked and rpc is enabled ( --rpc --rpcport 8545 --rpcaddr 0.0.0.0 --rpccorsdomain "*" --rpcapi "eth,web3,debug" for example, please look up what these parameters mean ) then you can just change https to http in browser solidity / remix , and connect to your node.

solidity can´t connect to the private network

Solidity is just the programming language, did you mean something else maybe ? Good luck !

2
  • 1
    It's actually incorrect to say that MetaMask uses a brain wallet. MetaMask uses BIP44 key derivation, so from a single "seed phrase" (that the user does not generate), many account keys can be generated. It's true we don't save these accounts as key files, but we do save private information that can generate key files.
    – DanF
    May 5, 2017 at 17:12
  • thanks for your answer @Nikita Fuchs. I meant "solidity browser".
    – neilson
    May 9, 2017 at 9:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.