go-algorand icon indicating copy to clipboard operation
go-algorand copied to clipboard

Relax restrictions on reserve and freeze addresses

Open mxmauro opened this issue 2 years ago • 4 comments

Problem

Once the reserve and freeze addresses becomes empty, it is not possible to change them again.

Solution

Relax restrictions to allow the manager to change these configuration settings.

Reason

Asset owners will be allowed to setup a custody account if they didn't do at the beginning.

mxmauro avatar Oct 21 '21 12:10 mxmauro

Applying this to the freeze address may cause controversy like if the clawback address were allowed to be modified but personally I think the reserve address is harmless.

mxmauro avatar Oct 21 '21 12:10 mxmauro

I think it would be unacceptable to do this to the freeze address. Setting it to 0 is a way to show the world your asset can not be frozen. I suppose it could be done for Reserve, since Reserve is really "user interface" it has no actual power under the protocol. But why? I do not follow how this allows a manager to "setup a custody account"

jannotti avatar Nov 01 '21 21:11 jannotti

Hi @jannotti , yes, let's drop the freeze address from the discussion.

But why? I do not follow how this allows a manager to "setup a custody account"

We have some customers asking on what to do because they created assets which are in use but the reserve address is null, they cannot change it anymore. Others assumed, if no reserve account was set up, then the creator address is the reserve account.

Based on this, I opened the proposal to remove the restriction for assets and allow to change the reserve address when it is null.

mxmauro avatar Nov 02 '21 11:11 mxmauro

This has some consequences on block explorers (desired in your case) that circulating supply displayed will change if the reserve addr is changed.

I'm not sure what else downstream might be checking that but worth thinking about assumptions folks might have made based on the immutability

barnjamin avatar Nov 02 '21 13:11 barnjamin