Notarization in Blockchain (Part 1)

In this three-part article, we will examine various types of notarization using public blockchain. The types include (1) proof of existence of a document, (2) proof of existence and ownership of a document, and (3) transfer of ownership of a notarized document. Blockchains mentioned include Bitcoin, Ethereum and NEM.

Overview

In this series of articles we will take a high-level view on notary service and DLTs, and examines the various levels of notary services that can be delivered.

(Note: From now one I will use blockchain instead of DLT. Blockchain is one type of implementation and by far the major one, although the notary services described below can also be implemented in non-blockchain DLT.)

(Note again: The study of notary is inspired by an article written by Sean and you can find it here. From this article I am exploring some more notary service models available in other blockchains.)

Notarization and Blockchain: an Introduction

“Notarization is the official fraud-deterrent process that assures the parties of a transaction that a document is authentic, and can be trusted. It is a three-part process, performed by a Notary Public, that includes of vetting, certifying and record-keeping.”

In real life, notarization is relevant to law. Notary public plays the important role in the whole well-defined process and the result is legally binding.

People keep thinking of how to use information technology to achieve similar capability. The emergence and development of blockchain is highly expected to facilitate if not disrupt the notarization.

Blockchain technology assures that the integrity of data once written in the chain. The promises like tampering resistance, non repudiation and its traceability make blockchain a good candidate to provide some of the notarization capabilities.

There are several notary services available in the market. They have certain commonality in terms of service offering, and also some difference as they are using different blockchain implmenetations. Among them, public blockchain is more preferred. A service built on top of a private blockchain may be subject to service shutdown by a single organization. Public blockchain provides better resilience against attacks like distributed denial of service (DDoS).

We are going to examine three types of notary services, from a simple to a more complicated one in terms of functions and implementation requirement.

Note that these services cannot replace directly the existing notary services under the law. The services here by all means to facilitate or enhance part of the whole process. Whether they are acceptable in countries is subject to the law. We simply focus on their technical aspects and implementation mechanisms.

Type 1: Proof of Existence

There involves two steps in this process: hashing the document and keeping a record on the blockchain.

Hashing the document

  1. most blockchains come with limited data space.
  2. it may be very costly if the whole document is written even though the blockchain supports this.
  3. data privacy about document.

Hashing promises the following features.

  1. The same document will always yield the same hash result.
  2. The hash result is always of a fixed length, no matter what size of the document input.
  3. Any change of document will have a totally different hash value and therefore can be detected.
  4. It is impossible to recover the original document from the hash result.

Hashing is implemented as open algorithms, and anyone can implement it anywhere. One common algorithm is SHA256. Anyone can “hash” a document from any computer and using any programming langugages. A common one is done on browser: the hash is calculated without uploading the document to a repository.

Here is an example how a small change of document (from capital T to lower-case t) will yield a totally different hash value. We are using SHA256 algorithm.

Image for post
Image for post
Hashing algorithm can detect even a small change of a document.

Hashing is therefore widely accepted and implemented in almost all notary services and proof-of-existence systems.

Whether a service provider keeps the origin document or not depends on the business model. Some may provide document repository and therefore can cross-check the data integrity on demand or in regular basis. Others may consider this undesirable when data privacy is a major concern. Keeping the document or not does not have impact on the upcoming discussion.

Recording into Blockchain

In proof-of-existence type of service, only the hash value is stored in the blockchain. The data space requirement is quite low and therefore almost all blockchain can handle this.

Several notary services implemented on Bitcoin network. The method is quite straightforward: spend a small bitcoin payment good for miner processing the record, and place the hash value using OP_RETURN feature.

The transaction then returns a transaction ID. And this is the transaction ID associated with the hash just written on the blockchain.

Here is the model.

Image for post
Image for post

Here is taken from stampd.io (link), a notary service provider, who takes this approach to record the Bitcoin network. We see the transaction ID is returned (7c3b97…)

Image for post
Image for post
source: http://stampd.io/wp-content/uploads/2015/02/stampd_PDF_Receipt_Sample.pdf

There is some more technical detail about the document.

Image for post
Image for post
source: http://stampd.io/wp-content/uploads/2015/02/stampd_PDF_Receipt_Sample.pdf

Here we see,

  1. The hash result of the original document (65728d…).
  2. What is written in the Bitcoin blockchain. It is usually the hash value with a unique header (here it is STAMPD## for stampd.io).
  3. After this transaction is mined in Bitcoin blockchain, this transaction is included in a block (the block number here is 342489).
  4. The transaction ID (7c3b97…) is the same we see above.

Verification

The technical detail above also shows how to verify this based on the transaction ID. Here is one of several links.

https://blockchain.info/tx/7c3b974209609c6d10a6ad8d2bbff4e3ca4f695287c527a8d9bfff7dcab63b62

It is a public blockchain explorer, not something provided by service provider (stampd.io). The transaction ID is embedded in the URL. Even stampd.io is no longer in service, the record is still in Bitcoin blockchain, and still can be verified any time.

Here is the output of the link.

Image for post
Image for post
Using transaction ID, the record can be found in the Bitcoin blockchain explorer

What we see from the blockchain explorer is that,

  1. This transaction ID is found in the Bitcoin blockchain.
  2. The Received Time serves as a timestamp where this transaction was made.
  3. The Output Script shows the data being written in Bitcoin blockchain.
  4. The data contains (a) header and (b) the hash value, begins with 65728d…
  5. This hash value is used for verify a given document.

Summary

In the next article we will talk on the proof-of-existence of document with ownership information.

Part 2: Proof of Existence and Ownership of a Document

Part 3: Transfer of Document Ownership

Please give me some claps if you find this article helpful.

Written by

Happy to share what I learn on blockchain. Visit http://www.ledgertech.biz/kcarticles.html for my works. or reach me on https://www.linkedin.com/in/ktam1/.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store