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

0 Members and 1 Guest are viewing this topic.

Offline hasher

  • Full Member
  • ***
  • Posts: 87
    • View Profile
Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #90 on: January 01, 2014, 04:11:51 pm »
i just want to add 1 cent here,
besides Ripple consensus mechanism, its loyalty and compatibility with mainstream financial system give it advantage in short term to adapt Ripple technology to banking system network. (Seems like its not our case..)
Its not unusual, because one of the cofounders of Ripple is MtGox alumni..

Regarding Nxt, here is old kinda "whitepaper" of how nxt mining innovate the mining process, idk if you already read this, they called it transparent mining:
____________________
In Nxt this problem doesn't arise coz all participants (miners) r known. This is a side-effect of 100% proof-of-stake currency. So, let's move to the most interesting part...

As u may know, Bitcoin et al. can be attacked by an entity that possesses 51% of hashing power. 2 main scenarios r possible:
1. Part of the miners leave the "legit" branch of the blockchain and start mining their own branch.
2. Someone buys/produces mining equipment and starts mining secret branch.

The 2nd scenario can't be applied to Nxt, coz no NXTs exist outside the network. Let's look closer at the 1st scenario.

Yesterday the average base target was ~700%. This means that only 1/7 of all stakeholders were generating blocks, we can't say if the rest 6/7 were hit by bus or trying to fork Nxt blockchain. This is in the current Nxt implementation. BCNext is satisfied with the results shown during last 2 weeks and now is going to adjust the mining algo a little bit to make it transparent.

What does this transparency mean? It means that anyone can predict (with very high probability) who and when will generate next block(s). And this gives us superior advantages:
1. Transactions can be sent directly to the miner who will mine the next block (if he decides to reveal his location on the Internet), thus saving traffic and coming much closer to VISA/MasterCard processing volumes.
2. Blocks can be generated in advance and sent to most of the miners before they become valid (timestamp validation), thus greatly reducing rate of orphaned blocks.
3. Due to ability to predict timestamps of future blocks (rate of blocks) it becomes possible to set appropriate fees to assure quick confirmations for important transactions (without paying too much for inclusion into a block).

And the most important feature:
The network can detect which miners don't take part in block generation and act accordingly.

The last point deserves to be described with more details.

Imagine someone is going to do a "51%" attack against Nxt and he owns 90% of all coins. The adversary must stop generating blocks for legit branch coz he won't be able to compete against 100% mining power with his 90%. So he decides to "skip" his turn to generate a block. The rest 10% of the network detects this and penalizes the adversary by setting his mining power to 0 and distributing it among other miners. Now the network is back to 100% power coz everyone got 10-fold increase. The adversary can mine other branch in a secret place but it won't be able to replace the legit branch. Of course, the 2nd branch will have 100% "hashing" power tied to it as well, coz the attacker will get his 90% bumped to 100% but this can be counteracted by some mechanisms of advanced consensus (still not revealed).

As a 100% PoS currency Nxt is protected against a government wealthy entity that could buy/produce a lot of ASICs, with the transparent mining it's protected even against someone buying most of the coins.

So, what does make Nxt a really next-gen currency? Not those nice features like decentralized exchange, or decentralized DNS, or decentralized app store. The transparent mining algo does, and this is only the 1st part of BCNext's plan...
________________________
https://bitcointalk.org/index.php?topic=364218.0;all
« Last Edit: January 01, 2014, 04:23:24 pm by hasher »

Offline bytemaster

Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #91 on: January 01, 2014, 05:54:38 pm »
Nxt's transparent mining is good but not the best because it still involves mining and is still CENTRALIZED one-block at a time.  It is also still block based.

With what we are planning you get Ripple style confirmation speed and no ONE node can specify the block contents.   This means that no one node can use their opportunity to generate a block to manipulate the on-chain market.

The space is heating up.
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 hasher

  • Full Member
  • ***
  • Posts: 87
    • View Profile
Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #92 on: January 01, 2014, 07:35:07 pm »
Nxt's transparent mining is good but not the best because it still involves mining and is still CENTRALIZED one-block at a time.  It is also still block based.

With what we are planning you get Ripple style confirmation speed and no ONE node can specify the block contents.   This means that no one node can use their opportunity to generate a block to manipulate the on-chain market.

The space is heating up.

bytemaster, what about emunies, are they serious rival to Bts?
____________________
Transactional Model

Originally the eMunie transaction model shared a lot in common with the Bitcoin design, single chain, in and out transactions cross signed using ECDSA scripts and other similarities. From day one, this did not "feel" correct, it is limiting, it is susceptible to 51% attacks via forking and while its design is acceptable to a minor currency implementation, moving forward, it does not scale well enough to be considered a "fiat" challenger.

We decided to redesign 70% of our transaction model and refactor our code.

So how does it work now?

Confirming transactions continues to operate in much the same manner, a forward and back search of the block chain is performed, verifying that the current transaction dependencies are legitimate and continuing in a recursive fashion until an eMu generation block is encountered, or the genesis. Coupled with our efficient POW algorithm (although slightly revised which I'll get into later on) this original method is still the basis of our transaction confirmation functionality and processing.

The main changes are in the "block chain" itself, and the way that transactions are recorded and stored.

eMunie now uses multiple chains, think of the ledger as more of a block tree, than a block chain. There may be many 1000's of small, interconnected chains, all holding valid transactions, and all able to validate transactions across other chain sections. "Forks", or new chains in eMunie are good, they strengthen the system and make a 51% attack impractical if not nigh on impossible, as there are so many chains, taking them all over is rather difficult. Transactions are verified in multiple blocks, with many "hatchers" (or miners as is the lingo here) in the system verifying the same transaction over and over and including a reference to that transaction in many blocks, within many chains.

Double spends are also EXTREMELY difficult with eMunie, as the system now favors a rolling balance over a "transaction in/out" method such as Bitcoin. As soon as you create a transaction, that transaction is distributed to the network as an intention, and it is logged. All nodes now know about this intended transaction and will include it in any subsequent balance calculation should they need it.

Upon the transaction clearing, that transaction is included in 1 or many blocks, and your rolling balance will calculate to the same as when performed using the transaction intention.

Transaction intentions take huge priority over other system messages, so to perform that double spend would require you to be very targeted in where it is sent to, know all about the current network position (its very dynamic) and sent immediately after the original transaction. Should you successfully achieve a double spend, soon after your rolling balance when calculated by nodes in the system will enter a negative balance, that peer and wallet address will then be immediately blacklisted forever.

Supply, Demand & eMu Generation

Currencies, or money supply, work with reliance to supply and demand, the more demand the more supply, the problem is of course, that in the fiat world, this is manipulated by the central banks to their own agenda, and dilutes the fiat supply... or inflation.

A stable currency needs a stable value, and a stable value can only be achieved with a solid supply and demand model that doesn't dilute the already in circulation money supply. If it does, new money steals the value from your current money supply and thus is devalued, as it has not "earned" its own value yet.

With eMunie we have looked at these issues in great detail, and believe we have a solution, that will ensure a fair, stable, honest currency value that does not dilute the holding of any single person in the system anywhere.

Save for the details of the mathematics (which will be in the white paper), demand is simply a call for new eMu, whether that be new accounts with new people coming on board, or regular users of eMunie wanting to have more of a holding.

Demand in the system is always closely chased, via an trailing elastic supply model, so there is just enough eMu in circulation to almost meet to the current demand trends....unless demand comes to a halt or is exceeded by supply. When this happens, no more eMu is created until the current excess supply available is used by demand. This recognition of excess supply happens quickly, so the excess will always be a very small percentage of the entire money supply, thus the effect of this supply will be nominal at best.

Where does the supply come from you ask? It comes from the hatchers. Hatchers perform work while clearing transactions, the amount of work any single hatcher in the system does, is easily calculated from the block tree, and thus, a % portion of the work done by that hatcher in a specific time period can be determined. A hatcher will then receive that % portion, of the systems calculated supply of new eMu required from the current demand.

eMu can not be spent from a hatcher account, it can only be transferred to either an exchange account, or a regular eMu wallet via a mediator. This mediator records the movement of supply eMu into the system and is included in future supply calculations. Hatcher owners are then free to do with the eMu as they so wish, hopefully, trading some or all of it out into the system.

These generated eMu's will have "value" as the hatchers have performed real world work to acquire them, however, a caveat of this, is that as the system load increases, and more work is done by more hatchers, these eMu's increase in deemed value, thus devaluing the already present eMu's in the system....and thus acts like traditional INFLATION.

Interest

To combat this inflation due to the effect of the increasing work in the system, a portion of the supply eMu's are passed to the accounts already holding eMu as "interest". Interest is calculated as the current annual % increase in eMu supply, as per demand, plus a % increase to ensure equilibrium. This ensures that while the new supply of eMu entering into the system may have higher "value" due to more work done to achieve them, all other eMu's in the system, while worth less, are topped up with new, more valuable eMu to guarantee that stake holder of current eMu does not loose out.

Interest is ALWAYS higher than new supply %, even if just marginally, except in the event, that demand ceases to exist, or is 0. Interest is then also 0 to ensure the equilibrium and solidify the value of all eMu in the system.
______________________
http://forum.emunie.com/index.php?/topic/139-emunie-latest-technical-and-feature-set-ramblings-29th-june-2013/

Offline bytemaster

Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #93 on: January 01, 2014, 07:41:12 pm »
Not a competitor in my view.

Their interest system is similar to the original BitShares dividend system and merely masks a stock-split with 0 real economic impact aside from perception. 
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 vikram

Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #94 on: January 06, 2014, 02:07:50 pm »
Transactions as Proof-of-Work & The Start of Mining: http://pastebin.com/index/w4UMGmGp  ;)

Interesting read in light of all the improvements being made for BitShares.

Offline fuzzy

Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #95 on: January 10, 2014, 10:19:47 pm »
Competition is decentralization and everything else is centralized.   Based upon this insight I believe that we should redefine our goals for DACs:

1) Public Ledger that is easily migrated between competing Cartels
2) Each cartel should have many servers, owned by different people, in as many jurisdictions as possible
3) Many Parallel Alt-DACs powered by different Cartels

As a whole the ecosystem would be entirely decentralized and impossible to shutdown.  It would also be entirely transparent. 

With this understanding we have an entirely different approach to security with a focus on making competition as fierce as possible.  This means the following goals:

1) API Standardization
2) Merchant solutions should be designed to accept a new DAC's BitUSD with a click of a button so merchants can simply support "EVERYONE" and thus anyone can rapidly gain the network effect.
3) DACs should be as easy to build and deploy as possible
4) Cross-DAC trading needs to be made easy.

With these things in place, competition will force fairness and openness. 

So by making it easy to compete, you ensure that the Cartels running each DAC either support their community or their version of a DAC will fade into the background. If every one of these DACs honors PTS at a minimum of 10% of the total then PTS holders could end up very wealthy from all the shares they'll get in all these different DACs! :)

Heck yeh...but at that point, the greatest thing about it will be how diversified your DACFolio will be :D

WhaleShares==DKP; BitShares is our Community! 
ShareBits and WhaleShares = Love :D

Offline vikram

Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #96 on: January 18, 2014, 09:47:31 pm »
Comments from Vitalik Buterin on Transactions as PoS: http://www.reddit.com/r/ethereum/comments/1vh94e/dagger_updates/cesv1d8?context=3

Quote
Transactions-as-POS is good against secret attack chains, but falls apart against public attacks for the exact same reason as PPCoin-style POS - recipients of transactions want to see a version of the transaction for each version of the blockchain so that they can be sure they won't be double-spent during a reorg, and so people making transactions have an incentive to make a version of the transaction for each version of the blockchain (ie. double mining) to satisfy the recipients. Transactions-as-POS plus Slasher-style punishment solves the problem, but then introduces too many opportunities to send people money and then destroy that money and get a portion back immediately after the fact.

Thoughts?

Offline bytemaster

Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #97 on: January 18, 2014, 10:20:22 pm »
There is never an opportunity for a 'chain fork' because of the ripple style consensus algorithm used to extend the chain.  Those who create transactions are merely signing the global consensus ledger and making it impossible for the core consensus nodes to create an alternative chain.

Ripple operates just fine without TaPOS so the only thing TaPOS is doing is making the ledger signing more distributed and harder to forge than in ripple alone. 

So the proper comparison is Consensus + TaPOS.

Failure to agree is agreeing to fail as Ripple states it.

I would like to make a point about decentralization:  Separation of Powers is decentralized even if there is only one party trusted with a given task at any given moment.   

Suppose for a second you had the following situation: a single server that signs every block and distributes it to everyone.  Yikes "that is centralized!" most people would complain, but lets examine the 'power' this server has?

1) It is well known and thus cannot get away with a double spend.
2) It cannot change the history of the block chain, everyone else has cemented the server's prior signatures in stone via TaPOS
3) It cannot produce alternate chains for different users because all users are comparing notes as to the current head block.
4) It cannot change the validation rules arbitrarily because every block produced must be validated by all nodes or all transactions stop until someone else can be appointed the block creation role.

So it seems that the only power this ONE node has is to select which transactions to include.   This is no different than one or 2 nodes in the bitcoin network or any network based upon proof of work.   

The last step toward decentralization is robust automatic failover in the event this one node is shutdown or attempts (but fails) to comment fraud.   Systems like Ethereum automatically shift who has this role every single block based upon a mining lottery.  Even their POS system is based upon a mining lottery where the ease of mining is adjusted by your balance.  Here you still centralize the process of selecting transactions ONE BLOCK at a time, you just have very short term limits.  Dictator for a block if you will.

Consensus is simply an algorithm to decentralize the process of selecting which transactions go into every block and to provide robust automatic failover in the event a single node goes down.
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 nametooshort

  • Jr. Member
  • **
  • Posts: 46
    • View Profile
Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #98 on: January 20, 2014, 08:06:26 am »
Did Bitshares lack of checkpointing?
Bitshares should grant nodes which meets a condition to sign checkpoints, like Solidcoin, but not necessary for network.
Even if writing Protoshare address in signature is not something good,
PvDZqsSyAsCDYNyYCfwZmy19EVohxnbnKB

Offline Schwede65

  • Full Member
  • ***
  • Posts: 65
    • View Profile
Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #99 on: January 22, 2014, 10:10:00 am »
Suggestions for the transaction-chain of bitshares

1. one ordering-node (with extra two parallel running backup-server - one of them goes online when the master is down) to define only the sequence of the transactions
this ordering-node gets this - at first at one node-confirmed transactions - to post the transaction-sequence to the 20 nodes

if in the first step a transaction has to be set corrupt (wrong addresses or other mistakes) it has to be sent back to the client by the node without sending it to the ordering node

2. 20 nodes get this sequence and confirm the transaction(s) with their full transaction-chain - a transaction is confirmed and done by minimum of 10 or 15 different nodes-approvals

3. the full transaction-chain must be on all 20 nodes for the confirmations

4. the thin client can choose which data he wants to have
a) minimum (default): the confirmed transactions of this client (very thin for mobiles and smartphones)
b) medium: decentralized distribution of the transaction-chain - done by the nodes - they divide the whole transaction-chain into 25, 50, 100 or more pieces and send them to the clients - one piece of the whole chain has to be sent to minimum 50 clients
c) full: the whole transaction-chain downloadable by the nodes - with the full download of the chain he is part of the complete transaction-chain-distribution on the network - may be the thin client is now a full client and could be a part of the transaction-confirmation-job of the 20 nodes - so we might have for a correct transaction-confirmation 10 % of the (now) full clients

the numbers of the 20 nodes are scalable - may be starting with 10 nodes

so the bitshares-system has to run 23 (13) server - with the donations now it is no financial problem

or is this system too centralized?
« Last Edit: January 22, 2014, 03:55:09 pm by Schwede65 »

Offline bytemaster

Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #100 on: January 22, 2014, 07:21:59 pm »

The Cons of Proof-of-Stake?
1) How to distribute coins?  Many options here.


What if coins are distributed from a faucet in such a way that it is as evenly distributed around the world as possible?

e.g. - use the requestor's IP address and employ daily limits per subnet, etc.

I understand the issue is that the faucet itself is centralized, but if kept honest it would provide decentralized distribution of coins.

If there is a way to incorporate that logic in the P2P nodes themselves, even better.

I'd love to see a coin in which adoption is not motivated purely by greed and pre-mine.

Premining is only a problem when a currency is based upon a speculative bubble and pump and dump.  If a *share* is allocated to the developers of technology that provides a *service* and thus produces non-speculative value then the creators are the initial owners and may sell or distribute in any way that they believe will maximize their profits. 

 Isn't it greed and envy that motivate the masses that want something for nothing?   No one ever accused AAPL of premining their stock.   

We should stop expecting people to be selfless and instead focus on producing the most value for our fellow man and thus earning the highest profits.   If you don't like their distribution market competition can kick in to keep everyone honest.



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 earthbound

  • Full Member
  • ***
  • Posts: 120
    • View Profile
    • earthbound.io
Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #101 on: January 24, 2014, 01:48:45 am »
What's a good topic, web site or reference for me to research to get the background that would render me able to comprehend this paper on any level? For example, if I come to understand Peercoin's proof-of-stake implementation (how it works, what its purpose is, etc.), would that give me a background? (And maybe I could review the mechanics of Bitcoin before I even tried taking on Peercoin?)

Because wow-ee, I am utterly lost.

???
I think I'm not alone when I say I'd like to see more and more planets fall under the ruthless dominion of our solar system. -Jack Handey

Offline Ben Mason

  • Hero Member
  • *****
  • Posts: 1071
  • Integrity & Innovation, powered by Bitshares
    • View Profile
  • BitShares: benjojo
Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #102 on: January 24, 2014, 12:03:15 pm »
please correct me if i'm wrong, but does it really matter who profits or by how much from the initial building of decentralized infrastructure.  All that really matters is that it is built and given the opportunity to thrive and out-compete structures based on hierarchies.  The real benefits are in the long term where the allocation of capital and resource will become more democratic and wealth will become more evenly distributed.  The knock on benefits have the power to tranform humanity and move us closer to becoming civilized.

Offline cob

  • Board Moderator
  • Sr. Member
  • *****
  • Posts: 376
    • View Profile
  • BitShares: cobb
Re: Transactions as Proof-of-Stake & The End of Mining
« Reply #103 on: January 26, 2014, 04:04:34 am »
Can anyone explain exactly how III is combining ripple's consensus mechanism with Proof of stake?
I've watched the ripple video. I'm not sure where proof of stake would fit in all this.
Anyone have mad explaining skills? Or maybe a nice explainer article and video?

thanks
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 #104 on: January 31, 2014, 08:52:38 pm »
I have been working on the consensus algorithm and while it is fast it has the following problems:
1) There is no way to compensate people for running full nodes. 
2) The cost of running full nodes grows with N^2 the number of nodes participating in the consensus process
3) There is no way to reward nodes that participate in consensus to cover the cost of bandwidth growing
4) If you rely on charity, the regulatory risks may result in nodes not proliferating
5) If you do reward nodes participating in the consensus process your costs either grow N^2 or nodes on the UNL have financial incentive NOT to add new nodes to the inner circle.
6) If you rely on indirect benefits then the incentives might not be properly aligned.

My conclusion is that the primary benefit for using the consensus algorithm is automatic failover in the event some nodes go down.  I also believed it was more decentralized that BTC but perhaps less so than NXT.

To this end it seems I must strive to achieve the goal of decentralization and thus have a new proposal for implementing TPOS. 

1) The "mining" reward will be kept to 1% of transaction fees.  We do not want significant resources thrown at this because the only purpose of mining now is to decide on the next block, NOT to secure the network.  The cost of mining should thus be very small and amount to an election.

2) Let N be the number of blocks per year
    Let M be the money supply at the start of the year
    Let m be the money transacted and n be the number of days since it was last moved.
    Let CDD be m*n
    Let ACDD be the Average CDD per block which can be calculated as N*M/N or M
    Let T be the base mining difficulty target (adjusted via moving average)
    Let BCDD be the CDD actually destroyed by the block.

    IF( BCDD > ACDD ) BCDD = ACDD.

    Given the above we can define the target difficulty for solving a block as:
   
    1 + T*(1- BCDD/ACDD)^2

3) The only transactions that count toward CDD are those that reference a prior block in the chain, thus miners will be unable to build secret chains using CDD of transactions produced by regular users.
4) If two blocks are found that extend the same chain, the one with the most CDD wins.
5) If two blocks with the same CDD are found then the one with the higher hash wins.

Results:  everyone can mine and attempt to produce a block at some 'base level' that is not perceptible to the user.  Someone with a large amount of the share supply would have limited advantage because everyone gets to mine POS using everyone else's transactions and everyone is mining at a base level, say 1% of CPU. 

The only thing a 'miner' can do to harm the network is Denial of Service (blocking transactions), but a miner attempting to do this would be at a disadvantage against all of the miners which are including transactions. 

So what can someone with unlimited hashing power do...  they can still perform a DOS on the network provided they have  100,000 * the number of computers on the network in hash power.  Unfortunately for them, the cost would far exceed the fees earned. 

Something to think about.

How is that for decentralized?
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.