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

EVM-friendly TipSet and ECChain formats #216

Merged
merged 12 commits into from
May 17, 2024
Merged

EVM-friendly TipSet and ECChain formats #216

merged 12 commits into from
May 17, 2024

Commits on May 14, 2024

  1. EVM-friendly TipSet and ECChain formats

    This patch implements the changes described in
    filecoin-project/FIPs#1004.
    
    Unfortunately, go-f3 now needs to be aware of the internal structure of
    `TipSet` objects as it sends them over the wire in one format, but signs
    another. This effectively reverts #149.
    
    Specific changes:
    
    1. On the wire (and in finality certificates), `TipSet` objects are now
       directly cbor-marshaled within the payload instead of first being
       marshaled to byte strings.
    2. Instead of directly covering the entire tipset list with the payload
       signature:
      1. `TipSet` objects are "marshaled for signing" per the FIP change
          proposed above.
      2. These marshaled tipset objects are stuffed into a merkle tree.
      3. The merkle tree root is signed (along with the payload's other
         fields), again according the proposed changes.
    
    fixes #166
    Stebalien committed May 14, 2024
    Configuration menu
    Copy the full SHA
    d5c87aa View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e5f7256 View commit details
    Browse the repository at this point in the history
  3. slightly optimize hashing

    Stebalien committed May 14, 2024
    Configuration menu
    Copy the full SHA
    c6f8484 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    4bd81c7 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    c61a864 View commit details
    Browse the repository at this point in the history

Commits on May 15, 2024

  1. address feedback

    Stebalien committed May 15, 2024
    Configuration menu
    Copy the full SHA
    5083f66 View commit details
    Browse the repository at this point in the history
  2. Fake marshaling for testing

    Stebalien committed May 15, 2024
    Configuration menu
    Copy the full SHA
    5a0888f View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    79d71cc View commit details
    Browse the repository at this point in the history

Commits on May 16, 2024

  1. Configuration menu
    Copy the full SHA
    602c56e View commit details
    Browse the repository at this point in the history
  2. combine signer/verifier and MarshalPayloadForSignature

    Into a single Signatures interface.
    Stebalien committed May 16, 2024
    Configuration menu
    Copy the full SHA
    0bf9cbf View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    d58a231 View commit details
    Browse the repository at this point in the history
  4. Test bad merkle-tree paths

    Stebalien committed May 16, 2024
    Configuration menu
    Copy the full SHA
    0064000 View commit details
    Browse the repository at this point in the history