Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace custody challenge game with JABS #812

Merged
merged 35 commits into from
Mar 28, 2019
Merged

Replace custody challenge game with JABS #812

merged 35 commits into from
Mar 28, 2019

Commits on Mar 19, 2019

  1. Replace custody challenge game with JABS

    Replace the existing proof of custody game with a new game ("Justin's Awesome Bit Sum" or JABS) that works as follows:
    
    * The data `D` is split up into 512-byte chunks `D[0] .... D[n-1]`, and use a mix function `mix(subkey, data) -> {0,1}` (currently the first bit of the hash of `subkey+data`). We calculate `M[i] = (mix(D[0]) + ... + mix(D[i-1])) % 2`, and set the custody bit to `M[n-1]`
    * Anyone can challenge by providing the full `M` where `M[n-1]` is not equal to the custody bit
    * Anyone can respond to a challenge by providing a specific position in `M` along with a branch of the data where `M[i-1] ^ mix(D[i]) != M[i]`
    
    The maximum size of data is now `2**6` epochs *  `2**6` blocks * `2**14` bytes = `2**26` bytes, so assuming 512-byte mix chunks the maximum mix size is `2**17` bits or `2**14` bytes. The average mix size is `2**8` bytes.
    vbuterin committed Mar 19, 2019
    Configuration menu
    Copy the full SHA
    a8d39a5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    538bdbd View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    22cb4db View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    d786abf View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    ea45c9c View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    745e64c View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    3a6beb0 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    fd6e4fe View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    ad6ec99 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    4215c3c View commit details
    Browse the repository at this point in the history

Commits on Mar 20, 2019

  1. Configuration menu
    Copy the full SHA
    5a00b39 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5b845b0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    21c0120 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    6b6a355 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    026ee7e View commit details
    Browse the repository at this point in the history
  6. Tiny fixes

    vbuterin committed Mar 20, 2019
    Configuration menu
    Copy the full SHA
    6c43322 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    26a4ab9 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    1107e7f View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    9f36d87 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    f1bf5f7 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    931664f View commit details
    Browse the repository at this point in the history

Commits on Mar 21, 2019

  1. Configuration menu
    Copy the full SHA
    113bd61 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2434800 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    4bf6396 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    51386d9 View commit details
    Browse the repository at this point in the history

Commits on Mar 22, 2019

  1. Configuration menu
    Copy the full SHA
    cade1bb View commit details
    Browse the repository at this point in the history
  2. Use the new balance functions

    hwwhww committed Mar 22, 2019
    Configuration menu
    Copy the full SHA
    d4569d2 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    4cdb5c7 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    7d89022 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    82b962a View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    1f8b444 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    35a7bbc View commit details
    Browse the repository at this point in the history

Commits on Mar 28, 2019

  1. Configuration menu
    Copy the full SHA
    9c9f359 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1c83348 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    549c995 View commit details
    Browse the repository at this point in the history