How to handle re-used identities

The way Blockstack Auth currently works, is that it provides the calling application with a unique decentralized identifier. (DID) This identifier is a bitcoin address.

It can optionally provide a verified Blockstack ID.

One way to solve this problems is to have a unique identifier tied to the lifecycle of a name. The identifier is created when the name is registered and follows the name through transfers to different addresses until it is revoked or perhaps transferred with a special command that indicates it is changing ownership.

@ryan and I came up with one possible way to handle this.

I’d love to hear your thoughts @vsund