Bitcoin Forum
November 01, 2024, 09:45:22 PM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Proposal for Proof of Stake that promotes Full Nodes  (Read 805 times)
Sahtor (OP)
Member
**
Offline Offline

Activity: 112
Merit: 10


View Profile WWW
April 04, 2014, 10:33:07 AM
 #1

Proof of Stake mining as full node

1 PoS block every 200 seconds
Reward 0.00000100 BTC = 100 satoshi
Transactions fees go to Stake miner

Rich getting rewarded 100 satoshis for keeping the network running doesn't sound too bad to me. PoS would inflate bitcoin coin supply 0.15768 BTC per year. 1st confirmation would take 3 instead of 10 minutes. Miners lose some future potential earning opportunity.


Block 90th percentile propagation is between 10 seconds and 2 minutes
http://bitcoinstats.com/network/propagation/


"Full Bitcoin nodes are steady on the decline" -coinwatcher
http://www.reddit.com/r/Bitcoin/comments/21pcur/full_bitcoin_nodes_are_steady_on_the_decline_is/
http://bitinfocharts.com/comparison/nodes-btc.html


"I think proof-of-stake is hard-coded 'the rich get richer' and is deeply unfair." -Gavin Andresen
https://twitter.com/gavinandresen/status/421635550911934465
e4xit
Sr. Member
****
Offline Offline

Activity: 302
Merit: 250



View Profile
April 04, 2014, 12:47:17 PM
 #2

How many full nodes do we need? Is it just "more" or do you have a quantified target number/percentage?

Not your keys, not your coins.
CoinJoin, always.
coastermonger
Sr. Member
****
Offline Offline

Activity: 367
Merit: 250

Find me at Bitrated


View Profile
April 04, 2014, 01:02:06 PM
 #3

It's very unlikely that you'll see this type of proposal included within bitcoin, but there are alt-currencies planning the first few tentative steps towards your idea.

I believe darkcoin is the kind of hybrid situation where miners discover new blocks, and those with coin can run proof of stake nodes that are required to promote the anonymity in the network.  (darkcoin is essentially trustless coinjoin built straight into the client by default)

In the end, both types of supporters get paid the block rewards and transaction fees.  

Bitrated user: Rees.
Sahtor (OP)
Member
**
Offline Offline

Activity: 112
Merit: 10


View Profile WWW
April 04, 2014, 01:17:26 PM
 #4

How many full nodes do we need? Is it just "more" or do you have a quantified target number/percentage?
I would guess not as many as today. This might be solution looking for a problem. I would first ask if DNS, NTP, TOR are at risk of denial of service attacks with current numbers of nodes. DNS has 400 root servers, NTP pool has 3500 servers, TOR status page listed 5000 nodes cached.

Bitcoin needs redundant amount of nodes in each legal region it wants to operate in. Maybe 3000 really is enough. In the future blockchain size will cut full nodes to similar numbers that we have serious miners.

PoS also acted as cheap block creation tool. I think it's a worthwhile idea to explore even if node security isn't the best motivation.

It's very unlikely that you'll see this type of proposal included within bitcoin, but there are alt-currencies planning the first few tentative steps towards your idea.
Yes I'm aware. I was making the leap to improving bitcoin itself even if it seems unpopular. The motivation wasn't inflation, free interest or newer coins.
TierNolan
Legendary
*
Offline Offline

Activity: 1232
Merit: 1104


View Profile
April 04, 2014, 03:46:09 PM
 #5

What is the actual proposal here?  POS could mean lots of exact implementations.

1LxbG5cKXzTwZg9mjL3gaRE835uNQEteWF
Sahtor (OP)
Member
**
Offline Offline

Activity: 112
Merit: 10


View Profile WWW
April 04, 2014, 06:01:55 PM
 #6

What is the actual proposal here?  POS could mean lots of exact implementations.
This is where my technical lack of confidence shows.

Each unspent input of 1BTC or more has equal chance to solve next block.
Miner should be low on resources. It should sleep most of 200 sec.
Hash sha256(input+last block). See if miner is closest to 0000. Announce block.
Accept PoS from network only if 200 sec passed.
TierNolan
Legendary
*
Offline Offline

Activity: 1232
Merit: 1104


View Profile
April 04, 2014, 08:18:52 PM
 #7

This is where my technical lack of confidence shows.

Each unspent input of 1BTC or more has equal chance to solve next block.

You mean unspent output (it isn't an input until spent)?

This forces consolidating your wallet into a small number of coins.

Quote
Miner should be low on resources. It should sleep most of 200 sec.
Hash sha256(input+last block). See if miner is closest to 0000. Announce block.
Accept PoS from network only if 200 sec passed.

You could have a difficulty like the main chain.

I like the 1 second per hash system from proof of burn.

Hash(unspent output-hash + hash of block 1024 blocks after output was added to the chain + timestamp) / (Value in BTC)

The timestamp would have to be less than the most recent POW block and counts in seconds.

By diving by the value, a 2 BTC output would generate low hashes at twice the speed of a 1BTC output.

The delay of 1024 means that the seed for the hash is effectively random.  It also means that you can't try to strategically have your transaction included in different blocks in different forks (unless they are massive).

For proof of stake, you also need to make sure that stake can't be used on 2 forks.  Something must be "at stake" when you try to get a block.

Once you use a particular timestamp for your output, you can't use it again.

With your rule, someone can use an output on 2 different forks.  This means that they aren't actually committing to either fork.

With POW, if they try to build a block on 1 fork, they are committing to that fork.  If the fork loses, they lose their electricity etc. from mining.  This forces miners to make sure that they are on the longest fork.

For POS, they has to be a way to apply a penalty if a user mines on 2 forks.  Clients would monitor the POS blocks on both forks, and if you broadcast a POS block for a fork and then "double-mine" by broadcasting a block on another fork which uses the same output, then there is some kind of penalty.

For example, you might lose your output. 

Once 1024 blocks are built on top of your transaction, you can compute when you are going to have low hashes.

This means that you would be able to work out when to connect to "spent" your high quality POS hashes.

1LxbG5cKXzTwZg9mjL3gaRE835uNQEteWF
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!