hyperledger-iroha / iroha

Iroha - A simple, enterprise-grade decentralized ledger
https://wiki.hyperledger.org/display/iroha
Apache License 2.0
440 stars 279 forks source link

Ergonomic MST #4930

Open mversic opened 3 months ago

mversic commented 3 months ago

Ideas on how can we make MST more ergonomic:

  1. All smart contracts for MST should be registered from Executor, i.e. be put in default executor migration
  2. I think we need an API to fetch all currently voted for transactions, i.e. pending transactions
  3. we need a way to expire MST that have not been active for a while
  4. We can define custom instructions for dealing with MST and also have them defined as part of default executor

Additionally, we should consider adding (behind a feature flag "mst") a specialized API to both iroha client and cli for dealing with MSTs.

mversic commented 3 months ago

actually, instead of doing it during executor migration as was suggested in 1. they should be registered in the genesis

s8sato commented 1 month ago

Remaining issues after #5027:

mversic commented 2 weeks ago
* [make the default multisig ttl indefinite?](https://github.com/hyperledger/iroha/pull/5027#discussion_r1742874965)

no, there should always be some default non-infinite value

0x009922 commented 2 weeks ago

My comment regarding the client interface: https://github.com/hyperledger/iroha/pull/5027#discussion_r1809720511

I don't immediately like the idea of having this being included directly into the client. Though, it depends on how much we need to make multisig an official out-of-the-box feature.

As an alternative idea, there could a separate CLI to construct multisig-related instructions in a form of JSON, which then could be supplied to the client:

iroha_multisig register --account .. --weights .. --quorum .. | iroha json transaction
s8sato commented 1 week ago
  • Partially resolves #4930

Accidentally automatically closed. Reopened

s8sato commented 22 hours ago