HIP-1021: Improve Assignment of Auto-Renew Account ID for Topics
Author | Michael Kantor |
---|---|
Requested By | TierBot |
Discussions-To | https://github.com/hashgraph/hedera-improvement-proposal/pull/1021 |
Status | Last Call ⓘ |
Needs Council Approval | Yes ⓘ |
Review period ends ⓘ | Wed, 18 Dec 2024 07:00:00 +0000 |
Type | Standards Track ⓘ |
Category | Service ⓘ |
Created | 2024-08-01 |
Updated | 2024-01-08 |
Table of Contents
Abstract
This HIP proposes a modification to the Hedera Consensus Service (HCS) to:
- Enable setting the
autoRenewAccountId
when creating aTopicCreateTransaction
even if an Admin Key is not present during Topic Creation.
Motivation
Currently, when a Topic ID is created, the autoRenewAccountId
is not automatically set to the account that initiated the transaction. Additionally:
- It is only possible to set this field when an Admin Key is generated with the Topic. For topics that are created with the intention of being more “immutable,” this is a risk.
- Up until HIP-874 (https://github.com/hashgraph/hedera-improvement-proposal/pull/883/files), it was not easy to verify if a Topic was successfully created with an Autorenew Account Id, leading to more unexpected errors for users.
This proposal seeks to simplify the process for users by making the auto-renewal mechanism seamless, eliminating the need for Admin Keys to be present when setting the autoRenewAccountId
.
Rationale
The proposed change enables expected user interactions with HCS and ensures consistency in managing topic renewals.
Specification
Automatic Setting of autoRenewAccountId in SDKs
When a new Topic ID is created, the autoRenewAccountId
shall be automatically set in the SDKs to the account ID that creates the transaction, providing additional flexibility for when an Admin Key is not set.
Backwards Compatibility
This feature has no issues with backwards compatibility.
Transaction Changes
The current implementation allows for the autoRenewAccountId
to be specified during topic creation only when an Admin Key is present. This proposal does not remove this capability, but in the SDKs, adds an automatic default to the transaction creator’s account if not explicitly set, and the capability to set an autoRenewAccountId
even when Admin Key is not present during creation.
Backwards Compatibility
This feature has no issues with backwards compatibility.
Implementation
The Hedera node software will be updated to support assignment of the autoRenewAccountId
during the topic creation process even if an Admin Key is not present.
Drawbacks
There should be no drawbacks to this approach. Only furture topic ids will be allowed to set autoRenewAccountId
without needing to also set the Admin Key.
Alternatives
- Future Rent Logic Adjustments: If rent is enabled for TopicId Entities and a Topic Id was created before this HIP, rent would be charged to the
payer_account_id
of the Topic Id when an Autorenew Account Id was not present.
Citation
Please cite this document as: