Blockchain Standards Part 2 of 5 — The International Standards Organizations
Last week I wrote an article saying that standards need to be adopted by the blockchain community as they position away from being “tribes” on their own island. This week I want to look at the myriad of blockchain standards being attempted by several International standards groups. This post is referring to “technical standards[i]” and not a “reference implementation”[ii]nor “Open Source”[iii]. There is considerable discussion within blockchain forums that their tribe (blockchain Platform) defines the “standards”. But they are merely an Open Source platform, not a technical standard nor a reference implementation. I’ll write more in my next post, but in this post, I am looking at the five major standards organizations. And after finishing all of the posts, I believe I’ll need to stake a White Paper on blockchain standards, as the amount of information is huge, and moving at a rapid clip. Standardization needs a single place to start for anyone interested in blockchain technology.
So how are the major standards bodies treating blockchains? They all see this as both a dire need as well as an opportunity to establish order in the wide open blockchain world. Like many projects and companies, these groups all want to own the standards definition. And right now, where do they go to start their definitions? And who should be cooperating with them? I will try to lay out the myriad of international standards just emerging in the space.
According to an expert in this area, Ken Krechmer“Standardization occurs in three different time phases: anticipatory (before the product/service is generally accepted), participatory (in parallel with the product/service acceptance) or responsive (after product/service acceptance). In the past the ITU has focused on anticipatory standardization; The IETF is most active in participatory standardization (an RFC requires two implementations); And ISO has been most active in responsive standardization.”
Right now, many believe we are past the anticipatory stage as blockchain platforms have been available for years. But my sense in trying to get a solid blockchain to work for my product Taekion (My project is a consumer of blockchain software) is that many more products will emerge. I have found over 50 separate blockchain platforms emerged since January 2018, only 11 months ago! And there were already over 100 platforms before 2018. My feeling is if there is a direction, these yet to emerge products may very well adhere to these emerging standards. With the new emerging products, we may still be ready to accept some “anticipatory” standards. Without even an agreed upon definition of what a “blockchain” consists of, we may be in for changing standards over the next few years.
But the most likely choice in determining standards is by market domination. The dominant economic force wins and forces the hand of the response standards makers and get them to adopt a standard defined by their product definition. This is definitely the way Ethereum is positioned, and I will outline in my next post. And at this time there are many new components emerging that work better than Ethereum in various pieces. But because of the tribalism, the better pieces are wrapped up inside of platforms that are not as strong taken as a whole. But this begs the question, should we be looking at the entire platform, or the best pieces as developed by different projects and then have them all stitched together at runtime to build the best possible product for its intended use. This is the way modern software and indeed the modern Internet is built. There are literally hundreds of components that work together to produce large internet sites/platforms like a Facebook etc. Why should blockchain be any different? After all technology is changing at different rates around the pieces of the blockchain. Pieces like consensus, governance, smart contracts, and even the core chain data format. Should they all emerge from a single entity, or can the pieces use standardized interfaces to put together apps like we do microservices today? Imagine if Microsoft won the standards wars and we all used .Net to program our Websites! Or a full J2EE implementation was required for all sites. A little history will show these were monolithic platforms that worked great when they started for smaller implementations, but grew with bloat and sluggishness as they expanded their functionality and the sites that built with these platforms had to adopt replacement technology from outside of those ecosystems. I see the same parallel happening with Ethereum today. Development is hard, and the compromises being made to maintain a single platform are rearing their ugly heads. Smaller focused services that work together will be the format of a blockchain in the future.
But the standards organizations are attacking the problem as a whole, and looking for a definition of a blockchain. My last post in this series will be an attempt to lay down what I think are reasonable guidelines for evolving the standards for success. So far only the ITU has stated two separate “products” — Distributed Ledger Technology and Digital Currency. This makes sense as companies try to use blockchains to break down industry walls in private permissioned chains. Distributed Currencies need different definitions.
The ISO is trying to define everything you can think of for a blockchain with an emphasis on privacy and identity. ISO is wrapped in governance, legally binding smart contracts, security etc. But these are issues solved in wildly different ways, that without cooperation and some semblance of interplay between the platforms, will be hard to reconcile. ISO may need to step back and pick a couple of areas that are fairly built out and to concentrate on those areas. But this is an issue as you will see from this post and upcoming ones
ISO/CD 22739 — Terminology
ISO/NP TR 23244 — Overview of privacy and personally identifiable information (PII) protection
ISO/NP TR 23245 — Security risks and vulnerabilities
ISO/NP TR 23246 — Overview of identity management using blockchain and distributed ledger technologies
ISO/AWI 23257 — Reference architecture
ISO/AWI TS 23258 — Taxonomy and Ontology
ISO/AWI TS 23259 — Legally binding smart contracts
ISO/CD TR 23455 — Overview of and interactions between smart contracts in blockchain and distributed ledger technology systems
ISO/NP TR 23576 — Security of digital asset custodians
ISO/NP TR 23578 — Discovery issues related to interoperability
ISO/NP TS 23635 — Guidelines for governance
The IEEE organization is taking a different tack that the other, by focusing on vertical industries. But what if they develop the vertical industries with a different foundation than the foundation stacks? What if the data format for a vertical industry is different that the horizontal format for all industries. What coordination is occurring? And notice that the first standard from IEEE is a data format standard as you will see that the ISO, W3, ITU and now IEEE have that are emerging separately. And of course, there are the 150 blockchain platforms out in production or development that have variations of these formats too. Here are the IEEE formats for vertical blockchains as of today:
P2418.2- Standard Data Format for Blockchain Systems
P2418.1- Standard for the Framework of Blockchain Use in Internet of Things (IoT)
P2418.3- Standard for the Framework of Distributed Ledger Technology (DLT) Use in Agriculture
P2418.4- Standard for the Framework of Distributed Ledger Technology (DLT) Use in Connected and Autonomous Vehicles (CAVs)
P825- Guide for Interoperability of Transactive Energy Systems with Electric Power Infrastructure (Building the Enabling Network for Distributed Energy Resources)
The W3C which holds such standards as HTML and Style sheets among many others is also developing an overarching document about the “Web Ledger Protocol”. The W3C introduces yet another data model to the mix. Here is the high level overview of the Ledger Protocol “A primary goal of this ledger format is flexibility, allowing the pluggability of consensus algorithms, data structures for recording history, and the type of data that can be stored in the ledger.”They do have a very good start on standardizing the identity with the high level Decentralized Identifiers for Self-Sovereign Identity. It is my belief that each standards body needs to focus on what they are good at doing and bring in as many players as they can to the table for those specifications. They cannot invite just a couple of platforms, but most need to be invited to partake and let the platforms make the choice. Today there is a vacuum on these types of decisions. Self-Sovereign Identity is a big decision point. Let’s have as much input as possible.
W3C Web Community Draft Report — The Web Ledger Protocol
W3C Web Community Draft Report — Decentralized Identifiers (DIDs) v0.11
The ITU (International Telecommunications Union) has another view on the blockchain. They view the distributed ledger and digital currency as two different types of platforms. Because of the broad participation of nation states, I except they will have more ruling over the digital currency piece of blockchains than the others. The ITU is just starting out.
ITU — Focus Group on Digital Currency including Digital Fiat Currency
ITU — Focus Group on Application of Distributed Ledger Technology
The last major standards organization is the IETF (Internet Engineering Task Force) , where many of the core Internet networking protocols are designed. The IETF is the loosest organized organization on this list of 5 organizations and as such can move as fast or slow as its members desire. They are rightly worried about the traffic and the service level needs of decentralized solutions as they move forward.
IETF overall group looking at blockchains
IETF — Experimental Draft — Blockchain Transaction Protocol for Constraint Nodes
Perhaps the IETF has the best mission statement of the bunch, for why we need to worry about standardization in the blockchain space: “The Internet was designed as a distributed, decentralized system. For example, intra- and inter-domain routing, DNS, and so on were designed to operate in a distributed manner. However, over time the dominant deployment model for applications and some infrastructure services evolved to become more centralized and hierarchical. Some of the increase in centralization is due to business models that rely on centralized accounting and administration.
However, we are simultaneously seeing the evolution of use cases (e.g., certain IoT deployments) that cannot work (or which work poorly) in centralized deployment scenarios along with the evolution of decentralized technologies which leverage new cryptographic infrastructures, such as DNSSEC, or which use novel, cryptographically-based distributed consensus mechanisms, such as a number of different ledger technologies. For example, these use cases include identity/trust management leveraging reputation for authentication, authorization and decentralized management of shared resources.
The evolution of distributed ledger technologies and the platforms that leverage them has given rise to the development of decentralized communication and infrastructure systems, and experiments with the same. Some examples include name resolution (Namecoin, Ethereum Name Service), identity management (OneName), distributed storage (IPFS, MaidSafe), distributed applications, or DApps (Blockstack), and IP address allocation and delegation.
These systems differ with respect to the problem they are solving, the specific technologies that they apply, the consensus algorithms that are employed, and the incentives that are built into the system. Now is a good time to investigate these systems from an Internet technologies perspective, and to connect the domain expertise in the IRTF and IETF with the distributed systems and decentralized ledgers community.”
Overall each of these five standards bodies will try to impart their imprint on blockchain standards. They need to involve the existing blockchain communities and projects without slowing down their rapid development and implementation. And the blockchain platforms, projects and companies need to lend their thoughts to these organizations to steer them properly.
My next post I will cover the individual platform efforts, the consortiums and the nation state efforts to standardize. My fourth post will look at the efforts to transform data and interoperate between blockchains using products. And I will conclude with a fifth post sharing my personal view on a way forward, after examining all of the data and using my own background with standards organizations over the years.
[i]Technical Standards are a formal document that establishes uniform engineering or technical criteria, methods, processes, and practices.
[ii]Refence implementation is the standard from which all other implementations and corresponding customizations are derived.
[iii]Open-source software is software developed in a collaborative public manner.