Deactivate
To deactivate a did:btcr2 identifier, the DID controller MUST add the property deactivated with the value true to the DID document. Once a did:btcr2 identifier has been deactivated, this state is considered permanent and resolution MUST terminate.
The deactivate operation has the following function signature:
fn deactivate(
sourceDidDocument,
targetVersionId,
verificationMethodId,
signer,
) ->
signedUpdate
Input arguments:
sourceDidDocument: The DID document being deactivated.targetVersionId: TheversionIdthat will be returned in the DID document metadata (data structure) once the new BTCR2 Signed Update is applied.verificationMethodId: TheverificationMethodID used for signing the BTCR2 Update.signer: A signing interface, as defined for the Update operation.
Outputs:
signedUpdate: A BTCR2 Signed Update with a patch that adds thedeactivatedproperty with the valuetrue.
Process
The deactivate operation is the Update operation with a predetermined patch:
[
{
"op": "add",
"path": "/deactivated",
"value": true
}
]
The DID controller constructs a valid BTCR2 Update with a JSON Patch RFC6902 that adds the deactivated property with the value true, and announces the BTCR2 Update by broadcasting an Authorized Beacon Signal following the algorithms defined in Update.