WO2019224566A1 - Distributed exchange - Google Patents

Distributed exchange Download PDF

Info

Publication number
WO2019224566A1
WO2019224566A1 PCT/IB2018/000520 IB2018000520W WO2019224566A1 WO 2019224566 A1 WO2019224566 A1 WO 2019224566A1 IB 2018000520 W IB2018000520 W IB 2018000520W WO 2019224566 A1 WO2019224566 A1 WO 2019224566A1
Authority
WO
WIPO (PCT)
Prior art keywords
exchange
smart contract
cryptocurrencies
commissions
setting
Prior art date
Application number
PCT/IB2018/000520
Other languages
French (fr)
Inventor
Giotto De Filippi
Ivan GRANITO
Original Assignee
Chain Ip Holdings, Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chain Ip Holdings, Inc filed Critical Chain Ip Holdings, Inc
Priority to PCT/IB2018/000520 priority Critical patent/WO2019224566A1/en
Publication of WO2019224566A1 publication Critical patent/WO2019224566A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/381Currency conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2220/00Business processing using cryptography

Definitions

  • the present invention generally relates to a smart contract for a network implementing a distributed ledger which allows an exchange to be implemented.
  • the invention further relates to a method for running the smart contract on the network.
  • Distributed ledgers are becoming a more common technology for certifying and tracking several kinds of assets, such as cryptocurrencies, contracts, but also documents such as certifications, medical records, identify documents, etc.
  • the distributed ledgers also provide means for recording transactions related to the assets or documents. Namely modification to the asset or documents, be it a modification to its content or to its owner, can be recorded by the distributed ledger.
  • distributed ledgers are available, based on different technologies, such as blockchain, Hashgraph, etc. In general they all share the common concept that the network implementing the distributed ledger comprises a plurality of transaction nodes and a plurality of ledger computation nodes. The transaction among the transaction nodes are recorded by the ledger computation nodes with a computationally intensive approach, which provides the security of the distributed ledgers with respect to brute force hacker attacks.
  • Figure 1 schematically illustrates a network 1000 implementing a distributed ledger in accordance with the state of the art, comprising a plurality of transaction nodes 1101-1103 and a plurality of ledger computing nodes 1201-1202.
  • the distributed ledger could be, for instance, Ethereum.
  • the ledger computing nodes 1201-1202 are configured to run one or more smart contracts for allowing any of the transaction nodes1 101-1103 to perform several kinds of transactions which are then recorded in the distributed ledger, in the case of Ethereum implemented with a blockchain implementation.
  • any transaction node 1 101 -1103 can perform transactions with any other transaction node 1 101-1 103.
  • One of the most common transaction consists in the exchange of assets, for instance cryptocurrencies from one transaction node 1 101-1 103 to another transaction node 1 101- 1 103. Due to their growing popularity, different kinds of cryptocurrencies are now available on the market. It is therefore often the case that transaction node 1101-1 103 may want to exchange a first cryptocurrency with a second, different, cryptocurrency, or with currencies stored outside of the network 1000, such as dollars, euros, etc. In order to achieve this functionality, an exchange is needed.
  • the exchange is physically implemented by computers, thereby generating costs in terms of equipment and electricity for the exchange owner. To compensate for these costs, exchanges available today require the users to pay a commission. In general, in order to contain the vast amount of power used by exchanges and by the network 1000, it is thus important to ensure a high efficiency of the network 1000 and of the exchange usage. This is, however, not always the case.
  • any exchange will usually unilaterally set the various cryptocurrencies combinations which can be exchanged, such as cryptocurrency A with cryptocurrency B, cryptocurrency A with USD, cryptocurrency B with USD etc.
  • the exchange will also usually unilaterally set the commission associated to the cryptocurrency combination which is exchanged.
  • an exchange implemented with a single operating point such as a single server, faces the risk of being attacked by hackers.
  • the security measures for ensuring that the assets deposited at the exchange cannot be reached by hackers can be very expensive and further add to the commission charged, thus further reducing the usability of the exchange.
  • the present invention has been developed in view of the above problems and it is an object thereof to provide a more reliable form of exchange which improves on at least some of the drawbacks of the prior art.
  • one of the objectives of the invention is to provide a method for implementing a shared governance of the exchange running on a network implementing a distributed ledger.
  • the present invention generally relies on the principle that at least some functions of an exchange can be implemented by means of a smart contract.
  • This allows the governance of the exchange to be controlled in a distributed manner.
  • at least the selection of which cryptocurrencies are to be exchanged and/or the respective commissions can be implemented in a distributed manner by means of a smart contract.
  • This allows the owners of the smart contract to decide which cryptocurrencies are traded on the exchange.
  • this also allows the owners of the smart contract to decide the amount of commission which apply to each coin.
  • the governance is shared based on the ownership of the coins associated to the smart contract implementing the exchange. Thanks to this approach, the decisions can be shared among different owners of the smart contract implementing the exchange. This ensures that a consensus is reached among the various owners of the exchange increasing the likelihood that cryptocurrencies with a higher quality receive a lower commission, thus resulting in a more efficient use of the computational and energy resources of the network and of the exchange.
  • An embodiment can relate to a smart contract for running on a network implementing a distributed ledger, the smart contract implementing an exchange for exchanging cryptocurrencies comprising: a first variable defining a plurality of cryptocurrencies which can be exchanged at the exchange, a second variable defining a plurality of commissions associated to the plurality of cryptocurrencies defined by the first variable, or defining a function for calculating the plurality of commissions associated to the plurality of cryptocurrencies defined by the first variable, a third variable defining a plurality of transaction nodes owning the coins associated to the smart contract.
  • the smart contract can further comprise a first function allowing the plurality of transaction nodes defined by the third variable to modify the plurality of cryptocurrencies defined by the first variable and/or to modify the plurality of commissions of the function defined by the second variable.
  • An embodiment of the invention can further relate to a method for executing a smart contract on a network implementing a distributed ledger, the smart contract implementing an exchange for exchanging cryptocurrencies, the method comprising: setting a plurality of cryptocurrencies which can be exchanged at the exchange by a plurality of transaction nodes owning the coins associated to the smart contract, setting a plurality of commissions associated to the plurality of cryptocurrencies or a function for calculating the plurality of commissions associated to the plurality of cryptocurrencies.
  • the step of setting the plurality of cryptocurrencies can include a step of proposing at least one proposed cryptocurrency to be exchanged and a step of voting on the proposed cryptocurrency.
  • the step of setting the plurality of commissions can include a step of proposing at least one proposed commission and a step of voting on the proposed commission, or the step of setting the function for calculating the plurality of commissions can include a step of proposing at least one proposed function and a step of voting on the proposed function.
  • the step of setting the plurality of commissions can include a step of setting a value for one or more of the plurality of commission depending on an exchange volume of the cryptocurrency associated to the commission, or the step of setting the function for calculating the plurality of commissions can include a step of setting a function having as an input an exchange volume of the cryptocurrency associated to the commission.
  • the step of setting the plurality of commissions can include a step of setting a value for one or more of the plurality of commission depending on an amount of coins associated to the smart contract blocked with a given cryptocurrency, or the step of setting the function for calculating the plurality of commissions can include a step of setting a function having as an input an amount of coins associated to the smart contract blocked with a given cryptocurrency.
  • Figure 1 schematically illustrates a network 1000 implementing a distributed ledger in accordance with the state of the art
  • FIG. 2 schematically illustrates a smart contract 2000 implementing an exchange in accordance with one embodiment of the invention
  • Figure 3 schematically illustrates a method 3000 for executing the smart contract 2000 in accordance with one embodiment of the invention.
  • the term“coin associated to the smart contract 2000” to signify a specific type of cryptocurrency which is used to control the governance of the exchange, in the manners which will become apparent from the following description.
  • the number and functioning of the coins associated to the smart contract 2000 is fixed in the smart contract 2000, defining the operation of the exchange.
  • ownership of the coins associated to the smart contract 2000 is required in order to take part in the governance of the exchange.
  • ownership of the coins associated to the smart contract 2000 is required in order to trade on the exchange.
  • the amounts of the coins associated to the smart contract 2000 owned by a given transaction address is used in calculating the commissions applying to the given transaction address when trading on the exchange.
  • the amounts of the coins associated to the smart contract 2000 owned by a given transaction address is used in calculating how the commissions collected by the exchange are distributed among the owners of the coins associated to the smart contract 2000.
  • FIG. 2 schematically illustrates a smart contract 2000 implementing an exchange in accordance with one embodiment of the invention.
  • the smart contract 2000 is configured to be run on a network 1000 implementing a distributed ledger and for implementing an exchange for exchanging cryptocurrencies.
  • the exchange implemented by the smart contract allows a distributed governance of the exchange. In this manner, unilateral decisions resulting in an inefficient use of the exchange and of the network 1000 can be avoided.
  • this configuration also allows a distributed operation of the exchange, which is intrinsically less vulnerable than an exchange implemented on a single architecture.
  • the smart contract 2000 comprises a plurality of variables V1 ...Vn among which a first variable V1 defines a plurality of cryptocurrencies which can be exchanged at the exchange.
  • the first variable V1 could be implemented as an array of any given value, so as to list all cryptocurrencies which can be exchanged at the exchange.
  • each of the cryptocurrencies which can be exchanged at the exchange will be exchanged only into and/or from the coins associated to the smart contract 2000. That is, if the cryptocurrencies which can be exchanged at the exchange are schematically defined as A, B, C, while the coins associated to the smart contract 2000 are schematically defined as X, the exchange may only allow the following combinations: A-X, X-A, B-X, X-B, and C-X, X-C.
  • One advantage of this configuration is that it makes it possible to reduce the number of transactions from any cryptocurrency to any other cryptocurrency to two.
  • a further advantage lies in the fact that the owners of the exchange also are or become owners of the coins associated to the smart contract 2000, thus allowing them to take part into the shared governance of the exchange. This is particularly advantageous since the users of the exchange have an inherent interest in making the exchange operate as efficiently as possible, thus also making network 1000 operate as efficiently as possible, and since they take part in the governance of the exchange, they can make sure the exchange is configured in an efficient manner.
  • a second variable V2 defines a plurality of commissions associated to the plurality of cryptocurrencies defined by the first variable V1.
  • the second variable V2 could be implemented as an array of any given value, so as to list all commissions associated to the cryptocurrencies which can be exchanged at the exchange.
  • the second variable V2 could be expressed as a function for calculating the plurality of commissions.
  • the function can have a first sub-function and/or a second sub-function for calculating the value of the commission.
  • the first sub-function could be set by the transaction nodes 1101-1 103 owning the coins associated to the smart contract 2000.
  • the first sub-function could comprise a function setting a relationship between the position of a given cryptocurrency A, B, C listen in the variable V1 , for instance the address of the given cryptocurrency in an array implementing the variable V1 , and the value of the commission for exchanging the cryptocurrency.
  • the first sub-function may comprise a function setting a relationship between an amount of the given cryptocurrency exchanged in a predefined period of time, and the value of the commission.
  • the transaction nodes 1101-1103 owning the coins associated to the smart contract 2000 could set that a predefined number of the most traded cryptocurrencies have a first commission value, a predefined number of second most traded cryptocurrencies have a second commission value, and so on.
  • the first sub-function may associated a first predefined commission to the cryptocurrency at address 0, namely A, a second predefined commission to the cryptocurrency at address 1 , namely B, and so on.
  • the first sub-function is set by the transaction nodes 1 101-1 103 owning the coins associated to the smart contract 2000 and results in a value of commission for a given cryptocurrency which is the same for all users of the exchange.
  • the second sub-function could comprise a function setting the relationship between the amount of coins associated to the smart contract 2000 which are owned by a given transaction node 1 101-1 103 and the value of the commission applying to the specific transaction node 1 101-1 103. That is, the second sub-function can result in a value of commission for a given cryptocurrency which is different for different users of the exchange.
  • transaction nodes 1 101-1 103 may further decide to block their coins associated to the smart contract 2000 with a specific cryptocurrency traded on the exchange. That is, for instance, transaction node 1 101 owning Z coins associated with the exchange may block Z/3 coins together with cryptocurrency A traded on the exchange and 2Z/3 coins with cryptocurrency B traded on the exchange. In some embodiments, blocked coins cannot be used by their respective owners. In those embodiments, the second sub-function may also be calculated on the specific amount of coins associated to the smart contract 2000 which are blocked with respect to a given cryptocurrency. In other words, for a given transaction node 1101-1103, the amount of commission for a given cryptocurrency will also depends on how many coins associated to the smart contract 2000 are blocked with respect to the given cryptocurrency.
  • the second sub-function would provide a different value of commission between cryptocurrency A and cryptocurrency B for the same transaction node 1 101 , preferably with a lower value of commission for the cryptocurrency to which the higher amount of coins associated to the smart contract 2000 has been blocked with, namely cryptocurrency B in the above example.
  • a third variable V3 defines a plurality of transaction nodes 1 101-1103 owning the coins associated to the smart contract 2000.
  • the variable V3 may be implemented as an array listing the transaction nodes 1101-1103, for instance by using the respective address on the network 1000, and the amount of coins associated to the smart contract 2000 owned by the given transaction nodes 1101-1 103.
  • variable V3 can define the plurality of transaction nodes 1 101- 1 103 owning the coins associated to the smart contract by specifying the addresses of the respective transaction nodes 1101-1 103 in the network. Furthermore, in some embodiments it may be possible to specify a coin associated to the smart contract and specify, for each transaction nodes 1 101-1 103 owning the coins associated to the smart contracts, how many coins are owned. Thanks to this approach, different transaction nodes 1101-1 103 may own different amount of coins associated to the smart contract 2000 implementing the exchange.
  • the exchange may exchange any of the cryptocurrencies defined by the first variable V1 into and from the coins associated to the smart contract 2000. That is, transaction nodes 1 101-1 103 wanting to make use of the exchange may be required to acquire coins associated to the smart contract in order to exchange into one of the listed cryptocurrencies, or may be required to accept coins associated to the smart contract in order to exchange from one of the listed cryptocurrencies. Thanks to this approach it is advantageously possible to increase the usability of the exchange, since any exchange rates do not have to be specified among any possible pair of cryptocurrencies listed but only for the exchange of a given listed cryptocurrency and the coins associated to the smart contract 2000.
  • transaction nodes 1101-1 103 wanting to make use of the exchange are required to acquire coins associated to the smart contract, thus increasing the value of the coins associated to the smart contract 2000.
  • this reduces the commissions to be applied it increases the usability of the exchange resulting in an increased popularity, and thus value, of the coins associated to the smart contract 2000.
  • the more the exchange is used the higher the increase in value of the coins associated to the smart contract is, effectively covering the costs for the increased use of the exchange.
  • the smart contract 2000 can further comprise a plurality of functions F1 ...Fn for operating changes in the values of the variables V1 ...Vn.
  • a first function F1 can be configured to allow one or more of the plurality of transaction nodes 1 101-1 103 defined by the third variable V3 to modify the plurality of cryptocurrencies defined by the first variable V1 and/or to modify the plurality of commissions or the function defining the commissions, defined by the second variable V2. Thanks to this approach, the control over which cryptocurrencies are listed by the exchange and/or the respective commission for exchanging them is given to the plurality of transaction nodes 1 101 -1103 owning coins associated to the smart contract 2000.
  • Figure 3 schematically illustrates a method 3000 for executing the smart contract 2000 in accordance with one embodiment of the invention.
  • method 3000 is configured for executing a smart contract, preferably smart contract 2000, on a network 1000 implementing a distributed ledger, the smart contract implementing an exchange for exchanging cryptocurrencies.
  • the method 3000 comprises a first step S3100 of setting a plurality of cryptocurrencies which can be exchanged at the exchange by a plurality of transaction nodes 1 101-1 103 owning the coins associated to the smart contract 2000.
  • the decision on which cryptocurrencies are to be exchanged is not left to a single decision maker, which may take an unilateral inefficient decision, but the governance is distributed, preferably to the users of the exchange, thereby increasing the quality of the cryptocurrencies to be exchanged.
  • the step S3100 of setting the plurality of cryptocurrencies can include a step of proposing at least one proposed cryptocurrency to be exchanged and a step of voting on the proposed cryptocurrency.
  • the voting approach can in principle be any approach based on a single vote given to each of the plurality of transaction nodes 1 101- 1103 owning the coins associated to the smart contract or based on a number of votes based on the coins associated to the smart contract owned by each of the plurality of transaction nodes 1 101 -1 103 owning the coins associated to the smart contract 2000.
  • the method 3000 further comprises a step S3200 of setting a plurality of commissions associated to the plurality of cryptocurrencies or setting a function for calculating the plurality of commissions. Thanks to this approach, each cryptocurrency can be exchanged at the given commission.
  • the step S3200 of setting the plurality of commissions can include a step of proposing at least one proposed commission and a step of voting on the proposed commission.
  • the step S3200 of setting the function for calculating the plurality of commissions includes a step of proposing at least one proposed function and a step of voting on the proposed function.
  • the voting approach can in principle be any approach based on a single vote given to each of the plurality of transaction nodes 1 101-1103 owning the coins associated to the smart contract or based on a number of votes based on the coins associated to the smart contract owned by each of the plurality of transaction nodes 1 101-1103 owning the coins associated to the smart contract 2000.
  • the step S3200 of setting the plurality of commissions can include a step of setting a value for one or more of the plurality of commission depending on an exchange volume of the cryptocurrency associated to the commission.
  • the step S3200 of setting the function for calculating the plurality of commissions can include a step of setting a function having as an input an exchange volume of the cryptocurrency associated to the commission.
  • the commission can be set to be lower for cryptocurrencies with higher exchange volumes and higher for cryptocurrencies with lower exchange volumes.
  • the commission can be set as the result of a function whose value increases as the input decreases, wherein the input is the amounts of the given cryptocurrency exchanged on the exchange. Thanks to this approach, the commission can be set in an automatic manner requiring less input from the transaction nodes 1101-1 103 owning the coins associated to the smart contract 2000.
  • the exchange volumes of the various cryptocurrencies listed on the exchange varies, so does the respective commission.
  • the step S3200 of setting the plurality of commissions can include a step of setting a value for each of the plurality of commission depending on an amount of coins associated to the smart contract 2000 blocked with the given cryptocurrency.
  • step S3200 of setting the function for calculating the plurality of commissions can include a step of setting a function having as an input an amount of coins associated to the smart contract 2000 blocked with a given cryptocurrency. Thanks to this approach, the commission can be set for instance to be lower for cryptocurrencies with higher blocked coins and higher for cryptocurrencies with lower blocked coins. More generally, the commission can be set as the result of a function whose value increases as the input decreases, wherein the input is the amounts of coins associated to the smart contract 2000 blocked with the given cryptocurrency.
  • the method 3000 further comprises a step S3300 of exchanging a given cryptocurrency on the exchange.
  • the commission set at step S3200 is then calculated based on the exchanged amount and is paid to the transaction nodes 1101-1103 owning the coins associated to the smart contract 2000.
  • How the commissions are redistributed to the transaction nodes 1101-1 103 owning the coins associated to the smart contract 2000 can be implemented in different manners. For instance, a redistribution function for a given transaction nodes 1 101-1103 can have as an input the number of coins associated to the smart contract 2000 owned by the given transaction node 1101-1 103 and/or the number of coins associated to the smart contract 2000 owned by the given transaction node 1 101 - 1103 and blocked to the cryptocurrency from which the commissions are generated.
  • the transaction nodes 1 101-1 103 owning the coins associated to the smart contract may be further allowed to block their coins associated to the smart contract 2000 to one or more cryptocurrencies listed on the exchange, as previously described.
  • the commission for exchanging a given cryptocurrency can then be paid only to those transaction nodes 1 101-1103 whose coins are blocked with the given cryptocurrency. Thanks to this approach, transaction nodes 1101-1 103 have an advantage in owning coins of the smart contract 2000 and blocking them with cryptocurrencies which they deem to be of higher quality, thus increasing the efficiency of the exchange and in turn the global efficiency of the network 2000.
  • the present invention enables a shared governance of the exchange with a clear and transparent approach to setting traded cryptocurrencies and the respective commissions. Thanks to this approach it is possible to make an efficient use of the exchange and of the network 2000. Moreover, thanks to this approach it is possible to avoid a situation in which an exchange is hacked and a transaction node 1 101-1103 ends up paying an incorrect amount of commissions due to the hacking. To the contrary, in the invention, due to the distributed nature of the governance of the exchange, this can advantageously be prevented, which results in a more transparent and safer use of the exchange by the transaction nodes 1 101 -1103 as well as in a reduced risk for the owners of the exchange.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Computing Systems (AREA)
  • Development Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The present invention relates to a smart contract (2000) for running on a network (1000) implementing a distributed ledger, the smart contract (2000) implementing an exchange for exchanging cryptocurrencies comprising: a first variable (V1) defining a plurality of cryptocurrencies which can be exchanged at the exchange, a second variable (V2) defining a plurality of commissions associated to the plurality of cryptocurrencies defined by the first variable (V1), or defining a function for calculating the plurality of commissions associated to the plurality of cryptocurrencies defined by the first variable (V1), a third variable (V3) defining a plurality of transaction nodes (1101-1103) owning the coins associated to the smart contract (2000). The invention further relates to a method for executing the smart contract (3000) on a network (1000).

Description

Distributed exchange
The present invention generally relates to a smart contract for a network implementing a distributed ledger which allows an exchange to be implemented. The invention further relates to a method for running the smart contract on the network.
Prior art
Distributed ledgers are becoming a more common technology for certifying and tracking several kinds of assets, such as cryptocurrencies, contracts, but also documents such as certifications, medical records, identify documents, etc. The distributed ledgers also provide means for recording transactions related to the assets or documents. Namely modification to the asset or documents, be it a modification to its content or to its owner, can be recorded by the distributed ledger.
Several kinds of distributed ledgers are available, based on different technologies, such as blockchain, Hashgraph, etc. In general they all share the common concept that the network implementing the distributed ledger comprises a plurality of transaction nodes and a plurality of ledger computation nodes. The transaction among the transaction nodes are recorded by the ledger computation nodes with a computationally intensive approach, which provides the security of the distributed ledgers with respect to brute force hacker attacks.
Figure 1 schematically illustrates a network 1000 implementing a distributed ledger in accordance with the state of the art, comprising a plurality of transaction nodes 1101-1103 and a plurality of ledger computing nodes 1201-1202. The distributed ledger could be, for instance, Ethereum. In this case the ledger computing nodes 1201-1202 are configured to run one or more smart contracts for allowing any of the transaction nodes1 101-1103 to perform several kinds of transactions which are then recorded in the distributed ledger, in the case of Ethereum implemented with a blockchain implementation.
In general, in distributed ledgers such as the one illustrated in figure 1 , any transaction node 1 101 -1103 can perform transactions with any other transaction node 1 101-1 103. One of the most common transaction consists in the exchange of assets, for instance cryptocurrencies from one transaction node 1 101-1 103 to another transaction node 1 101- 1 103. Due to their growing popularity, different kinds of cryptocurrencies are now available on the market. It is therefore often the case that transaction node 1101-1 103 may want to exchange a first cryptocurrency with a second, different, cryptocurrency, or with currencies stored outside of the network 1000, such as dollars, euros, etc. In order to achieve this functionality, an exchange is needed.
The exchange is physically implemented by computers, thereby generating costs in terms of equipment and electricity for the exchange owner. To compensate for these costs, exchanges available today require the users to pay a commission. In general, in order to contain the vast amount of power used by exchanges and by the network 1000, it is thus important to ensure a high efficiency of the network 1000 and of the exchange usage. This is, however, not always the case.
In particular, any exchange will usually unilaterally set the various cryptocurrencies combinations which can be exchanged, such as cryptocurrency A with cryptocurrency B, cryptocurrency A with USD, cryptocurrency B with USD etc. Moreover, the exchange will also usually unilaterally set the commission associated to the cryptocurrency combination which is exchanged.
Those two unilateral decisions to not generally provide the most efficient use of the network 1000 and/or of the exchange. For example, assuming one transaction node 1 101 intends to exchange cryptocurrency A with cryptocurrency C, the number of transactions to be carried out will depend on the configuration of the exchange. That is, for instance, if the exchange only allows the combinations A-B, B-C, two transactions will be needed. As a further example, even if the exchange allows the combination A-C but with a commission higher than the combined commission of the combinations A-B and B-C, users will generally carry out two transactions instead of one.
That is, the configuration of the exchange in terms of what cryptocurrency combinations are allowed and/or for which commission values has a direct impact in the number of transactions to be implemented by the exchange and recorded by network 1000. Each of those transaction requires computational and energy resources which are becoming more and more important. It is thus important that the exchange is set up in an efficient manner.
As of today this is not possible since the exchanges are all unilaterally controlled by an exchange owner which may favor commercial interests over the interest of an efficient use of the network 1000, recording the transactions. There is therefore a need to implement an exchange in a manner which allows the exchange and the network 1000 to operate efficiently.
Moreover, an exchange implemented with a single operating point, such as a single server, faces the risk of being attacked by hackers. The security measures for ensuring that the assets deposited at the exchange cannot be reached by hackers can be very expensive and further add to the commission charged, thus further reducing the usability of the exchange.
The present invention has been developed in view of the above problems and it is an object thereof to provide a more reliable form of exchange which improves on at least some of the drawbacks of the prior art. In other words, one of the objectives of the invention is to provide a method for implementing a shared governance of the exchange running on a network implementing a distributed ledger.
Summary of the invention
The present invention generally relies on the principle that at least some functions of an exchange can be implemented by means of a smart contract. This allows the governance of the exchange to be controlled in a distributed manner. In particular, at least the selection of which cryptocurrencies are to be exchanged and/or the respective commissions, can be implemented in a distributed manner by means of a smart contract. This allows the owners of the smart contract to decide which cryptocurrencies are traded on the exchange. Moreover, in some embodiments, this also allows the owners of the smart contract to decide the amount of commission which apply to each coin.
The governance is shared based on the ownership of the coins associated to the smart contract implementing the exchange. Thanks to this approach, the decisions can be shared among different owners of the smart contract implementing the exchange. This ensures that a consensus is reached among the various owners of the exchange increasing the likelihood that cryptocurrencies with a higher quality receive a lower commission, thus resulting in a more efficient use of the computational and energy resources of the network and of the exchange.
Moreover, in some embodiments, also the exchange can be run in a distributed manner which renders a central attack to a single infrastructure not possible, thus increasing the security of the exchange. An embodiment can relate to a smart contract for running on a network implementing a distributed ledger, the smart contract implementing an exchange for exchanging cryptocurrencies comprising: a first variable defining a plurality of cryptocurrencies which can be exchanged at the exchange, a second variable defining a plurality of commissions associated to the plurality of cryptocurrencies defined by the first variable, or defining a function for calculating the plurality of commissions associated to the plurality of cryptocurrencies defined by the first variable, a third variable defining a plurality of transaction nodes owning the coins associated to the smart contract.
In some embodiments, the smart contract can further comprise a first function allowing the plurality of transaction nodes defined by the third variable to modify the plurality of cryptocurrencies defined by the first variable and/or to modify the plurality of commissions of the function defined by the second variable.
An embodiment of the invention can further relate to a method for executing a smart contract on a network implementing a distributed ledger, the smart contract implementing an exchange for exchanging cryptocurrencies, the method comprising: setting a plurality of cryptocurrencies which can be exchanged at the exchange by a plurality of transaction nodes owning the coins associated to the smart contract, setting a plurality of commissions associated to the plurality of cryptocurrencies or a function for calculating the plurality of commissions associated to the plurality of cryptocurrencies.
In some embodiments, the step of setting the plurality of cryptocurrencies can include a step of proposing at least one proposed cryptocurrency to be exchanged and a step of voting on the proposed cryptocurrency.
In some embodiments, the step of setting the plurality of commissions can include a step of proposing at least one proposed commission and a step of voting on the proposed commission, or the step of setting the function for calculating the plurality of commissions can include a step of proposing at least one proposed function and a step of voting on the proposed function.
In some embodiments, the step of setting the plurality of commissions can include a step of setting a value for one or more of the plurality of commission depending on an exchange volume of the cryptocurrency associated to the commission, or the step of setting the function for calculating the plurality of commissions can include a step of setting a function having as an input an exchange volume of the cryptocurrency associated to the commission.
In some embodiments, the step of setting the plurality of commissions can include a step of setting a value for one or more of the plurality of commission depending on an amount of coins associated to the smart contract blocked with a given cryptocurrency, or the step of setting the function for calculating the plurality of commissions can include a step of setting a function having as an input an amount of coins associated to the smart contract blocked with a given cryptocurrency.
Short description of the figures
Figure 1 schematically illustrates a network 1000 implementing a distributed ledger in accordance with the state of the art;
Figure 2 schematically illustrates a smart contract 2000 implementing an exchange in accordance with one embodiment of the invention;
Figure 3 schematically illustrates a method 3000 for executing the smart contract 2000 in accordance with one embodiment of the invention.
Detailed description of preferred embodiments
Although the invention can find application with different kind of distributed ledgers, in the following description embodiments will be explained, for ease of understanding through examples, with reference to specific embodiments relating to an implementation using a blockchain as distributed ledger. It will however be understood that the invention is not limited to this specific implementation.
In the following reference will be made to the term“coin associated to the smart contract 2000” to signify a specific type of cryptocurrency which is used to control the governance of the exchange, in the manners which will become apparent from the following description. The number and functioning of the coins associated to the smart contract 2000 is fixed in the smart contract 2000, defining the operation of the exchange. In general, ownership of the coins associated to the smart contract 2000 is required in order to take part in the governance of the exchange. Moreover, in some embodiments, ownership of the coins associated to the smart contract 2000 is required in order to trade on the exchange. Still further, in some embodiments, the amounts of the coins associated to the smart contract 2000 owned by a given transaction address is used in calculating the commissions applying to the given transaction address when trading on the exchange. Still further, in some embodiments, the amounts of the coins associated to the smart contract 2000 owned by a given transaction address is used in calculating how the commissions collected by the exchange are distributed among the owners of the coins associated to the smart contract 2000.
Figure 2 schematically illustrates a smart contract 2000 implementing an exchange in accordance with one embodiment of the invention. In particular, the smart contract 2000 is configured to be run on a network 1000 implementing a distributed ledger and for implementing an exchange for exchanging cryptocurrencies. Thank to this approach, the exchange implemented by the smart contract allows a distributed governance of the exchange. In this manner, unilateral decisions resulting in an inefficient use of the exchange and of the network 1000 can be avoided.
Moreover, in some embodiments, this configuration also allows a distributed operation of the exchange, which is intrinsically less vulnerable than an exchange implemented on a single architecture.
The smart contract 2000 comprises a plurality of variables V1 ...Vn among which a first variable V1 defines a plurality of cryptocurrencies which can be exchanged at the exchange.
The first variable V1 could be implemented as an array of any given value, so as to list all cryptocurrencies which can be exchanged at the exchange.
In some embodiments, each of the cryptocurrencies which can be exchanged at the exchange will be exchanged only into and/or from the coins associated to the smart contract 2000. That is, if the cryptocurrencies which can be exchanged at the exchange are schematically defined as A, B, C, while the coins associated to the smart contract 2000 are schematically defined as X, the exchange may only allow the following combinations: A-X, X-A, B-X, X-B, and C-X, X-C. One advantage of this configuration is that it makes it possible to reduce the number of transactions from any cryptocurrency to any other cryptocurrency to two. Moreover, a further advantage lies in the fact that the owners of the exchange also are or become owners of the coins associated to the smart contract 2000, thus allowing them to take part into the shared governance of the exchange. This is particularly advantageous since the users of the exchange have an inherent interest in making the exchange operate as efficiently as possible, thus also making network 1000 operate as efficiently as possible, and since they take part in the governance of the exchange, they can make sure the exchange is configured in an efficient manner.
Moreover, a second variable V2 defines a plurality of commissions associated to the plurality of cryptocurrencies defined by the first variable V1. Also in this case, the second variable V2 could be implemented as an array of any given value, so as to list all commissions associated to the cryptocurrencies which can be exchanged at the exchange.
Alternatively, or in addition, the second variable V2 could be expressed as a function for calculating the plurality of commissions. In some embodiments, the function can have a first sub-function and/or a second sub-function for calculating the value of the commission.
The first sub-function could be set by the transaction nodes 1101-1 103 owning the coins associated to the smart contract 2000. In particular, the first sub-function could comprise a function setting a relationship between the position of a given cryptocurrency A, B, C listen in the variable V1 , for instance the address of the given cryptocurrency in an array implementing the variable V1 , and the value of the commission for exchanging the cryptocurrency. Alternatively, or in addition, the first sub-function may comprise a function setting a relationship between an amount of the given cryptocurrency exchanged in a predefined period of time, and the value of the commission. As an example, the transaction nodes 1101-1103 owning the coins associated to the smart contract 2000 could set that a predefined number of the most traded cryptocurrencies have a first commission value, a predefined number of second most traded cryptocurrencies have a second commission value, and so on. For instance, assuming cryptocurrencies A, B, C and D are listed in the variable V1 in this order, thus having addresses 0, 1 , 2 and 3 respectively, the first sub-function may associated a first predefined commission to the cryptocurrency at address 0, namely A, a second predefined commission to the cryptocurrency at address 1 , namely B, and so on. In general, it will be clear how the first sub-function is set by the transaction nodes 1 101-1 103 owning the coins associated to the smart contract 2000 and results in a value of commission for a given cryptocurrency which is the same for all users of the exchange. The second sub-function could comprise a function setting the relationship between the amount of coins associated to the smart contract 2000 which are owned by a given transaction node 1 101-1 103 and the value of the commission applying to the specific transaction node 1 101-1 103. That is, the second sub-function can result in a value of commission for a given cryptocurrency which is different for different users of the exchange. This, as will be discussed further below, provides a significant advantage in that the biggest users of the exchange may also be the ones with the highest amount of governance, thus ensuring that efficient governance is performed by those transaction nodes which have an interest in the exchange operating in the most efficient manner.
In some embodiments, transaction nodes 1 101-1 103 may further decide to block their coins associated to the smart contract 2000 with a specific cryptocurrency traded on the exchange. That is, for instance, transaction node 1 101 owning Z coins associated with the exchange may block Z/3 coins together with cryptocurrency A traded on the exchange and 2Z/3 coins with cryptocurrency B traded on the exchange. In some embodiments, blocked coins cannot be used by their respective owners. In those embodiments, the second sub-function may also be calculated on the specific amount of coins associated to the smart contract 2000 which are blocked with respect to a given cryptocurrency. In other words, for a given transaction node 1101-1103, the amount of commission for a given cryptocurrency will also depends on how many coins associated to the smart contract 2000 are blocked with respect to the given cryptocurrency. Still with other words, with reference to the example above, the second sub-function would provide a different value of commission between cryptocurrency A and cryptocurrency B for the same transaction node 1 101 , preferably with a lower value of commission for the cryptocurrency to which the higher amount of coins associated to the smart contract 2000 has been blocked with, namely cryptocurrency B in the above example.
Additionally, a third variable V3 defines a plurality of transaction nodes 1 101-1103 owning the coins associated to the smart contract 2000. Also in this case, the variable V3 may be implemented as an array listing the transaction nodes 1101-1103, for instance by using the respective address on the network 1000, and the amount of coins associated to the smart contract 2000 owned by the given transaction nodes 1101-1 103.
In some embodiments, the variable V3 can define the plurality of transaction nodes 1 101- 1 103 owning the coins associated to the smart contract by specifying the addresses of the respective transaction nodes 1101-1 103 in the network. Furthermore, in some embodiments it may be possible to specify a coin associated to the smart contract and specify, for each transaction nodes 1 101-1 103 owning the coins associated to the smart contracts, how many coins are owned. Thanks to this approach, different transaction nodes 1101-1 103 may own different amount of coins associated to the smart contract 2000 implementing the exchange.
In some embodiments the exchange may exchange any of the cryptocurrencies defined by the first variable V1 into and from the coins associated to the smart contract 2000. That is, transaction nodes 1 101-1 103 wanting to make use of the exchange may be required to acquire coins associated to the smart contract in order to exchange into one of the listed cryptocurrencies, or may be required to accept coins associated to the smart contract in order to exchange from one of the listed cryptocurrencies. Thanks to this approach it is advantageously possible to increase the usability of the exchange, since any exchange rates do not have to be specified among any possible pair of cryptocurrencies listed but only for the exchange of a given listed cryptocurrency and the coins associated to the smart contract 2000.
Moreover, thanks to this approach, transaction nodes 1101-1 103 wanting to make use of the exchange are required to acquire coins associated to the smart contract, thus increasing the value of the coins associated to the smart contract 2000. This makes it possible for the owners of the exchange, namely the owners of the coins associated to the smart contract, to offer competitive exchange commissions, as the costs for operating the exchange are covered by the increase in value of the coins associated to the smart contract 2000. As this reduces the commissions to be applied, it increases the usability of the exchange resulting in an increased popularity, and thus value, of the coins associated to the smart contract 2000. Thus, the more the exchange is used, the higher the increase in value of the coins associated to the smart contract is, effectively covering the costs for the increased use of the exchange.
In some embodiments, the smart contract 2000 can further comprise a plurality of functions F1 ...Fn for operating changes in the values of the variables V1 ...Vn. In particular, a first function F1 can be configured to allow one or more of the plurality of transaction nodes 1 101-1 103 defined by the third variable V3 to modify the plurality of cryptocurrencies defined by the first variable V1 and/or to modify the plurality of commissions or the function defining the commissions, defined by the second variable V2. Thanks to this approach, the control over which cryptocurrencies are listed by the exchange and/or the respective commission for exchanging them is given to the plurality of transaction nodes 1 101 -1103 owning coins associated to the smart contract 2000. This is particularly advantageous as the decision on which cryptocurrencies are to be listed by the exchange and/or on the respective commission is not taken unilaterally by a single entity which may decide to push cryptocurrencies with a lower quality by exchanging them a lower commission. On the other hand, as the decision is taken by the plurality of transaction nodes 1 101 -1 103 owning coins associated to the smart contract 2000, inefficient use of the resources of network 1000 due, for instance, to a bribe resulting in a lower commission for a low quality cryptocurrency, can be avoided. In other words, thanks to this implementation it is possible to achieve a shared governance of the exchange, which has not been possible with the previously existing solutions.
Figure 3 schematically illustrates a method 3000 for executing the smart contract 2000 in accordance with one embodiment of the invention. In particular, method 3000 is configured for executing a smart contract, preferably smart contract 2000, on a network 1000 implementing a distributed ledger, the smart contract implementing an exchange for exchanging cryptocurrencies. More specifically, the method 3000 comprises a first step S3100 of setting a plurality of cryptocurrencies which can be exchanged at the exchange by a plurality of transaction nodes 1 101-1 103 owning the coins associated to the smart contract 2000. Thanks to this step, the decision on which cryptocurrencies are to be exchanged is not left to a single decision maker, which may take an unilateral inefficient decision, but the governance is distributed, preferably to the users of the exchange, thereby increasing the quality of the cryptocurrencies to be exchanged.
In some embodiments, the step S3100 of setting the plurality of cryptocurrencies can include a step of proposing at least one proposed cryptocurrency to be exchanged and a step of voting on the proposed cryptocurrency. In this manner the proposal and/or the decision can be left to the plurality of transaction nodes 1 101-1 103 owning the coins associated to the smart contract 2000. The voting approach can in principle be any approach based on a single vote given to each of the plurality of transaction nodes 1 101- 1103 owning the coins associated to the smart contract or based on a number of votes based on the coins associated to the smart contract owned by each of the plurality of transaction nodes 1 101 -1 103 owning the coins associated to the smart contract 2000. In the latter case, there is an advantage for owners of new cryptocurrencies to acquire large amounts of the coins associated to the smart contract 2000, thus effectively paying for allowing their cryptocurrencies to be listed on the exchange and increasing the popularity of the exchange at the same time.
The method 3000 further comprises a step S3200 of setting a plurality of commissions associated to the plurality of cryptocurrencies or setting a function for calculating the plurality of commissions. Thanks to this approach, each cryptocurrency can be exchanged at the given commission.
In some embodiments, the step S3200 of setting the plurality of commissions can include a step of proposing at least one proposed commission and a step of voting on the proposed commission. Alternatively, or in addition, the step S3200 of setting the function for calculating the plurality of commissions includes a step of proposing at least one proposed function and a step of voting on the proposed function.
In this manner the proposal and/or the decision can be left to the plurality of transaction nodes 1 101-1 103 owning the coins associated to the smart contract 2000. The voting approach can in principle be any approach based on a single vote given to each of the plurality of transaction nodes 1 101-1103 owning the coins associated to the smart contract or based on a number of votes based on the coins associated to the smart contract owned by each of the plurality of transaction nodes 1 101-1103 owning the coins associated to the smart contract 2000. In the latter case, there is an advantage for owners of new cryptocurrencies to acquire large amounts of the coins associated to the smart contract 2000, thus effectively paying for allowing their cryptocurrencies to be listed on the exchange with a reduced commission, thereby increasing the popularity of the cryptocurrency and increasing the popularity of the exchange at the same time.
In some embodiments, the step S3200 of setting the plurality of commissions can include a step of setting a value for one or more of the plurality of commission depending on an exchange volume of the cryptocurrency associated to the commission.
Alternatively, the step S3200 of setting the function for calculating the plurality of commissions can include a step of setting a function having as an input an exchange volume of the cryptocurrency associated to the commission. Thanks to this approach, the commission can be set to be lower for cryptocurrencies with higher exchange volumes and higher for cryptocurrencies with lower exchange volumes. More generally, the commission can be set as the result of a function whose value increases as the input decreases, wherein the input is the amounts of the given cryptocurrency exchanged on the exchange. Thanks to this approach, the commission can be set in an automatic manner requiring less input from the transaction nodes 1101-1 103 owning the coins associated to the smart contract 2000. Moreover, as the exchange volumes of the various cryptocurrencies listed on the exchange varies, so does the respective commission.
In some embodiments, the step S3200 of setting the plurality of commissions can include a step of setting a value for each of the plurality of commission depending on an amount of coins associated to the smart contract 2000 blocked with the given cryptocurrency. Alternatively, or step S3200 of setting the function for calculating the plurality of commissions can include a step of setting a function having as an input an amount of coins associated to the smart contract 2000 blocked with a given cryptocurrency. Thanks to this approach, the commission can be set for instance to be lower for cryptocurrencies with higher blocked coins and higher for cryptocurrencies with lower blocked coins. More generally, the commission can be set as the result of a function whose value increases as the input decreases, wherein the input is the amounts of coins associated to the smart contract 2000 blocked with the given cryptocurrency.
The method 3000 further comprises a step S3300 of exchanging a given cryptocurrency on the exchange. The commission set at step S3200 is then calculated based on the exchanged amount and is paid to the transaction nodes 1101-1103 owning the coins associated to the smart contract 2000. How the commissions are redistributed to the transaction nodes 1101-1 103 owning the coins associated to the smart contract 2000 can be implemented in different manners. For instance, a redistribution function for a given transaction nodes 1 101-1103 can have as an input the number of coins associated to the smart contract 2000 owned by the given transaction node 1101-1 103 and/or the number of coins associated to the smart contract 2000 owned by the given transaction node 1 101 - 1103 and blocked to the cryptocurrency from which the commissions are generated.
In particular, in some embodiments, the transaction nodes 1 101-1 103 owning the coins associated to the smart contract may be further allowed to block their coins associated to the smart contract 2000 to one or more cryptocurrencies listed on the exchange, as previously described. In those embodiments, the commission for exchanging a given cryptocurrency can then be paid only to those transaction nodes 1 101-1103 whose coins are blocked with the given cryptocurrency. Thanks to this approach, transaction nodes 1101-1 103 have an advantage in owning coins of the smart contract 2000 and blocking them with cryptocurrencies which they deem to be of higher quality, thus increasing the efficiency of the exchange and in turn the global efficiency of the network 2000.
As will be clear from the description above, the present invention enables a shared governance of the exchange with a clear and transparent approach to setting traded cryptocurrencies and the respective commissions. Thanks to this approach it is possible to make an efficient use of the exchange and of the network 2000. Moreover, thanks to this approach it is possible to avoid a situation in which an exchange is hacked and a transaction node 1 101-1103 ends up paying an incorrect amount of commissions due to the hacking. To the contrary, in the invention, due to the distributed nature of the governance of the exchange, this can advantageously be prevented, which results in a more transparent and safer use of the exchange by the transaction nodes 1 101 -1103 as well as in a reduced risk for the owners of the exchange.
Although several embodiments have been described above, it will be clear to those skilled in the art that one or more features of any embodiment can be combined with one or more features of any embodiment so as to result in new embodiments of the invention, which is defined not by the described embodiments but rather by the claims.
List of reference numerals
Figure 1
1000: network
1101-1 103: transaction node
1201-1202: ledger computing node
Figure 2
2000: smart contract
V1 ...Vn: variables
F1 ...Fn: functions
Figure 3
3000: method for executing a smart contract S3100: setting cryptocurrencies
S3200: setting commissions
S3300: exchanging cryptocurrencies

Claims

Claims
1. A smart contract (2000) for running on a network (1000) implementing a distributed ledger, the smart contract (2000) implementing an exchange for exchanging cryptocurrencies comprising: a first variable (V1 ) defining a plurality of cryptocurrencies which can be exchanged at the exchange, a second variable (V2) defining a plurality of commissions associated to the plurality of cryptocurrencies defined by the first variable (V1 ), or defining a function for calculating the plurality of commissions associated to the plurality of cryptocurrencies defined by the first variable (V1 ), a third variable (V3) defining a plurality of transaction nodes (1 101-1 103) owning the coins associated to the smart contract (2000).
2. The smart contract according to claim 1 , further comprising a first function (F1 ) allowing the plurality of transaction nodes (1 101-1103) defined by the third variable (V3) to modify the plurality of cryptocurrencies defined by the first variable (V1 ) and/or to modify the plurality of commissions of the function defined by the second variable (V2).
3. A method for executing a smart contract (3000) on a network (1000) implementing a distributed ledger, the smart contract (3000) implementing an exchange for exchanging cryptocurrencies, the method comprising: setting (S3100) a plurality of cryptocurrencies which can be exchanged at the exchange by a plurality of transaction nodes (1 101-1 103) owning the coins associated to the smart contract, setting (S3200) a plurality of commissions associated to the plurality of cryptocurrencies or a function for calculating the plurality of commissions associated to the plurality of cryptocurrencies.
4. The method according to claim 3 wherein the step of setting the plurality of cryptocurrencies (S3100) includes a step of proposing at least one proposed cryptocurrency to be exchanged and a step of voting on the proposed cryptocurrency.
5. The method according to any of claims 3 or 4 wherein the step of setting the plurality of commissions (S3200) includes a step of proposing at least one proposed commission and a step of voting on the proposed commission, or the step of setting the function for calculating the plurality of commissions (S3200) includes a step of proposing at least one proposed function and a step of voting on the proposed function.
6. The method according to any of claims 3 or 4 wherein the step of setting the plurality of commissions (S3200) includes a step of setting a value for one or more of the plurality of commission depending on an exchange volume of the cryptocurrency associated to the commission, or wherein the step of setting the function for calculating the plurality of commissions (S3200) includes a step of setting a function having as an input an exchange volume of the cryptocurrency associated to the commission.
7. The method according to any of claims 3 or 4 wherein the step of setting the plurality of commissions (S3200) includes a step of setting a value for one or more of the plurality of commission depending on an amount of coins associated to the smart contract (2000) blocked with a given cryptocurrency, or wherein the step of setting the function for calculating the plurality of commissions (S3200) includes a step of setting a function having as an input an amount of coins associated to the smart contract (2000) blocked with a given cryptocurrency.
PCT/IB2018/000520 2018-05-22 2018-05-22 Distributed exchange WO2019224566A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/IB2018/000520 WO2019224566A1 (en) 2018-05-22 2018-05-22 Distributed exchange

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IB2018/000520 WO2019224566A1 (en) 2018-05-22 2018-05-22 Distributed exchange

Publications (1)

Publication Number Publication Date
WO2019224566A1 true WO2019224566A1 (en) 2019-11-28

Family

ID=62981266

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2018/000520 WO2019224566A1 (en) 2018-05-22 2018-05-22 Distributed exchange

Country Status (1)

Country Link
WO (1) WO2019224566A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150365283A1 (en) * 2014-06-16 2015-12-17 Bank Of America Corporation Cryptocurrency offline vault storage system
US20160071108A1 (en) * 2014-09-04 2016-03-10 Idm Global, Inc. Enhanced automated anti-fraud and anti-money-laundering payment system
US20180089761A1 (en) * 2016-09-26 2018-03-29 Shapeshift Ag System and method of providing a leader-follower multi-asset portfolio

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150365283A1 (en) * 2014-06-16 2015-12-17 Bank Of America Corporation Cryptocurrency offline vault storage system
US20160071108A1 (en) * 2014-09-04 2016-03-10 Idm Global, Inc. Enhanced automated anti-fraud and anti-money-laundering payment system
US20180089761A1 (en) * 2016-09-26 2018-03-29 Shapeshift Ag System and method of providing a leader-follower multi-asset portfolio

Similar Documents

Publication Publication Date Title
US20230029193A1 (en) System and method for composite cryptographic transactions
CN108885761B (en) Method for secure point-to-point communication on a blockchain
Nofer et al. Blockchain
Fong et al. Relational contracts, limited liability, and employment dynamics
US20200020032A1 (en) System and method for cryptocurrency trading
US20220414655A1 (en) Systems and methods for private node-level data computing and reconciliation
JP2019523495A (en) Digital goods management in a distributed transaction consensus network
KR102050087B1 (en) The block-chain system including POPS(Proof of Power specification and Stake) consensus algorithm and block generation method in the block-chain system
US11188896B1 (en) Smart contract of a blockchain for management of cryptocurrencies
KR102260226B1 (en) Block chain system and method thereof
Werth et al. A Review of Blockchain Platforms Based on the Scalability, Security and Decentralization Trilemma.
Hrytsai The place of virtual assets in the structure of digital financial technology
WO2019224566A1 (en) Distributed exchange
CN110266663B (en) Anonymous bill transaction matching data transmission method and related system
CN112288412A (en) Block chain-based digital legal note management method and device
Malki et al. Automating ex-post enforcement for spectrum sharing: A new application for block-chain technology
US20190122297A1 (en) Method for Hybrid currency and Volatility risk hedged currency
US20180181925A1 (en) System for maintaining account valuation of digital currency accounts
Ghosh Adoption of blockchain in financial services
Benedetti Public blockchains and applications
Kaur et al. Technologies behind crypto-based decentralized finance
Wahrstätter Stablecoin billionaires-A descriptive analysis of the ethereum-based stablecoin ecosystem
CN113362060A (en) Resource conversion data processing method, device, computer equipment and storage medium
Bakar et al. Robust outliers detection method for ethereum exchange rate: a statistical approach using high frequency data
CN105989238A (en) Data interaction method and device

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18743569

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18743569

Country of ref document: EP

Kind code of ref document: A1