2 Matching Annotations
  1. Jun 2022
    1. This is equivalent to the famous double-spend problem in designing decentralized currencies, except instead of the goal being to prevent a previous owner of a coin from being able to send it again, here the goal is to prevent the previous key controlling an account from being able to change the key. Just like creating a decentralized currency, doing account management in a decentralized way requires something like a blockchain. A blockchain can timestamp the key change messages, providing common knowledge over whether B or C came first.

      Decentralized account management may also run into a problem analogous to the double spend problem. Someone with key A signs a message they are now using key B, and an attacker gets a hold of that key and signs a message they are using key C. An observer has no way of knowing whether the message about B or C happened first.

  2. Jul 2021
    1. One of the fundamental goals of a blockchain is resolving the “double spend” problem. In a nutshell, this means preventing someone from sending the same coin to two people. However, beyond just simple spend transactions, it applies any time two transactions want to update the same state. This could be someone trying to duplicate Bitcoin, or two people trying to buy the same CryptoKitty. For the sake of generality, we’ll call it the “double update” problem. Fundamentally it’s about ordering: when we see two things, how do we decide which is first, and what happens to the second one?

      The double spend problem is a subset of what can be called the double update problem. How do we order two updates to the same state?