2015-09-28

Pondering Proof of Importance

Recently, I listened to a Let's Talk Bitcoin podcast discussing NEM (New Economy Movement), a new Crypto 2.0 system. So far, I was unable to receive any detailed overview of it for the Crypto Comparison Chart, but one feature that stands out as unique to NEM is their Proof of Importance mining algorithm. Lets have a look at how it holds up in comparison to what is already out there.

Proof of Importance


The detailed overview can be found in NEM's Technical Reference document. In general, it looks like a variation of Proof of Stake that gives extra weight to accounts that are actively transacting with a lot of other accounts. The actual equations as to how the weight is calculated and how it affects who will be selected as a miner is detailed over several pages of the document.

The downside of putting extra weight on transactions between accounts on the network is that the system can be easily gamed, at least until we solve the "one-identity-per-person" problem. Creating accounts and sending transactions around is trivial, and figuring out the exact method of getting the maximum return to game the algorithm is only a matter of time. Even the document itself demonstrated that an attacker performing a sybil attack can boost their importance by about 10% in comparison to someone that just holds onto their tokens:




So all in all, the system rewards those that hold the tokens moderately. Shared wallets, exchanges and payment processors would be examples of businesses that would receive proportionally more bang for their buck as it were, but a highly-optimized attacker can still beat out the quasi-random transactions of the above businesses by always performing the optimal transactions.

Conclusions


The sybil attack vulnerability of NEM reminds me of the old problem faced by Bitcoin mining pools back in 2011 - pool hopping. If a system allows any attacker to gain an advantage over honest players in the system, the algorithm needs to be changed.

As for the rest of the NEM system - I haven't yet had the time to explore it too deeply, but it also seems to suffer from the problem of being easy to front run by the miners (or harvesters as they appear to be called in NEM).

2015-09-21

The dawn of the great crypto extinction and reimplementation

In the crypto world, there are hundreds if not more of cryptocurrencies. However, just like we saw an explosion of cryptocurrency projects in the past few years, we might see a "great crypto extinction" event, possibly accompanied with a great reimplementation effort. Let me explain what I mean by that.

The current state of affairs


Currently, we have a lot of different cryptocurrencies cropping up. Those could be roughly divided into a few categories:


  • Copycoins - currencies that copy Bitcoin and tweak only a handful of features that don't alter how the coin behaves. Those would include Litecoin, Dogecoin, or Quarkcoin.
  • Asset coins - copycoins that issue and distribute real world assets through a copycoin system, for example Coinaaa or PayCoin.
  • Innovation coins - currencies that innovate with the Bitcoin technology and take the technology in new directions. Those would include Dash (formerly Darkcoin) or Namecoin.
  • Token coins for Crypto 2.0 networks - coins tied to a Crypto 2.0 network and used as a native currency for various purposes. Those would include Ethereum, Ripple or BitShares.

With the development in the crypto space, a good amount of those standalone currency networks are already becoming obsolete. The Crypto 2.0 networks are making the copycoins and the asset coins less and less desirable to use - Namecoin can be reimplemented easily as an Ethereum script and any asset coin can be easily issued on Ripple for example.

However, there are a lot of people opposing the use of those network due to the proprietary tokens needed to run the system. However, if the concept Sidechains delivers on its promises, that issue could be solved in the near future.

Sidechains - an important piece of the puzzle


The premise of Sidechains is to allow anyone to move bitcoins out of the Bitcoin network into a separate network and vice versa. This would mean that we could easily move value between cryptocurrency networks without relying on centralized exchanges, proprietary tokens specific to those networks or multi-party voting pools.

If this goal would be achieved, it would mean that any Crypto 2.0 network could be in theory reimplemented to use bitcoin-pegged tokens as its native currency, tapping into the huge Bitcoin market cap and relatively more stable value. In other words, we could have Bitcoin-powered Ethereum, Ripple, BitShares, etc., and those would in turn make a lot of other coins obsolete in the process.

The great extinction event - who will survive?


In the crypto world, it is sometimes hard to predict which projects will survive and which will die. It seems that a lot of projects are driven by their community (such as Dogecoin), speculation (as outlined very well in The Story of Bob Surplus), or the development team behind it (Ethereum). Moreover, software never dies - if there will be at least one person running a client for CoiledCoin in 50 years, it can't really be called dead.

That being said, there are definitely some networks that will remain largely unaffected even if and when the Sidechains will take off. Those would include the blockchains that take a lot of technical expertise to develop and maintain, such as Ethereum or Ripple. They are unlikely to be dislodged from their position because they have or would have by that time a big development team improving the technology raising the barrier to entry for any newcomers.

The same could be said for more "established" cryptocurrencies, such as Litecoin. Their long history will let them remain pretty much in the same position they are today - as something to trade and speculate on.

Conclusions


With the possible advent of Sidechains, we might see a great cryptocurrency extinction event that will drive to replace obsolete cryptocurrencies with new technology. We are likely to see some more innovative projects, such as the many Crypto 2.0 networks, reimplemented as sidechains to augment what is currently possible on the Bitcoin network.

2015-09-14

Death of Satoshi

In the recent months, the Bitcoin community is discussing probably the most controversial issue the project has faced thus far - whether or not to increase the block size. This debate is hastened more and more by various "stress tests" that involve spamming the Bitcoin network. Among some of the arguments for and against the proposed changes you can hear people repeatedly mentioning "Satoshi's vision" (1, 2, 3) as a justification for their position. Is it perhaps time for us to stop appealing to the authority and start to forge our own path forwards?

What Would Satoshi Do?

Satoshi "Cyberchrist" Nakamoto

It seems that a lot of people have set out to save all of Satoshi's posts and quotes. The day he left his last post is remembered. Despite being gone from the Bitcoin community for almost 5 years, Satoshi's ideas seem to carry a lot of weight. This looks like early stages of religion with a gospel, rather than a technology revolution.

Satoshi was (most likely) a single person. As it goes with all people, nobody knows everything, nor can foresee exactly how the future will unfold. Trying to discern whether we should or shouldn't increase the block size can be viewed akin to divination.

Satoshi might've been visionary to create Bitcoin and code it, but lets not forget all the other developers that followed in his footsteps and took over when he left.

The "other" developers


The Bitcoin Core software has been developed over the years by a group of about 5 core developers, depending on how you count, and over 300 contributors. There are many talented developers and cryptographers working on the Bitcoin and related technologies, such as Vitalik Buterin or David Schwartz.

A famous photo of some of the top people involved in Bitcoin. Some speculate one of them might be Satoshi. More info.

To belittle their contribution to the project and the Bitcoin ecosystem as a whole in favour of someone that has been gone for a majority of Bitcoin's history by now is a major disservice. Even if we assume Satoshi was the smartest, most talented and most experienced developer to contribute to Bitcoin, he is still just one person.

The Death of Satoshi


In literature, one can set out to interpret a given text in two ways. First, by the intent of the works' author and what they themselves ascribe to the piece they created, and second, by reading the text on its own without considering who the author was or what they intended the text to be about. The latter is known as "The Death of the Author".

Perhaps when discussing how the Bitcoin software should be developed, we should assume the death of the author and move forward forging our own path?

I know this view might be hard for some people, after all, constitution worship and apologetics seem to be quite prevalent in some of the top countries using Bitcoin and it would be all too easy to use the same approach for Bitcoin. However, as we move forward into the future, Satoshi's posts and views will be more and more out of touch with the present day and we can't constantly go back and try to interpret meanings from them to solve all of our problems...

Conclusions


While Satoshi was a smart person for having came up with the idea of Bitcoin, we have to sooner or later move on to plan for the road ahead, rather than constantly look backwards.

2015-09-06

Pervasive banking

In computer science, there is a concept of "pervasive computing" - an idea that instead of using a specific device to perform computation, it would instead be distributed "everywhere" and we would instead just use our devices as interfaces to access this ubiquitous computing environment. So instead of having say, a laptop or a PC where we run our programs, we could have a local cloud of computing devices to provide us with their resources at our disposal. Just as computing appears to be moving to this model with say, home game streaming, perhaps it's time for the banking services to take a clue as well?

What would constitute a pervasive banking experience?

  1. The ability for anyone to access the banking network
  2. The ability to cash in and cash out at any location, not just the banks and ATMs
  3. The freedom to pay conveniently in any fashion


Number 1 we've discussed before. It would be really good if banks were considered to be a common carrier, and thus unable to refuse the service to anyone that pays the fees and follows the rules.

Number 2 is interesting. There are a few examples of some convenient cash in / out cropping up here and there. I've seen a few banks offering cash out services during checkouts at stores, Apple Pay looks like it will be offering P2P payments to allow people to pay for other people's purchases and what not, and Abra is looking into offering P2P remittance services.

Perhaps in the future we will see more companies embracing the "anywhere-in, anywhere-out" nature of banking and we might see say, self-checkout kiosks or even vending machines acting as our convenient ATMs? After all, if they can already accept deposits, make change and accept credit cards, they have all the functionality needed.

Number 3 appears to be also already in the works. We've got Google Wallet allowing you to pay wirelessly (although at the time, only in US, which still appears to be too focused on magswipes...), or a poorly named "Coin" card that replaces your multiple card with a single programmable card (unfortunately, with the outdated magswipes...). We also have some people developing Bitcoin applications that use MasterCard's PayPass technology.

Perhaps this step will become easier once everyone is talking on a common standard. Luckily, we have a W3C Web Payment Interest Group hoping to create a standard protocol for payments (list of participants includes Ripple Labs, although I don't see any other cryptocurrency expert representing). It is possible that with the standard being established it would be easier for companies to build gateways in and out of the old banking systems and allow for everyone to be able to pay in a way that is the most convenient for them - cash, credit, mobile or crypto.

Conclusions


All in all, it seems that we are heading towards the pervasive banking / Singularity of Money concept on a few fronts, although it might still be years before the idea is fully realized.


Relevant links: