Author Topic: Transactions as Proof-of-Stake & The End of Mining  (Read 28160 times)

0 Members and 1 Guest are viewing this topic.

Offline phoenix

  • Sr. Member
  • ****
  • Posts: 275
    • View Profile
Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #30 on: December 01, 2013, 07:19:08 pm »
Phoenix: If you're interested read up on current Proof-of-Stake methods work to see how they distribute their coins, Peercoin is the largest by far right now.

Thanks, I think I have a general idea of how Peercoin does it, but it looks like Bytemaster will be doing it differently, with all the Bitshares released at the start, based on Protoshares.
Protoshares: Pg5EhSZEXHFjdFUzpxJbm91UtA54iUuDvt
Bitmessage: BM-NBrGi2V3BZ8REnJM7FPxUjjkQp7V5D28

Offline bytemaster

Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #31 on: December 01, 2013, 07:24:24 pm »
I am really looking for attacks on my pos system


Sent from my iPhone using Tapatalk
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline phoenix

  • Sr. Member
  • ****
  • Posts: 275
    • View Profile
Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #32 on: December 01, 2013, 08:13:28 pm »
So the basic idea is that the more coin-days destroyed in a given block, the lower the difficulty. But even if someone had enough computing power to find blocks that only destroyed a few coin-days, their chain would still be rejected, because proof of stake is used as the primary judge of chain size, not proof of work. Therefore, the fastest growing chain will be the one that includes the most transactions, which keeps the network healthy. The only flaw I can find is the possibility of somebody finding a way to factor public keys to derive the private keys, but I think we can all agree that if this happens, we have much bigger problems to deal with.
Protoshares: Pg5EhSZEXHFjdFUzpxJbm91UtA54iUuDvt
Bitmessage: BM-NBrGi2V3BZ8REnJM7FPxUjjkQp7V5D28

Offline bytemaster

Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #33 on: December 01, 2013, 08:16:19 pm »

So the basic idea is that the more coin-days destroyed in a given block, the lower the difficulty. But even if someone had enough computing power to find blocks that only destroyed a few coin-days, their chain would still be rejected, because proof of stake is used as the primary judge of chain size, not proof of work. Therefore, the fastest growing chain will be the one that includes the most transactions, which keeps the network healthy. The only flaw I can find is the possibility of somebody finding a way to factor public keys to derive the private keys, but I think we can all agree that if this happens, we have much bigger problems to deal with.

Exactly


Sent from my iPhone using Tapatalk
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline WaPTS

  • Newbie
  • *
  • Posts: 16
    • View Profile
Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #34 on: December 02, 2013, 02:25:00 am »
I am really looking for attacks on my pos system


Sent from my iPhone using Tapatalk
can we develop a system to avoid the 51% attack totally , I have some thinking , in democratic society, one person have  larger  power and he only have one vote,  a node have larger power of hash ,it is only mean  he have the larger capacity for mining,  not the larger power of main chain,
we can think as following
1. one node cannot find two continuous bolck
2. the difficulty of every node is different,  for example if the node not find the bolck in 10min , the difficulty is same as the normal  difficulty, but if the node can one bolck in 10 min the difficulty become the 2*normal difficulty ,  if find 3 bolck in 10min ,the difficulty become the 4*normal difficulty , and so on ,   if we need to 6 bolck confirm , though a man have 51% power of hash , he also cannot carry out 51% attack.

Offline bytemaster

Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #35 on: December 02, 2013, 03:02:19 am »
I am really looking for attacks on my pos system


Sent from my iPhone using Tapatalk
can we develop a system to avoid the 51% attack totally , I have some thinking , in democratic society, one person have  larger  power and he only have one vote,  a node have larger power of hash ,it is only mean  he have the larger capacity for mining,  not the larger power of main chain,
we can think as following
1. one node cannot find two continuous bolck
2. the difficulty of every node is different,  for example if the node not find the bolck in 10min , the difficulty is same as the normal  difficulty, but if the node can one bolck in 10 min the difficulty become the 2*normal difficulty ,  if find 3 bolck in 10min ,the difficulty become the 4*normal difficulty , and so on ,   if we need to 6 bolck confirm , though a man have 51% power of hash , he also cannot carry out 51% attack.

There is no way to identify nodes, all we have is 'information'.   Difficulty is irrelevant because proof-of-stake determines longest block and nodes cannot cheat this.   Just like any company where a shareholder who owns 51% of the stock can do anything they want (more or less), the same applies to DACs.   There is no way around the 51% ownership attack in a world subject to sybil attacks.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline td services

  • Full Member
  • ***
  • Posts: 50
    • View Profile
Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #36 on: December 02, 2013, 03:25:25 am »
Can anyone find details on nxt proof of stake.

Code is supposed to be released 1/3/14. Parts may be requested for review and some snippets are posted at https://bitcointalk.org/index.php?topic=352286.0

Offline bytemaster

Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #37 on: December 02, 2013, 04:19:15 am »
Can anyone find details on nxt proof of stake.

Code is supposed to be released 1/3/14. Parts may be requested for review and some snippets are posted at https://bitcointalk.org/index.php?topic=352286.0

So no white papers... closed development... grrr.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline td services

  • Full Member
  • ***
  • Posts: 50
    • View Profile
Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #38 on: December 02, 2013, 04:16:29 pm »
Can anyone find details on nxt proof of stake.

Code is supposed to be released 1/3/14. Parts may be requested for review and some snippets are posted at https://bitcointalk.org/index.php?topic=352286.0

So no white papers... closed development... grrr.

Yes, I liked the idea in the intro of distributed ebay type markets and wanted to invest a little, but the project seems kinda squirrely.

Offline bytemaster

Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #39 on: December 02, 2013, 07:36:58 pm »
I am trying to determine if trx fees can be used as a metric to limit block production rather than mining difficulty.  Trx fees are paid as dividends and thus 'lost' and if you increase the minimum fee per block you would slow down block production just like increasing mining difficulty. 

Every transaction that cares about being confirmed rapidly would include fees.  These fees just serve to limit the production rate without waisting CPU power on mining.  The best chain is still decided by coin-days destroyed. 

You could then have a fixed 'minimum mining difficulty' used to determine settle cases where multiple people generate transactions at the same time.   So the process is, generate trx, add it to block, check to see if min fee has been reached, if so hash block, and 1 in 100 chance that it will meet the minimum difficulty.   

So now the higher the transaction fees the more expensive it becomes to generate empty blocks and alternative chains.   

Just some thoughts, looking for feedback.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline phoenix

  • Sr. Member
  • ****
  • Posts: 275
    • View Profile
Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #40 on: December 02, 2013, 08:57:23 pm »
I am trying to determine if trx fees can be used as a metric to limit block production rather than mining difficulty.  Trx fees are paid as dividends and thus 'lost' and if you increase the minimum fee per block you would slow down block production just like increasing mining difficulty. 

Every transaction that cares about being confirmed rapidly would include fees.  These fees just serve to limit the production rate without waisting CPU power on mining.  The best chain is still decided by coin-days destroyed. 

You could then have a fixed 'minimum mining difficulty' used to determine settle cases where multiple people generate transactions at the same time.   So the process is, generate trx, add it to block, check to see if min fee has been reached, if so hash block, and 1 in 100 chance that it will meet the minimum difficulty.   

So now the higher the transaction fees the more expensive it becomes to generate empty blocks and alternative chains.   

Just some thoughts, looking for feedback.

So every block needs to have a minimum amount of transaction fees. Wouldn't this cause block production to slow down when transactions slow down?
Protoshares: Pg5EhSZEXHFjdFUzpxJbm91UtA54iUuDvt
Bitmessage: BM-NBrGi2V3BZ8REnJM7FPxUjjkQp7V5D28

Offline praxeologist

  • Newbie
  • *
  • Posts: 14
    • View Profile
Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #41 on: December 02, 2013, 09:22:15 pm »
I'm trying to understand all of this... I think I read elsewhere that half of the transaction fees will be paid as dividends split up amongst all holders of coins and half will be paid to the miner along with a block.. or that was just an idea, not sure.

Quote
Trx fees are paid as dividends and thus 'lost'

Why is that "lost"?

--

I think maybe this idea is okay if I understand part of it. You might want to explain in the beginning of your paper what "coin-days-destroyed" is because I wasn't familiar with this jargon.

Why is the best chain decided by CDD? You mean because people are using the currency in transactions more than just mining and sitting on them waiting for their price to go up?

How do you decide a minimum mining difficulty, just something arbitrary like coins not incurring time until after the first 24 hours as mentioned in the paper?

Offline bytemaster

Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #42 on: December 02, 2013, 10:04:23 pm »
I am trying to determine if trx fees can be used as a metric to limit block production rather than mining difficulty.  Trx fees are paid as dividends and thus 'lost' and if you increase the minimum fee per block you would slow down block production just like increasing mining difficulty. 

Every transaction that cares about being confirmed rapidly would include fees.  These fees just serve to limit the production rate without waisting CPU power on mining.  The best chain is still decided by coin-days destroyed. 

You could then have a fixed 'minimum mining difficulty' used to determine settle cases where multiple people generate transactions at the same time.   So the process is, generate trx, add it to block, check to see if min fee has been reached, if so hash block, and 1 in 100 chance that it will meet the minimum difficulty.   

So now the higher the transaction fees the more expensive it becomes to generate empty blocks and alternative chains.   

Just some thoughts, looking for feedback.

So every block needs to have a minimum amount of transaction fees. Wouldn't this cause block production to slow down when transactions slow down?

Yes it would slow down block production, but anyone who cares about rapid block production can pay a fee to speed it up.  I think BTS will be more likely suffer from too many transactions due to the built in exchange and limited block size.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline bytemaster

Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #43 on: December 02, 2013, 10:54:37 pm »
I'm trying to understand all of this... I think I read elsewhere that half of the transaction fees will be paid as dividends split up amongst all holders of coins and half will be paid to the miner along with a block.. or that was just an idea, not sure.

Quote
Trx fees are paid as dividends and thus 'lost'

Why is that "lost"?

--

I think maybe this idea is okay if I understand part of it. You might want to explain in the beginning of your paper what "coin-days-destroyed" is because I wasn't familiar with this jargon.

Why is the best chain decided by CDD? You mean because people are using the currency in transactions more than just mining and sitting on them waiting for their price to go up?

How do you decide a minimum mining difficulty, just something arbitrary like coins not incurring time until after the first 24 hours as mentioned in the paper?

When I say they are lost I mean that 'destroying coins' causes equal economic transfer of wealth as a dividend payment.   With proof-of-stake there would be no mining rewards and thus 100% of transaction fees are 'destroyed' and paid as dividends. 

The only remaining purpose for 'mining' is to decide who gets to broadcast the next block.  This mining is still waisted mining that consumes electricity and opens the door for people to attack.  If we switch the metric to total trx fees then the individual who publishes the transaction that pushes it over the threshold is the one that gets to publish the block.  In this case the 'proof-of-work' is the transaction fee (paid as dividend). 

So the question then becomes what is the minimum transaction fee?   I think it could be 1% of the money supply per 100 GB of block chain data (1 year).   You are really paying for storage space in the block chain and that is independent of the content of the transaction.   The minimum fee can then be used to make sure that no more than 100 GB of blocks are generated per year.  If blocks are coming too quickly that means transaction volume is too high and fees should go up. 

Given two chains, the 'best chain' is the one with the most coin-days-destroyed.  Ties go to the chain with the lowest money supply.  When a block is assembled it should include the transactions with the most coin-days destroyed first (for security) and then highest fees second.

For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline bytemaster

Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #44 on: December 04, 2013, 11:58:04 pm »
The proof-of-stake algorithm that uses coin-days-destroyed to identify the 'best chain' works for security, but is missing one benefit of mining: decentralized decision on who creates the next block and when it should be created.   

There needs to be a way to prevent an attack on the network by the constant generation of 'better blocks' that replace the current head block.
   - this could cause new transactions to 'waist' their confirmation efforts on orphan blocks and thus weaken the coin-days destroyed on the main block.
   - this could in theory prevent any new blocks from ever being added.   

The first step in this process is to solve the problem of who should be allowed to broadcast a block.  In bitcoin any block that meets the proof-of-work may be broadcast, but under proof-of-stake there is no similar metric.   I would like to propose the following set of solutions:

1) A block may only be produced by the signer of the input with the most coin-days destroyed.
2) A block must meet the minimum transaction fee threshold which is adjusted to control the rate at which blocks are produced.
3) A given output may only be used to broadcast once.
4) The creator of the block receives a percentage of the transaction fees proportional to their fraction of the coin-days destroyed in the block.

Lets see if this prevents attacks:
1) To control the production of blocks you must regularly destroy more coin-days per block than anyone else.  This is a significant limit.
2) To maximize profits you must include as many transactions with fees as possible
3) To insure you receive the transaction fees you must make sure your block destroys as many coin-days as possible or someone else could replace it (if they destroy more coin-days than you did) and then collect all of the fees. 
4) To broadcast a block, you must have a stake in that block and pay a transaction fee so this limits potential broadcasters to at most 4000 that might have a transaction in the block.  It is further limited to those with a large stake and finally limited by the need to collect enough fees.

Potential Problems:
1) Someone could broadcast a transaction that destroys a large number of coin-days and then refuse to broadcast a signed block.  In this case the transaction would have to be removed from the set of included transactions.   This would happen automatically 1 minute after a normal node would have signed and broadcast a block and the 2nd place input would become the 'first-place' input and sign the block.   

What have we achieved?
1) globally unique, expensive, one-time, deterministic selection of who has permission to broadcast a block.
2) financial incentive for this node to include as many transactions as possible in order to maximize their block reward
3) financial incentive to include as many coin-days destroyed as possible to minimize the risk of their block being orphaned and losing fees
4) automatic fail-over in the event the expected signer fails to deliver a block as expected.
5) minimum fee threshold to prevent creating blocks that don't pay the expected dividends and limit the block production rate.

So given these rules how would you take over the network for a profit?
 

For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.