Cosmos-sdk: Transfer Bonded Atoms

Created on 5 Apr 2019  路  5Comments  路  Source: cosmos/cosmos-sdk

The ability to transfer bonded atoms between accounts.

Most helpful comment

We explicitly do not want this, /cc @sunnya97.

The security of proof of stake is dependent upon having an unbonding period to slash you if you misbehave. If you can transfer bonded tokens out, you undermine this security. There is already concern for people in proof of stake systems trading bonded tokens via SGX's, we really shouldn't allow it to be part of the protoocl.

All 5 comments

@jackzampolin can you provide some more context and details here? Who's account is changing? Are you suggesting changing the delegator address in a delegation?

I don't quite follow either

We explicitly do not want this, /cc @sunnya97.

The security of proof of stake is dependent upon having an unbonding period to slash you if you misbehave. If you can transfer bonded tokens out, you undermine this security. There is already concern for people in proof of stake systems trading bonded tokens via SGX's, we really shouldn't allow it to be part of the protoocl.

@ValarDragon

The security of proof of stake is dependent upon having an unbonding period to slash you if you misbehave

To clarify - the atoms would remain bonded - the transfer would move bonded atoms from one account to another without changing their bonding status.

If you can transfer bonded tokens out, you undermine this security.

What changes about the security should the atoms remain bonded? The bonding and delegation properties of the atoms remain unchanged in this transfer.


One nice use case with transferring bonded atoms is to allow atom holders to rotate their atom holding accounts without un-bonding. For an atom holder to do this today - they would need to un-bond thus lowering network security.

lol wow okay. Totally in agreement with @ValarDragon point.
Additionally, any kind of an implementation of said feature would be a huge hassle to implement and make the code base considerably / unnecessarily more complex - I foresee several offshoot issues.

I think ultimately:

  • subkeys will greatly improve security making key rotation possible for permissioned keys (aka the keys you could use to withdraw rewards, vote etc.) while allowing the master key (which the delegation is under) to not rotate (but also not required to be used).
  • if you really want to change keys you can just undelegate send your tokens and delegate

I think it's pretty clear that this feature should not be considered so I'm going to close this issue

Was this page helpful?
0 / 5 - 0 ratings

Related issues

fedekunze picture fedekunze  路  3Comments

kevlubkcm picture kevlubkcm  路  3Comments

mossid picture mossid  路  3Comments

ValarDragon picture ValarDragon  路  3Comments

rigelrozanski picture rigelrozanski  路  3Comments