Skip to main content
Version: 0.7

Delete an IOTA Identity

There are two approaches to delete an IOTA Identity, with different implications:

Deactivate

As detailed in the IOTA DID Method Specification, the state controller of an IOTA Identity may deactivate it by publishing an update that either:

  • deletes the contents of the DID Document entirely, leaving the state metadata empty, OR
  • sets the deactivated field in the DID Document metadata to true.

In both cases, the DID Document will be marked as deactivated when resolved.

This operation is reversible: the identity can subsequently be reactivated at any time, by publishing an update restoring the DID Document's contents, or unsetting the deactivated field in the metadata respectively, depending on how it was initially deactivated.

Note that the governor (if different from the state controller) cannot deactivate an identity directly because it is disallowed from updating the DID Document, but it may destroy it.

Example

The following example demonstrates deactivating and reactivating an IOTA DID Document, and optionally reclaiming the storage deposit.

examples/0_basic/3_deactivate_did.rs
loading...

Destroy

Alternatively, an IOTA Identity can be permanently destroyed.

This is achieved by the governor of a DID publishing a transaction consuming the Alias Output containing the IOTA DID Document, without a corresponding Alias Output on the output side.

Any coins and tokens in the Alias Output are reclaimed and can be sent to another address.

danger

Destroying an IOTA Identity is permanent and irreversible.

Note that historical versions may still be stored off-ledger or on a permanode, so sensitive or Personal Identifiable Information (PII) should NEVER be stored in a DID Document. Even with a previous version available, a destroyed DID can never be restored.

Example

The following example demonstrates a governor destroying an IOTA Identity and sending the storage deposit back to itself.

examples/0_basic/4_delete_did.rs
loading...