Central Bank Digital Currency -a Blueprint

eRupiah: RBI’s Virtual Cash

Key words: Central Bank Digital Currency, public key-private key cryptography, Digital currency wallet, Corruption,

Introduction: No currency has ever been used in the human history which did not have the stamp of an authority. Bitcoin is a medium of payment but it is not money for the same reason. Nonetheless, the technology underlying Bitcoin is a significant one with great potential. A central bank, issuer of paper currency, can use some selected components of Bitcoin technology to replace paper currency with virtual currency, retaining all the important features of paper currency. The most important of them is that a central bank note is a freely negotiable bearer bond and a legal tender in the hand of its holder. It does not require any third party verification. Counterfeiting a central bank note is not impossible but difficult and costly. The central bank neither authenticates any transaction made with that particular note nor does it keep any record of that transaction. The note remains as a liability on the book of the central bank till it comes back to it, either for reissue or its destruction. The physical nature of the note ensures that no double spending is possible with the same note by its current holder. In case of digital cash, the main issue that a central bank has to resolve is the issue of double spending without depending on third party verification of the same. What follows hereunder is an outline of a system that any central bank can implement to issue its own currency retaining most, if not all, of the desired properties of a paper currency.

I am presenting below a system based on digital currency on a mobile phone. There is no compelling reason to believe that the same system cannot be implemented on a specially designed smart card with embedded chip. The system outlined below is described within the currency management framework of the Reserve bank of India (RBI). With little tweaking the same can be customized by any central bank.

RBI Currency Management Framework:

RBI carries out its currency management function through its 19 Issue Offices located across the country. There is a network of 4281 currency chests and 4044 small coin depots in selected commercial bank branches. These chests store currency notes and rupee coins on behalf of RBI.  The note distribution mechanism is summarized in the following diagram.

For issuance of digital currency, each currency chest would function as a data center for hosting the ledger book of notes issued from it.   Similarly each issue office of RBI would have a copy of the entire ledger book of notes. A folio would be opened in the note ledger book when the first time a specific note is issued.  Each data center will have complete inventory of wallets issued by RBI.

Every bank branch would have a digital cash dispenser. Any wallet holder would be able to replenish her wallet with digital currency by pairing it with the dispenser via Bluetooth or NFC communication channel.  Similarly every ATM would have similar facility. At the time of cash dispensation from bank branch or ATM would require Aadhaar based biometric verification of wallet.  For cash transfer between wallets of two individuals this verification is not a necessary requirement.

The protocol for issue of eRupiah

  1. RBI would maintain ledgers of each currency note in a distributed database.
  2. Currently RBI issues notes through its Issue offices. The distributed database will be created according to issue departments of RBI. Each Issue office of RBI will be able to issue new digital currency and destroy old digital currency. Destruction of old digital currency would help RBI to keep the number of entries in the ledger folio of a particular note within a limit. Every Issue offices would maintain record of all notes issued by it as well as copies of corresponding records of 3 neighboring Issue offices.
  3. Each currency chest will have a database of notes received by it from RBI’s Issue department.
  4. Each currency chest will also have replicated database of its three nearest neighbor
  5. The system will issue new digital currency when an account holder wants to withdraw cash from its account with RBI.
  6. The account holder would specify how much of its cash withdrawal would be in digital form. This facility would be provided for an interim period when both forms of currency would be in circulation.
  7. To incentivize issue of digital cash, RBI may reward with a fixed amount that could be related to the cost of producing physical cash.
  8. RBI is banker to the Central and State Governments. It also functions as banker to the banks and thus enables settling of inter-bank obligations. These account holders of RBI would get digital cash in their Jumbo Wallet which would be a server in the account holder’s custody. It would be like a till holding cash. An authorized person can withdraw e-Rupiah from the till as and when required.
  9. The RBI’s Note ledger would comprise ledger folios of each currency notes issued.
  10. Each record in the Note ledger would comprise the following attributes: (1) a sequential no, (2) unique identity / sr no of a note, (3) hashed value of the note serial no, (4) identity of the issue department, (5) denomination, , (6) time stamp of transaction, (7) hashed value of identity of paying wallet (first time payer would be RBI), (8) hashed value of identity of receiver wallet, (9) active flag,   (10) hashed value of first 9  attributes , (11) hash value of the first 9 attributes of earlier transaction record of the same note. The identity of a wallet is described below.
  11. RBI will also maintain database of each wallet downloaded from its website.
  12. The wallet database will have a header record with the following attributes (1) IMEI no of each phone, (2) Aadhaar No of the phone owner, (3) timestamp of successful downloading of the wallet, (4) the GPS location of the phone at the time of downloading of the wallet, (5) a unique private key generated for each wallet and (6) the corresponding unique public key generated for each wallet. This data would also be hashed and encrypted with RBI’s private key and will be part of the header record. RBI’s public key would also form a part of the header record. The private and public key of each wallet would be generated by RBI at the runtime. The hashed value of attributes 1 to 6 would be the identity of each wallet.
  13. Each wallet will have its own database of transactions. Each record in the transaction database will represent a note that has been loaded into the wallet. Each record will have the following attributes: (1) unique identity of the note, (2) note denomination, (3) digitally signed (with the private key of the paying wallet) hashed value of the concatenated string of serial no and denomination, (4) digitally signed ( with the private key of the paying wallet) hash value of concatenated string of attributes 1 and 2 of the header record with private key of payer wallet, (7) public key of the paying wallet, (8) timestamp of last transaction( i.e. timestamp of receipt of the note , (9) timestamp of the payment transaction, (10) payment status (paid or unpaid), (10) hashed value of the earlier transaction of the note(attributes 1,2,3,4,5).
  14. A transaction between two wallets would involve “note data” transfer from the paying wallet to receiving wallet. Every note that gets transferred from the payer’s wallet to the recipient’s wallet would essentially mean transfer of the entire record from the former to the latter. In the process of data transfer two insert / update activities take place in the receiver’s and payer’s wallet respectively. The receiver’s wallet inserts a new note record while the payer’s wallet updates the concerned note’s existing record.
  15. Once the receiving wallet gets a new e_Rupiah note, it checks the authenticity of the note by calculating hash value of the concatenated string of attribute 1 and 2 of step at 13. In the payer’s wallet the status flag would get changed to “paid” while in the receiver’s wallet it would continue to have the status flag as “unpaid”.
  16. Any wallet would have a limit in terms of number of records / notes. When the database has reached its limit then the wallet would have to be uploaded to RBI and a new wallet has to be downloaded.
  17. At any point of time a single wallet would be subject to 2 limits- holding limit of no of transactional records and total value of a single transaction. For a high value transaction two factor authentications would be required. (say above one lac). Both paying wallet as well as receiving wallet has to simultaneously establish connection with RBI and get their credential verified.
  18. As and when no of records in a wallet’s transactional database reaches its limit, the database has to be downloaded in an ATM or at a bank branch. The wallet would be purged of the all transaction records with status as “paid”. The wallet holder then can download more E_Rupiah from an ATM or from a bank brunch. RBI will update its ledger book of individual notes thus uploaded from each wallet.
  19. Any fraudulent transactions identified in the process of uploading would get notified and thorough automated forensic audit perpetrator of fraud would get identified.

Continue reading “Central Bank Digital Currency -a Blueprint”

Central Bank Cryptocurrency Currency

Central Bank CryptoCurrency (CBCC):

Digital currency is currently in news.  Russia and China is reported to be on the verge of issuing official cryptocurrency.  CME, the world’s largest exchange, is planning to introduce future on Bitcoin by the end of this year.Here Here  In my last post I have explained why Bitcoin can be considered at best a currency of a community- a virtual country, so to say-  of Bitcoin users. So a future on a foreign exchange of an unknown country without any verifiable foreign  trade activities  is definitely problematic.  Be that as it may; the possibility of introducing digital currency by central banks is now a hot topic. The head of the Secretariat of the Committee on Payments and Market Infrastructure of BIS along with a colleague has recently published a paper on the Central Bank Cryptocurrencies.  In this paper the authors have identified four key properties of Money- issuer (central bank or other); form (electronic or physical); accessibility (universal or limited); and transfer mechanism (centralised or decentralised). It is interesting to see that the authors have failed to identify the most important property of money- unit of account. A medium of payment is not a currency unless it is also a unit of account. That is why  a credit card, a bank debit card or a prepaid cash card  is not money, despite each being a digital medium of payment.   In fact, in terms of volumes as well values, the medium of payments even in a developing country like India is largely electronic. The following table shows that money in India exists mostly in the digital form, as most of the bank money is. Even after exclusion of  time deposit from the ambit of  payment system, the digital money ( bank money)  dominates the physical money or cash.

Composition of Broad Money (M3) in India

Currency with the Public Deposit money of the public Time Deposits with banks
  9.84% 11.15% 79.01%

So issuance of central bank currency would only digitalize the cash component of money as other medium of payments are already in digital form. So  CBCC  should be considered only as a replacement of physical cash issued by a central bank.  The champions of cryptocurrency, however,  would like it to be the sole medium of payments, at least of the online variant. It is difficult to understand why anybody would like to replace a part of the system that is working fine with another only because of its compatibility with a particular ideology about issuance of money.  In fact, instead of reducing the cost, a decentralized transfer mechanism like bitcoin would increase the social cost of running a payment system.  Leaving aside these ideological issues about money for now, let us consider the possibilities of issuing cryptocurrency by a central bank. I intend to outline a protocol that can be adopted in the specific case of India. In this post I enumerate the essential features that a Central Bank Cryptocurrency Currency(CBCC) should possess with specific reference to India.

The Reserve Bank of India (RBI) spent on average 35 billion of rupees in printing notes in last 3 years, ignoring the spike of 2016-17 due to demonetization. This amounts to more than 500 million dollars- not a small sum.  The commercial banks also have to incur huge cost  over and above the printing cost incurred by RBI to manage the last mile of the currency supply chain.  If we can replace printing of notes by creating digital strings of binary numbers in computers, the total cost could be easily reduced significantly.  It is not necessary to eliminate physical cash completely. Digital and physical cash could coexist for a long time to come. When every citizen is connected to the digital space we can think of complete elimination of physical form of cash.

Let us first understand how the paper currency system works in India. Before that, we need to consider the enormity of logistics involved in cash management system in a country like India. As on end March 2016, 90 billion pieces of notes and 89 billion pieces of coins were in circulation in India. The number of currency chests and coin depot/sub-depot were 4211 and 4008 respectively at the end of 2012. There were around 222 thousand ATMs in India. The details of the currency supply chain is given below.

  1. Note printing presses print notes as per indents placed by Currency Management department of RBI.One characteristic of the paper note is worth noting here; every note has a distinct identity.
  2. RBI receives the currencies in their vaults
  3. RBI remits the currencies so received to various currency chests maintained at bank branches.
  4. The commercial banks run the currency chests as an agent of RBI, while the treasure in it is the property of RBI. Any withdrawal or deposit into the currency chest is recorded as debit or credit respectively in the bank’s account maintained with RBI.
  5. Transport of currencies from currency chests to other bank branches  is the responsibility of banks.
  6. General public can obtain cash from banks either over the counter of bank branches or from ATMs. Government departments having accounts with RBI  withdraw cash from RBI counters to meet their cash needs, and thereby inject cash into the economy.
  7. When general public or government departments deposit cash into their bank accounts, the banks or RBI examine the circulation worthiness of deposited notes. The soiled notes are then withdrawn from circulation and briquetted by RBI.

We are interested in designing a supply chain that delivers digital currency to general public, maintaining the basic functionality and integrity of the existing supply chain.  We need not differentiate between notes and coins in the digital environment. .

The main characteristics of the proposed CBCC would be as follows:

  1. Each note would have specific denomination- large denomination of 5000 and 10000 can also be introduced.
  2. If Alice wants to pay 102 rupees to Bob and Alice has only one 100 rupees and one ten rupees in her wallet, the system would function exactly the way cash based transaction would function. Alice would pay one 100 and one ten rupees to bob. Bob would immediately pay back to eight rupees to Alice in denominations available to Bob.
  3. Like Bitcoin there would be wallets as app in mobile or users can use hardware based wallet also. There is no question of having any exchange as custodian of wallet in dematerialized form.
  4. A person without a bank account can download a wallet and can receive digital currency in this wallet.
  5. There would be no connection with a wallet with wallet holder’s bank account. However, a wallet holder would be able to download cash from her bank account as currently she withdraws cash from her bank account. The only difference would be that the bank / ATM would give her digital cash and not physical cash
  6. There would be no special KYC verification for downloading digital wallet apart from providing a unique identification number.
  7. In case of loss of a wallet, the process would be the same as it happens if one losses one’s physical wallet containing physical cash. A First Information Report (FIR) has to be registered with a police station and the system would ensure that missing digital notes are blocked to the extent the digital money in the lost wallet has not been spent till that time. After completion of investigation the cash can be restored to the original owner.
  8. The central bank may prescribe a limit to the value of digital currency a wallet can hold. For example, it may be stipulated that the wallet is designed to hold a maximum amount of 100 K rupees. A wallet holder would not be able to load cash to her wallet from a bank or from another payer more than amount.
  9. It may be possible to take insurance for loss of a wallet with a sum insured to the extent of a pre-determined fraction of the amount lost. The wallet holder has to pay the insurance premium.
  10. It would be issued by the central bank as it is done today.
  11. It would retain the anonymity of cash to a large extent- but theoretically for a given transaction payer and recipient’s identity can be found out.
  12. There would be almost instant authentication of any transaction without any third party verification. The central bank would take the responsibility of authentication without any manual intervention. The process would be almost instantaneous as it happened in the use of debit card today.
  13. It would run parallel to paper currency till such time the share of paper currency becomes negligible
  14. It would be a legal tender with the rider that if the recipient of a transaction is not ready to accept digital currency, the payer has to pay the former with paper currency.
  15. All government agencies would have the infrastructure to receive digital currency. No government agency or a public utility would not be able to deny any digital currency transaction if the counterparty insists on that form of transaction. Thus a citizen would be able to buy a bus or metro ticket with digital currency. Taxes also can be paid by digital currency.
  16. A bank account holder can go to a bank branch or an ATM and would be able to load digital currency in her wallet as if physical cash is being dispensed as it happens today.
  17. With the consent of its employees, an employer can pay wages or salaries in the form of digital currencies. Government would prefer to give subsidies through digital currencies.
  18. Digital currencies would not work outside the jurisdiction of the issuing central bank. Thus it is a legal tender within the country of issuing central bank.
  19. A foreign citizen can exchange foreign currency with digital currency as long as he or she gets the wallet downloaded from the issuing central bank’s portal. The only restriction is that if the wallet is used for transaction outside the issuing central bank’s jurisdiction, it would not be authenticated. A money changer can exchange foreign currency (paper form) with domestic digital currency.
  20. No transaction fee is to be paid for using digital currency
  21. The central bank would be free to issue digital currency of any amount as it happens today.

Is it possible to have CBCC with all the above features? Surely it is possible using the same technology that Bitcoin uses, with some tweaking. In my next post I will outline a high level   design of such a system. I am confident that it should be possible to develop such a system which would not allow double spending and provide a very high level of anonymity to transactors and their transactions.


Other references: here here