Schemas: The Blueprint of Attestations

We’ve extensively explored attestations and their significant role in reinforcing trust systems through verifiability. Now, you’re likely eager to start attesting to various remarkable events and facts in your world and on the web. However, before you dive in, it’s crucial to understand the nature of an attestation to create well-crafted and rich attestations.

Similar to a skyscraper’s blueprint and a human being’s DNA, attestations possess a core configuration known as a schema.

In this article, we will delve into the essence of schemas, examining how they define the nature of an attestation, and providing insight into a general composition for crafting them.

The Importance of Schemas In Attestations

A schema is the structure and configuration of elements that convey a clear and intelligible context in an attestation. In practice, it is usually implemented in a format of key-value pairs, where the keys identify a specific component of a claim, and the value represents the details behind that component.

The effectiveness of an attestation relies on the context it provides when endorsing a claim or assertion to an observer or verifier. The hallmark of an attestation lies not only in its ability to confirm a claim but also in providing necessary and relevant insights while being universally parseable. This ensures that it can be readily used by any third-party observer. This combination of insightfulness and universal parseability is the hallmark of a well-constructed attestation schema.

For instance, Alice may assert that she took her daily run in the park today. The attestation vouching for this claim could provide a simple context, like this

Alternatively, the attestation could have offered a much more detailed context, like

As you can tell from the examples above, the attestation with the simple context schema only confirms that Alice took her daily run. However, it lacks insight, leaving room for interpretation; for instance, she might have just moved around the block for a few minutes and returned home.

In contrast, the attestation with the rich context schema not only confirmed the claim but also provided valuable supporting insights. This information empowers the observer or verifier to make more informed and calibrated decisions based on the rich attestation.

The incorporation of rich data considerations into the construction of schemas empowers them to function as a core framework for a robust and insightful system of attestations.

A General Composition of An Attestation Schema

Now that we have grasped the importance of schemas in crafting attestations for claims or assertions, let’s delve into the components that constitute the schema of an attestation.

Various services generate attestations, each with its own unique format and method. These include blockchain-based services like the Ethereum Attestation Service, as well as non-blockchain-based services such as Microsoft Azure Attestation. These services cater to a range of scenarios, each requiring a different approach to creating an attestation.

However, for those seeking to learn and understand what the configuration of an attestation’s schema should look like, in a manner that is independent of any particular service or ecosystem, these differences might pose a significant challenge for the most part.

In this section, we propose a general composition for an Attestation Schema, which consists of two core modules: the header and the body. Each module houses its respective components or fields. Let’s delve into each module:

Header

The header is the primary module of the Attestation Schema. It’s intended to signal key context elements i.e., metadata, about the Attestation that is being made. An observer or verifier can begin to infer relevant information regarding the Attestation right from the header.

Some of the essential metadata about an attestation you’ll find in the header include, but is not limited to, the following:

  • Attestation ID: This is typically a unique identifier that is assigned to the Attestation. this identifier may assist in the cross-checking and referencing of the Attestation, for future use.
  • Claim Reference: This points to an existing statement or assertion that has been made and is pending confirmation with an Attestation(or may even have existing Attestations). This would take the form of a URL or specialised identifier.
  • Attester ID: This is a unique identifier used to indicate the entity responsible for creating the Attestation. This can be in the form of a name, email address, public key address, or relevant identifier.
  • Attester or Witness Signature: This is the cryptographic signature of the entity that is generating the Attestation to a claim or assertion, for the purpose of self-certifying the creation of Attestation.
  • Schema Registry ID: This is an identifier used to track or reference the schema that is being used to generate the Attestation, from a given schema registry or record store.

Body

The body is the secondary module of the Attestation Schema and it houses the full context and metadata content of an attestation. It is where the Attester is able to provide extensive data and comprehensive information that can be used to confirm a given claim or assertion.

Some of the metadata you’ll find in the body includes, but is not limited to, the following:

  • Date and Time Info: Serving as a timestamp, this field captures the specific period related to the claim or assertion being attested, all from the perspective of the attester.
  • Subject ID (Claimant): This field identifies the primary individual or entity making the claim or assertion. The attester will vouch for this entity, which could be identified by a name, email address, public key address, or other relevant identifiers.
  • Boolean: This straightforward field enables the attester to clearly state whether the claim or assertion, that is being confirmed by the attestation, is true or false.
  • Cryptographic Proof: Acting as a secure and verifiable contribution, this field contains the cryptographic data used to aid in the validation a claim or assertion. It bolsters the integrity and robustness of the attestation and can even enhance privacy in certain scenarios.
  • Evidence Data: This field conveys additional details that support the claim or assertion being confirmed by the attestation. It comprises one or more fields of descriptive information.

A general composition of schemas provides an organized and resourceful approach to constructing attestations, offering the benefits of universal composability, readability, and conformity.

In Conclusion

The significance of schemas in the world of attestations cannot be overstated. Acting as the blueprints of attestations, schemas provide a structured framework that meticulously defines the nature of attestations, ensuring they convey not only confirmation but also insightful and relevant information.

The importance of a well-crafted attestation schema lies in its ability to serve as the foundation for a robust system of attestations. Whether it’s a simple confirmation or a complex assertion, the choice of schema determines the comprehensiveness and usefulness of the attestation.

In essence, embracing the concept of schemas in attestations ensures not only clarity and reliability but also universal composability, readability, and conformity.