HIP-1299 account_id updates for Address Book Node Entries. - #1299
Conversation
f5b9dc0 to
8c919ef
Compare
account_id updates for Address Book Node Entries.account_id updates for Address Book Node Entries.
8c919ef to
157fbae
Compare
157fbae to
848a68c
Compare
848a68c to
8ac5032
Compare
Signed-off-by: Joseph S <121976561+jsync-swirlds@users.noreply.github.com>
8ac5032 to
3bf8d4b
Compare
Signed-off-by: Michael Garber <michael.garber@hashgraph.com>
|
LGTM |
|
I think this HIP would benefit from some user stories around the node account ID updates. i.e. why a node operator would want to change their Account Node ID. |
|
A few comments:
|
|
Some partial responses, numbered to match. |
My recommendation is we roll this forward into a new HIP so we don't delay the implementation of this one. I hear you from the user story perspective, and other than the effort in testing and implementation this seems like a reasonable request. Yes, it is dangerous if all council members have the same account (and this has overlap with your point #4). Given that additional complexity, I think we should consider this and point 4 together in a subsequent HIP.
Agreed. Neither receiverSigRequired nor hooks nor rain nor sleet should stop us from delivering fees / rewards into the account. It is exactly the same concept as staking rewards -- an account will receive staking rewards without regard to hooks or receiverSigRequired etc.
I really like these ideas. For example, we can say that for each node an account will be the account for has to hold 1M hbars (just picking the number out of the air). So if an account is the account for 10 nodes, it has to hold 10M hbars. And we make it so that the account holder cannot move funds out below this threshold. The only way it dips below this number is if the account has to pay penalties. In some way it is like "graceful slashing" -- if the node account does something wrong it doesn't immediately lose all locked funds, but it loses proportional to the "bad" it did. The funds are released when the account is no longer the account for the node. Since the account can remove itself from the node, a bad node cannot hurt the node account unfairly (i.e. if the node account says "I don't like you anymore" it can remove itself). And the node stops being a node if the account goes way. I really like this idea and it helps make sure there are funds to pay for penalties long before we actually get to zero. And we could also say there is another threshold, like 10K hbars, where if you dip below that number then we automatically remove the node from the roster. This means we still have enough in the account to continue paying for penalties until we can actually remove the node. Let's roll this idea forward into a new HIP so we can make progress on this one. But I really like these ideas. Rent free maybe or maybe not, if we have these other threshold requirements, then we don't really have a risk of rent running out. So I think we can probably not do the rent free idea. |
Description
This proposal refines the rules for managing the account ID associated with
Node entries in the Dynamic Address Book (DAB). The DAB is a feature that
stores information about network nodes, such as their identifiers and associated
accounts, directly in the network's state instead of in Hedera File Service (
HFS) files. This makes updates more secure and consistent.
The refinements focus on how account IDs can be updated, removed, or set, with
an emphasis on security through required signatures, preventing reuse of the
same account ID across multiple nodes, and handling cases where accounts lack
sufficient funds. These changes provide flexibility for node operators while
protecting the network from disruptions.