Meet Your Digital Twin: The Coming Revolution In Business Development
Did you find your Doppelganger? Many believe that they did not find it or that it does not exist. The reality is that we meet them every day and feed them new information. By exchanging data, creating online accounts or simply sending emails, we create our own digital trace that creates our twin, i.e. our digital identity. Our twin is not a classic Doppelganger of flesh and blood that exists in the real world, but has access to very sensitive personal data whose safety we need to take care of.
Source: Google Dictionary
This is the age of digital transformation. Innovative solutions such as The Internet of Things (IoT), augmented reality, blockchain or social media are rapidly changing the world and enabling us to recognize all the possibilities and potentials that digital technologies can offer us. In addition to all the advantages, you should not lose sight of the security of data as well as ease of access and use.
Each of us in our own unique way contributes to the development of the modern world that we once imagined and watched in movies. My name is Ivana Jovicic and as a software engineer I participate in creating a system for easy creation and secure storage of digital identity on the blockchain network. The identification and authentication solution, paired with mobile devices, allows users to have complete control over their data and to do many things on the go that require physical presence and formal document signing.
In the development of such a system so far, I have been particularly interested in the challenging use and intertwining of different technologies:
- Blockchain – a decentralised network for secure storage of digital identities and user data
- Golang – a programming language that we use to write smart contracts for blockchain
- NodeJS – a programming language that we use to create API services for communication with the blockchain network
- And others
What is a blockchain?
Blockchain technology is a shared, transparent, distributed, synchronised ledger of trust. Distribution was achieved by developing a database on the peer-to-peer (P2P) network of devices. A node can be any active electronic device (such as a computer or mobile phone) that has Internet access and its own IP address. Each network participant, a node, has its own copy of the database in which transactions between network participants are stored. Each transaction added to the blockchain system is validated by several different network participants. In such a system, it is not enough for one participant to confirm the validity of a transaction, but through consensus processes a decision is made to accept or reject transactions, which eliminates the role of a centralised authority of trust.
Recorded transactions are grouped into blocks and stored from the creation of the network until the present moment, without the possibility of deletion. As the name suggests, a blockchain is made up of chained blocks that contain information. One of the main features of this structure is immutability, once the information is written, it cannot be deleted, and it is very difficult to change it. So how does it work? If we take a closer look, the main parts of each block are:
- Data – information that is stored, a set of transactions that contain relevant data: information on the money transaction, information on authentication, information on digital signing, etc.
- Hash – a unique identifier of the block and its contents. It is recalculated after the block is created and its value depends on the content in the Data section
- Hash of the previous block – an indicator of the previous block in the chain.
If someone tries to change the content of a block, the hash value of that block will change, and thus the connection of the rest of the chain to that block will be lost. In order for the change to be applied to the chain, it would have to calculate the new hash values of all blocks in the chain.
Also, the high security of the blockchain is contributed by cryptography, which is used for the purpose of protecting the identity of the participants in the transaction, as well as for ensuring the transaction data itself so that they cannot be altered.
Business logic for data management and execution of transactions is stored in programs that are installed on nodes and are called smart contracts.
Why Hyperledger fabric?
There are different types of blockchain networks, but for the development of our product we decided on a private blockchain network and the use of Hyperledger fabric.
Hyperledger fabric (HLF) is a modular framework for the development of distributed, protected blockchain systems. It is an open source permissioned distributed ledger technology (DLT) platform, designed for use in enterprise contexts and is one of the projects from the Linux Foundation.
As we work with sensitive user data in our product, we wanted to control who has access and, above all, to keep the data secure. That’s why we decided on a blockchain for a private blockchain network (Hyperledger fabric). Several main features of a private network (private blockchain):
- The identity of each network participant is known and cryptographically authenticated so that it can be recorded and tracked who performed which transaction
- There is a control mechanism that defines who has permission to read and write data, who can trigger transactions and who is in charge of managing network participants
- The division of responsibilities and roles between the participants is defined (it is divided who executes smart contracts, who validates transactions, etc.). In this way, transaction costs are reduced because the verification is performed on a smaller number of users than the situation with public networks.
The network designed in this way was suitable for a business application that does not aim to make data publicly available, as in the case of cryptocurrencies. The possibility of greater anonymity, security, privacy and transparency of data is recognized by more and more businesses as an opportunity to improve their traditional way of doing business.
In addition to data security concerns, one should not lose sight of the user’s perspective that the use of the system should be simple and accessible at all times. Wouldn’t it be useful to have our own digital “folder” in which to store the data we need to function in the online world?
Digital portfolio in one place
How many times have we found ourselves in a situation of waiting in endless lines to sign the necessary documentation? How many times have we been required to submit an identification document for verification in order to verify our identity? How many times have we had to submit the same documentation to different business entities because many of them require access to a similar set of documents? I am sure that we have all found ourselves in these situations countless times and for each of them we needed a different “prop” whether it was a personal identification document, a folder with collected documents or a simple pencil for signing.
Just as there is a need for a digital wallet in which we store cryptocurrencies, so in the modern world there is a need for a digital portfolio that allows user identification and authorization data to be in one place, available on click.
Recognizing this need and desire to solve the identified problem was our main goal when designing and developing a product that allows:
- Creating and managing a digital identity
- Quick and easy authentication and authorization using a combination of different factors (biometrics, password, device data, etc.)
- Document management store for storing and managing documents
- Digital signing of documents in accordance with eIDAS regulations
In each of these system modules, the most important thing is that the data is securely stored, the user has complete control over their data, the user grants access to data and the entire user portfolio defined in this way is available through a few clicks on the application.
Digitization opens up new possibilities and requires a new way of thinking and a willingness to accept change. Both companies and individuals are embracing constant change and finding their place in the digital world in development. Users recognize the benefits through increased data security but also visibly facilitate the fulfilment of daily obligations. On the other hand, companies approach customers more easily and gain their trust. It also significantly reduces costs and business time due to the reduced need for physical interaction and the growing habit of performing activities using digital devices. We strive to listen to these needs of businesses and users and to support different sectors, to facilitate traditional business speedy transition into the digital realm.