1. 12 Nov, 2018 1 commit
    • Sergei Zubov's avatar
      Modify fee calculations · 781d0b29
      Sergei Zubov authored
      Splitting fee between miner and DeStream extracted to function.
      In consensus, sum of fees of all transactions is split, not each fee.
      781d0b29
  2. 09 Nov, 2018 1 commit
  3. 07 Nov, 2018 2 commits
  4. 01 Nov, 2018 3 commits
  5. 31 Oct, 2018 1 commit
  6. 30 Oct, 2018 5 commits
  7. 29 Oct, 2018 4 commits
  8. 26 Oct, 2018 4 commits
  9. 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
  10. 23 Oct, 2018 2 commits
  11. 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
  12. 19 Oct, 2018 1 commit
  13. 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
  14. 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
  15. 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
  16. 03 Oct, 2018 2 commits
    • Sergei Zubov's avatar
      Add DeStream cointype and prefix · afa4ab6b
      Sergei Zubov authored
      Cointype for DeStream - 3564, 0x80000dec (DeStream Coin). Leading
      symbol in address - D
      afa4ab6b
    • Sergei Zubov's avatar
      Modify emission · 1df0738a
      Sergei Zubov authored
      Splitting initial coins to multiple addresses allows creating multiple
      transactions from initial wallet in one block. Also, all funds won't be
      locked awaiting confirmations, just part of them.
      1df0738a
  17. 02 Oct, 2018 1 commit
  18. 26 Sep, 2018 1 commit
  19. 20 Sep, 2018 1 commit
    • Sergei Zubov's avatar
      Modify processing of genesis block · 00b2e5bd
      Sergei Zubov authored
      Coins are emitted in genesis block. To make them spendable, they are
      added to CoinView. WalletManager changed to include them in wallet's
      balance.
      00b2e5bd
  20. 13 Sep, 2018 1 commit
  21. 06 Sep, 2018 1 commit
  22. 05 Sep, 2018 1 commit
  23. 04 Sep, 2018 1 commit