Mining

Cryptography

Cryptography is the set of techniques which are used to hide information. That is to say, to make messages intelligible to unauthorized receivers.

Simetry Cryptography

Symmetric cryptography is a method of cryptography in which a key is used to encrypt and decrypt the message. This means that the sender and the receiver must have the key and if for some reason a third person obtains the key, they will be able to decrypt the message.

Asimetry Cryptography

Asymmetric cryptography is also a cryptographic method which solves the third person error in symmetric cryptography, because unlike symmetric cryptography, it uses 2 keys: A public key and a private key. An example to understand this well is to think of a mailbox (being the mailbox the public key), anyone can send a letter inside the mailbox but no one can see what is inside the mailbox, unless he has the key (private key). This is how wallets work

### Hash functions The hash function is a computable function which causes a data, mostly used in strings, to be converted into an infinite range of outputs, usually fixed-length strings. These functions can be used in cryptocurrency mining (hash rate) or in private data (such as when a company stores passwords or data).

#Block First we must know what a block is: A block is a part of blockchain, In which is stored:

  • A a number of valid records or transactions,
  • information about that block,
  • its linkage with the previous block and the next block through the hash of each block ─a unique code that would be like the block's fingerprint. So each block has a specific and immovable place within the chain.

A really interesting question would be how do you create a block?

Mining

The name comes from the classic mining. In which a group of people with their equipment go to a mine to find precious metals. In blockchain is similar, a group of people (called miners) must compete to solve a complex mathematical problem which needs a powerful team, the first to solve the mathematical problem will get the reward.

Mining is responsible for maintaining security in the network as miners review transactions and gather the latest transactions created in a pool called a block.

What are pools

A pool is a place where miners can work cooperatively to mine cryptocurrency blocks. They were created in order to facilitate the work of mining, i.e. to solve computational problems more effectively.

Mining pools would not be possible if the Bitcoin protocol did not allow this function. First of all, the responsible for this is a function that is integrated in the Bitcoin base client (getwork).

Getwork actually communicates to a group of miners so that together they can mine the same block.

In order to allow several miners to congregate their computational power at one point, it is necessary to have a server that serves as a link. It may sound ironic that a decentralized technology like blockchain depends on a centralized service. And this brings advantages and disadvantages.

One of the advantages is to keep up with block production and allow for smaller gains.

One of the disadvantages is that this depends on a decentralized service and several scams and thefts have been found in these services.

there are many mining Pools today that control a large portion of bitcoin miners.

  • AntPool
  • BTC.TOP
  • BTC.com
  • F2Pool

##Consensus mechanisms The blockchain being a distributed, as opposed to centralized, ledger, we require establishing a mechanism for all participants in the network to agree on the content about the content of the ledger. This is what is known as a consensus mechanism.

The most popular consensus mechanisms at present are the "proof of work" (PoW) and "proof of stake" (PoS) mechanisms, which I will explain below. At the end I also mention other mechanisms that are emerging

Proof of work

The "Proof of work" protocol is the oldest and best known consensus protocol.

It serves to avoid certain undesired behaviors in a network.

This protocol works on the concept of requesting a job from the client, which is then verified by the network. Normally the requested job consists of performing complex computational operations.

These operations are then verified by the network. Once they are approved, the client is given access to use the network resources. This is to prevent malicious clients from consuming all the resources in an uncontrolled manner. A situation that can end up denying the service provided to the rest of the clients on the network.

An example of this is the famous captcha that is put when one wants to enter a web service. The web puts the captcha for the visitor to solve it and can access the service. This is put with the intention that a person with bad intentions can not generate thousands of records and collapse the web.

There are several systems Pow the oldest (created at the time of Bitcoin by Satoshi nakamoto) is HashCash.

Proof of Stake

In proof-of-participation systems, the creator of a new block is not required to solve a mathematical puzzle, but the creator of a new block is chosen deterministically based on his or her participation; participation is measured based on how many coins or tokens he or she owns. For example, a person with 50 coins is 5 times more likely to be chosen to validate the next block than a person with 10 coins.

The main advantage of this system is lower energy consumption as the process of mining by solving puzzles is eliminated. Additionally, it encourages those doing the mining to be those who are truly interested in the network, as opposed to a PoW system where miners may have no interest in the network beyond obtaining compensation for their work.

Dapps:

A Dapp, (decentralized application, is an application or piece of software with a graphical interface, which is executed and managed by multiple users in a decentralized network. That is, it does not depend on a central authority or system to regulate and control its operation. By not being controlled by a single entity, the possibility of failures, downtimes or system crashes is significantly reduced. In addition, it is possible to optimize the use of the energy required to perform the computations necessary for the execution of the software. Users who contribute to the maintenance and operation of the system by providing computational capacity benefit from different types of rewards. This scheme has existed since the emergence of person-to-person (P2P) networks, but cryptocurrencies and blockchain have allowed this idea to be fully exploited.

By incorporating blockchain technology, which allows virtually any idea in the technological and computing world to be decentralized, the development of these smart applications is facilitated. On the other hand, the incorporation of cryptocurrencies provides the financial asset that governs the system and is often used to reward participants in the decentralized scheme. Yes, the administrators of the Dapps usually benefit from payments in the cryptocurrency backing the project. Thus, they get benefits similar to a share in a large company.

The operation of the decentralized application is closely related to the software as such. Each Dapp uses a different infrastructure to achieve a specific goal. What they do share is the conceptual scheme. To become a decentralized application, management and administration must be carried out in a decentralized manner. For a software to be considered a dApp, it must meet the following requirements according to BlockchainHub: it must be open source, the data and log must be stored cryptographically, the application must use a cryptographic token and it must generate these automatically. In most cases, smart contracts are included for instruction execution and interconnection with the blockchain.

ICO DAICO ITO