What a form of “getaddr” and it

What is the P2P technology in virtual
currencies and why is it so important

 

How does P2P works?

The instrument on what Peer-to-peer operates are the same, where
the seller received an information of the availability of a buyer with a
certain price agreed upon by both parties. Cryptography is used by Bitcoin as a
solution, a user can sign a validation through cryptography mentioning that
coin that you has been transfered to a new ownership. Using the their public
crypto key you can indentify the owner.

As transaction is underway, the receiver announces the
exchange for the public through a network of the used currency, Bitcoin has its
own called global Bitcoin network. Published and recorded transactions are a necessity
procedure in order to validate the new ownership of the coin and to prevent the
previous owner to use the same coin twice in a different exchange.

 

For virtual currencies such Bitcoin,
how can users find its peers?

There are several known methods used by Bitcoin so that their
clients are able to locate their peers. Once client locates a client it sends a
request in a form of “getaddr” and it collects information of other clients by
gathering addresses it has that have a timestamp within the last 3 hours. The
timestamp is updated whenever a node sends a message, and only on an address
the timestamps are updated and stored in a data storage if its 20 minutes old
or more. Allthough the client was able to locate several other peers from the
first client, how does it locate the first client in the first place?

One of them is through IRC seeding, after it noted its own
address, a nickname consisting of string based on its own address which encoded
by a node. There is exist a channel named from #bitcoin00 until #bitcoin99,
which would be joined afterwards randomly. Then lines would appear in the
channel and decode other IP addresses as they being read by the thread. But the
IRC support was entirely removed once Bitcoin client reached 0.6.x of the
version. The latest known version of Bitcoin as of November 11, 2017, client
version 0.15.1 is released by Bitcoin.

Other method that is easier to scale because of its existing
capabilities to handle thousands of connections is DNS seeding, when node of a
peer needs to locate other peers, the client sends a requests of DNS to locate
other peer nodes addresses. When client connects to DNSSeeder for the firstime
it will receive a return information consisting a list of nodes you can try
connect with, these nodes returned are well measured and checked for ther
reliability.