The Bitconch chain uses a directed acyclic graph (DAG). As shown in Figure 1(a), Tx0 is the Genesis transaction wherein the initial users are assigned BUS by a special address. Tx1, Tx2, Tx3 and so forth are subsequent transactions. Because each transaction has a time and order, the entire transaction history can be represented as a directed acyclic graph.
Fig 1（a）DAG Data Structure
Tx0 is a transaction record for recharging node N1, which corresponds to the first user N1 in Figure 1(b). Tx1 is the second transaction, from N1 to N2, as in, node 1 transferring BUS to node 2. These two nodes begin to establish a social relationship, and as the number of transactions increases, there will be more and more connections between the nodes in the social graph. In this, the social network matures.
Fig 1（b）Social Graph
Figures 1(a) and 1(b) show the interaction between the DAG data structure and the social graph. 15 users generated 14 transactions initiating from Tx0 , Tx1, to Tx13 and built the social relationship as shown in Figure 1(b).
Fig 2（a）New Transaction and Verification
As shown in Figure 2(a), new transactions Tx14 and Tx15 are generated. Tx14 indicates that N1 transfers BUS to N4, and Tx15 indicates that N5 transfers BUS to N1. If m>n, according to formula (3), the transaction amount is positively correlated to the E value. For reputation contribution, the weight of Tx14 is greater than Tx15. As transactions continue to increase, the links between the various nodes in the social graph continue to increase accordingly - which provides more social data to generate reputation values.
Fig 2（b）New Transaction and Social Graph
Figure 2(a) also demonstrates the ability of the system to handle concurrent transactions. When Tx14 and Tx15 are generated simultaneously, the system generates multiple Byzantine fault-tolerant processes to improve the efficiency of transaction verification.