-
Notifications
You must be signed in to change notification settings - Fork 141
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
Enable KeyList Support in HTS Precompile #1069
base: main
Are you sure you want to change the base?
Conversation
✅ Deploy Preview for hedera-hips ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
|
||
IHederaTokenService.TokenKey memory key = IHederaTokenService.TokenKey({ | ||
keyType: KeyType.SUPPLY, | ||
key: KeyList({ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Q: Are we aiming to support both KeyList and Threshold key types? I can see only KeyList mentioned but this example is using a Threshold type for the KeyList.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My suggestion is to simplify the HIP and only support threshold key types with threshold = 1.
This will satisfy the use case where developers want to define a list of potential administrators for a specific function (i.e. supply key), each with the same permissions.
I don't think other cases are technically feasible: since Ethereum lacks the concept of native multi signature transactions, we will never reach a threshold > 1 in any case.
Enable KeyList Support in HTS updateTokenKeys Precompile
This update adds support for using complex keys (
KeyLists
) within theupdateTokenKeys
HTS precompile function, allowing developers to set token keys with multiple signatories directly in smart contracts. While complex keys are supported in the SDK, this enhancement allows on-chain token management with multi-signature and threshold-controlled permissions, expanding flexibility for applications requiring decentralized control over token keys.