Journal "Software Engineering"
a journal on theoretical and applied science and technology
ISSN 2220-3397
Issue N4 2022 year
One can use a multi-party agreement in distributed ledger systems and blockchain networks to reach an agreement on changes of the state of the system. If one of the network members proposes а transaction, then certain network participants shall confirm it. After that the whole network can consider transaction as a valid one. A multiparty agreement or consensus determines the composition of these participants. Based on the historical data set, one can calculate the probability of confirming a transaction for each of the participants. In this paper, we use a statistical model checking approach to determine the likelihood that the network accepts a transaction. Sending confirmation requests may require an additional fee. We calculate the probability, and the mathematical expectation of the number of messages before reaching a consensus. Further, consensus models are built in the form of a Markov chain with various strategies for sending messages. Based on the proposed methods, we design a tool that automatically builds models for various strategies of sending messages and verifies the model using a statistical model verification approach. After choosing the optimal model, one can send confirmation messages using the scheduler module of developed tool.