Enabling Trust and Privacy-Preserving e-KYC System Using Blockchain
Enabling Trust and Privacy-Preserving e-KYC System Using Blockchain
12, 2022.
Digital Object Identifier 10.1109/ACCESS.2022.3172973
ABSTRACT The electronic know your customer (e-KYC) is a system for the banking or identity provider to
establish a customer identity data verification process between relying parties. Due to the efficient resource
consumption and the high degree of accessibility and availability of cloud computing, most banks implement
their e-KYC system on the cloud. Essentially, the security and privacy of e-KYC related documents stored
in the cloud becomes the crucial issue. Existing e-KYC platforms generally rely on strong authentication
and apply traditional encryption to support their security and privacy requirement. In this model, the KYC
system owner encrypts the file with their host’s key and uploads it to the cloud. This method induces
encryption dependency and communication and key management overheads. In this paper, we introduce
a novel blockchain-based e-KYC scheme called e-KYC TrustBlock based on the ciphertext policy attribute-
based encryption (CP-ABE) method binding with the client consent enforcement to deliver trust, security and
privacy compliance. In addition, we introduce attribute-based encryption to enable the privacy preserving
and fine-grained access of sensitive transactions stored in the blockchain. Finally, we conduct experiments
to show that our system is efficient and scalable in practice.
INDEX TERMS e-KYC, authentication, CP-ABE, key management, access control, blockchain.
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/
49028 VOLUME 10, 2022
S. Fugkeaw: Enabling Trust and Privacy-Preserving e-KYC System Using Blockchain
decryption while the latter approach needs to handle key Regarding the data privacy issue, we propose an optimized
management especially secure key sharing. Specifically, cryptographic protocol by applying symmetric encryption
key revocation and key re-generation in the cloud e-KYC with public key encryption to encrypt the customers’ cre-
environment have not been addressed by any research works. dential files and employ the ciphertext policy attribute-based
If the client would like to withdraw his consent from any encryption (CP-ABE) to encrypt the blockchain transactions.
banks or FIs, they have no right to store the client’s identity Since CP-ABE provides a one-to-many encryption with
data anymore. Accordingly, the data should be completely fine-grained access control, it allows several FIs to access
deleted and the decryption key needs to be revoked. Any common encrypted transactional data in the blockchain of the
banks or FIs sharing the revoked key need to regenerate a same client based on the access policy defined. Specifically,
key to fully guarantee that unauthorized banks or FIs cannot we devise the policy update algorithm to enable efficient re-
access the client’s data stored in the cloud. encryption based on a less complicated policy tree structure.
In addition to the aforementioned problems, exiting cloud Finally, our system allows users to update their e-KYC data
e-KYC platforms do not provide shared information for the with any banks or FIs engaging in the blockchain. The
transaction occurring in the e-KYC verification available for updated e-KYC data is broadcasted in the ledger and the
traceability. synchronization of the updated data is done by the responsible
Recently, blockchain technology has attracted huge inter- smart contract.
est by a number of enterprises in many industries including This paper is structured as follows. Section 2 presents
the banking and financial sector. There is a growing interest in related works. Section 3 explains the theoretical background
using e-KYC platforms that use blockchain and cloud system. used in our proposed approach. Section 4 presents our
Blockchain technology truly promotes the decentralized sys- proposed system model. Section 5 provides the security
tem enabling transparency, agility, trustworthiness, and cost- analysis of our scheme. Section 6 provides the evaluation
effectiveness for transaction processing and management in analysis and experiments. Section 7 gives conclusion and
multi-user and multi-provider environment. In the blockchain future work.
system, a smart contract which is a self-executing program
that can be implemented on the blockchain enables the II. RELATED WORKS
automated execution of system logics or functions efficiently. At present, blockchain technology and smart contracts have
This empowers the usability and programmability of any been leveraged in many application areas. Particularly,
systems running on the blockchain network. blockchain-based identification and authentication frame-
For years, a number of research works related to work have been proposed by many works [1], [2], [7], [8],
blockchain-based KYC have proposed to deliver the decen- [12], [15] and it has been demonstrated that a blockchain is
tralized authentication and verification process. However, efficient for identification and authentication management.
there are shortcomings that have not been fully solved However, the process of e-KYC is much more complicated
by existing works. First, there are no works that provide than simple authentication task. Rather, it involves secure
electronic client’s consent function with the solid non- credential registration, KYC document management, secure
repudiation property which is an essential requirement of and lightweight verification process between clients, multiple
privacy regulations such as General Data Protection Act FIs, and a dedicated blockchain platform. In addition, new
(GDPR) [18] in the KYC registration process. Second, most kinds of remote and spoofing attack to the KYC system
existing works overlook the privacy of transaction stored in need to be countered [4]. Recent research works related to a
the smart contract and blockchain. In addition to the identity blockchain-based e-KYC focus on devising a framework for
or credential documents that are encrypted on the cloud secure user identity management and credentials verification
storage, the privacy of all e-KYC processing transactions as well as optimizing the communication overhead of the
such as transaction status sharing, data origin authentication, interaction among financial institutes.
and smart contract that contains personal data stored in the In [3], the authors proposed a KYC document verification
blockchain should be preserved. Finally, most works have a scheme using the IPFS system and blockchain technology.
limited feature to allow the customers to access and update In this approach, the customers register their identity
their credentials located on the cloud service paid by the FI. information with the bank and their credentials are hashed
In this paper, we aim to address such research gaps and encrypted by using gpg4win as an encryption tool.
by introducing a secure and efficient blockchain-based e- However, this paper does not concern itself with the privacy
KYC documents registration and verification process with and traceability of transactions in the blockchains.
lightweight key cryptographic protocols run in the cloud In [5], Shabair et al. proposed a blockchain-based KYC
Interplanetary File System (IPFS). To facilitate the foun- in the form of proof-of-concept (PoC) system. The proposed
dational privacy requirement regarding the user’s consent system was conducted in private blockchain environments
collection, we develop a smart contract to generate and over the Grid’5000 a large-scale distributed platform. In [6],
enforce the consent to be digitally signed by the customer. Norvill et al. presented a system that allows automation and
The consents will be systematically stored in a blockchain permissioned document sharing over the blockchain to reduce
having tamper-proof property which is useful for auditing. the KYC process. In [9], Allah et al. proposed a Hyperledger
Fabric network for KYC optimization model. In this model, Recently, Dwevedi et al. [25] proposed a Zero-Knowledge
the customer has full right to own the smart contracts in Proof (ZKP) authentication scheme and the encryption
which customer KYC data is stored in the distributed ledger scheme called ZKNimple for supporting lightweight encryp-
database. However, these works did not address the security tion in IoT-based applications. With the proposed scheme, the
and key management issue of KYC process. authentication is achieved through the ZKP property while
In [10], Kapsoulis et al. proposed a way to implement e- the security of key exchange and data is preserved through
KYC system using smart contracts and IPFS. In this work, password-authenticated method and Feistel encryption.
KYC document operations such as create, read, update and In [26], Bhaskaran et al. proposed a design and implemen-
delete are done through the set of smart contacts. The tation of a smart contract for consent-driven and double-blind
KYC documents are stored in the IPFS and through the data sharing on the Hyperledger Fabric blockchain platform.
private contract method. The security of the KYC transaction The smart contract for generating customer’s consent was
is managed by specific nodes in the blockchain with developed and published on the blockchain. The authors also
administrator privileges. However, there are no encryption presented public key sharing on the blockchain to multiple
used to protect the KYC data. providers for encrypting the document. However, the consent
Regarding the privacy preserving technique applied for provided by the customer has no digital signature binding.
securing blockchain database, CP-ABE has received the To the best of our knowledge, we provide the first attempt
attention of several research works [17]–[21], [24], [26], applying CP-ABE for a blockchain-based KYC management
[27]. In [17], Bramm et al. proposed a Blockchain-based with the user-controlled capability for protecting sensitive
Distributed Attribute-Based Encryption (BDABE) scheme data contained in the blockchain. Existing schemes focus on
allows the attributes to be created and deleted dynamically protecting data files shared in cloud while the privacy of
at any time by a transaction on the blockchain. The pro- transaction data in the blockchain is overlooked. In addition,
posed scheme supports mapping between multiple attribute none of the above research has addressed the practical
authorities to assign the attributes to the users. It offers the security and privacy issue with the aim of achieving
flexibility for supporting secure and efficient user attributes both efficient security and privacy management compliance
management in the blockchain system. related to customer consent using digital signature in the e-
In [18], Fan et al. proposed a traceable data sharing KYC system.
scheme using blockchain and CP-ABE. In this scheme, data
is encrypted by a CP-ABE method and a secret key can be III. BACKGROUND
generated based on the system parameters available in the This section describes the concept of blockchain used to
private blockchain. In the blockchain, the data owner can support identity and access management system. Then,
obtain the identity of data consumer and control data sharing we provide the basic theory of CP-ABE.
based on the predefined access policy.
Yuan et al. [19] and Wu et al. [20] employed a CP-ABE
approach to support data privacy protection and fine-grained A. KYC PRIVACY AND SECURITY COMPLIANCE
sharing in the blockchain system. In these schemes, any As the emergence of FinTech innovation and virtual banking
changes to the data are recorded on the blockchain and the has revolutionized the global financial service industry,
access policy is enforced to manage the different permissions several front-end services have shifted online. e-KYC is
of access. If there is any key abuse case initiated by any one such service that regulators of many countries have
malicious users or authorities, the system provides audit trails implemented policies that allow FIs to implement e-KYC
to support the traceability of cryptographic operations and verifications and approve customer applications. Based on the
transaction activities. thorough review of a survey of KYC regulations done by Price
Guo et al. [21] proposed a traceable attribute-based encryp- Waterhouse and Coopers [28], Technical Standard for Digital
tion with dynamic access control (TABE-DAC) scheme based Identification Systems published by World Bank Group [29],
on the combination of CP-ABE based linear secret sharing and the report on existing remote on-boarding solutions in
scheme (LSSS) and blockchain. The proposed scheme the banking sector by EU commissions [30], the security and
achieves fine-grained sharing of encrypted private data on privacy-related compliance regulated by financial institutions
cloud, traceability of users’ private key leakage, and flexible around the globe take customer due diligence as the
policy update. The authors also introduced a hash function in core consideration and emphasize the following four com-
the key and ciphertext generation to reduce the computation mon requirements for digital identification including KYC
cost of such operations. compliance.
In [24], Gao et al. proposed a secure ciphertext-policy • Verification of customer identification informationmust
and attribute hiding access control scheme and blockchain. be truly authenticated multiple factors and data sources.
The CP-ABE is used to protect the data stored in the The proof of identity (POI) must be identifiable
blockchain. However, this scheme uses composite order and technically and legally valid without tampering.
groups for their crypto implementation which results in Multiple sources of POI issued by government units and
expensive computation cost. trusted ID providers are required.
TABLE 1. KYC security requirements and our e-KYC trustblock features. It thus came into the public’s view as a proven technology
that facilitates secure and distributed cryptocurrency.
In addition to the decentralized transactional data stor-
age and sharing, blockchain technology can empower its
technical use and implementation flexibility with ‘‘smart
contracts’’. Smart contracts are programmable and self-
executable code that enforce predefined actions whenever a
given set of conditions is met [14]. With the benefits of decen-
tralized model, transparency, traceability, and immutability,
blockchain has been now employed by many application
areas including KYC platform.
Below shows the function of the Master contract that 3. The Verify contract compares the hash value of the
supports e-consent generation and enforcement for the newly submitted value and checks with the one stored
process of client registration and verification process. in Master contract.
4. If the hash value is found, the Verify contract checks
Algorithm 2 Create e-Consent
the address of the files in the DHT in the IPFS to get
Input: Parameter P = (pu1 , . . . , pun ) where p is the purpose the address of the corresponding EncCrenden file and
for processing personal e-KYC credentials Creden, corresponding ESK.
parameter CP denotes the consent process which can be the 5. The Verify contract sends a request to the Master
consent used for registration stage (InReg) or the consent contract to generate e-consent.
used for verification stage (InVer), DS is the data subject or 6. The Verify contract transmits the EncCrenden file
the client, FI is the financial institute, S is the sensitivity and ESK with e-consent to the FI requesting KYC
level which can be Low, Medium, High or Critical verification.
7. The client digitally signs an e-consent and decrypts her
Output:e-Consent C ESK by using the client’s private key PrivKeyclient_id
and use the session key to decrypt the EncCredenFile.
C ← e-Consent() 8. The requesting FI stores the CredentFile of the client
for each purpose P ∈ (p1 , . . . , pn ) ^consent process CP into their local database.
9. The system records the verified transaction and the
do state of the smart contracts in the blockchain.
The details of the Verify contract are shown below.
P,CP ←pu, CP{InReg, InVer}
Algorithm 4 Verification
S ← SensitivityLevel(Low, Medium, High, Critical) Procedure VerifyProcess(requestID, citizenID)
emit DecryptFile(h, privatekey);
CD=ConsentData(Creden, FI,DS) FileEnc = GetImage(h)
return C ← Consent ( CD, P, CP) DecryptAESKey= (ESK, PrivKClient_id )
DecryptImg = TransformData(EncCredenFile, AESKey)
The above algorithm is used to create e-consent where currentClient=Verify(citizenID)
the purpose such as storing, disclosing, transferring, and match=compare(h, currentUser)
exporting credential data of the data subject or client if match == true then
is specified for the registration or verification processing Address = ContractAddress(h)
transaction. The output is an e-consent generated to ask the clientEncCreden =
client to digitally sign. Below is the function for enforcing Address.IPFS.getFile(h.FileID)
e-consent to the client. e-consent(h.userID)
Algorithm 3 Enforce e-Consent CredentFile = DecryptFile(h, privateKey)
Procedure end if
Function enforce_e-consent(clientId) SaveToLocal(CredentFile)
if (msg.sender!= owner) {throw; } end procedure
let privateKey = new
clientId(accounts[selectedAccountIndex].key, ’hex’) D. PRIVACY-PRESERVATION OF SENSITIVE DATA IN
ifconsent==true then BLOCKCHAIN
registerIdentity sign = Due to the decentralized nature of blockchains, e-KYC
registerIdentity(PrivKClient_id ) transaction data related to personal information of clients,
end if state of smart contract are replicated and stored on untrusted
if consent==false {throw;} nodes. This makes the transaction data insecure and it causes
} the issue of personal data privacy compliance.
end procedure In our scheme, we propose an attribute-value encryption
scheme to structure the transaction data in the blockchain
that is encrypted by a transaction key which is a sym-
C. e-KYC VERIFICATION PROCESS
metric encryption for protecting the sensitive data in the
The specific steps of the protocol in this process are as e-KYC blockchain. Since blockchains are tamper-proof,
follows: manipulating and deleting data in the blockchain is difficult.
1. The client submits the request for the e-KYC verifica- The attribute-value pair of PII and smart contract state is
tion by using her citizen id to the FI she is contacting. encrypted by the Master contract done during the TLS
2. The requesting FI calculates the hash value and communication. For instance, the transaction structure of e-
transfers it to the Verify contract. KYC done at time t consists of <TransID, {e-KYC operation,
which provides more intuitive expression of the policy and file for verification. In this scheme, the cost of encryption
less complexity. and decryption are subject to the size of the key and the
In addition, our scheme provides the e-consent based on file. The encryption cost of scheme [21] and [24] relies on
digital signing along with the e-KYC and IDM process. the size of the matrix while our scheme is subject to the no.
Hence, our scheme can satisfy privacy compliance without of leaf nodes in the access tree. In the decryption process,
implementing additional consent management form this the major cost of all schemes varies on the bilinear pairing
application. Regarding the privacy-preserving KYC data and operations and the no. of attributes contained in the key.
transaction, our scheme supports the confidentiality of both However, our scheme is designed to use only the ID attributes
ID data files located in the cloud and sensitive transactions of the legitimate financial institutes joining the blockchain.
stored in the blockchain while the other two schemes only Hence the number of attributes used in the access policy and
concern the privacy of the ID data files. Finally, only our attribute-based decryption is much fewer than those in [21]
scheme allows the policy update to be done efficiently by the and [24] where the number of attributes in the access policies
authorized party. are characterized by the data owners and authorized users.
[9] N. Ullah, K. A. Al-Dhlan, and W. M. Al-Rahmi, ‘‘KYC optimization [26] K. Bhaskaran, P. Ilfrich, D. Liffman, C. Vecchiola, P. Jayachandran,
by blockchain based hyperledger fabric network,’’ in Proc. 4th Int. A. Kumar, F. Lim, K. Nandakumar, Z. Qin, V. Ramakrishna, E. G. Teo, and
Conf. Adv. Electron. Mater., Comput. Softw. Eng. (AEMCSE), Mar. 2021, C. H. Suen, ‘‘Double-blind consent-driven data sharing on blockchain,’’ in
pp. 1294–1299. Proc. IEEE Int. Conf. Cloud Eng. (IC E), Apr. 2018, pp. 385–391.
[10] N. Kapsoulis, A. Psychas, G. Palaiokrassas, A. Marinakis, A. Litke, [27] F. Ghaffari, E. Bertin, N. Crespi, S. Behrad, and J. Hatin, ‘‘A novel
and T. Varvarigou, ‘‘Know your customer (KYC) implementation with access control method via smart contracts for internet-based service
smart contracts on a privacy-oriented decentralized architecture,’’ Future provisioning,’’ IEEE Access, vol. 9, pp. 81253–81273, 2021.
Internet, vol. 12, no. 41, pp. 1–13, 2020. [28] (Jan. 2016). Know Your Customer: Quick Reference Guide, Understanding
[11] J. Bethencourt, A. Sahai, and B. Waters, ‘‘Ciphertext-policy attribute-based Global KYC differences by PWC. Accessed: Feb. 28, 2022. [Online].
encryption,’’ in Proc. IEEE Symp. Secur. Privacy, Oakland, CA, USA, Available: https://www.pwc.com/gx/en/financial-services/publications/
May 2007, pp. 321–334. assets/pwc-anti-money-laundering-know-your-customer-quick-reference-
[12] I. Gutierrez-Aguero, S. Anguita, X. Larrucea, A. Gomez-Goiri, and guide.pdf
B. Urquizu, ‘‘Burnable pseudo-identity: A non-binding anonymous iden- [29] (2018). Technical Standard for Digital Identification Systems Published
tity method for ethereum,’’ IEEE Access, vol. 9, pp. 108912–108923, 2021. by World Bank Group. Accessed: Feb. 28, 2022. [Online]. Avail-
[13] S. Nakamoto. (2008). Bitcoin: A Peer-to-Peer Electronic Cash System. able: https://olc.worldbank.org/system/files/129743-WP-PUBLIC-ID4D-
Accessed: Jan. 8, 2022. [Online]. Available: https://bitcoin.org/bitcoin.pdf Catalog-of-Technical-Standards.pdf
[14] J. P. Moyano and O. Ross, ‘‘KYC optimization using distributed ledger [30] European Commission’s Expert Sub Working Group 1, Electronic
technology,’’ Bus. Inf. Syst. Eng., vol. 59, no. 6, pp. 411–423, Dec. 2017. Identification and Remote Know Your Customer Processes.
[15] A. Chowdhary, S. Agrawal, and B. Rudra, ‘‘Blockchain based framework Accessed: Feb. 28, 2022. [Online]. Available: https://ec.europa.eu/info/
for Student identity and educational certificate verification,’’ in Proc. sites/default/files/business_economy_euro/banking_and_
2nd Int. Conf. Electron. Sustain. Commun. Syst. (ICESC), Aug. 2021, finance/documents/report-on-existing-remote-on-boarding-solutions-
pp. 916–921. in-the-banking-sector-december2019_en.pdf
[16] GDPREuropeanUnionGuidelines. Accessed: Aug. 12, 2021. [Online]. [31] C. Dannen, Introducing Ethereum and Solidity. Berkeley, CA,
Available: https://gdprinfo.eu/ USA: Apress, 2017. [Online]. Available: https://link.springer.
[17] G. Bramm, M. Gall, and J. Schütte, ‘‘BDABE-blockchain-based dis- com/book/10.1007/978-1-4842-2535-6
tributed attribute based encryption,’’ in Proc. 15th Int. Conf. e-Bus.
Telecommun., 2018, pp. 99–110.
[18] Y. Fan, X. Lin, W. Liang, J. Wang, G. Tan, X. Lei, and L. Jing,
‘‘TraceChain: A blockchain-based scheme to protect data confidentiality
and traceability,’’ Softw., Pract. Exper., vol. 52, no. 1, pp. 115–129,
Jan. 2022, doi: 10.1002/spe.2753.
[19] C. Yuan, M. Xu, X. Si, and B. Li, ‘‘Blockchain with accountable CP-ABE:
How to effectively protect the electronic documents,’’ in Proc. IEEE 23rd
Int. Conf. Parallel Distrib. Syst. (ICPADS), Dec. 2017, pp. 800–803. SOMCHART FUGKEAW (Member, IEEE)
[20] A. Wu, Y. Zhang, X. Zheng, R. Guo, Q. Zhao, and D. Zheng, ‘‘Efficient and received the bachelor’s degree in management
privacy-preserving traceable attribute-based encryption in blockchain,’’ information systems from Thammasat University,
Ann. Telecommun., vol. 74, nos. 7–8, pp. 401–411, Aug. 2019. Bangkok, Thailand, the master’s degree in com-
[21] L. Guo, X. Yang, and W.-C. Yau, ‘‘TABE-DAC: Efficient traceable puter science from Mahidol University, Thailand,
attribute-based encryption scheme with dynamic access control based and the Ph.D. degree in electrical engineering
on blockchain,’’ IEEE Access, vol. 9, pp. 8479–8490, 2021, doi: and information systems from The University of
10.1109/ACCESS.2021.3049549. Tokyo, Japan, in 2017. He is currently an Assis-
[22] M. Barati, G. S. Aujla, J. T. Llanos, K. A. Duodu, O. F. Rana, M. Carr, tant Professor with the Sirindhorn International
and R. Ranjan, ‘‘Privacy-aware cloud auditing for GDPR compliance Institute of Technology, Thammasat University.
verification in online healthcare,’’ IEEE Trans. Ind. Informat., vol. 18, His research interests include information security, access control, cloud
no. 7, pp. 4808–4819, Jul. 2022, doi: 10.1109/TII.2021.3100152. computing security, big data analysis, and high performance computing.
[23] PBC (Pairing-Based Cryptography) Library. Accessed: Jan. 5, 2022. He has served as a reviewer for several international journals, such
[Online]. Available: https://crypto.stanford.edu/pbc/
as IEEE ACCESS, the IEEE TRANSACTIONS ON INFORMATION FORENSICS AND
[24] S. Gao, G. Piao, J. Zhu, X. Ma, and J. Ma, ‘‘TrustAccess: A trustworthy
secure ciphertext-policy and attribute hiding access control scheme based
SECURITY, the IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING,
on blockchain,’’ IEEE Trans. Veh. Technol., vol. 69, no. 6, pp. 5784–5798, the IEEE TRANSACTIONS ON CLOUD COMPUTING, the IEEE TRANSACTIONS ON
Jun. 2020. BIG DATA, the IEEE TRANSACTIONS ON NETWORK SCIENCE AND ENGINEERING,
[25] A. D. Dwivedi, R. Singh, U. Ghosh, R. R. Mukkamala, A. Tolba, the IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT, the IEEE
and O. Said, ‘‘Privacy preserving authentication system based on non- TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, COMPUTER & SECURITY,
interactive zero knowledge proof suitable for Internet of Things,’’ J. Ambi- the IEEE SYSTEM JOURNAL, and ACM Transactions on Multimedia Computing
ent Intell. Humanized Comput., pp. 1–11, Sep. 2021, doi: 10.1007/s12652- Communications and Applications.
021-03459-4.