Skip to main content
Version: 1.2

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.

Reversible

The identity can 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 if the governor is different from the state controller, it 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, you can destroy an IOTA Identity can be permanently.

Irreversible

Destroying an IOTA Identity is permanent and irreversible.

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

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 how a governor destroys an IOTA Identity and sends the storage deposit back to itself.

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