Green address – the solution to slow Bitcoin transactions?
One of the reasons why Bitcoin has experienced success over other digital currencies is its ability to overcome what is known as the double-spend problem.
One of the reasons Bitcoin has experienced a degree of success over other digital currencies is its ability to overcome what is known as the double-spend problem. Double spending, for many years, had been a vexing issue for any sort of e-currency: how to avoid someone from having the ability to send money to one party while simultaneously sending it to another.
Double spending is not a problem that exists in physical fiat-based currencies. This is due to the fact that one can duplicate files that make up a digital system much more easily than the time and effort it takes to counterfeit something like paper money. For digital currencies, a host of problems can result from double spending as it can easily destroy confidence and has been one of the reasons why money that is not backed by a government has struggled to take off – until now.
Bitcoin solves the double spending issue by utilizing proof of work, requiring that a mathematical problem set be solved in order for a transaction to be validated. This resolves the predicament of double spending, but can cause another problem: transactions require a period of time before they are completed. In Bitcoin's case, it can take up to an hour for a transaction to confirm. This is a problem, because one feature that has become an expectation from digital money is speedy transactions.
This is one of the reasons why Litecoin is an alternative to Bitcoin; that currency’s proof of work uses a different algorithm method called scrypt over the SHA-256 hash technology used in Bitcoin. Many have agreed that scrypt is a faster method for verifying transactions. But although Litecoin can be a solid number two to Bitcoin in the market for decentralized currencies, it just doesn’t have the widespread adoption of Bitcoin – and it's easy to question when it will, given that for now it is harder to obtain.
A way that parties can speed up transactions in Bitcoin itself is by utilizing something called marker addresses. In a paper called “Marker Addresses: Adding Identification Information to Bitcoin Transactions to Leverage Existing Trust Relationships,” author Jan Vornberger describes a process that has come to be known in Bitcoin circles as the “green address approach”.
Using Bitcoin’s own communications channel, parties are able to establish trust through an address that has been commonly identified as a "marker". This, in effect, is able to reduce the time it takes for a transaction to complete since a receiver is already waiting, or “listening” for an address to send money. By utilizing the already existing Bitcoin protocol to do this, listening makes the green address approach an easy feature to implement, since there is nothing to build on top of the already existing system.
The more complicated understanding of green addresses is laid out in this chart. A “marker” Bitcoin address is made known publicly. A small amount of Bitcoins is held at that address, in order to provide a corresponding key for redemption. When sending or receiving bitcoins from a party that is trusted, a transmission includes the publicly known green address in the transaction. This, in effect, speeds transaction time – no need to wait for confirmation when the address is used.
An example of one of these addresses is one used for the Bridgewalker mobile app. You can see the outgoing transactions taking place, since that Bitcoin address is publicly known in order to establish the trust element to make the process work.
Jan Vornberger, who wrote the paper about marker addresses, recognizes there are drawbacks to this green address approach. “It does not magically solve the instant transaction problem for everyone. It just offers a way to mark your transactions so that you can leverage your reputation among anyone who recognizes and trusts you,” he said.
This system offers no promise of anonymity; in fact, green addresses are recognizable on the blockchain, since they are public to be used to represent trust. The additional transaction inputs that validate are also included in the blockchain and are recognizable. Yet, even despite potential negatives, green addresses are being used because they can easily be implemented in the existing Bitcoin system. Mt Gox has been using them since 2011 and when you go to withdraw bitcoins from Mt. Gox, you can select the option to use a green address.
“I hope that this fairly simple mechanism can offer a way to speed up transactions between larger entities that trust each other, without having to build a custom solution for each partnering organization,” Vornberger tells CoinDesk.
That's what is really important about this concept. In order for a payment to be accepted by a party, it needs to have some sort of confirmation. Having to wait an hour for a transaction to confirm on the blockchain is troublesome for so many reasons that it doesn't ensure any sort of confidence. That's why something like point of sale applications is one useful reason for the green address approach. Confirming large transactions would be another use. With the green address approach, a transaction can go through immediately instead of what can be described as a tedious delay.
While a developer could, in theory, build something on top of Bitcoin’s existing protocol to make something similar to green addresses possible, not a lot of work has been done in that regard. One developer has devised a point of sale application, which is necessary in order to confirm transactions just as is currently done with credit or debit cards. It can utilize the green address approach and can also use its own method to help validate and speed transactions.
STORY CONTINUES BELOW
It may just be that the long-term result is a system that validates transactions outside of the Bitcoin protocol. But for now, the green address approach works.
What reasons do you find the green address approach useful? Do you think that at some point there will be another method that might be used in order to validate Bitcoin transactions?