History of Cryptographic Property

Pre Bitcoin

Cryptographic property was first introduced in the 1980s by scehmes such as Ecash. These schemes were quasi-independent from trusted third parties.

An asset was determined to be mine if I could create a digital signature that only I knew. While the cryptography worked to assert ownership, there was a technical challenge which still required the presence of a trusted intermediary.

I will illustrate below:

Asserting Ownership

Alice has 1 dollar since she has a digital certificate with the value of ‘1 USD’ locked to a public key to which only she can generate a digital signature. No one except for Alice can spend those funds because they do not know the private key required to generate the digital signature.

Peer to Peer Transfers

Alice could then transfer ownership of coins to Bob by locking the digital certificate to bob and signing it with her private key, Alice then transmits this certificate to Bob via any channel (eg email). No 3rd party is required to facilitate the transfer between Alice and Bob.

However there is one flaw with this design. In the normal banking system a transfer from A -> B results in funds being debited from A’s balance and credited to B’s balance. However in this model the bank is not a party to the transaction.

What if Alice sent the same funds to Bob and Charlie (i.e. a double spend attack), thus minting funds out of thin air?

Centralized Mint

The way this was solved is by placing a requirement that for a transaction to be valid it must be one step removed from the ‘Mint’. The mint keeps a record of which money has been spent and which has not.

If anyone tries to spend the same money twice the mint will not validate it.

The technical necessity for a mint reintroduced a third party necessary for the system to work. This system was an improvement over the ‘normal’ banking system — unlike a bank the mint cannot steal from you. However the mint can censor transactions by refusing to validate them.

Bitcoin

Bitcoin took the model of cryptographic ownership of digital certificates, and replaced the centralized mint with a decentralized group of miners.

Instead of having a single party act as the ‘mint’ record when a transaction was spent, a group of miners around the world did so in collaboration. All of the miners maintain a ‘shared history’ of transactions which occurred — making it impossible for a bad actor to spend the same transaction twice. The invention of this shared history has now become known as the ‘Blockchain’.

The innovation of Bitcoin and the ‘shared history’ is that there is no central point of failure. Even if one miner objects to validating a transaction because of local regulations, other miners would validate the transaction.

This new model solved the double spend problem — and with it got rid of any trusted third party in the system. However the Bitcoin solution, while successful in getting rid of a third party, placed other technical limitations. Since everyone needs to agree on the same history of events, anything which is not deterministic cannot be evaluated. Examples of things which are not deterministic are events which happen outside of the Bitcoin blockchain (EG Who won the elections?) or how long it will take a loop function to terminate.

The inability to evaluate non deterministic items means that a ‘complex ownership condition’ such as “if X then pay to A, if Y then pay to B” cannot occur.

Where previously a bank would act as a central counter party — holding the funds in escrow until X or Y happens, the decentralized system needs to implement an alternative solution.

The solution is that the logic is programmed in code (rather than written in a legal document) using ‘smart contracts’.

An oracle reports the events to the blockchain, and the smart contract executes the logic encoded in it.

This inability also means one cannot use a normal programming language to express these conditions.

Namecoin

Back in 2010 it become apparent to the Bitcoin community quite quickly that the blockchain could be used for additional assets which would benefit from a decentralised property paradigm.

The main use case proposed which is still in use today was a decentralised DNS system, where domain name ownership would not be controlled by a centralised party and where revocation could not be done arbitrarily.

The initial proposition was to add functionality to Bitcoin in order to support a DNS system. However Satoshi foresaw the scalability issues apparent with blockchains today, and did not want to put additional assets into the same ‘shared history’. Satoshi proposed that each asset have a separate chain, reducing the amount of ‘shared history’ the Bitcoin miners would need to maintain.

Colored Coins

In 2012 the thought process evolved and an effort was concentrated on the support of multiple assets on the same chain.

“By the original design bitcoins are fungible, acting as a neutral medium of exchange. However, by carefully tracking the origin of a given bitcoin, it is possible to color a set of coins to distinguish it from the rest. These coins can then have special properties supported by either an issuing agent or a Schelling point, and have value independent of the face value of the underlying bitcoins. Such colored bitcoins can be used for alternative currencies, commodity certificates, smart property, and other financial instruments such as stocks and bonds. Because colored bitcoins make use of the existing Bitcoin infrastructure and can be stored and transferred without the need for a third party, and even be exchanged for one another in an atomic transaction, they can open the way for the decentralized exchange of things that are not possible by traditional methods.”

The colored coin idea, support for multiple assets on the same chain, is the essential missing piece lacking in Bitcoin — and is the crux of what has given rise to the AltCoin market in Ethereum. If Ethereum is not much more than an asset platform, then why did Ethereum succeed while colored coins garnered less adoption?

The answer may be due to time to market, and technical issues with implementing colored coins as an overlay protocol on top of Bitcoin.

Mastercoin (rebranded to OMNI)

In 2013, Mastercoin took a different approach than colored coins, providing a solution both to having multiple assets in addition to other more complex functionality that was not supported by Bitcoin.

Mastercoin was quite the success, so much so that we have seen the same ‘blockchain hype’ with Mastercoin in 2014 (ICO mania, albeit on a smaller scale) as what is currently going on with Ethereum in 2018.

A couple of the problems with Mastercoin was that some of the Bitcoin community considered it as blockchain spam and were against it.

Furthermore the operations that could be executed on Mastercoin were limited to certain predefined transaction types. Every time you wanted to add another ownership condition the Mastercoin developers needed to be involved in the process in order to create a new type of transaction which supported that functionality.

Ethereum

While previous projects were focused on assets, Ethereum was created as a platform for any sort of decentralised use case in 2014/15.

To accomodate ‘any use case’ Ethereum created a new architecture, the EVM, which is the collective state of all the applications running in Ethereum. Confusingly all of these applications are commonly referred to as smart contracts, even if the application is not a contract involving the transfer of ownership of assets. For example a commonly known application is the ERC 20 contract, which implements the logic of a token.

The problem with this design is that it is not fit for purpose. Ethereum is an overshoot of what was necessary, Ethereum was right in making it easier to create new escrow conditions, and to that end a programming environment is welcomed.

However it is necessary to remember that the programmability is a means to replace escrow agents with code, not a way to stuff every use case on to the blockchain.

Zen Protocol

The founding premise behind our architecture is that blockchain will excel at one specific use case — Cryptographic Property.

Bitcoin is missing 2 prerequisites:

Support for Multiple Assets. Support for complex ownership conditions.

Our answer to the need for multiple assets is tokens as ‘first class citizens’. This means that all assets are equivalent (Zen asset does not have any advantage over any other asset). Assets can operate independently of smart contracts.

The second thing we need to do is have support for complex ownership conditions. We do this by enabling programmable escrow mechanisms (i.e. contracts). Due to our resource bounds each contract can operate as an independent agent, rather than depend on a larger virtual machine. This means that these contracts operate separately from the rest of the blockchain.

In conclusion in the long run at Zen Protocol we expect to see a world were property rights are restored to people. We envision a future were by default people control their own assets cryptographically, and relying on trusted third parties are the exception, not the rule.