A Blockchain-Based Aadhar System: Distributed Authentication System
A Blockchain-Based Aadhar System: Distributed Authentication System
Corresponding Author:
Vikas Goel
Department of Information Technology, KIET Group of Institutions, Delhi-NCR
Meerut Road (NH-58), Ghaziabad-201206, India
Email: [email protected]
1. INTRODUCTION
A peer-to-peer, distributed ledger innovation is a blockchain. It establishes a confidence-less climate
that can altogether eliminate the reliance on the central authority. The information put away in the blocks of
blockchain may not be meddled with, regardless of whether the attacker comes from the interior framework.
With the advancement of numerous computerized currencies like bitcoin and some more, ethereum is one
such innovation that has the abilities of bitcoin and blockchain [1], [2].
Aadhar is another individual distinguishing proof framework created in India. It is the biggest
computerized verification framework with more than billions of sections of residents of India. There has been
an enormous proportion of doubt and conversation on the prosperity and security of the Aadhar database.
There are worries that software engineers will hack into the data set. There are considerably bigger feelings
of trepidation that any administration or authority with malicious goals will approach the individual data and
area of each Indian resident and, accordingly, the capacity to incur outrageous reconnaissance and focused on
harm [3]. The properties of blockchain may be mixed to make Aadhaar more direct and openly auditable.
All the movements against each client record may be disseminated by the Aadhaar framework to the
blockchain. To uncover the data or the Aadhaar number, no convincing motivation exists. Hashing may be
used for both and record in the blockchain [4].
We have organized the proposed work as: we examine all the background-related work in section 2.
In section 3, we examine existing related work that has been proposed by many researchers. In section 4,
we propose our system with a design pattern. In section 5, we explain the implementation of our proposed
system. In section 6, we conclude the work with some discussion about future work.
2. BACKGROUND
2.1. Blockchain overview
Blockchain is an open, decentralized, distributed framework. Blockchain implies the chain of blocks
that are related to each other to give a decentralized course of action. At first, bitcoin is one of the
fundamental uses of blockchain [1]. As depicted in Figure 1, the blocks are created through a technique:
blockchain, where the new block is gathered, validated, and verified to form a chain of blocks. At first,
blockchain consensus instrument utilizing bitcoin is depicted. Proof of work calculation (PoW) is the
consensus component for blockchain. Each distributed node participates dependent on their processing power
for tackling the secure hash algorithm 256-bit (SHA256) arithmetic issue. Note that this issue is confounded
to tackle anyway easy to verify and validate. The initially distributed node that tackles this math issue will
get the new block accounting right. Every node has blockchain information then this stored data is shared
between one another. The complete blockchain information is kept up on every node. After verification and
validation of shared transactions, the distributed node adds them for the new block [2].
TELKOMNIKA Telecommun Comput El Control, Vol. 20, No. 6, December 2022: 1239-1247
TELKOMNIKA Telecommun Comput El Control 1241
2.5. Aadhar
Aadhaar number is a 12-digit irregular number given by the unique identification authority of India
(UIDAI) (authority) to the inhabitants of India. It is validated in the wake of satisfying the confirmation
methodology laid down by the authority. Aadhar has some natural features like uniqueness, authentication,
financial address, and electronic know your customer (e-KYC). Due to these features, the Aadhaar
identification platform helps the government of India to identify and authenticate residents of India and
deliver different subsidies, benefits directly [3], [4].
The architecture of the Aadhar card system is depicted in Figure 2. In the Aadhaar validation
component, the Aadhaar number is submitted online to the central identities data repository (CIDR) for
checking, alongside different ascribes, including biometrics, based on data or information or reports
accessible with it. Aadhaar authentication provides many ways that a resident can use the device to
authenticate themselves. This authentication is called demographic authentication and/or biometric
authentication at a high level. The resident’s record is first chosen to utilize the Aadhaar number during the
authentication transaction, and afterward, the demographic/biometric inputs are coordinated against the
stored information which was given by the inhabitant during enrolment/update measure. In the input,
fingerprints are matched against all 10 fingerprints stored. The authentication application programming
interface (API) for Aadhaar is not available to anyone. First, with the Aadhaar, a person needs to register, and
then keys will be given to his machine. These keys must sign each authentication request, so Aadhaar knows
where the requests are produced from [3], [4].
The protection and confidentiality of one’s data is the basis of the Aadhaar scheme. The device
employs 2048-bit public key infrastructure (PKI) encryption and hash-based message authentication code
(HMAC) tamper protection to ensure that no one can decode and misuse the data. Resident data and raw
biometrics, also within UIDAI data centers, are kept encrypted. However, the machine does not keep track of
any transactional data [13].
A blockchain-based Aadhar system: distributed authentication system (Vikas Goel)
1242 ISSN: 1693-6930
2.6.1. PoW
A miner must solve a logical puzzle or challenge that is difficult to compute but easy to validate in
proof of a PoW consensus method and reward incentive engineering can be used to maintain a decentralised
ledger. Nodes must mine to report validated blocks according to PoW. This mining method uses resources
such as energy, time, and money, but it forbids harmful reporting without consequences.
3. RELATED WORK
Aadhaar is a centralized strategy to provide the people of India with identification and benefits. It is
plagued by some issues characteristic of a centralized structure, such as central control, and protection of
data. In this work, the researchers explore the technology of blockchain to improvise Aadhaar, a centralized
decentralized model. In this work, Aadhar system with blockchain, the researchers have explored how the
current welfare services could be built [4].
Even though bitcoin was brought into the world with the blockchain, its applications went a long
way past bitcoin or advanced cash. Numerous zones, for example, banking, bookkeeping, the board, and law,
can be reformed by blockchain [6]. Blockchain and its executions are being explored and specialists around
the planet are proposing elective models for validation, approval, and security wellbeing.
The authors use blockchain technology as a stable distributed ledger for internet of things (IoT)
devices that is tamper-proof. The authors suggested a mechanism for assigning each computer a unique
identification (ID) and storing it in the blockchain and they may authenticate one another without the need
for a central authority. The authors build a computer protection scheme in which any state changes in the data
can be instantly detected by hashing critical data (i.e. firmware) into the blockchain [14].
TELKOMNIKA Telecommun Comput El Control, Vol. 20, No. 6, December 2022: 1239-1247
TELKOMNIKA Telecommun Comput El Control 1243
4. PROPOSED MODEL
The proposed model considers the unique Aadhar ID and the smart contract from ethereum. Aadhar
is the unique identification for each citizen of India. The basic building block of the ethereum applications
are smart contacts. The objectives designed solutions for the limitations of Aadhaar are: 1) to develop a
system that uses the decentralized feature of blockchain to authenticate the personal identification: Aadhaar
record; and 2) to create a function that allows others to access the records for verification purposes.
Initially, blockchain was developed to solve the bitcoin peer-to-peer payment system’s dual
spending issue. However, its implementations have worked out positively past its underlying planned use
from that point forward. A portion of the significant properties of a public blockchain is described [23]:
1) decentralized, 2) no trusted authority, 3) immutable records, and 4) auditability.
For making Aadhaar more open and publicly auditable, we can integrate the above blockchain
properties. The Aadhaar scheme will publish all the modifications to the blockchain against each user record.
No need to disclose the data or the number of the Aadhaar. Hashing of both may be used and record in the
blockchain by us. Now, the hash of that data against the hash stored in the blockchain may be validated by
anyone receiving data from the CIDR. If that suits, we know that the data is not treated internally. If not,
there was someone who played with it. In this way, each person may be able to track the changes occurring
against their Aadhaar record and query the authorities immediately. This would make Aadhaar more
transparent, as all client data are stored centrally. Presently, if Aadhaar was based on a blockchain, it may
alleviate most of the worries we talked about above. It would be extraordinarily difficult to hack the database:
not withstanding moving beyond cutting-edge cryptographic security, programmers would need to hack into
a few nodes or 38 servers, as opposed to just one. Until 51 percent of the nodes are undermined, the distributed
consensus nature of the blockchain can stay away from malicious attacks.
Similarly, the surveillance fear may theoretically be alleviated by a properly built Aadhaar with
blockchain: think about the blockchain having a few hubs the UIDAI, a court, a couple of services,
parliament, or some other such body. Numerous organizations will again need to assent and validate it,
instead of one central power, all together for any data to be undermined or any malignant endeavor to
happen. Once more, however, all records would be lasting in their actual presence, and for a record to be
changed, it is critical to negotiate the whole blockchain, which is hard to do. The framework may abuse
different preferences of blockchains, for example, smart agreements, to consequently execute certain
occasions, for instance.
We are certain that for this to occur, possibly there are enormous mechanical issues to be tackled,
however, these will be settled. For example, if a group of participants is granted the sole authority to accept
blocks of transactions in the blockchain network, one might create a huge private or endorsed blockchain that
was handcrafted to requirements. Although blockchain is modern technology, it is nearly tailored for large-scale
implementations like this one, and many countries have benefited from it by placing their money and identities
on blockchains. Blockchain will adapt flexibly to complex and evolving network environments because it is a
transparent, stable, and distributed transaction ledger technology. The system’s stable operation is unaffected
by the loss of some nodes. Malicious nodes cannot infiltrate the network because of distributed authentication
between nodes and if a limited number of nodes are hacked, the ledger cannot be tampered with.
The method of the system is divided mainly into three stages depicted in Figure 3. Before the
authentication method, all devices must register with the blockchain. The computer is authenticated using the
registration method in the blockchain when a device must access the information of some Aadhar.
The computer can check the integrity of the hash of the sensitive data after the authentication process to detect
possible intrusion actions. In the following Figure 4, the mechanism of our proposed system can be seen.
In the context of a transaction, interaction is carried out between devices and the blockchain. Three
different kinds of transactions have been identified by smart contracts. Smart contracts receive requests from
devices and, in turn, execute various operations in the blockchain, such as writing and reading. Figure 5
demonstrates the relationship between devices and blockchains.
5. IMPLEMENTATION
Smart contracts are software that is implemented as part of transaction validation on the blockchain
ledger and run autonomously. A special development transaction, which adds a contract to the blockchain,
is performed to enforce a smart contract in ethereum. Smart contracts are usually written in higher-level
languages such as solidity in ethereum and then converted into EVM bytecode [11], [12].
Solidity is a turing-complete high-level programming language with a syntax close to java script.
It is statically typed and supports inheritance, polymorphism, libraries, and user-defined complex types.
When using solidity to create contracts, they are arranged similarly to classes in object-oriented programming
languages. Variables and functions that decode and alter them make up the contract language, much as in
traditional imperative programming [24].
First, the users use solidity language to write a smart contract for ethereum. Second, they may turn
their solidity smart contract code into an ethereal bytecode. Thirdly, in a smart contract, they add the
bytecode and deploy the transaction into the network. These steps are depicted in Figure 6. Once ethereum
miners have the transaction, they will record it in a block and run the bytecode on the ethereum virtual
machine any time an exchange from this smart agreement is named [25], [26].
TELKOMNIKA Telecommun Comput El Control, Vol. 20, No. 6, December 2022: 1239-1247
TELKOMNIKA Telecommun Comput El Control 1245
The client sends the data packaged in exchange to speak with the smart agreement. Also, the client
communicates with the smart agreement to collaborate with a smart agreement on ethereum by keeping the
principles set out in the smart agreement. On the off chance that fruitful, the smart contract would then
change the status of the nearby record of every miner. The coding parts of these steps are:
a) Step 1. Create smart contracts
For creating a new Aadhaar for an individual, the sample code is given:
Aadhaar is a new contract that is made here. This contract governs all processes and data related to the
uploading of fresh Aadhaar data to the blockchain. To describe an individual’s Aadhaar information, a struct is
generated. The struct Aadhaar detail contains the individual’s name, birth date, address, and phone number.
b) Step 2. Set up ethereum nodes
We have to setup an instance of web3.0 with java script whenever the application starts. This is shown:
import “./css/style.css”
import {default as Web3} from “web3”
var AadhaarContract = contract (AadhaarArtifacts)
window. App = {start: function ()
{Aadhaar Contract. set Provider (window. web3. Current Provider) A adhaar
Contract.defaults({from: window.web3.eth.accounts[0], gas:6721795})
Aadhaar: function ()
{var ind_name = $(“#id-inputname”). Val ()
var ind_address = $(“#id-inputadd”). Val ()
var ind_mobilenumber = $(“#id-inputph”). val ()
var ind_email = $(“#id-inputemail”). Val ()
var ind_birthdate = $(“#id-inputbdate”). Val ()}
window. App. Start ()})
A blockchain-based Aadhar system: distributed authentication system (Vikas Goel)
1246 ISSN: 1693-6930
7. CONCLUSION
The proposed system may make Aadhaar more open and secure, as all user documents are managed
in a distributed manner. The proposed framework may exploit other advantages of blockchains, such as smart
contracts, to automatically execute certain events in a distributed way. The Aadhaar initiative is very
significant and critical. It must not be harmed by the privacy issues that accompany it, or by the fear that it
will be compromised. We must take the initiative that the supreme court has given us. The proposed system
registered the unique Aadhar ID in the blockchain using smart contacts of ethereum so that this unique ID may
be authenticated in a peer-to-peer network without a central authority. For securing the unique Aadhar ID,
the proposed framework uses hashing technique. The hashed data stored into the second version blockchain
i.e. ethereum where any change in the state of the data may be possible to detect instantly.
REFERENCES
[1] S. Nakamoto, “Bitcoin: A peer-to-peer electronic cash system,” in Decentralized Business Review, 2008, p. 21260. [Online].
Available: http://nakamotoinstitute.org/bitcoin
[2] M. M. Lall, “Blockchain,” in The Blackwell Encyclopedia of Sociology, 2007, pp. 1–6, doi: 10.1002/9781405165518.wbeos1559.
[3] A. Mukherjee and L. Nayar, “Aadhar, a few basic issues,” Outlook, 2011. [Online]. Available:
https://dataprivacylab.org/TIP/2011sept/India4.pdf
[4] S. Karan, “Aadhaar & Blockchain: opportunities and challenges for India,” PhD Thesis, Massachusetts Institute of Technology,
2018. [Online]. Available: http://hdl.handle.net/1721.1/118523
[5] M. K. Pratt and A. S. Gillis, “Blockchain,” TechTarget.com. [Online]. Available:
https://www.techtarget.com/searchcio/definition/blockchain (accessed Jan. 09, 2021).
[6] A. Bahga and V. K. Madisetti, “Blockchain platform for the industrial internet of things,” Journal of Software Engineering and
Applications, vol. 09, no. 10, pp. 533–546, 2016, doi: 10.4236/jsea.2016.910036.
[7] R. Böhme, N. Christin, B. Edelman, and T. Moore, “Bitcoin: Economics, technology, and governance,” Journal of Economic
Perspectives, vol. 29, no. 2, pp. 213–238, 2015, doi: 10.1257/jep.29.2.213.
[8] G. Wood, “Ethereum: A secure decentralized generalized transaction ledger,” Ethereum Project Yellow Paper, vol. 151, pp. 1–32,
2014, [Online]. Available: https://files.gitter.im/ethereum/yellowpaper/VIyt/Paper.pdf
[9] A. M. Antonopoulos and G. Wood, Mastering ethereum: building smart contracts and dapps. O’reilly Media, 2018. [Online].
Available: https://dl.ebooksworld.ir/motoman/Mastering_Ethereum_Andreas.M.Antonopoulos.www.EBooksWorld.ir.pdf
[10] Ethereum Classic, 2017. https://ethereumclassic.github.io/. (accessed Jan. 09, 2021).
[11] J. Cook, “Ethereum development Tutorial,” Technical report, Ethereum, 2017. [Online]. Available:
https://ethereum.org/en/developers/tutorials (accessed Jan. 09, 2021).
[12] “Ethereum community,” Ethereum Homestead Documentation, 2017. [Online]. Available:
https://buildmedia.readthedocs.org/media/pdf/ethereum-homestead/latest/ethereum-homestead.pdf (accessed Jan. 09, 2021).
[13] “UIDAI and AADHAR,” www.uidai.gov.in (accessed Apr. 18, 2021).
[14] D. Li, W. Peng, W. Deng, and F. Gai, “A blockchain-based authentication and security mechanism for IoT,” in 2018 27th
International Conference on Computer Communication and Networks (ICCCN), 2018, pp. 1–6, doi: 10.1109/ICCCN.2018.8487449.
[15] N. Shi, “A new proof-of-work mechanism for bitcoin,” Financial Innovation, vol. 2, no. 31, 2016, doi: 10.1186/s40854-016-0045-6.
[16] S. V. J. B. Gracia, D. Raghav, R. Santhoshkumar, and B. Velprakash, “Blockchain based Aadhaar,” in 2019 3rd International
Conference on Computing and Communications Technologies (ICCCT), 2019, pp. 173–177, doi: 10.1109/ICCCT2.2019.8824892.
[17] M. Conti, E. S. Kumar, C. Lal, and S. Ruj, “A survey on security and privacy issues of bitcoin,” IEEE Communications Surveys &
Tutorials, vol. 20, no. 4, pp. 3416–3452, 2018, doi: 10.1109/COMST.2018.2842460.
[18] M. T. Hammi, B. Hammi, P. Bellot, and A. Serhrouchni, “Bubbles of Trust: A decentralized blockchain-based authentication
system for IoT,” Computers & Security, vol. 78, pp. 126–142, 2018, doi: 10.1016/j.cose.2018.06.004.
[19] J. Ma, S. -Y. Lin, X. Chen, H. -M. Sun, Y. -C. Chen, and H. Wang, “A blockchain-based application system for product anti-
counterfeiting,” IEEE Access, vol. 8, pp. 77642–77652, 2020, doi: 10.1109/ACCESS.2020.2972026.
[20] N. Alzahrani and N. Bulusu, “Block-Supply Chain: A New Anti-Counterfeiting Supply Chain Using NFC and Blockchain,” in
TELKOMNIKA Telecommun Comput El Control, Vol. 20, No. 6, December 2022: 1239-1247
TELKOMNIKA Telecommun Comput El Control 1247
Proceedings of the 1st Workshop on Cryptocurrencies and Blockchains for Distributed Systems, 2018, pp. 30–35,
doi: 10.1145/3211933.3211939.
[21] A. L. Vivar, A. L. S. Orozco, and L. J. G. Villalba, “A security framework for Ethereum smart contracts,” Computer
Communications, vol. 172, pp. 119–129, 2021, doi: 10.1016/j.comcom.2021.03.008.
[22] A. Kumar, K. Abhishek, P. Nerurkar, M. R. Ghalib, A. Shankar, and X. Cheng, “Secure smart contracts for cloud‐based
manufacturing using Ethereum blockchain,” Transactions on Emerging Telecommunications Technologies, vol. 33, no. 4, 2022,
doi: 10.1002/ett.4129.
[23] G. O. Karame, E. Androulaki, M. Roeschlin, A. Gervais, and S. Čapkun, “Misbehavior in Bitcoin: A Study of Double-Spending and
Accountability,” ACM Transactions on Information and System Security, vol. 18, no. 1, pp. 1–32, 2015, doi: 10.1145/2732196.
[24] “Solidity programming language,” https://soliditylang.org (accessed Apr. 18, 2021).
[25] C. Dannen, Introducing ethereum and solidity, Berkeley, CA: Apress, 2017. doi: 10.1007/978-1-4842-2535-6.
[26] R. Tas and O. O. Tanriover, “Building A decentralized application on the ethereum blockchain,” in 2019 3rd International
Symposium on Multidisciplinary Studies and Innovative Technologies (ISMSIT), 2019, pp. 1–4. doi: 10.1109/ISMSIT.2019.8932806.
BIOGRAPHIES OF AUTHORS
Mukul Aggarwal has received his B.E. degree in CS&E in 2004 and MTech in
CS&E in 2007. He is working as an Assistant Professor in the Department of Information
Technology, Krishna Institute of Engineering & Technology, Ghaziabad, (Uttar Pradesh),
India. His areas of interest are Artificial Intelligence, Blockchain, Data Mining, and Soft
Computing. He can be contacted at email: [email protected].