Alternative solutions to the double-spending problem

Sjoerd van der Hoorn
Coinmonks
7 min readMay 4, 2018

--

The Bitcoin whitepaper clearly shows the intention of Satoshi Nakamoto; the ability to sent payments from one party to another without having to go through a financial institution to prevent the first party to spent the money again.

Abstract. A purely peer-to-peer version of electronic cash would allow online payments to be sent directly from one party to another without going through a financial institution. Digital signatures provide part of the solution, but the main benefits are lost if a trusted third party is still required to prevent double-spending. We propose a solution to the double-spending problem using a peer-to-peer network. The network timestamps transactions by hashing them into an ongoing chain of hash-based proof-of-work, forming a record that cannot be changed without redoing the proof-of-work. The longest chain not only serves as proof of the sequence of events witnessed, but proof that it came from the largest pool of CPU power. As long as a majority of CPU power is controlled by nodes that are not cooperating to attack the network, they’ll generate the longest chain and outpace attackers. The network itself requires minimal structure. Messages are broadcast on a best effort basis, and nodes can leave and rejoin the network at will, accepting the longest proof-of-work chain as proof of what happened while they were gone.

Source- Bitcoin White Paper

The groundbreaking piece here was solving the double-spending problem. Up to the invention of the blockchain concept, the only ways available were to use 1) actual money backed by a government, 2) precious materials such as gold and silver, or 3) a centralized banking system. Since blockchain, the only other major project that has been able to pull off protection against double-spending is IOTA’s work on Tangle. Although many value the abilities of blockchain to secure payments, it merely is a tiny beginning rather than the end goal.

When I was taking a step back I came up with some alternatives. I will describe my three new highly theoretical ways to achieve such transactions, and proposes a fourth method which might be real-world feasible. Goal of this exercise is to drive further innovation.

Starting point

The four methods I’d like to present all apply the same principle:

The ability to allow peer-to-peer payments without requiring a third party to confirm the payment.

Let me take you through a iterative journey using some thought experiments.

Constrains

Any type of method to proof ownership relies on statistical extremes that can assure you the unlikeliness of someone else claiming they own your property. For this discovery, lets look into using the below statements to our advantage.

  • Storage space is limited.
  • Processing power is limited.
  • Legal tender (such as banknotes) will not be forged if the costs to produce the forge is higher than the amount the forgery represents.

Any method that proofs ownership of a digital item so far, applies some sort of digital signature scheme where only the owner is able to reproduce the signature given to the original item. However, digital signatures by themselves will not be able to prevent double spending. A second party could simply copy the item and produce a signature using their own keys, thus claiming they own it to. This is why blockchain and tangle also include references to the ownership history of an item. For the sake of clarity the below methods assume a similar reference model being included in the signature process.

Method 1: 51% global storage rule

Assuming it can be publicly known how much storage space is available to all mankind, a first way to prevent a secondary person to create their own signature is by requiring this signature to be so big that it occupies 51% of all available storage space.

For example say that the world’s total storage capacity is 70 units. To proof ownership of a digital property, you need to create a signature that is 36 units (70/2+1). The item can only be sold if the buyer can also create a signature of 36 units. The seller thus would have release at least 2 units, breaking her signature and making her unable to proof ownership.

The buyer can now effectively claim sole ownership over the digital item.

Method 2: 51% personal storage rule

This method is like the previous, but assumes it is known how much storage space every individual on the planet has available.

In this scheme, the requirement is that the signature size is 51% of the total available storage space to a person. Before an item is sold, the buyer hands a dummy file over to the seller. The seller will have to create a signature for the dummy, effectively destroying their signature of the original item. Only when the seller can proof they can sign the dummy, the buyer can claim sole ownership over the digital item.

Method 3: Ownership by constant mutation

Instead of claiming large amounts of storage space, we can also claim processing power. Any device has limits to the rate it can read and write data to memory. For example, on a single threaded CPU that works at 10 IPS, only ten operations can be performed per second.

After creating a signature for a digital item, the new owner would store a copy of this signature (which also has an initial timestamp) in memory and apply constant mutations to it. These mutations would be in a predictive pattern, however, they can not be shortcutted because the outcome of the previous cycle will have to be known.

To proof ownership to a buyer, the seller will stop the operations and hand over the original signature plus the calculated end result to the buyer. The buyer will re-apply the mutation pattern and keeps track of the number of cycles until the end result is reached. This will tell the buyer how many cycles were necessary to get to this state. Given the number of cycles, the IPS rate from the sellers device, plus the initial timestamp and the timestamp of when the seller stopped the in memory processing, the buyer can calculate if the mutation cycle ever was interrupted. If not, the buyer can safely claim sole ownership over the digital item.

Method 4: Scratch card

This method uses a physical object to assist in proving ownership in the form of a scratch card that consists out of two parts. The first part is labeled “Sign” and contains a concealed public key. The second is labeled “Verify” and contains the corresponding private key, also concealed.

The “genuine manufacturer” in this story can basically be anyone that both the buyer and the seller trust enough to make a scratch card that can not be tempered with. The scratch card will not discriminate on the source, destination, or the value of a transaction like a third party or a network of third parties could do. Lotteries trust scratch cards enough to not worry about tampering or fraud, even though their stakes are high.

To transfer ownership, the seller would have to hand over the “Verify” part of the scratch card to the buyer. The buyer at the same time hands over a new unused scratch card to the seller. The buyer will check if the scratch label has not been broken. Both will check if the scratch card came from a genuine manufacturer.

Two simulations actions now happen.

  • The buyer will open the “Verify” seal and use the private key to check that the signature that comes with the digital item was made with the public key.
  • The seller will open the “Sign” seal and use the public key to create a new signature for the digital item. The seller will then destroy the “Sign” part of the scratch card and hand over the untouched “Verify” seal and the new signature to the buyer.

The buyer now is the new owner of the item. The seller can no longer proof she is the owner, since she is no longer able to produce a genuine scratch card with a valid and untouched “Verify” seal. The buyer can safely claim sole ownership over the digital item as long as he is in possession of the new “Verify” slip.

Click to read more blockchain stories

--

--