
conflicts that make all elements spend resources on conflict resolution. The afore-
mentioned issues justify a search for solutions essentially different from blockchain
technology, the basis for Bitcoin and many other cryptocurrencies.
In this paper we discuss an innovative approach that does not incorporate blockchain
technology. This approach is currently being implemented as a cryptocurrency called
iota [1], which was designed specifically for the IoT industry. The purpose of this
paper is to focus on general features of the tangle, and to discuss problems that arise
when one attempts to get rid of the blockchain and maintain a distributed ledger.
The concrete implementation of the iota protocol is not discussed.
In general, a tangle-based cryptocurrency works in the following way. Instead
of the global blockchain, there is a DAG that we call the tangle. The transactions
issued by nodes constitute the site set of the tangle graph, which is the ledger for
storing transactions. The edge set of the tangle is obtained in the following way:
when a new transaction arrives, it must approve two
1
previous transactions. these
approvals are represented by directed edges, as shown in Figure 1
2
. If there is not
a directed edge between transaction A and transaction B, but there is a directed
path of length at least two from A to B, we say that A indirectly approves B. There
is also the “genesis” transaction, which is approved either directly or indirectly by
all other transactions (Figure 2). The genesis is described in the following way. In
the beginning of the tangle, there was an address with a balance that contained all
of the tokens. The genesis transaction sent these tokens to several other “founder”
addresses. Let us stress that all of the tokens were created in the genesis transaction.
No tokens will be created in the future, and there will be no mining in the sense that
miners receive monetary rewards “out of thin air”.
A quick note on terminology: sites are transactions represented on the tangle
graph. The network is composed of nodes; that is, nodes are entities that issue and
validate transactions.
The main idea of the tangle is the following: to issue a transaction, users must
work to approve other transactions. Therefore, users who issue a transaction are
contributing to the network’s security. It is assumed that the nodes check if the
approved transactions are not conflicting. If a node finds that a transaction is in
conflict with the tangle history, the node will not approve the conflicting transaction
in either a direct or indirect manner
3
.
1
This is the simplest approach. One may also study similar systems where transactions must
approve k other transactions for a general k ≥ 2, or have an entirely different set of rules.
2
Time always increases from left to right in each figure.
3
If a node issues a new transaction that approves conflicting transactions, then it risks that other
nodes will not approve its new transaction, which will fall into oblivion.
2
评论