This disclosure relates generally to digital asset conversion. In embodiments, the disclosure relates to an infrastructure enabling digital assets such as virtual currency (cryptocurrency) to be converted to allow transactions is government-backed “flat” currency.
A virtual currency (also known as a digital currency) is a medium of exchange implemented through the Internet generally not tied to a specific government-backed “flat” (printed) currency such as the US dollar or the Euro and typically designed to allow instantaneous transactions and borderless transfer of ownership. The best known type of virtual currency is cryptocurrency, in which cryptography is used to secure transactions and to control the creation of new units. Several cryptocurrencies exist, of which the best known is Bitcoin. Bitcoin is decentralized in the sense that it has no central point of control. Transactions are recorded on a public ledger in the form of a block chain—a distributed database maintaining a continuously growing list of transaction data records. Cryptographic processes are used to harden the block chain against tampering and revision. Decentralization and a public ledger are typical features of cryptocurrencies.
Virtual currency is one type of electronic money—more generally, electronic money is any electronically stored money balance such as a money balance stored on a physical card with an embedded processor or adapted for transfer over a computer network. Electronic money based on a flat currency is typically centralized in that there is a central point of control over the money supply. PayPal is an example of an electronic money system with centralized control, and systems such as Google Wallet and Apple Pay enable electronic money transactions using mobile devices.
At present, while cryptocurrencies are widely used in online communities, they are not generally used by “bricks and mortar” retailers. It would be desirable to allow wider use of cryptocurrencies in conventional transaction infrastructures as generally used by merchants.
In a first aspect, the disclosure provides a computer-implemented service for converting digital assets into a transaction currency for use by a payment device in a transaction system that is not adapted for transactions using the digital assets, the service using a server with a suitably programmed processor adapted to: monitor a transaction currency balance in a user account associated with the payment device, and to compare the transaction currency balance with rules for maintaining the transaction currency balance; and where required to do so by the rules, instructing conversion of user digital assets at one or more exchanges into the transaction currency to maintain the transaction currency balance.
The payment device may be associated with an issuing bank, and the computer-implemented service may be adapted to receive the transaction currency balance from the issuing bank. The computer-implemented service may be adapted to receive details of transactions from the user account in the transaction currency from the issuing bank or the transaction system.
Instructing conversion of digital assets into the transaction currency at the one or more exchanges may comprise instructing the one or more exchanges to make a conversion transaction on behalf of an owner of the digital assets.
Instructing conversion of digital assets into the transaction currency at the one or more exchanges comprises advising an owner of the digital assets to make a conversion transaction at the one or more exchanges.
The digital assets may comprise cryptocurrency.
In a second aspect, the disclosure provides a method of converting digital assets into a transaction currency for use in a transaction system that is not adapted for transactions using the digital assets, the method comprising: storing digital assets for use with one or more exchanges adapted for conversion of the digital assets into the transaction currency; establishing a balance in the transaction currency for use by a payment device, and establishing rules for maintaining the transaction currency balance; and when required by the rules for maintaining the transaction currency balance, instructing conversion of digital assets into the transaction currency at the one or more exchanges for maintaining the transaction currency balance in the transaction currency for use by the payment device.
The digital assets may comprise cryptocurrency assets. The rules may comprise converting digital assets when the transaction currency balance falls below a predetermined level, or converting digital assets after a transaction in the transaction currency to maintain the transaction currency balance at a predetermined level.
Establishing the transaction currency balance may comprise converting digital assets to provide a predetermined transaction currency balance.
Instructing conversion of digital assets into the transaction currency at the one or more exchanges may comprise instructing the one or more exchanges to make a conversion transaction on behalf of an owner of the digital assets.
Instructing conversion of digital assets into the transaction currency at the one or more exchanges may comprise advising an owner of the digital assets to make a conversion transaction at the one or more exchanges.
Embodiments of the disclosure will now be described, by way of example, with reference to the accompanying Figures, of which:
Specific embodiments of the disclosure will be described below with reference to the Figures. Before embodiments of the disclosure are described, a conventional transaction infrastructure architecture will be described with reference to
In the conventional transaction infrastructure architecture of
Mobile phone 1 is also shown as the mechanism for the user to interact with other elements of the system over a suitable network 5—network 5 here represents any appropriate communication network for the communication path indicated, and may be the public internet, a cellular communications network or a private network, depending on the parties involved in the communication and the need for the communication path to be secure.
The payment device is adapted for transaction with a point of interaction (POI) terminal 4 such as a point of sale (POS) terminal or an automated teller machine (ATM) and transactions may also be conducted with an online merchant 3. The payment card 2 will typically include a chip and a wireless transmitter and receiver adapted for short range communication by protocols such as those defined under ISO/IEC 14443—if used as a payment device, the mobile phone 1 (which will typically be adapted to implement short range communication under the NFC standard) must have similar capability and an appropriate payment application installed.
There is a network connection between the user computer devices and a card issuing bank 5 or system associated with the user. A banking infrastructure 7 will also connect the card issuing 5 and the merchant's transaction acquiring bank 6, allowing transactions to be carried out between them. This banking infrastructure will typically be provided by a transaction card provider who provides transaction card services to the card issuing bank 5. The banking infrastructure 7 provides authorization at the time of purchase, clearing of the transaction and reconciliation typically within the same working day, and settlement of payments shortly after that. The banking infrastructure 7 comprises a plurality of switches, servers and databases, and is not described further here as the details of the banking infrastructure used are not necessary for understanding how embodiments of the disclosure function and may be implemented, save to note that associated with the banking infrastructure 7 is a digital enablement service 17 adapted to support use of digitized cards, for example through EMV tokenisation protocols. As noted, the mobile phone comprises a wallet to enable user management of accounts (and, typically, aspects of security of the device)—to avoid confusion with other uses of the term wallet in this specification, this will be referred to as a “payment device wallet” below.
Using this approach, a computing device—shown as a mobile device in
Information personal to the user is kept in the cryptocurrency wallet 37. This contains one or more addresses for the user—these are alphanumeric identifiers that represent a possible destination for a cryptocurrency payment to that user. A user can typically generate a new address at no cost—typically an address is a single use token for a specific transaction. The wallet also contains the user's cryptographic keys. An address is a public key corresponding to one of the user's private keys—the user can generate new key pairs as needed from a base key. The wallet also contains the user's accounts—when cryptocurrency is received, it is assigned to an account. Other cryptocurrency structures are possible (for example, addresses and accounts can be conflated in some cryptocurrency types), but the exemplary approach described here is widely used.
Block chain information 36 is public and is shared on a peer-to-peer basis, but provides a mechanism for verification of transactions as described below. The block chain itself is a transaction database shared by all nodes of the network—a full copy of the block chain for a cryptocurrency contains every transaction ever executed, allowing the determination of values associated with any given address. The blocks are chained, as each block contains a hash of the previous block. Once a block is mature in the chain, it is not practical to modify it computationally because each later block would have to be regenerated.
A typical transaction involving a payment from Alice to Bob operates in the following way. Bob creates a new address using the cryptocurrency client, and provides the address (a public key for a private key held by Bob) to Alice as a destination for the payment. Alice makes the transaction using her cryptocurrency client by indicating a payment to the address indicated by Bob from one of her own addresses—this is done by signing a transaction request with her private key for the address, the public key being usable to establish that the transaction was sent by Alice to Bob's address. Transaction requests are broadcast across the system for incorporation into a transaction block.
A new block is established by “mining”. This is a process in which a candidate for a block is determining the answer to a computationally difficult problem relating to the last block on the chain—typically achieving a particular result for a hash function on that last block using a nonce value, the computational difficulty arising from there being a large number of possible nonce values and no way other than brute force of determining which nonce will achieve the desired result. Once a miner has a valid block, this can be added to the block chain—it will typically contain a reward for the miner (an agreed number of cryptocurrency units assigned to a miner's address). A miner may also be rewarded for transactions added to the new block. The new block chain with the additional added block (including Alice's payment to Bob) is broadcast around the network.
The transaction cannot immediately be considered verified by virtue of its inclusion in the latest block. However, when further blocks are added, it becomes effectively impossible to tamper with the transaction record, as this could only be done by regeneration of subsequent blocks. The transaction can be considered to be verified at this stage.
This type of transaction can be termed “on-the-chain”—it is on the public record and requires the existence of miners to verify it. On-the-chain transactions have a unique wallet address which is the public key string of a cryptographic key pair (generated for example by Elliptic Curve Cryptography). It is also possible to have “off-the-chain” transactions for which there is no public record. This may be achieved with a database (such as MS-SQL, MySQL, Oracle etc.) containing a representation of holdings with balance swaps possible between different holdings retained in the database. For example, Coinbase or Bitstamp does not move bitcoins on the chain for internal reconciliation but just initiates a balance change on their database of users' holdings.
In order to prevent risk of loss, many users prefer to keep cryptocurrency funds offline and to have their use of cryptocurrency mediated by a service. To achieve this, many use shared wallet services from providers such as Bitstamp and Coinbase. These do not change the basic transaction mechanism of the cryptocurrency, but provide transaction services for a user by establishing an address and sending cryptocurrency on behalf of the user, often in return for a flat currency payment (in which case these services are also operating as an exchange).
The shared wallet user node 41 does not itself need to hold cryptocurrency and therefore does not need to operate as a peer-to-peer network node, but may for example have a client/server relationship with the shared wallet service node 42. A shared wallet client application 411, preferably with secured memory 412 (in embodiments where private keys are to be held by the user) is used to communicate with the shared wallet service.
The shared wallet service node 42 has a shared wallet service server 421 holding and communicating with user accounts. As the shared wallet service node 42 is a node on the peer-to-peer cryptocurrency network it comprises the elements needed for such a node, such as data directory 35, with the shared wallet service server 421 having functions including that of the cryptocurrency client.
In the arrangement shown, mobile phone 1 is used as a payment management device as before, with payment card 2 as payment device. The digital enablement service is not shown (but may in practice be present if mobile phone 1 is also used as payment device). An exchange service 51 supporting transactions according to an embodiment of the disclosure interacts with issuer 5 and also with the payment management device and at least one peer-to-peer cryptocurrency exchange 52. In the arrangement shown, the user communicates not only with the exchange service 51, but also with the cryptocurrency exchange 52. Exchange service 51 is shown as a separate element in this arrangement, but may for example be a service provided by the card issuer, in which case it may be provided as an element of the issuer 5.
In embodiments of the disclosure, the payment device may be used to transact with merchants using a conventional flat currency transaction system but drawing on virtual currency resources. This increases enormously the options available for the user in spending virtual currency. As will be discussed below, a variety of options are possible using this overall approach. In some cases there may be a transfer during the course of the transaction, and in others there may be an offline transfer to restore an account balance to a predetermined value.
The user will then (for example, using the payment management device) configure 730 his or her account with the exchange service 51 to establish suitable working parameters. These may include access details enabling the exchange service 51 to represent the user at the cryptocurrency exchange so that the exchange service 51 can draw down on the user's cryptocurrency balance and convert it to a flat currency. Where the user has access to multiple cryptocurrency exchanges 52, the user may also specify 740 which cryptocurrency exchange should be used to top up a flat currency account (or may establish a preferred order, or other rules depending on the nature of the transaction and the currency balances involved).
The user can also establish 750 a balance of flat currency to be held by the exchange service 51 on behalf of the user—this balance of flat currency can then be left available for instant access for user transactions. To establish an initial balance, the exchange service may then convert cryptocurrency as necessary using a cryptocurrency exchange 52. A practical issue here is that conversion between cryptocurrency and flat currency may be difficult to achieve during the normal time period of a transaction using a conventional transaction infrastructure (up to a few seconds). An off-the-chain cryptocurrency transaction is potentially of this speed, but requires suitable resources to be available. An on-the-chain transaction, with verification, is not this quick because of the need to verify the transaction through embedding it in a block chain, which typically takes several minutes. The exchange service 51 thus performs both a coordinating and a buffering role in enabling use of cryptocurrency resources for transactions.
The user may then specify 760 rules for topping up the account with the exchange service 51. For example, the balance can then be topped up at a predetermined point if it falls below a certain point (or it can simply be topped up directly on any transaction). The top-up could be automatic and so under the control of the exchange service, or if the user does not wish to release control to the exchange service 51, the top-up could be a manual process with messages sent to the user to advise when a top-up was required. If an automatic top-up is used, then the exchange service 51 will initiate a buy order at the relevant exchange to top-up the user account.
Many models are possible within this structure for the user's account with the issuer. In one model, the account could be used only for transactions from the user's cryptocurrency reserves, in which case any transaction would contribute to triggering the top-up process. In another model, the account could draw from both flat currency and cryptocurrency sources, and appropriate rules could be determined for drawing on the cryptocurrency reserves (for example, the account level falling below a certain level, or falling below a certain level for a certain length of time, or if a monthly payment had not been made from any other source). The payment device could be a prepaid card (in which case a positive balance would have to be maintained for transactions to be authorised by the issuer) or a credit card, in which case payments could be authorised until the negative balance on the account exceeded a credit limit.
The steps in an exemplary transaction using this infrastructure are set out below with reference to
The transaction passes through the transaction infrastructure 7 to the issuer 5 for authorisation 820. Authorisation will normally be made on the basis of a number of factors, including authentication of the user and there being a sufficient balance on the user account. While in embodiments it may be possible to involve the exchange service 51 at the authorisation stage to ensure that there are sufficient user funds available, this may not be generally desirable except perhaps where the exchange service 51 is integrated with the issuer as otherwise authorisation will be delayed—if authorisation is given then the transaction will complete in the normal manner.
Depending on the rules established for use of the user issuer account, there may then be a message sent 830 from the issuer to the exchange service to advise on the transaction—this may take place after every transaction whether or not account replenishment is required so that the exchange service can track user account activity, or may only take place when replenishment of the user issuer account is required. When the exchange service determines 840 that issuer account replenishment is required, it transfers flat currency accordingly and may, if the level of flat currency that it holds will fall too low as a result, also determine that it needs to convert cryptocurrency to replenish the exchange service account, the issuer account, or both. The exchange service then places 850 a buy order for flat currency at the relevant cryptocurrency exchange 52 as determined by its replenishment rules, or (if top-ups are manual rather than automatic) advises the user what transaction is required with which exchange. The currency is then bought (with any fees paid) using the user's cryptocurrency reserves through the user's account with the cryptocurrency exchange.
A variety of top-up strategies may be used. A top-up may be triggered only when the available balance falls to a certain level. Alternatively, a top-up may be triggered after every transaction to maintain the account at the originally established level—this will require more top-up activity, but will give the user greater assurance that the level of funds available will meet expectations.
As has been noted above, many variations are possible within this overall structure. The exchange service 51 could in principle be merged with the issuer 5 or with a cryptocurrency exchange 52—in principle, all three functions could be provided with one provider. Where there is consolidation of this kind, accounts in the same currency (such as the user issuer account and the user flat currency account with the exchange service) could in principle be consolidated together, obviating the need for process steps that relate to interaction between the two. The user's cryptocurrency reserves could in principle be held at the exchange service, at the cryptocurrency exchanges, or elsewhere altogether, in which case there may be additional steps required to transfer the cryptocurrency to the correct system element with appropriate authorisation from the user.
As noted above, this approach is particularly effective to allow a user's cryptocurrency reserves to be used through a conventional transaction infrastructure, but it is not limited to this purpose. It may also be employed, for example, where a user has reserves in any other currency (or indeed any other assets) that are convertible into a flat currency but not at the speed required for normal transaction flow in a conventional transaction infrastructure (or not reliably so). The skilled person will appreciate that further modifications may be made to the approach set out above in accordance with the spirit and scope of the disclosure.
Number | Date | Country | Kind |
---|---|---|---|
16153521.6 | Jan 2016 | EP | regional |