0031 XLS-31d: Transaction type specific Signer Quorum values for Multi-Signing #77
Replies: 5 comments 6 replies
-
This could also be beneficial to allow an account(s) to extend trust on behalf on token issuers who have the 'Authorized TrustLines' flag set. This way the issuer credentials do not have to be online and an operational hot wallet could authorize holders of the token on behalf of the issuer (such as after a KYC) |
Beta Was this translation helpful? Give feedback.
-
Quick note: |
Beta Was this translation helpful? Give feedback.
-
Certainly something like this is needed. Currency issuers will want to separate admin/config functions such as account_set and authorize trustline, as mentioned, from payments. To keep these functions distinct we might need signer list per transaction type. |
Beta Was this translation helpful? Give feedback.
-
I think I'm missing a step. How does the wallet setup you described allow |
Beta Was this translation helpful? Give feedback.
-
This proposal would perhaps make the account set up more complex. The account needs to specify different signer lists and weights to all the different transaction types. Have you considered a "default" signer list, in case the account-creator does not want to explicitly specify the signer-list for all the transaction types? This would also increase the memory footprint of every account on the XRP Ledger. Instead of having one copy per account, every transaction type will have it's own list of signers. |
Beta Was this translation helpful? Give feedback.
-
Currently on a Multi-Sign wallet the
Signer Quorum
is set on the wallet and applies to all transactions the wallet performs.Why is this a problem
The XPRL is being expanded with
NFT
's andTriggers
, transactions which did not exist on the ledger before. In the future more features and interactions with the ledger will follow. To clarify why having a singleSigner Quorum
on a wallet can be an issue we will focus on the XLS-20NFT
feature.XLS-20 enables
NFT
's on the ledger and with it a raft of new use cases. One of which is the creation ofMarketplaces
, one primary function of aMarketplace
will be to mintNFT
's on behalf of a customer.Minting an
NFT
into a wallet requires the transaction to be signed, in this scenario the marketplace would need access to the wallet in which to mint into.Currently if a wallet is
Multi-Sign
enabled both parties would need to potentially sign this transaction to get theNFT
to be minted, or the marketplace could be given aSigner Weight
high enough to sign the transaction its self. Unfortunately because XRPL wallets have theSigner Quorum
set on the entire wallet, the marketplace would also now be able to sign ALL transactions for this wallet.My suggestion is that we enable some ledger transaction types to have there own
Signer Quorum
.The same scenario with transaction type
Signer Quorum
valuesTo make the above scenario more convenient for both parties involved the wallet could be setup in the following way.
The
Target
wallet is the one which we want theNFT
's minted into.Target
wallet has theMarketplace
wallet added to itsSignerLists
Target
wallet has a globalSigner Quorum
set to2
Target
has itsSigner Weight
set to2
Marketplace
wallet has itsSigner Weight
set to1
With that setup we can now apply a
Signer Quorum
on the transaction typeNFTokenMint
to1
. This will enable theMarketplace
wallet to be able to mint newNFT
's but stops it from being able to sign any other transaction from this wallet on its own,The result is that we can control which signers can perform which transactions on the wallet with more granularity. This will become an increasingly more important feature as the XRPL evolves and more user cases are created.
Beta Was this translation helpful? Give feedback.
All reactions