From Complexity to Clarity: Blockchain’s Impact on EU Supply Chain Compliance

From Complexity to Clarity: Blockchain’s Impact on EU Supply Chain Compliance

Datarella’s Blockchain Solutions for Supply Chain Management: Streamlining CSDDD Compliance

Datarella has been at the forefront of deploying blockchain solutions for supply chain management. The introduction of the European Union’s Corporate Supply Chain Due Diligence Directive (CSDDD, or CS3D) presents a significant regulatory milestone. This article examines the directive’s implications and showcases how Datarella’s blockchain technology offers a streamlined path to compliance for businesses.

What is the EU Corporate Supply Chain Due Diligence Directive (CSDDD)?

The CSDDD is a critical component of the EU’s strategy to enhance supply chain sustainability and ethics. It mandates companies to actively prevent human rights and environmental abuses within their supply chains. The directive sets forth a phased compliance timeline, with larger corporations facing earlier deadlines. By 2028, entities with over 1,000 employees and a net worldwide turnover exceeding 450 million EUR must adhere to the directive. Non-compliance penalties could reach up to 5% of global turnover.

Navigating CSDDD Compliance with Blockchain Technology

Many companies are uncertain about how to address these new requirements. The answer lies in robust reporting, backed by verifiable data. Traditional compliance methods might overwhelm businesses with paperwork and lead to inefficiencies. However, blockchain technology presents a solution: by digitizing and securely logging every transaction and document in the supply chain, blockchain can simplify the compliance process.

How Blockchain Simplifies Compliance

Unlike traditional methods reliant on paperwork, blockchain ensures secure, transparent tracking of transactions. This technology can reduce the compliance burden by offering secure data storage and easy accessibility. Since records on the blockchain cannot be modified, it ensures data integrity and accurate documentation for compliance purposes. Integrating blockchain with digital identity solutions like the vLEI and the EU Digital Identity Regulation further strengthens this process. Companies can easily verify responsibilities and transactions, making blockchain an essential tool for CSDDD compliance.

Datarella’s Expertise in Blockchain for Supply Chain Management

Datarella has an impressive track record in implementing blockchain solutions to address complex supply chain challenges. From facilitating blockchain-based document handovers in humanitarian contexts to ensuring the integrity of 3D-printed parts for global suppliers, Datarella’s innovative projects demonstrate our expertise. Our involvement in initiatives like the Gaia-X consortia (ESCOM and Cosmic-X) and the European Space Agency’s Track & Trust initiative shows our commitment to advancing blockchain technology for supply chain management.

Partnering with Datarella for CSDDD Compliance

As the EU moves toward greater supply chain accountability, partnering with Datarella can help businesses navigate the complexities of CSDDD compliance. With our blockchain solutions, we not only help companies meet regulatory requirements but also drive efficiency and transparency. Choosing Datarella means collaborating with a leader in blockchain innovation, ready to transform today’s challenges into tomorrow’s successes.

The Future of Supply Chain Management with Blockchain

The CSDDD represents a pivotal shift towards responsible supply chain practices within the EU. For companies aiming to align with these new regulations, Datarella’s blockchain solutions offer a practical and efficient path to compliance. As the regulatory and business landscapes evolve, Datarella remains dedicated to empowering companies with the technology and expertise they need to thrive in this new era of supply chain management.

Interested in simplifying your CSDDD compliance with blockchain technology?
Contact us to learn more.

*On Feb. 29, 2024, the EU voted positive on the Digital Identity Regulation, paving way for EU citizens to truly own and control their data – a step towards secure, decentralized applications within the EU.

The Convergence of AI and Web3: MOBIX Park & Charge at IAA Mobility 2023

The Convergence of AI and Web3: MOBIX Park & Charge at IAA Mobility 2023

The Convergence of AI and Web3 in Decentralized Mobility Solutions

As noted by the venture capital firm Andreessen Horowitz, AI and Web3 are converging technologies that leverage decentralized networks, self-sovereign identities (SSI), autonomous agents, and machine learning. These innovations enable new business models and streamline business processes, particularly in the realm of decentralized mobility solutions. A crucial success factor lies in integrating these technologies with existing business processes. Collaboration between innovative AI and Web3 startups and established industry leaders is essential for driving impact and fostering innovation.

At IAA Mobility, AI and Web3 startups collaborate with industry players and universities in the moveID consortium. They are showcasing a state-of-the-art smart city solution called MOBIX Park & Charge. To meet the project’s goals, positioning innovative cutting-edge solutions is vital. These solutions leverage data to redefine the technological landscape, heralding a data-driven revolution. The synergistic trio of Fetch.ai, a long-time partner of Datarella, along with peaq and Ocean Protocol as moveID partners, is making significant strides forward. This initiative is further supported by solution providers and integrators like Datarella, DeltaDAO, 51Nodes, and university teams from htw saar and Zeppelin University.

Fetch.ai: Bridging AI and Blockchain

Datarella partner Fetch.ai seamlessly combines artificial intelligence (AI) with blockchain technology, unlocking new possibilities across various sectors. These possibilities include autonomous machine economies, smart cities, and efficient resource management. The Fetch.ai platform provides a decentralized infrastructure for Microagents capable of executing tasks autonomously.

In the context of MOBIX Park & Charge, Microagents act as bridges between different software components on edge devices. This setup enables autonomous control over various systems, such as traffic lights.

Microagent Sample

Microagents in Action

Fetch.ai Microagents serve as multifunctional intermediaries. They communicate and initiate processes in external systems, handling complex tasks like:

  • Managing crypto wallets
  • Ensuring secure payment transfers
  • Verifying events
  • Controlling access to hardware such as gates, traffic lights, and chargers

In essence, Fetch.ai Microagents automate tasks on behalf of human clients, streamlining processes and enhancing efficiency. These functionalities contribute significantly to the development of decentralized mobility solutions.

peaq: Empowering the Economy of Things

As automation surges, the peaq network emerges as a key player in sharing its benefits with everyone. It fosters the Economy of Things by establishing a crucial layer-one blockchain infrastructure for decentralized mobility applications.

Peaq’s technology stack and economic incentives enable the development of applications for machines in this emerging economy. For instance, it powers electric vehicle (EV) charging applications. The peaq token fuels the entire ecosystem, facilitating digital identities for machines and enabling seamless payments.

In MOBIX Park & Charge, peaq allows communication with charging points, using peaq tokens to initiate and pay for EV charging processes.

initiate and pay for electric vehicle charging processes

Ocean Protocol: A New Data Economy

Ocean Protocol aims to unleash its potential for individuals and organizations alike. It empowers secure data sharing (Compute-to-Data), selling, and monetization while ensuring control and privacy. Users retain the power to determine who accesses their data and how it is used.

This establishes a novel paradigm in the data economy, especially for AI models in the mobility sector. In MOBIX Park & Charge, Ocean Protocol integrates its decentralized data marketplace technology. This facilitates sovereign and privacy-preserving data exchange within mobility applications.

Key Components of Ocean Protocol

Key components of Ocean’s data pricing mechanisms include Compute-to-Data and a Gaia-X-compliant Self-Sovereign Identity (SSI) approach. Additionally, Ocean solution provider DeltaDAO collaborates to implement the Ocean Tech Stack. In future versions of MOBIX Park & Charge, the goal is to simplify data sales for IoT devices. These devices will automatically sell data directly on the Ocean Marketplace or through Compute to Data. Fetch.ai agents possess built-in intelligence, allowing IoT devices in cars to decide when and how to post data to the Ocean Marketplace based on traffic situations.

Conclusion: Paving the Way for a Data-Driven Future

The versatile infrastructure of peaq, the automated decision-making capabilities of Fetch.ai’s Microagents, and Ocean Protocol’s sovereign data exchange mechanism synergistically converge to facilitate MOBIX Park & Charge. As we stride toward a data-driven future, these technologies pave the way for decentralized mobility solutions that could profoundly reshape mobility.

 

Feasibility Study: DLT for Emissions Trading Registries

Feasibility Study: DLT for Emissions Trading Registries

The German Environment Agency (UBA) commissioned the Frankfurt School Blockchain Center, Capgemini and Datarella to elaborate a feasibility study on the use of DLT in today’s emissions trading registries. Datarella is happy to announce its successful completion.

The aim was to evaluate whether the DLT is suited to efficiently represent the current European emissions trading system (EU ETS). The insights generated by the project partners will support policymakers in informed decision making with regards to the question of whether to remain with a traditional architecture or with a central relational database. For this purpose, the technical concept of an emissions trading DLT and the consideration of the efficiency and sustainability of an emissions trading DLT were explored. As a result, we were able to demonstrate how Emission Allowances can be represented on the blockchain. Hereby, the scope of an emissions trading system can be significantly expanded without extensively altering users’ current user experience .

As a key benefit, our DLT solution offers a robust infrastructure that is secure against manipulation attempts. Additionally, with DLT, well-known advantages such as transparency and traceability can be established in emission trading systems. Our concept also provides sustainable and energy-saving operability of a DLT-based emissions trading system.

The Frankfurt School Blockchain Center, as coordinator of the project, has contributed dedicated scientific blockchain expertise. Capgemini provided a rich set of expertise in carbon trading, registries, and private blockchain implementation. Datarella as a Web3 solution provider contributed comprehensive implementation expertise of enterprise blockchain solutions.

The result of the feasibility study was highly satisfactory for the client. In the future, the result will be presented to a larger circle of interested stakeholders.

Datarella Launches SSI Wallet For Innovative Identity Management

Datarella Launches SSI Wallet For Innovative Identity Management

Datarella is offering its customers state-of-the-art Self-Sovereign Identity infrastructure with its SSI Wallet for innovative identity management. It can be integrated into new or existing ecosystems and provide fundamental decentralized identity infrastructure for users to authenticate, issue and receive Verifiable Credentials or transfer data. This allows for many innovative use cases like credential-based access management, automatic credential verification or trusted data transfer. 

 

The Wallet

Having full control over an own digital identity is one of the fundamental principles for Self-Sovereign Identities. This includes that private keys and verifiable credentials are not stored on a centralized exchange or platform, but on the user’s very own devices in a decentralized manner. From this device, the user can issue or receive credentials and authenticate themselves by connecting with other SSI agents.

Like in the physical world where an identity is represented by an ID document which is often kept in a physical wallet, digital private keys and verifiable credentials are stored in a digital wallet. From here, the user can decide with whom the user interacts and shares information from its wallet. The user can ensure that private information is stored only on authorized devices and not in centralized databases which reduces the risk of data breaches tremendously. A wallet can have various forms, a browser extension, a hardware wallet or an entire app like Datarella’s SSI Wallet. 

 

Technology

The SSI Wallet is meant to be deployed in ecosystems that allow users to interact with each other, with SSI compatible websites and IoT edge devices like micromobility vehicles. This is enabled by the Aries Framework Go, which supports a broad variety of edge- and cloud environments. 

The wallet further provides a high level of privacy as it natively supports did:peer methods which creates pairwise pseudonymous DIDs for each individual connection and therefore avoids correlation by design. Even though did:peer does not require a ledger, the Aries-Framework Go supports public DID methods like did:web or DIF’s Sidetree protocol. It further allows selective disclosure of credentials thanks to its support for BBS+ signatures. The SSI wallet is therefore perfectly suited for public adoption as well. 

It will soon also contain SDKR – a decentralized key backup and recovery mechanism that allows you to backup and recover your secrets with only your official eID. No need to remember passwords or the location of your backups thanks to eIDAS and decentralized and opaque storage capabilities from StorJ

 

Conclusion

With our SSI Wallet, we are confident to demonstrate the benefits of Self-Sovereign Identity perfectly in a privacy-preserving and intuitive manner. By using the Aries-Framework Go, we can ensure that it works on web applications and mobile solutions as well as on proprietary IoT devices either without a ledger entirely (only P2P) or by using did:web or the Sidetree protocol.

Datarella Partners With Ocean – Turning Mobility Data Into Assets

Datarella Partners With Ocean – Turning Mobility Data Into Assets

Datarella is joining forces with Ocean Protocol to expand the Open Data Economy. moveID, our first project will be under the umbrella of GAIA-X, the European Association for Data & Cloud, as part of the GAIA-X 4 Future Mobility Project, which aims at bringing cloud applications to autonomous & networked vehicles.

The project’s overall goal will be the creation of a decentralized ecosystem of data & services that allows autonomous & networked vehicles to integrate into smart infrastructures and third-party services, following GAIA-X’s design principles. With mutual trust as its core concept, its stated goal will be achieving data sovereignty.

For Datarella, technology is an instrument to increase the quality of living, by supporting human beings in all kinds of professional and private activities. The growing complexity and diversity of our ecosystem require technological infrastructures that facilitate collaboration and cooperation. By planning, developing and implementing blockchain solutions worldwide, Datarella meets this requirement: in the fields of Finance, Supply Chain, and Mobility, we enable industry participants to join forces and create sustainable, crisis-proof business models. GAIA-X is the perfect environment for true collaboration.  – Michael Reuter, CEO of Datarella

Data generated by network actors or Autonomous Economic Agents (AEAs) in the ecosystem can be useful to 3rd parties, and thus has value as an asset. Ocean Market unlocks the value of these by enabling every authenticated user to put their data up for sale and to monetize it. Vehicle data, for example, could be (re)used for traffic analysis for the generation of better traffic models such as optimized traffic light switching.

Different market actors will price data differently, depending on the method of data generation, data quality, and its utility to the potential buyer. Ocean Market allows for dynamic pricing and thus for optimal value generation for data generators and data curators, in a privacy-preserving manner.

This project will use Datarella’s Enterprise Blockchain Solutions, which serve as the foundational, underlying protocol for digital business transformation with converging technologies such as AI and autonomous machines. Datarella’s future mobility solutions are fueled by blockchain technology, real-time decentralized data management, transparency and GDPR compliance. Given the natural synergies between Ocean and Datarella, this partnership is the first of many that will drive enterprise adoption of Ocean Protocol technology in Datarella’s client base. 

Our mission is for data to be treated as an asset. By tapping into underutilized data from mobility IoT sensors, AI can uncover mobility patterns and optimize services / reduce waste. Machines can speak to each other and algorithms can make optimizations – all in real-time. Ocean can tokenize mobility data from devices, thereby creating an opportunity for these tokens to be used as instruments in DeFi projects. This is one of the many ways in which we enable data owners to share in the value their data creates. – Razvan Olteanu, COO of Ocean Protocol

Ocean Protocol is a Day 1 Member of GAIA-X Association AISBL, an international non-profit organisation established to achieve the GAIA-X project goals for the development of an efficient, competitive, secure and trustworthy federation of data infrastructure and service providers for Europe – fostering digital sovereignty of European cloud service users.

—-

About Ocean Protocol
Ocean Protocol’s mission is to kickstart a Web3 Data Economy that reaches the world, giving power back to data owners and enabling people to capture value from data to better our world. Data is a new asset class; Ocean Protocol unlocks its value. Data owners and consumers use the Ocean Market app to publish, discover, and consume data assets in a secure, privacy-preserving fashion. Ocean datatokens turn data into data assets. This enables data wallets, data exchanges, and data co-ops by leveraging crypto wallets, exchanges, and other DeFi tools. Projects use Ocean libraries and OCEAN in their own apps to help drive the Web3 Data Economy. The Ocean token is used to stake on data, to govern Ocean Protocol’s community funding, and to buy & sell data. Its supply is disbursed over time to drive near-term growth and long-term sustainability. OCEAN is designed to increase with a rise in usage volume.

 

Introduction to Self-Sovereign Identity Components – Part 2

Introduction to Self-Sovereign Identity Components – Part 2

Last week we started a series of articles for an introduction to Self-Sovereign Identity components. In the first article, we have taken a look at some of the fundamental elements of SSI – Decentralized Identifiers (DIDs), their corresponding DID Documents and Verifiable Credentials. We now understand that DIDs are the digital and sovereign representation of an identity, that is further described in the DID Document and from and to which we can issue Verifiable Credentials. Part 2 of the series, we face the question of how DID Documents are technically associated with a DID and how we can authenticate using DIDs.

If you want to know what SSI is in general and how it could affect our online environment and behavior, take a look at the introduction article to SSI.

DID Resolution

DID resolution describes the process of getting from the DID to its associated DID Document. It is the basis for creating connections, initiating interactions, and proving ownership via DID Auth (see below). DIDs should be globally resolvable, allowing others to look up the DID document, for example, to start an interaction. Since every DID method works somehow differently and has different ways of creating and storing a DID document, resolving them works differently for each DID method. 

There are three main ways of how DID Methods, which define how to create a DID, and manage DID Documents. They could either be publicly stored somewhere and referenced in the transaction itself – like in Bitcoin Reference (did:btcr:) or generated by gathering events of a transaction to an authorized account – like in uPort’s ETHR DID Method (did:ethr:). The third way is to automatically generate the DID Document by the ledger itself like in Sovrin (did:sov:).

To create an interoperable SSI ecosystem, it would be useful to dynamically resolve the DIDs of any DID method. By doing so, DIDs from different blockchains could interact with each other. One system that does this is the “Universal Resolver”, which is illustrated in the following figure. Here, Webservices, Apps, or other services can resolve any DID Document that has a driver implemented in the Universal Resolver.

Model of the Universal Resolver

DID Auth

Cryptographically authenticating an identity owner, is a central goal in the SSI ecosystem. To establish trusted connections, proving control over a specific DID as long as the DID exists. In SSI, this specification is called DID Auth and relies on a challenge-response authentication protocol where the identity owner signs the response to authenticate. DID Auth uses the authorized public keys listed in the DID Document for authentication. 

The challenge-response cycle can be implemented with multiple protocols. One of the preferred ones is using a JSON Web Token. However, it also works with other protocols such as the TLS handshake protocol, OpenID Connect, or even HTTP. 

The following figure shows a simplified process of DID Auth.

Source: Introduction to DID Auth (Sabadello, et al.)

At first, the Web-Site of a relying party displays a QR on the Identity Owner’s Web browser that contains the DID-Auth Challenge. In the next step, the Identity Owner scans the QR Code and sends a DID-Auth Response with the signature of the Identity Owner’s private key to the Relying Party’s web server. Based on this private key signature, the creation of an proof signature indicates control over a DID. The web server receives the response and can validate that the identity owner controls the DID by resolving the DID document and validate the public key. After the successful authentication, the relying party’s web page polls this information and displays its content. For a more detailed description of DID Auth, I recommend taking a look at this document

Conclusion

In this second article about the introduction to Self-Sovereign Identity components, we got to know DID Resolution and DID Auth. 

To summarize, DID Resolution describes the process of getting from a DID to a DID Document. This process is essential as the DID Document contains important information about the DID, such as authorized public keys or service endpoints. This information is crucial to start an interaction like proving ownership or control over a DID, which describes the process of DID Auth. By implementing a challenge-response cycle, an identity owner can prove ownership or control over a DID and therefore creates trust between both parties. It’s worth mentioning that, in this case, only requires these two parties, and no additional identity provider needs to be involved. As a result, DID Auth creates a trusted fundament for further interactions, such as issuing credentials or other data exchange. 

In the third part of this series, we will take a more in-depth look at Verifiable Credentials. How can these be issued, how can they be trusted, or how can they be managed will be questions we are going to face and answer. 

If you have any questions about SSI or want to leave feedback, feel free to contact me.

Introduction to Self-Sovereign Identity Components – Part 2

Introduction to Self-Sovereign Identity Components – Part 1

Self-Sovereign Identity (SSI) is increasingly mentioned in connection with innovations and digital identities. Even in the context of the coronavirus crisis, SSI finds possible applications, such as the possible use of a tracking app for infected people or as a digital staff “passport” in hospitals that respects each user’s privacy. To support others in classifying SSI correctly, we are now publishing a series of blog posts that explain components of SSI. The first part of the introduction to Self-Sovereign Identity focuses on the three essential components – DIDs, DID Documents and Verifiable Credentials.

As already described in detail in the first blog post, Self-Sovereign Identity offers the user the possibility to manage their own digital identities completely autonomously. There is no platform or provider, such as an email address provider or a social network that controls identity. This is achieved using an underlying blockchain or a DLT on which key pairs can easily be generated that serve as identity representation.

Decentralized Identifiers

Now we come to the first component – the Decentralized Identifiers (DIDs). Their purpose is to act as a unique identifier of the person or object. These are derived from the public keys and can be identified over various blockchains. An example DID is shown below.

DID Syntax

DIDs follow a general syntax: the schema (did:), the method (sov:) and the method-specific identifier (WRfXPg8dantKVubE3HX8pw). While the scheme is always the same, the method that describes how a DID is derived from a blockchain (here: Sovrin) and the method-specific identifier bo depend on the underlying blockchain. However, DIDs alone don’t bring any value.

DID Document

What fills a DID with life is the DID Document. This piece of data describes the DID object and its properties. By default, it contains the associated public key to a DID. However, it is also possible to add more public keys to the DID document that are authorized to perform actions in the name of a DID. Moreover, a DID can contain different types of attributes and service endpoints that allow the actual interaction with a DID. Changes to a DID Document can only be made by authorized public keys defined in the DID Document. An example DID Document with authorized public keys.

Verifiable Credentials

Now, that it is possible to identify an entity and to interact with it, is possible to attach information to the digital identity. This can be done with Verifiable Credentials (VCs) that act as an attestation or a digital representation of a credential such as an ID, a driver’s license or a club membership card. A VC consists of three main values:

    1. The issuer’s DID and signature
    2. The entity’s DID
    3. The information that is attached

Based on these three fragments, third-party verifiers can immediately determine the authenticity of the object by looking up the issuer’s DID. Verifiable Credentials are in possession of the DID owner that it was issued to and can be stored in a wallet. However, the issuer can always revoke the VC and adding it to the revocation registry that should be publicly visible.

These three components serve as the basis for a decentralized, trustless identity ecosystem that doesn’t rely on centralized authorities. DIDs identify an identity over, the DID Document describes the DID and a Verifiable Credential attaches verifiable information to a DID. Users are in sole control of their identity and can decide how information is shared and with whom.

However, this was only a small part of the entire SSI infrastructure. Part 2 of the Introduction to Self-Sovereign Identity components is about DID resolution, the process of resolving a DID Document from the DID, and DID authentication.

If you have any questions about SSI or want to leave feedback, feel free to contact me.

The New Digital ID: Self-Sovereign Identity

The New Digital ID: Self-Sovereign Identity

We from Datarella are always encouraged to be experts in the field of blockchain-related concepts and technologies and also to share our knowledge with the blockchain community. This blogpost should raise awareness about Self-Sovereign Identity (SSI), a fundamentally new approach of digital ID enabling users to have autonomy about their decentralized identifiers (DIDs) on the internet. 

Managing identities on the internet is a problem since its early days as it doesn’t have an integrated identity layer. Conventional identities are represented by identifiers provided by identity providers, such as an e-mail or a social media account like Facebook. The problem with these is that the identifier is not owned but only borrowed. The identity provider remains in control of the identifier and not the actual user. Although registration at new services is an annoying process already, the major problem is that websites store this personal information on their servers to determine who their users are. Based on the user information, data is generated and passed on to third parties without the explicit knowledge of the user. Besides, it often happens that this information is not sufficiently protected against criminal attacks.

DIDs as the fundamental component in Self-Sovereign Identity

The new digital ID concept “Self-Sovereign Identity” should allow users to have full autonomy about their identifier and control over how related personal information is shared and used and with whom. The fundamental component which makes it possible is the so-called decentralized identifier (DID). A DID represents the user in a pseudo-anonymous way and is derived from a public key generated on a blockchain or other distributed ledger technologies. Users can create and register their DIDs without the need for a central authority. 

DIDs serve to create lifetime relationships with others in a decentralized and privacy-preserving manner. Only the information that is needed should be disclosed. A popular example is that a verifier doesn’t care about the actual date of birth but only if the user is old enough to use or access a service. By using zero-knowledge proofs, the verifier only sees this information, derived from the date of birth. 

Self-Sovereign Identity further faces the challenge to merge the real-world identity closer to the offline world. This should be achieved by integrating verifiable credentials that can be issued to assert personal information to the DID. Credentials could contain any information, depending on the issuer, such as a valid digital ID, an attestation about a relationship like a club membership, or a digital diploma. By gathering such credentials, a user could integrate real-world identity characteristics to the online identity. 

Still a long way to go for SSI

Even though the concept of SSI is very promising, and standardized formats, such as DID, exist, there are still big hurdles to take. 

One challenge will be how this concept should be integrated on the internet. The usability has to be intuitive, so users tend to use their DIDs instead of a username and password combination. Then all actors have to be on-boarded. This is the typical chicken and egg problem. It requires a significant amount of services and authorities to accept or issue credentials but it also needs enough users to incentivize authorities to offer credentials first. 

However, there are already several projects running that provide this technology. The Sovrin Network, for instance, provides an advanced identity ecosystem that allows users or authorities to form relationships with others and issue or receive credentials. The uPort project also provides a full SDK to implement Self-Sovereign Identity solutions on the Ethereum blockchain. 

 

If you are interested in more information about Self-Sovereign Identity feel free to contact me via E-Mail or read into already existing documentation, such as the DID primer.

Zero Knowledge About Zero-Knowledge Proofs? From Zero To Zero

Zero Knowledge About Zero-Knowledge Proofs? From Zero To Zero

Cryptography vs Cryptocurrency – one enabling the other

For many, the word ‘crypto’ brings Lamborghini’s, neckties with Bitcoin signs printed on them or really bad hip-hop, but up until some years ago, the original meaning was not crypto-currency, but cryptography. That is also the topic of this blogpost. Consider it a gentle introduction into a very specific branch of cryptography – zero-knowledge proofs (or ZKP) – and why blockchain has helped bring them back into vogue.

What are ZKP – intuition

So, let’s start off with the basics, what are zero-knowledge proofs? I’ll explain it through three common analogies with varying complexity, they all describe the same concept but appeal to different audiences.

1. This analogy is from StackExchange. Imagine your friend, Alice, tells you that she has a super-power. An amazingly useless super-power, but still. She can count all the leaves on a tree in your garden in front of your house in a few seconds! Of course, you don’t believe her, so you ask Alice to prove it. We’ve now created two roles that are omnipresent in ZKP, a prover (your friend Alice) and a verifier (you in this case). She proposes that she closes her eyes, you can then choose to either remove a leaf from the tree or not, and finally she can open her eyes. Now, to prove her super-power, she has to tell you whether or not you removed a leaf from the tree. If she’s wrong she failed to prove anything, but if Alice is right, you realise that she had a 1/2 chance to guess correctly and was just lucky. So you repeat the experiment, now if she’s right again, she would have had to have been right two times in a row, meaning her odds of being guessing correctly were 1/4. (At least assuming independence of events). This goes on and on until you are sufficiently convinced of her super-power being real. In this scenario, you didn’t learn HOW she does her magic counting of leaves, but you’re very sure that she know how to do it. There was ZERO KNOWLEDGE transferred from Alice to you regarding the procedure itself. Additionally, there was no, or a very small possibility for you, being honest, of not believing in Alice’s capability, and she couldn’t have convinced you without actually having the super-power. These three criteria are called ‘zero-knowledge’, ‘completeness’ and ‘soundness’, respectively, and are a part of all ZKP.

2. This one is from the booklet “Applied Kid Cryptography or How To Convince Your Children You Are Not Cheating” by Naor, Naor and Reingold. It relies on the game called “Where’s Waldo?” or “Where’s Wally?” in the UK-version. The goal of the game is to find the image of Waldo on a page filled with other things and figures. Let’s assume Alice and yourself are playing this game together. All of a sudden, Alice exclaims “I found Wally!”. Aggravated with jealousy you scream out “So prove it!”, (first the revelation of the leaf-counting super-power and now this!?). So how can Alice prove her knowledge of where Waldo is, without revealing to anyone else where he is? Simple, she takes a big cardboard with only a cut-out in the middle, just the size of a Waldo-image. As you close your eyes, Alice places the cardboard over the open pages of the Where’s Waldo?-book exactly so that only Waldo can be seen through the cut-out. You can verify that Alice knew where Waldo is, without learning where on the page he is. Again, this satisfies our three properties of zero-knowledge, completeness (you have to believe Alice found Waldo given the information she presented to you) and soundness (Alice couldn’t cheat by randomly placing the cardboard on the book except by being extremely lucky).

3. Now, my favourite example from a highly recommended blogpost by Jeremy Kun is more in the theoretical space. Instead of a difficult problem like counting leaves or finding Waldo, we now have the provably difficult and more formally defined problem of proving that two graphs are isomorphic. Let’s unpack that:

– A graph, G, is defined by a number of edges connecting the vertices of the graph. Thus a graph G = (V,E)
– Each edge can be represented as the tuple (u,v), where u and v are integers between 1 and the number of vertices of G, n.
– Given two graphs G = (V,E) and G’ = (V’,E’), they are isomorphic if there exists a couple of functions f: V->V’ and g: E->E’ such that f associates each value in V with exactly one element in V’ and vice versa. Correspondingly, g associates each value in E with exactly one value in E’ and vice versa.

source: Jeremy Kun’s blog on Math and Programming – https://jeremykun.files.wordpress.com/2015/11/gi-example.png?w=587&zoom=2

Intuitively, this means that graphs are isomorphic if we can transform one into the other by simply moving around the vertices, not adding or removing any edges and ending up with two identical figures. This is not exactly rigorous, but still somewhat accurate for our purposes.

Now, for the zero-knowledge part! Given two graphs, there’s no easy or efficient way of finding out if they are isomorphic. (If you find a way, let me know.) So, let’s say Alice knows that there exists an isomorphism between them, but she doesn’t want to reveal her isomorphism to you. She does this by taking e.g. G and mixing V. Then she sends you her newly formed isomorphic graph, called H. Alice additionally saves the permutation she did on G for later.

After having received H, you flip a coin with equal probabilities and depending on the outcome you give Alice a challenge. Heads, and Alice should provide you with the inverse, or backwards, permutation which gave her H. It should then give you G. If tails, Alice should provide you with her secret isomorphism, f composed with the permutation. This should now give you G’ when applied to H.

Given either of those permutations, you should now be able to verify that Alice possesses a ‘secret’ isomorphism. Additionally, you haven’t learned anything about the solution since you only received a uniformly random permutation or two uniformly random permutations composed which gives another uniformly random permutation.

Why ZKPs are interesting to blockchain

Ok, now that we’ve understood a bit what ZKP means, let’s see why it is interesting for blockchain technology. The most obvious area of application is of course privacy. Being able to prove something without having to reveal any information about the subject sounds like utopia for almost everyone with an eye on the current state of affairs in big data applications of corporates and states. A second, less obvious type of application is for scaling in blockchains. This relies on the fact that a proof of knowledge can be more succint, from a storage point of view, than the information it’s proving. Let’s look at some use cases of both application areas in more detail:

One of the first live applications of ZKP in blockchain for privacy was by ZCash – a cryptocurrency where the ‘knowledge’ being proven is that the sum of outgoing transactions are equal to the sum of incoming transactions (ZCash uses a UTXO model), that the sender has the authority to spend the coins being sent and finally that the private keys of the incoming ‘notes’ are effectively locking the whole transaction from being modified without the keys in question.

Another use case of ZKP for privacy is by Sovrin, who mainly uses regular public key cryptography and a fairly clever protocol to issue verifiable credentials such as “possession of a valid driver’s license in EU”. Then they apply a type of ZKP called accumulators to prove non-revocation of that very credential in a very succint manner. This was initially researched by IBM in the so-called idemix, back in 2007, but lacked an adequate platform to store the non-revocation lists in a persistent, trustless manner. Until blockchain arrived.

Generally speaking, ZKP can be used for a wide range of privacy-preserving applications, especially when it comes to the topic of identity, things such as range-proofs whereby it can be proven that one’s age is within a certain range (e.g. 18-65) without revealing the actual age. Or it can be proven that one is a resident of the EU without revealing in which country exactly.

One of the most pressing issues of public blockchains these days (and admittedly since some time) is that of scalability. Interestingly, ZKP may have a solution for this. Like ZCash, another privacy-focused cryptocurrency Monero implemented ZKP. However, Monero was using a different algorithm called RingCT to hide transaction information. It didn’t rely on the often criticised ‘trusted setup’ of ZCash (more here) but therefore had a very large transaction size resulting in low throughput. This was improved greatly by the application of so-called bulletproofs (also a type of range-proofs actually) in October 2018. This meant that the average transaction size was reduced by at least 80%, and the fees accordingly.

Even more extreme measures are being built by the coda team who aim to recursively compress an entire blockchain into a 20kB ZKP. Their CTO Izaak Meckler called it “A picture of a picture of a picture of a picture.”. It works by using a ZKP to prove the knowledge of a ZKP, which proves the knowledge of a ZKP, etc. This effectively leads to a constant-size blockchain which can be verified by anyone easily, not like in many existing public blockchains where the more users a blockchain has, the more difficult it gets for the average user to verify. Coda does, interestingly, not use ZKP at all for privacy. Yet.

We’ve seen a few examples to intuit what ZKP means and why they are interesting to apply in blockchain technology. It is part of what we are working on at Datarella, implementing industrial blockchain solutions for clients and in RAAY. If you would like to dig deeper into some of the topics we’ve learned about today, here are some resources:

https://jeremykun.com/2016/08/01/zero-knowledge-proofs-for-np/
https://z.cash/technology/
https://www.youtube.com/watch?v=DfEG5nhMRyQ&list=PLj80z0cJm8QHvg1ydi6rTEUK1SpxbtKnM
https://medium.com/@VitalikButerin/zk-snarks-under-the-hood-b33151a013f6
https://www.uow.edu.au/~bmaloney/wuct121/GraphsWeek10Lecture2.pdf
https://zokrates.github.io/
https://medium.com/aztec-protocol/how-to-code-your-own-confidential-token-on-ethereum-4a8c045c8651