Dealing with "objects" in the Sovrin ecosystem (documents, property, etc)


Quite frequently identity matters involve rendering interaction between identity owners and “objects” such as documents, contracts, titles, etc.

I was wondering how does the Sovrin community envision these elements in the identity ecosystem. Namely, it brings about a series of questions:

  1. Do objects have DIDs on the ledger?
  • If so, these objects are “dependent” on another Sovrin identity which is owned by a human. How would this “ownership” or “authority” relationship be represented? Would the object be treated as yet another Sovrin entity (having a DID and keys) while the (human) owner has the corresponding private keys for this object?
  • What if an “object” is not relevant for public storage? This would be stored privately within the owner’s agent datavault or some sort of private-ledger platform. Would it make sense for these private objects to have a sovrin DID at all? Or is the figure of a DID only meaningful when referring to things existing on the ledger?

Certainly complex “objects” might arise in real life use cases, where these would need to be running agents on their own and taking part on complex workflows. But for the time being we can assume the objects in question are quite simple and static (such as an identity document, for instance)… I could want to be able to make claims about a specific “document” (or the digital representative of a physical document on Sovrin space), while keeping this “document” (and all info related to it) completely private. Does it make sense to talk about “claims” in this manner?


Hi Carlos.

Yes, any connected thing (like an “object”) can have a DID. Because the thing may be owned by a real person or organisation which control the private key for the thing, and hence ownership, the Guardian approach is used.

We have some interesting use cases whereby a thing can have a parent thing, which itself has a parent thing, which is owned by a corporation. Only people who are properly qualified (with relevant verifiable claims) are allowed to work on the thing. Think aircraft maintenance, where a wheel assembly is part of a wing which is part of an aircraft which is owned by an airline, and a maintenance engineer is allowed to work on it if he is correctly qualified.

if the object doesn’t require a Sovrin DID then that’s no problem - it can do whatever is neede off-ledger.

Just like a person, a thing with a Sovrin DID can possess and present verifiable claims through its agent in the usual way.


When you talk about “connected things”, it surely sounds like the IoT. However, does it make sense to issue identities for “non-connected” things?.. Philosophically speaking, what quality produces the need for something to have a digital identity?

I could issue an identity for books, for example, but to what degree are these identities useful or necessary? I guess something like a “decentralized” could be implemented where people can make “claims” about books, but do these books need an identity for this? or is there a more “Sovrin-like” approach for dealing with these (still uncommon) case?

In a more realistic scenario, natural persons or corporations might benefit from having certain documents “attested” by certain authorities (notaries, for example). At first these documents look like attributes on the owner public DID/DDO, but if these “attributes” have a more complex behavior (like being the object of private and public attestations), would it make sense to turn these into DID/DDOs on their own, thus making them “digitally identifiable” objects but not necessarily “connected” in a IoT sense?..

I’m not sure I understood well what you meant by “connected” in this context.


@cbruguera I’ve been traveling (8 conferences in 6 weeks) so I’m just now catching up with this thread. It poses some very interesting questions.

First, just to clarify, my definition of “connected thing” is any “thing” that needs to be referenced in a digital network. The “thing” itself does not need to be directly connected to the network. Your example of an identity document like a birth certificate falls into the grey area because the physical copy lives off the network but a scanned version would live on the network as a file.

But if we take your example of a book, say a hierloom family Bible that has been in your family for generations and needs to be referenced in a parent’s will but has no connection online. That family Bible could definitely be given a dependent DID, with one of the members of the family as the guardian. The guardian could then pass on guardianship to other members of the family as the family Bible passes down through the generations.

In essence, that dependent DID becomes the digital presence of the family Bible (I’ve started seeing the term “digital twin” or “digital shadow”). The Bible is never capable of being independent, but as a dependent DID, it can live on for as long as it has a guardian.

That is my final point, which is that the DIDs and agent endpoints for “things” of any kind will always need a guardian, and therefore will live in the agency of the guardian. They can move between guardians over time, but the will never break their dependence on a guardian.


Great answer, Drummond. Now, I was wondering, if such an object is always depending on a guardian for dealing with matters regarding to its “digital shadow”, does it even make sense for it to have an agent of its own? Maybe the object needs to be referenced from different contexts and therefore it’s convenient to issue a DID for it on Sovrin, but maybe all relevant actions with regard to this object are performed by other agents (its Guardian, for example) and not by “it” as an active digital identity.

Does it fit into current Sovrin philosohpy the idea of “agent-less” identities?


@cbruguera You definitely win the award for the most consistently excellent questions.

This one really made me stop and think. The DID is needed to establish the independent identity of the “thing”—in my example the family Bible. But does it need to have its own independent agent?

The case for “Yes” is pretty easy: anything that has its own behaviors as a agent—a set of APIs that it can expose—needs its own agent to provide that exposure (even if those APIs are highly consistent across all instances of that type of thing). For our family Bible example, this might be a Book API, that any Book can expose.

The case for “No” is that it may be sufficient for the Guardian’s agent to handle any behavior associated with the dependent Thing. In this case, a request to the Guardian’s agent would need to reference the Thing’s DID, and the Guardian could take appropriate actions depending on the request.

The former case—a dedicated agent—is a cleaner one, since the APIs could clearly be associated with the Thing type. But I would not rule out the latter one because, for example, a Person agent could still deal with a request about a Thing using a generic Physical Property API that could apply to any Thing for which the Person agent was a Guardian.

So I think it could work either way. As an architect, which way would you prefer?


I’m not sure, I’m just throwing questions that come out spontaneously. I don’t know where these questions lead to, though.

For example, taking the second use case where an identity on the Sovrin platform (we might call this an “object” for the time being) does not need an agent and all related interaction takes place through the agent corresponding to its “guardian”; what if this guardian is the only one who knows which is the DID to reference for some required interaction with a third party in relationship to the “object”?.. In this case the object would turn out to be akin to a “private” attribute for the guardian. The lines surely start to get fuzzy.

This leads to a series of questions:

  1. Is it agreeable to issue Sovrin identities (even agent-less) for use cases of apparent “private” nature? (i.e. A bank issuing DIDs for certain customer documents, yet (so far) only the bank is referencing those "objects)
  2. If chosen to implement the case as a completely “internal” workflow (private attributes), does it make sense to issue a DID in this case? Would it still be called a DID?
  3. Does it make sense to talk about “private” indentities? (issuing a DID/DDO “privately” from an agent’s perspective)

My intuitive guess is that even if a present case presents an object as a private matter, it doesn’t rule out the possibility for “public aspects” of it arising at some point in future.

What’s your view on this?


@cbruguera You are building the case for an independent identity that does NOT need to be on Sovrin. My view is that this will actually be a fairly common use case.

In other words, there are plenty of objects don’t need a DID, they just need a UUID or a content-addressable storage address that Sovrin agents (or other software) can use to unambiguously reference the object.

I would summarize it this way: of all the entities in the world that need to be independent identifiable, the line between Sovrin Entities (entities that need a Sovrin DID) and Other Entities (entities that need a unique identifier but from some system outside of Sovrin) is two tests:

  1. Does the entity need self-sovereignty? If so, the entity needs a DID on Sovrin in order to have an identity that no one else can take away.
  2. Does the entity need a verified Guardian? If so, it needs a DID on Sovrin in order to prove the Guardian relationship.

If the entity does not meet either of these two tests, then it doesn’t need a DID on Sovrin. It’s just an asset that can be managed by a Sovrin Entity—what you call a “private identity”. A private identity can always be registered on Sovrin at some future date if it ends out that it needs a Guardian.

Make sense?


@Drummond This was my guess as well, and bringing in the figure of an UUID that is not a DID surely helps.

No more questions for now (now that’s something!) :grin:

Thanks for your replies.