1. 20 Nov, 2018 2 commits
  2. 19 Nov, 2018 1 commit
  3. 15 Nov, 2018 1 commit
    • Sergei Zubov's avatar
      Modify input selection · fe545d5a
      Sergei Zubov authored
      Only confirmed coinstake transactions are passed to transaction builder
      as available inputs.
      Inputs from coinstake transactions are not grouped to avoid spending
      all coins avaliable for staking.
      fe545d5a
  4. 13 Nov, 2018 3 commits
  5. 12 Nov, 2018 2 commits
  6. 09 Nov, 2018 1 commit
  7. 07 Nov, 2018 2 commits
  8. 01 Nov, 2018 3 commits
  9. 31 Oct, 2018 1 commit
  10. 30 Oct, 2018 5 commits
  11. 29 Oct, 2018 4 commits
  12. 26 Oct, 2018 4 commits
  13. 25 Oct, 2018 1 commit
    • Sergei Zubov's avatar
      Fix CoinStake transaction · 4791d4b6
      Sergei Zubov authored
      Only worker that finds solution to POS should add output with fees.
      Otherwise, race condition occurs and output with fee is added multiple
      times and not in right place, causing consensus to reject block with
      bad signature exception.
      4791d4b6
  14. 23 Oct, 2018 2 commits
  15. 22 Oct, 2018 2 commits
    • Sergei Zubov's avatar
      Add random select of fee address · 6cb9d329
      Sergei Zubov authored
      Sending all fees to same address will make funds on that address
      unspendable - it will never be enough confirmations on top of last
      transactions. Taking random address from pool will prevent this issue.
      6cb9d329
    • Sergei Zubov's avatar
      Add consensus rule for fee checking · b5070c9a
      Sergei Zubov authored
      Consensus checks that fee is charged from all spent funds (not change)
      and is split between miner and DeStream
      b5070c9a
  16. 19 Oct, 2018 1 commit
  17. 17 Oct, 2018 2 commits
    • Sergei Zubov's avatar
      Modify consensus to ignore pointer input · 0e5c86ab
      Sergei Zubov authored
      Input with pointer to change output conflicts with consensus rules as
      there is no underlying transaction with funds for that input. Consensus
      modified to ignore that input in funds checks.
      0e5c86ab
    • Sergei Zubov's avatar
      Add mark at output with change · e0951510
      Sergei Zubov authored
      To secure that fee is charged from spending coins and not from change,
      DeStream marks output with change.
      It is implemented via additional empty input with PrevOut hash
      uint256.Zero, that points to output with change. Input is signed, so
      it's verified that user has access to address from output, and this is
      change address.
      e0951510
  18. 12 Oct, 2018 1 commit
    • Sergei Zubov's avatar
      Add DeStream fee to mined block · 44597e7a
      Sergei Zubov authored
      Before the network is fully established, some blocks must be mined, not
      stacked. Fee should be applied to transactions in mined blocks too.
      44597e7a
  19. 11 Oct, 2018 1 commit
    • Sergei Zubov's avatar
      Add DeStream fee to transactions · 23daf4d4
      Sergei Zubov authored
      Fee is calculated based on fixed rate and splits up between miner and
      DeStream wallet. Fee and split rates are network parameters.
      Fee check is disabled, DeStream don't have minimal or maximal fee.
      Funds are sent to DeStream wallet via additional output of CoinStake
      transaction.
      23daf4d4
  20. 03 Oct, 2018 1 commit