From 636752935d53f4cd0d7b6c05b8608cea411142a5 Mon Sep 17 00:00:00 2001 From: Ty <146887393+ty-swirldslabs@users.noreply.github.com> Date: Tue, 2 Jan 2024 14:09:50 -0700 Subject: [PATCH 01/10] Create hip-849.md --- HIP/hip-849.md | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 HIP/hip-849.md diff --git a/HIP/hip-849.md b/HIP/hip-849.md new file mode 100644 index 000000000..2f4fede37 --- /dev/null +++ b/HIP/hip-849.md @@ -0,0 +1,63 @@ +**hip:** 849 +**title:** Enhancing Supply Key Functionality for NFT Updates in Treasury Wallet +**author:** Patches +**working-group:** +**type:** Standards Track +**category:** Core +**needs-council-approval:** Yes +**status:** Draft +**created:** 01/02/2024 +**discussions-to:** _[#607 (https://github.com/hashgraph/hedera-improvement-proposal/discussions/660)]_ + +## Abstract + +This HIP proposes enhancing the Supply Key functionality within the Hedera ecosystem, specifically enabling the Supply Key to update an NFT metadata field while the NFT is held in the treasury wallet. This ensures secure and controlled adaptability of NFTs, meeting dynamic needs while maintaining their integrity post-distribution. + +## Motivation + +Currently, there is a limitation in dynamically updating NFTs in a controlled manner. The proposed enhancement to the Supply Key functionality addresses this gap, allowing for secure and selective updates of NFTs within the treasury wallet, a feature particularly relevant for various evolving use cases in the Hedera ecosystem. + +## Rationale + +The enhancement focuses on granting the Supply Key the capability to update the data of an NFT serial number exclusively while it is in the treasury wallet. This approach ensures security and control, preventing unauthorized modifications once the NFT is distributed. + +## User Stories + +- As a game developer, I want to update game piece NFTs with player stats during gameplay, ensuring the data becomes immutable once the player regains ownership. +- As an event organizer, I need to update event ticket NFTs with attendee information while they are in the treasury wallet, guaranteeing data immutability post-transfer. + +## Specification + +This HIP requires an update to the Supply Key mechanism, enabling it to modify the metadata of NFTs while they are held in the treasury wallet. The NFT data should remain immutable once distributed, ensuring integrity and trust in the NFT ecosystem. + +## Backwards Compatibility + +This proposal introduces no backward incompatibilities within the current Hedera ecosystem. + +## Security Implications + +The primary security consideration is the prevention of unauthorized data modifications to NFTs post-distribution. The treasury wallet requirement for updates addresses this concern effectively. + +There is no added security concern with the ability of Supply Key to adapt the metadata when in the treasury wallet as the Supply Key can also burn and mint new tokens. The security implications of sending a NFT to a treasury wallet that has a Supply Key enabled does not become worse or better with this HIP. + +## How to Teach This + +Educational initiatives will be developed to guide users in leveraging the new Supply Key functionality, particularly focusing on use cases like gaming and event management. + +## Reference Implementation + +The reference implementation will be comprehensive, including detailed documentation and test cases. Completion is expected prior to the HIP achieving "Final" status. + +## Rejected Ideas + +## Open Issues + + +## References + + +## Copyright/license + +This document is licensed under the Apache License, Version 2.0. See [LICENSE](https://www.apache.org/licenses/LICENSE-2.0). + +--- \ No newline at end of file From 4339f6a7bb9fb6c87aa13f06706fea33b7081011 Mon Sep 17 00:00:00 2001 From: Ty <146887393+ty-swirldslabs@users.noreply.github.com> Date: Tue, 2 Jan 2024 14:14:25 -0700 Subject: [PATCH 02/10] Update HIP number --- HIP/{hip-849.md => hip-850.md} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename HIP/{hip-849.md => hip-850.md} (99%) diff --git a/HIP/hip-849.md b/HIP/hip-850.md similarity index 99% rename from HIP/hip-849.md rename to HIP/hip-850.md index 2f4fede37..871beda05 100644 --- a/HIP/hip-849.md +++ b/HIP/hip-850.md @@ -1,4 +1,4 @@ -**hip:** 849 +**hip:** 850 **title:** Enhancing Supply Key Functionality for NFT Updates in Treasury Wallet **author:** Patches **working-group:** From 1938a9645fe85139da59187b36f2dd810c2429d3 Mon Sep 17 00:00:00 2001 From: Michael Garber Date: Wed, 24 Jan 2024 11:49:50 -0500 Subject: [PATCH 03/10] Update hip-850.md to Review Edit headers to pass validation and add note about previous immutability gurantees Signed-off-by: Michael Garber --- HIP/hip-850.md | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/HIP/hip-850.md b/HIP/hip-850.md index 871beda05..b47797e6c 100644 --- a/HIP/hip-850.md +++ b/HIP/hip-850.md @@ -1,13 +1,15 @@ -**hip:** 850 -**title:** Enhancing Supply Key Functionality for NFT Updates in Treasury Wallet -**author:** Patches -**working-group:** -**type:** Standards Track -**category:** Core -**needs-council-approval:** Yes -**status:** Draft -**created:** 01/02/2024 -**discussions-to:** _[#607 (https://github.com/hashgraph/hedera-improvement-proposal/discussions/660)]_ +--- +hip: 850 +title: Enhancing Supply Key Functionality for NFT Updates in Treasury Wallet +author: Patches (@HGraphPunks) +type: Standards Track +category: Core +needs-council-approval: Yes +status: Review +created: 2024-01-02 +discussions-to: https://github.com/hashgraph/hedera-improvement-proposal/discussions/660 +updated: 2024-01-23 +--- ## Abstract @@ -40,6 +42,9 @@ The primary security consideration is the prevention of unauthorized data modifi There is no added security concern with the ability of Supply Key to adapt the metadata when in the treasury wallet as the Supply Key can also burn and mint new tokens. The security implications of sending a NFT to a treasury wallet that has a Supply Key enabled does not become worse or better with this HIP. +### Modification of Previously Immutable Data +This HIP introduces a change to the previous guarantee of immutability for NFT metadata. It is important to note that, under the new functionality, the metadata of an NFT can be updated while it resides in the treasury wallet. This modification capability, while restricted to the treasury wallet, is a departure from the absolute immutability that was previously assured for NFT metadata once minted. Stakeholders should be aware that this change allows for a controlled flexibility in specific circumstances, while still ensuring that the metadata becomes immutable once the NFT is distributed to end-users. + ## How to Teach This Educational initiatives will be developed to guide users in leveraging the new Supply Key functionality, particularly focusing on use cases like gaming and event management. @@ -60,4 +65,4 @@ The reference implementation will be comprehensive, including detailed documenta This document is licensed under the Apache License, Version 2.0. See [LICENSE](https://www.apache.org/licenses/LICENSE-2.0). ---- \ No newline at end of file +--- From c7e98da3742fa1b69701270ce39caa6118242660 Mon Sep 17 00:00:00 2001 From: Michael Garber Date: Wed, 24 Jan 2024 11:51:30 -0500 Subject: [PATCH 04/10] Update hip-850.md updated date Signed-off-by: Michael Garber --- HIP/hip-850.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/HIP/hip-850.md b/HIP/hip-850.md index b47797e6c..78ba2de5b 100644 --- a/HIP/hip-850.md +++ b/HIP/hip-850.md @@ -8,7 +8,7 @@ needs-council-approval: Yes status: Review created: 2024-01-02 discussions-to: https://github.com/hashgraph/hedera-improvement-proposal/discussions/660 -updated: 2024-01-23 +updated: 2024-01-24 --- ## Abstract From 4dea54f3b120f29f2a5250dd02cb4f7e43f2a3bd Mon Sep 17 00:00:00 2001 From: Michael Garber Date: Wed, 24 Jan 2024 12:11:11 -0500 Subject: [PATCH 05/10] Update hip-850.md Signed-off-by: Michael Garber --- HIP/hip-850.md | 1 + 1 file changed, 1 insertion(+) diff --git a/HIP/hip-850.md b/HIP/hip-850.md index 78ba2de5b..fcd6a68dc 100644 --- a/HIP/hip-850.md +++ b/HIP/hip-850.md @@ -8,6 +8,7 @@ needs-council-approval: Yes status: Review created: 2024-01-02 discussions-to: https://github.com/hashgraph/hedera-improvement-proposal/discussions/660 +requested-by: HGraphPunks updated: 2024-01-24 --- From 64e8193ac83cd6674bb4c2d33e07fc6c3ada9c2d Mon Sep 17 00:00:00 2001 From: Michael Garber Date: Wed, 20 Mar 2024 11:26:15 -0400 Subject: [PATCH 06/10] Update hip-850.md replace 'wallet' with 'account' Signed-off-by: Michael Garber --- HIP/hip-850.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/HIP/hip-850.md b/HIP/hip-850.md index fcd6a68dc..08596c94a 100644 --- a/HIP/hip-850.md +++ b/HIP/hip-850.md @@ -1,6 +1,6 @@ --- hip: 850 -title: Enhancing Supply Key Functionality for NFT Updates in Treasury Wallet +title: Enhancing Supply Key Functionality for NFT Updates in Treasury Account author: Patches (@HGraphPunks) type: Standards Track category: Core @@ -14,24 +14,24 @@ updated: 2024-01-24 ## Abstract -This HIP proposes enhancing the Supply Key functionality within the Hedera ecosystem, specifically enabling the Supply Key to update an NFT metadata field while the NFT is held in the treasury wallet. This ensures secure and controlled adaptability of NFTs, meeting dynamic needs while maintaining their integrity post-distribution. +This HIP proposes enhancing the Supply Key functionality within the Hedera ecosystem, specifically enabling the Supply Key to update an NFT metadata field while the NFT is held in the treasury account. This ensures secure and controlled adaptability of NFTs, meeting dynamic needs while maintaining their integrity post-distribution. ## Motivation -Currently, there is a limitation in dynamically updating NFTs in a controlled manner. The proposed enhancement to the Supply Key functionality addresses this gap, allowing for secure and selective updates of NFTs within the treasury wallet, a feature particularly relevant for various evolving use cases in the Hedera ecosystem. +Currently, there is a limitation in dynamically updating NFTs in a controlled manner. The proposed enhancement to the Supply Key functionality addresses this gap, allowing for secure and selective updates of NFTs within the treasury account, a feature particularly relevant for various evolving use cases in the Hedera ecosystem. ## Rationale -The enhancement focuses on granting the Supply Key the capability to update the data of an NFT serial number exclusively while it is in the treasury wallet. This approach ensures security and control, preventing unauthorized modifications once the NFT is distributed. +The enhancement focuses on granting the Supply Key the capability to update the data of an NFT serial number exclusively while it is in the treasury account. This approach ensures security and control, preventing unauthorized modifications once the NFT is distributed. ## User Stories - As a game developer, I want to update game piece NFTs with player stats during gameplay, ensuring the data becomes immutable once the player regains ownership. -- As an event organizer, I need to update event ticket NFTs with attendee information while they are in the treasury wallet, guaranteeing data immutability post-transfer. +- As an event organizer, I need to update event ticket NFTs with attendee information while they are in the treasury account, guaranteeing data immutability post-transfer. ## Specification -This HIP requires an update to the Supply Key mechanism, enabling it to modify the metadata of NFTs while they are held in the treasury wallet. The NFT data should remain immutable once distributed, ensuring integrity and trust in the NFT ecosystem. +This HIP requires an update to the Supply Key mechanism, enabling it to modify the metadata of NFTs while they are held in the treasury account. The NFT data should remain immutable once distributed, ensuring integrity and trust in the NFT ecosystem. ## Backwards Compatibility @@ -39,12 +39,12 @@ This proposal introduces no backward incompatibilities within the current Hedera ## Security Implications -The primary security consideration is the prevention of unauthorized data modifications to NFTs post-distribution. The treasury wallet requirement for updates addresses this concern effectively. +The primary security consideration is the prevention of unauthorized data modifications to NFTs post-distribution. The treasury account requirement for updates addresses this concern effectively. -There is no added security concern with the ability of Supply Key to adapt the metadata when in the treasury wallet as the Supply Key can also burn and mint new tokens. The security implications of sending a NFT to a treasury wallet that has a Supply Key enabled does not become worse or better with this HIP. +There is no added security concern with the ability of Supply Key to adapt the metadata when in the treasury account as the Supply Key can also burn and mint new tokens. The security implications of sending a NFT to a treasury account that has a Supply Key enabled does not become worse or better with this HIP. ### Modification of Previously Immutable Data -This HIP introduces a change to the previous guarantee of immutability for NFT metadata. It is important to note that, under the new functionality, the metadata of an NFT can be updated while it resides in the treasury wallet. This modification capability, while restricted to the treasury wallet, is a departure from the absolute immutability that was previously assured for NFT metadata once minted. Stakeholders should be aware that this change allows for a controlled flexibility in specific circumstances, while still ensuring that the metadata becomes immutable once the NFT is distributed to end-users. +This HIP introduces a change to the previous guarantee of immutability for NFT metadata. It is important to note that, under the new functionality, the metadata of an NFT can be updated while it resides in the treasury account. This modification capability, while restricted to the treasury account, is a departure from the absolute immutability that was previously assured for NFT metadata once minted. Stakeholders should be aware that this change allows for a controlled flexibility in specific circumstances, while still ensuring that the metadata becomes immutable once the NFT is distributed to end-users. ## How to Teach This From 05f595572fa55dda08e861a3f35dfd7723775a33 Mon Sep 17 00:00:00 2001 From: Michael Garber Date: Wed, 20 Mar 2024 15:09:17 -0400 Subject: [PATCH 07/10] Update hip-850.md Signed-off-by: Michael Garber --- HIP/hip-850.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/HIP/hip-850.md b/HIP/hip-850.md index 08596c94a..803f79540 100644 --- a/HIP/hip-850.md +++ b/HIP/hip-850.md @@ -5,11 +5,12 @@ author: Patches (@HGraphPunks) type: Standards Track category: Core needs-council-approval: Yes -status: Review +status: Last Call +last-call-date-time: 2024-04-03T07:00:00Z created: 2024-01-02 discussions-to: https://github.com/hashgraph/hedera-improvement-proposal/discussions/660 -requested-by: HGraphPunks -updated: 2024-01-24 +requested-by: HGraphPunks, TierBot +updated: 2024-03-20 --- ## Abstract @@ -44,7 +45,7 @@ The primary security consideration is the prevention of unauthorized data modifi There is no added security concern with the ability of Supply Key to adapt the metadata when in the treasury account as the Supply Key can also burn and mint new tokens. The security implications of sending a NFT to a treasury account that has a Supply Key enabled does not become worse or better with this HIP. ### Modification of Previously Immutable Data -This HIP introduces a change to the previous guarantee of immutability for NFT metadata. It is important to note that, under the new functionality, the metadata of an NFT can be updated while it resides in the treasury account. This modification capability, while restricted to the treasury account, is a departure from the absolute immutability that was previously assured for NFT metadata once minted. Stakeholders should be aware that this change allows for a controlled flexibility in specific circumstances, while still ensuring that the metadata becomes immutable once the NFT is distributed to end-users. +This HIP introduces a change to the previous guarantee of immutability for NFT metadata. It is important to note that, under the new functionality, the metadata of an NFT can be updated while it resides in the treasury account. This modification capability, while restricted to the treasury account, is a departure from the guarantee of immutability that was previously assured for NFT metadata once minted. Stakeholders should be aware that this change allows for a controlled flexibility in specific circumstances, while still ensuring that the metadata becomes immutable once the NFT is distributed to end-users. ## How to Teach This From c479e1869a0204c7975ae2af9c4940c8e66610f0 Mon Sep 17 00:00:00 2001 From: Ty <146887393+ty-swirldslabs@users.noreply.github.com> Date: Mon, 20 May 2024 12:55:07 -0600 Subject: [PATCH 08/10] Update from comments and notes --- HIP/hip-850.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/HIP/hip-850.md b/HIP/hip-850.md index 803f79540..a0ffe2e66 100644 --- a/HIP/hip-850.md +++ b/HIP/hip-850.md @@ -27,22 +27,25 @@ The enhancement focuses on granting the Supply Key the capability to update the ## User Stories +- As a stakeholder, I need the capability to update the metadata of NFTs within the treasury account to reflect the latest information, ensuring that once the NFTs are distributed, their data remains immutable. + +### Example Illustrations: - As a game developer, I want to update game piece NFTs with player stats during gameplay, ensuring the data becomes immutable once the player regains ownership. - As an event organizer, I need to update event ticket NFTs with attendee information while they are in the treasury account, guaranteeing data immutability post-transfer. ## Specification -This HIP requires an update to the Supply Key mechanism, enabling it to modify the metadata of NFTs while they are held in the treasury account. The NFT data should remain immutable once distributed, ensuring integrity and trust in the NFT ecosystem. +This HIP requires an update to the Supply Key mechanism, enabling it to modify the metadata of NFTs while they are held in the treasury account. Specifically, this update introduces the capability for the Supply Key to execute the TokenUpdateNftsTransaction function, allowing for the metadata of an NFT ID to be updated while it resides in the treasury wallet. This enhancement provides a controlled method to adapt NFT metadata dynamically, ensuring that the NFT data remains immutable once distributed. This approach maintains the integrity and trust in the NFT ecosystem by preventing unauthorized modifications post-distribution. ## Backwards Compatibility -This proposal introduces no backward incompatibilities within the current Hedera ecosystem. +This proposal introduces a change in the defined capabilities of the Supply Key, which could affect the expectations of users regarding the immutability of NFT metadata. Although the Supply Key can currently burn and mint new tokens, allowing it to update metadata without burning introduces a conceptual difference. Users must be aware that the metadata of an NFT can be altered while it is in the treasury account, which can impact the perceived consistency and promises of an NFT collection. ## Security Implications The primary security consideration is the prevention of unauthorized data modifications to NFTs post-distribution. The treasury account requirement for updates addresses this concern effectively. -There is no added security concern with the ability of Supply Key to adapt the metadata when in the treasury account as the Supply Key can also burn and mint new tokens. The security implications of sending a NFT to a treasury account that has a Supply Key enabled does not become worse or better with this HIP. +There is no added security concern with the ability of Supply Key to adapt the metadata when in the treasury account as the Supply Key can also burn and mint new tokens. The security implications of sending a NFT to a treasury account that has a Supply Key enabled do not become worse or better with this HIP. ### Modification of Previously Immutable Data This HIP introduces a change to the previous guarantee of immutability for NFT metadata. It is important to note that, under the new functionality, the metadata of an NFT can be updated while it resides in the treasury account. This modification capability, while restricted to the treasury account, is a departure from the guarantee of immutability that was previously assured for NFT metadata once minted. Stakeholders should be aware that this change allows for a controlled flexibility in specific circumstances, while still ensuring that the metadata becomes immutable once the NFT is distributed to end-users. @@ -67,4 +70,4 @@ The reference implementation will be comprehensive, including detailed documenta This document is licensed under the Apache License, Version 2.0. See [LICENSE](https://www.apache.org/licenses/LICENSE-2.0). ---- +--- \ No newline at end of file From 0588587c1badfc726320a288a1ce0167d7ba7c23 Mon Sep 17 00:00:00 2001 From: Michael Garber Date: Wed, 22 May 2024 11:32:02 -0400 Subject: [PATCH 09/10] Update hip-850.md last call date time Signed-off-by: Michael Garber --- HIP/hip-850.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/HIP/hip-850.md b/HIP/hip-850.md index a0ffe2e66..8fd2da52e 100644 --- a/HIP/hip-850.md +++ b/HIP/hip-850.md @@ -6,11 +6,11 @@ type: Standards Track category: Core needs-council-approval: Yes status: Last Call -last-call-date-time: 2024-04-03T07:00:00Z +last-call-date-time: 2024-06-05T07:00:00Z created: 2024-01-02 discussions-to: https://github.com/hashgraph/hedera-improvement-proposal/discussions/660 requested-by: HGraphPunks, TierBot -updated: 2024-03-20 +updated: 2024-05-22 --- ## Abstract @@ -70,4 +70,4 @@ The reference implementation will be comprehensive, including detailed documenta This document is licensed under the Apache License, Version 2.0. See [LICENSE](https://www.apache.org/licenses/LICENSE-2.0). ---- \ No newline at end of file +--- From 54993c059aec7ea45fbb52a50e84fc3cf0f3728e Mon Sep 17 00:00:00 2001 From: Michael Garber Date: Wed, 29 May 2024 12:19:49 -0400 Subject: [PATCH 10/10] Update hip-850.md last call date time Signed-off-by: Michael Garber --- HIP/hip-850.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/HIP/hip-850.md b/HIP/hip-850.md index 8fd2da52e..8d672ce77 100644 --- a/HIP/hip-850.md +++ b/HIP/hip-850.md @@ -6,7 +6,7 @@ type: Standards Track category: Core needs-council-approval: Yes status: Last Call -last-call-date-time: 2024-06-05T07:00:00Z +last-call-date-time: 2024-06-12T07:00:00Z created: 2024-01-02 discussions-to: https://github.com/hashgraph/hedera-improvement-proposal/discussions/660 requested-by: HGraphPunks, TierBot