Function diem_transaction_builder::stdlib::encode_rotate_shared_ed25519_public_key_script_function
source · pub fn encode_rotate_shared_ed25519_public_key_script_function(
public_key: Vec<u8>
) -> TransactionPayloadExpand description
Summary
Rotates the authentication key in a SharedEd25519PublicKey. This transaction can be sent by
any account that has previously published a shared ed25519 public key using
AccountAdministrationScripts::publish_shared_ed25519_public_key.
Technical Description
public_key must be a valid ed25519 public key. This transaction first rotates the public key stored in account’s
SharedEd25519PublicKey::SharedEd25519PublicKey resource to public_key, after which it
rotates the account’s authentication key to the new authentication key derived from public_key as defined
here
using the DiemAccount::KeyRotationCapability stored in account’s SharedEd25519PublicKey::SharedEd25519PublicKey.
Parameters
| Name | Type | Description |
|---|---|---|
account | signer | The signer of the sending account of the transaction. |
public_key | vector<u8> | 32-byte Ed25519 public key. |
Common Abort Conditions
| Error Category | Error Reason | Description |
|---|---|---|
Errors::NOT_PUBLISHED | SharedEd25519PublicKey::ESHARED_KEY | A SharedEd25519PublicKey::SharedEd25519PublicKey resource is not published under account. |
Errors::INVALID_ARGUMENT | SharedEd25519PublicKey::EMALFORMED_PUBLIC_KEY | public_key is an invalid ed25519 public key. |
Related Scripts
AccountAdministrationScripts::publish_shared_ed25519_public_key