It is necessary to give a causal dimension to the behavior of a blockchain. In it, every change in the state of the network determines a transaction. Each transaction is inserted into a block that is added to a chain of blocks, creating an immutable ledger. To use a blockchain, you start by creating a digital wallet that generates a pair of cryptographic keys: one public and one private. The public key is the wallet address, while the private key allows you to authorize transactions. When a transaction is executed, for example, if cryptocurrency is sent or received, the transaction is verified by the network nodes and added to the blockchain only if validated by the consensus of the majority. This technology is used in various sectors to improve security, transparency, and efficiency.
In this case, the clients are fundamental; they are applications that represent an interface between the blockchain network and the personal computer. Through these, it is possible to interact with the wallet, or to query the network using specific APIs. An example of a client is Geth, one of the most widely used in the Ethereum blockchain protocol. Otherwise, there are specific SDKs for developers, with which they can create custom projects. Finally, there are now hundreds of applications that make it possible to perform numerous functions on the network, according to the most diverse use cases.
Using a blockchain is possible either in a fully distributed manner, in which case a distributed application will be built, or in a hybrid manner with decentralized or centralized software, which, however, performs operations that will be persisted on the distributed network.
