Skip to content

Client update transactions are too large #4860

Open
@faddat

Description

@faddat

Summary of Bug

Client update transactions are too large and can be easily made smaller. The size of client update transactions is a risk to chains using ibc.

Notes from @ValarDragon

image

  • each client update lists all the validators + all signatures with both carrying way too much data
  • Simplest things would be:
    • Delete:
      • Signature/block_id_flag, infer "BLOCK_ID_COMMIT"
      • Signature/Timestamp -> UnixNano timestamp

"Can't tell if this validator set hash is verified against root, if so nothing that reads as a trivial change then (because priority changes every block), you can make an ID system for val addrs at least, but ID system isn't a mini change"

Expected Behaviour

Client updates are significantly reduced in size, without the use of zero knowledge proofs.

Version

all

Steps to Reproduce

Contact Jacob Gadikian via slack to discuss how to reproduce the issues that can be caused by this approach.

implementation

I think that most of this could be done in the relayer. Versioning could let the relayer know which client update info to send, and there wouldn't be breaking changes.


For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate contributors tagged/assigned

Metadata

Metadata

Assignees

No one assigned

    Labels

    07-tendermintneeds discussionIssues that need discussion before they can be worked ontype: refactorArchitecture, code or CI improvements that may or may not tackle technical debt.

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions