Banks and other financial institutions today have to satisfy a whole range of regulatory requirements that focus on customer due diligence and preventing money laundering. A potential solution for the scalable and efficient implementation of customer screening processes is the concept of self-sovereign identity (SSI) using decentralized Identifiers (DID) and verifiable credentials. Based on the problem, the requirements of a practical solution were defined, which served as a starting point for the design of the architecture using UML diagrams and the selection of appropriate technologies used in the implementation. As part of the thesis, we created an application that represents a practical demonstration of the use of SSI to meet the requirements of customer due diligence laws and know your customer (KYC) guidelines to conduct transactions on the Ethereum blockchain. The functionalities of SSI were developed using the Veramo framework and the ethr DID method, which is based on the Ethereum blockchain. With the aim of enabling a visual review of the compliance of transactions with the aforementioned legislation, the application then stores data about executed transactions and metadata about verifiable credentials to the local Neo4j database, which is used to visualize blockchain data in the form of a graph. We have found that the implementation of SSI using DID and verifiable credentials based on the ethr DID method provides a simple and efficient mechanism for issuing digital credentials that can be used to demonstrate compliance with customer verification laws. We highlighted the distinct advantage of reusing issued credentials, the impossibility of falsifying issued credentials and the fact that issued credentials are store exclusively on user's personal device and not in any centralized databases. In addition, a potential regulator can easily check whether clients (addresses and transactions on the Ethereum blockchain) have the appropriate certificates using the visualized graph.
|