OpenBank - banking platform for e-money management based on blockchain technology (version 0.2)

Similar documents
TokenD principles. A framework for enterprise tokenization platforms. Distributed Lab

Tokenization. revision 2 Oct, 6, Dr. Pavel Kravchenko Vladimir Dubinin Distributed Lab

Genesis Block Development

HOUTON TOKEN WHITE PAPER

CryptoCarbon (CCRB):

CryptoCarbon (CCRB):

X Infotech Banking. Software solutions for smart card issuance

DECENTRALIZED NETWORK FOR DATA EXCHANGE AND STORAGE "MASTERCHAIN" Version 1.1 WHITEPAPER

TAS CASHLESS 3.0 FOCUS ON. The absolute framework for electronic payment management. CASHLESS 3.0: the ultimate. payment experience

Copyright 2014 XiploTeq, All rights reserved Infopack

OLXA COIN WHITE PAPER DECENTRALIZED APPLICATIONS AND CROWD-PROJECTS THROUGH THE BLOCKCHAIN TECHNOLOGY.

Digital Fiat Currency. The true alternative to physical currency

WULET: a blockchain platform for the loyalty programs implementation and bonus points exchange

Integrative Wallet. Whitepaper. An electronic version of this whitepaper is available at iwtoken.com.

SWISSCOIN Whitepaper

Blockchain-led Software Development is the Way to Go

Getting Started Guide Vipps via Netaxept

Whitepaper. Abstract. Introduction

Getting Started Guide MobilePay via Netaxept

X12 Coin Whitepaper 1 / 18

Abstract 3. Merchants 3. End-user 4. External Merchants 5. Blockchain 5. Development 6. Liquidity and Exchange Network 6.

Lawrie Brown Grigori Goldman

PDX COIN.

Blockchain Role in Smart Cities/IoT Security A Cryptographic Perspective!

commonwealth environment for digital energy business

PDX COIN

digital currency Be smart, be part WHITE PAPER WELCOME TO SMART NODE PROJECT

Table of Contents ABSTRACT... 1 INTRODUCTION... 2 NRP TOKEN FUNCTION... 2 MAIN PAYMENT FOR TRANSACTION IN MARKET PLACE... 2

Getting Started Guide MobilePay via Netaxept

Content. Abstract 3 Background 4 Problem 4 Solutions 5 What is Wrappy? 5 Token Distribution 8 Future Vision 8 Known Limitations 9

On the cusp: proposals to advance the cash reform

Samsung SDS Nexledger. A Blockchain Platform and Solution

ACCEPTING LITECOIN. Harnessing the power of cryptocurrency for your business

HITACHI BIOMETRIC SOLUTIONS FOR RETAIL BANKING. Hitachi s digital security portfolio includes a comprehensive biometric solution for retail banking.

EN LINE TOKEN ECONOMY white paper ver.1.2

Proxama PIN Manager. Bringing PIN handling into the 21 st Century

EN LINE TOKEN ECONOMY white paper ver.1.3

E-Money in Russia. Legislation and practice. Jane Zavalishina, CEO Yandex.Money

Corporate Presentation. Author: DIMPAY Foundation

Comparing Cost of Ownership: Symantec Managed PKI Service vs. On-Premise Software

Comparing Cost of Ownership: Symantec Managed PKI Service vs. On- Premise Software

TCOIN TCN B ANK TRADE BY TRADE WHITEPAPER VERSION 0.2

Version 3:

MoneyTap smartphone application powered by Ripple s blockchain technology

WHITE PAPER. The First Decentralized Second-Hand Market Platform. Version 1.0

Digiwage Team. June 2018 V.2.0

1. Merchant initiated transactions for merchant payments

Page1.

Mobile Money in Jamaica. Kavin Hewitt CEO MCONEC Mobile Payment Services

API Gateway Digital access to meaningful banking content

EasyDex Bridge Assets

Innovation at Scale. James Anderson Executive Vice President Mastercard

Blockchain Unleashed TM Forum 1

CRYPTOCURRENCY EXCHANGE

Self-Sovereign Identity

Mobile POS and EMV Acceptance

Electronic Payment Systems and Blockchain as a Constituent Part

GoshenCoin 2.0 Do Business The Smarter Way

Global BTC-Green. Ecological Community in the Green Planet

Direct Operator Billing

THE EVENT INDUSTRY FISSACOIN

0 VENOX- WHITEPAPER. Venox White Paper. The vision to take the lead in the integration of Blockchain technology into mobile devices. July, 2018 V1.0.

Sikka A digital asset transfer platform designed for the financially marginalized.

TAS FOCUS ON. The absolute framework for electronic payment management. cashless 3.0: the ultimate. payment experience IN THIS DOCUMENT

The Future of Blockchain in Quality Measurement. Jason C. Goldwater, MA, MPA Senior Director

Stripe Payment Module

DONCOIN (DCNX) Whitepaper

Retail Channel Management and Corporate Operations. Microsoft Dynamics AX 2012 R3

Bank Products based on DVIIS. DVIIS for Banking Products. E-Cheques in USA. Present Systems. DVIIS System. Digital Value Imprinted Instrument (DVII)

Our Key Expertise. Web. Blockchain development. Applications. Mobile. Applications. Technical audit and troubleshooting. APIs & Integrations

Company Profile

WHITEPAPER. Revolutionary Blockchain Payment Solution

CCPAY PROJECT. WHITEPAPER Version 3.

Payment Exchange. An introduction. 26-May-15. In Commercial Confidence

Table of Contents. Overview. Objectives. Stats. Dear Reader,

Oversight of payment instruments. The Banque de France s approach CONFERENCE. E-payments in Europe

THE NEXT GENERATION CRYPTOCURRENCY REVOLUTION

WHITE PAPER.

Payment Systems : Standardized QR Code in Thailand. Financial Technology Department Bank of Thailand

WE ARE PART OF THE GLOBAL PAYMENT REVOLUTION

SHE Coin IS DIGITAL CASH

FSMN: A Payment Gateway and Merchant Settlement Services for Instant, Secured Global Payments

OLYMPIC COIN IT CHANGES EVERYTHING

CRYPTOCURRENCY EXCHANGE

My new Apple device will have a payment feature. How do I set it up?

BIONIC WHITEPAPER Copyrights 2018 BIONIC

Ticketing: How ACME s Cloud-Based Enterprise Platform Benefits Your Business

Posted: 1/30/2018 by Fidelity Viewpoints Learn how this digital currency works, plus some risks to consider

WHITEPAPER JUNE 2018

BIONIC WHITEPAPER Copyrights 2018 BIONIC

Universal Decentralized Asset Platform (UDAP)

Dear Merchants, RWD Transaction Panel. Cards introduction Beginning of cooperation with Elavon, joining PONIP, obtaining PCI DSS Level 1 certificate.

Payment Services Directive 2 and other European Laws on Payments Systems Ayse Zoodsma-Sungur

X Infotech Government

BRIDGE INSURANCE SOFTWARE SUITE. Modern Approach For An Increasingly Complex Market

IBM Payments Gateway. Simplify your payments acceptance with prebuilt, ready-to-deploy global payments solutions and services on the cloud

PAYMENTS CONFERENCE VICTORIA FALLS Sustaining Digital Payments

SIMPLE FUND 360: AN AUDITORS GUIDE. Australia s leading cloud SMSF admin solution AN AUDITORS GUIDE.

Test Token Management

IBM Payments Gateway

Transcription:

OpenBank - banking platform for e-money management based on blockchain technology (version 0.2) Dr. Pavel Kravchenko, Sergiy Vasilchuk, Bohdan Skriabin Abstract Traditional banking technology has multiple problems that prevent its usage in emerging environment of internet payments. It has high down installment costs, solutions and APIs are proprietary and cannot be modified by a bank, security and reliability depends on expensive hardware and software modules. All these factors lead to high transaction cost, inability to interoperate and complex maintenance procedures. OpenBank solves this problems by introducing an open-source platform for e-money management that includes all the necessary modules for a bank, based on modern technology and security practices. Total cost of ownership of the banking system therefore can be reduced 10 times compared to traditional technology while maintaining higher level of security, transparency and speed of transactions. 1 Introduction OpenBank is an open-source banking system for managing electronic money that uses blockchain. We have developed a complete stack of technologies for bank sector, which aims to eliminate technological barriers between financial institutions. Transparency and reliability of the system is guaranteed by cryptography. The system includes the following modules: core - cryptographic ledger, transaction engine, emission and accounting system backoffice - key, admin, currency, fee management, statistics connectors - integration with core banking system business logic - rules and restrictions implemented according to regulation about e-money in Ukraine (harmonized with those in EU) identity management - for customers, agents, merchants frontend - web/mobile wallets for customers, agents merchant - IPN, wallet, test shop, e-commerce plug-in auxiliary - invoice, prepaid cards management, exchange, key server processing - payments between banks processing module clearing - management of clearing instructions in a central bank

We didn t change the principles of the system from the perspective of the banker. Its primary goal is to significantly (at least 10 times) reduce the total cost of ownership (TCO) for core banking system that processes e-money and extend its functionality. We used blockchain technology to achieve the following properties: user account management by a cryptographic key ensure reliability, integrity and transparency of history of accounts processing and backup transactions using standard hardware and software usage of smart contracts Users, banks, merchants and financial institutions can customize the interface to suit their needs. To ensure the security and resiliency of the system certified cryptographic algorithms are used. Similar algorithms are used by banks and other financial organizations now to protect their data. The issue and distribution of currencies is fully controlled by the bank. The process of delivering e-money to customers is done through financial institutions that receive e-money from the bank and send to end users or agents. OpenBank generally doesn t require availability of specialized equipment, such as ATMs and PoS. In the simplest case, a mobile wallet of the user or merchant is enough to start operating. Any transaction that users or administrators initiate are ordered and stored in an unchanged way. This means that one cannot cancel or modify the operation done in the past. At the same time the full history of changes for all the balances can be provided for audit. 2 Benefits Due to the use of modern technology and high level of automation transaction processing costs are ten times less than traditional banking technologies. the level of transparency of the system allows auditing individual account transactions or a complete system. increased security of a bank ledger (insiders or hackers can t change the ledger without knowing users keys). increased transparency of all the transactions (all actions, including fee changes are transactions). using the same technologies and data formats by banks makes interbank payments very fast. The process of payment takes 5 seconds.

3 Terms Terms are provided according to the directive of National Bank of Ukraine about e-money ( http://bank.gov.ua/doccatalog/document?id=72246 ). The system is flexible so if necessary, the number of roles can be changed. Electronic money - the unit of value processed by electronic device which is considered as a commitment of the issuer to a person and accepted as a means of payment by others. Account - a set of data about the registered user, balance etc, which is necessary for the authentication of their actions. Stored and processed by the core layer of the system. Balance - the amount of currency that corresponds to a particular account at some time. Operation - a single action from a limited set of all possible actions in the system that determines changes of a certain account. Transaction - a group of sequenced operations that change the state of accounts that can be atomically approved or rejected by the core. Payment - successfully accepted transaction which transfers electronic money from the balance of one account to another. Prepaid cards - single-purpose preloaded cards with e-money. A special type of account that can receive only one payment and be used to top up user s balance. Prepaid cards are used as a tool of distribution of e-money. Key pair - a pair consists of public and private keys for digital signature scheme used by the system to perform the user authentication and enforcement of payments. State of the system - a set of states of accounts at a certain point of time. Consensus - an agreement of the set of nodes about the state of the system at a certain point of time. Node - a computer, that does checking of all the transactions in the system, distributes them to other network nodes and monitors changes of the state of the system. Works under the supervision of a specialized software.

Validator - a node, that participates in the reaching agreement with other nodes, using a consensus protocol. Blockchain - an ordered sequence of blocks, where each block consists of a set of transactions which are the result of the consensus between nodes. Transaction acceptance - a transaction review process by each node separately, which results in their agreement on a set of new transactions. The transaction is accepted if it is included into a set of approved transactions. 4 Subjects and roles Terms are provided according to the directive of National Bank of Ukraine about e-money ( http://bank.gov.ua/doccatalog/document?id=72246 ). If necessary, the amount of roles can be changed. For example, roles of a general agent, fee agent, the issuer, admin, distribution and settlement agent can be performed by a master.

Each participant system plays certain role in the system. This is needed in order to perform effective management of the system. Depending on their role, the participant can perform specified for them list of account activities. For each type of account there - different rules and key management policies are defined. Master - the main responsible entity that can be the only one in the system. Responsible for the appointment and revocation of the following entities: administrators, issuers, general agent, fee collection agent. Administrator - trustee of the master. Responsible for the appointment and revocation of distribution and settlement agents. Could be a few in the system at the same time. Issuer - trustee of the master, can be only one in the system. Responsible for the issuance of electronic money. General agent - an entity responsible for the holding of issued e-money units before the sales procedure through distribution agents. Only one participant in the system. Appointed during system set-up. This entity may be replaced by a master. Fee collection agent - an entity responsible for the holding of all fees that bank collects. Only one participant in the system. Appointed during system set-up. This entity may be replaced by a master. Distribution agent - an entity that provides e-money to the market. A few entities could work in parallel in the system. Receives e-money from the general agent and transfers it to end users. Can create prepaid cards as a channel of e-money distribution. Settlement agent - an entity that buys e-money from the market (does withdrawal of electronic money from circulation). A few entities could work in parallel in the system. Can receive electronic money from the end users and merchants and send it to the general agent. Merchant - an entity that accepts electronic money in exchange for goods or services. Many entities could work in parallel in the system. It can only receive electronic money from the end users and transfer only to the settlement agent. It can also perform full or partial refund. User - an entity that uses e-money. In case of Ukraine, the user is considered anonymous. In the case of the EU user must provide a name and a phone number to complete the registration. Registration in the system is performed automatically during the first incoming payment. User

can receive payments from the distribution agent, from another end user, from prepaid cards, from merchant, as the refund transaction. 5 Architecture The following is a description of the main system components and their functionality. OpenBank based on micro-service architecture where modules interact via RPC. Core - keeps a list of accounts in the private blockchain and does processing of transactions. Currently uses modified codebase of Stellar. Back office - the main interface of the bank. Allows to perform key, administrators, currency, fee management, blocking IP addresses, view statistics.

Integration Module - provides monitoring and processing transactions in the core banking system, that are related to electronic money, and initiates transactions in the core banking system, which should be performed as a result of certain events in the OpenBank (such as buying and selling of electronic money). Business logic - module that implements a set of rules and restrictions related to electronic money, such as the maximum balance of the wallet, the maximum daily / annual turnover in the wallet and others. Identity management - handles requests for registration of agents, users, merchants, allows to set limits and block the transaction. User - web and mobile applications for users that implement basic functions - such as viewing balance, transaction history, payment, invoice creation, change of personal info, scanning prepaid cards. Merchant - a module that implements the IPN, web and mobile applications, test store, e-commerce plug-in for WordPress. Key server - a module that stores private keys of participants in an encrypted form and provides an API to get them. Blockchain viewer - a module that provides information about transactions and statistics in an easy to view format. Invoice module - a module that allows to manage invoices and see statistics. Prepaid cards - a module that allows the agent to create prepaid cards, view statistics of their usage and print cards on paper. Exchange - a module that allows the agent to handle requests to purchase electronic money using local payment systems

Accounts Each user has its own account. Each account linked to at least one key pair: public key and private key. There is a specific set of operations in order to perform any action. Any operation is signed by its initiator and, if approved by the core, changes the current status of the system. Account balance can be changed only by payment transaction. This transaction reduces the balance of the sender and increases the balance of the recipient. This change is atomic. Account of the master can have a negative balance, because it is responsible for the emission of e-money.

Transactions There is a defined set of operations that can be executed by participants. The set of operations that can be executed by a certain entity depends on its role in the system. The entities generate a transaction in order to execute operations. A set of consequent operations that change the state of accounts is included in the body of the transaction. Each operation that is a part of the transaction is signed by the private key of the initiator. A signed transaction is sent to the network. Validation of the transactions is performed during several stages on the validator. The transaction is accepted by the system if it passes all the necessary checks. Approved transactions are stored in chronological order in the blockchain. Nodes Blockchain is stored on each node of the network. By default, bank owns all of them. Some nodes can only keep a copy of the blockchain but not participate in the process of validation. These nodes can play the role of a gateway or backup device. Validators can be in the protected bank network and access to them will be done through the gateway nodes. Fees Each transaction may pay a fee that is taken by a bank. OpenBank allows flexible configuration of the types of transactions and fees. Fee may be fixed or represent a percentage from the transaction. For example, bank may set a fee for money transfer operation from the user to the merchant at a rate of 1% and the same time provide 0.1% for p2p transfers between users. Each fee taken goes to the account of the fee agent. Fee can be set-up for: - any operation with a particular currency - a certain direction of money flow in some currency between different roles - a certain account when money is sent to anyone or particular role in some currency App of a user User interacts with the system by using the app or a web-site. In this app a user can obtain the current status of their account. Also with the app, user can create, sign and send a transaction to the network. During the registration the key pair is generated.

6 Flow Emission Adding of e-money into circulation is done by an emission process. Emissions in the system is centralized and fully controlled by the bank. The process of the emission is in a form of payment from master account to the account of the general agent, which does further distribution of e-money. Settlement agents perform withdrawal of e-money from the market by a payment transaction to the account of the general agent. For a simplified case, the general agent can be the master himself. Transaction life cycle

The user creates a blank transaction body. The user creates a set of operations and adds it to the body of the transaction. Then a set of required signatures is added. Signed transaction can be sent for processing. In general, there is no possibility to withdraw a transaction that was processed. The transaction comes to one of the nodes of the system, to the core level. The node, which received it first, checks the set of operations signatures and the ability to perform the actions that are defined by the set of operations. If the transaction is defined as a correct one, the node transmits it to all other nodes with which it is connected, otherwise the node rejects the transaction. The set of validators reach agreement on new transactions. Validation process is such an interaction, when a set of new transactions is defined and approved - and that becomes the new state of the system. Decision making process is defined by separate rules of interaction - consensus protocol. 7 Security (*more in the corresponding security whitepaper that will follow) To ensure the security and resiliency of the system, certified cryptographic algorithms are used. OpenBank supports various cryptographic algorithms and libraries that can operate simultaneously. User key management Each participant system has a certain type of account. Account contains a key pair: public key and private key. The public key is a unique identifier of an account and can be told to anyone. Users generate key pairs on their computers or smartphones. During the first payment to the account, the system will record it as a new account of an anonymous user and a new balance. After this, the key of the user takes effect. Private key should be kept secret. Users can store private key at a local or remote key storage. The system will not accept any other evidence of ownership of the account, if the private key has been lost. In general, the loss of the private key from an anonymous account means that the balance becomes inaccessible and actually lost. Access to the account of a user can only be done by the user. Even the owner of the system can not change the balance of the user s account - it is impossible without the possession of a private key. Every single user generates, stores and processes his/her own private key.

If the user passed the KYC process and their account is not anonymous anymore, it can regain access to the account in case of a loss. In this case, the user initiates the recovery process by approaching the system administrator. The administrator performs authentication of the user and freezes their lost account (by a corresponding system transaction). Then the administrator can transfer the same amount to the new account of the user. Admin & Agent key management Master, general agent and fee agent generate their key pairs before the launch of the system. During the launch these keys are set as active. Administrators and issuer generate key pairs on their computers. Transaction that approves their accounts is signed by the master. Distribution and settlement agents generate key pairs on their computers. Transaction that approves their accounts is signed by some administrator. Merchants generate key pairs on their computers or smartphones. Transaction that approves their accounts is signed by some administrator. Non-repudiation Transactions are signed by private key of the initiator and sent to the network. The correctness of the signature confirms that the initiator actually owns the account. Each approved transaction is irreversible. Nobody can change or cancel the transaction that was validated. In order to fix a wrong action there should be another transaction initiated. Transactions are grouped into blocks that are chained by cryptographic mechanisms, so it is impossible to change past transactions without breaking the integrity of the current system state. Confidentiality In general, only bank has access to state of accounts (blockchain). Balance inquiry on account number can be done only with a special transaction that has the signature of the account owner.

8 Conclusion OpenBank solves all the needs of the banking industry in the area of management of electronic money - accounting, internal and interbank processing, management of administrators, fees, users, merchants etc. OpenBank is an open source system that can significantly reduce the total cost of ownership of the bank IT system compared to traditional banking technologies.