title: Sender account not recognized on private ethereum network
body: <p>I'm currently developing a dApp in Solidity and am working on a web3 library to handle communication with it.</p>
  
  <p>I struggle with the process of new account creation and transaction signing in web3. Before I continue it worth noting that I'm running my own local, private blockchain (currently with Ganache). </p>
  
  <p>My code looks as follows:</p>
  
  <pre><code>try{
      let a = web3.eth.accounts.create()
      let dataTx = someContract.methods.someMethod().encodeABI()
      let rawTx = {
          to: someContract._address,
          from: account.address,
          data: dataTx,
          gas: 10000000000
      }
  
  
      const transaction = web3.eth.accounts.signTransaction(rawTx, util.toBuffer(account.privateKey))
      web3.eth.sendTransaction(rawTx).then(console.log)
  }
  catch(e){
      console.log(e)
  }
  </code></pre>
  
  <p>The problem here is that the <code>web3.eth.sendTransaction()</code> method raises the following exception: <code>Error: Returned error: sender account not recognized</code>.</p>
  
  <p>My understanding is that <code>web3.eth.accounts</code> is used for managing local accounts and <code>web3.eth.personal</code> is used to communicate with a client (e.g. Geth). I wish to keep the private keys of accounts my app creates locally on the device of the web3 client, but it raises this exception.</p>
  
  <p>Where am I going wrong? Should I register the newly created accounts somewhere before running transactions with it? Is there some vital information I'm missing here?</p>
  
  <p>Thanks!</p>