stellar-core icon indicating copy to clipboard operation
stellar-core copied to clipboard

Improve Soroban support for transaction envelopes

Open dmkozh opened this issue 1 year ago • 0 comments

This is a top-level issue to discuss and design the Soroban-specific transaction envelope enhancements. Protocol 20 doesn't do anything Soroban-specific besides providing a way to specify the Soroban resources and resource fee.

Here is the list of some ideas and use cases to take into account in the design:

  • Soroban fee/resource bumps
    • Provide a way to bump Soroban resource fee past u32::MAX via fee bump
    • Provide a way to bump Soroban resources and fee
    • Consider alternative ways of composing Soroban transactions, the primary example is providing a way for the fee source to sign only the maximum resource fee and some trusted external party to attach the transaction resources
      • One idea here is to allow the internal tx signer to append the account id of the external party that they trust to provide the valid resources
  • Better integration of Soroban auth with tx envelope auth
    • Generalize the concept of the 'source account' auth to be usable with an arbitrary number of the tx envelope signers.
      • Motivational example is the commitment scheme where the source account signs the transaction envelope as a proof of commitment to a certain operation, then another party authorizing that operation via signing the whole envelope.
      • Consider also extending this to the custom accounts (via apply-time signature checks)

dmkozh avatar Jan 23 '24 22:01 dmkozh