Lava Interpretation | PoC2 + Upgrade: What Can the New Standard Bring to the PoC Field?


This interview is aimed at the recent "PoC2 +" new P-disk standard proposed by Lava's technical team. It selected several issues of concern to the community and specifically invited Lava's technical development team to personally answer it. The issues include:

· What is the new PoC2 + standard?

What changes has PoC2 + made compared to previous standards?

· What "problems" and "holes" in the old standards were solved by the new standards?

· How to treat the "collision PID double digging" phenomenon that Lava is currently experiencing?

What impact does the new standard have on the entire PoC field?

Will the original coins become invalid after upgrading the new standard?

· How to upgrade? Will there be a coexistence situation between the old and new chains after the upgrade?

· Lava released new P-disk software. Is it free and open source? How is the performance?


Q: The Lava technical team recently proposed a new PoC2 + standard. What exactly is PoC2 +?


PoC2 +, as the name suggests, is an upgraded version of PoC2. For those who do n’t know PoC2 well, here is a simple literacy.

All PoC coins involve a very important concept, commonly known as "P Disk". Its essence is to use a program to generate a large amount of hash data linked to the miner's address and write these data to the hard disk. This whole process is called Plotting, and the specific data file is called a Plot file. Because it starts with P, it is simply called "P disk". So here comes a series of questions about how the specific hash data is calculated, how the data is organized into Plot files, how Plot files are linked to miner addresses, and so on.

Burstcoin's contribution to PoC is to a large extent the establishment of a set of standards that defines a series of specifications related to the P disk. Figure 1 below is the structure of the P disk seed in this specification, using an 8-byte Plot ID + 8-byte nonce number.


Figure 1. Burst's P-disk format

In this format, the first generation of the extended specification is PoC1, as shown in Figure 2:


Figure 2. PoC1

Later, based on the principle of image interchange, a new version was developed, which is PoC2, as shown in Figure 3:


Figure 3. PoC2

It can be said that all PoC projects we see today follow this PoC2 specification, which means that everyone currently uses the exact same P disk specification.

PoC2 + tries to solve the problem of similar P disk specifications at the root. Figure 4 is the seed structure of P disk of Lava. The seed is composed of 8-byte nonce number + 20-byte miner public key + 4-byte project path.


Figure 4. Poc2 + seed composition

Use the new seed to construct a new Plot file, which is the "P disk file" under PoC2 +. According to the project path of the seed suffix, the seeds of different projects can be specialized, so that the “P-disk file” used by different projects is different, and the “power determination” under the PoC consensus is realized for the first time.

Q: Since it is an improved version of PoC2, why not call it PoC3?


The reason is simple, because PoC3 is an existing concept. Friends who are more interested in PoC technology may know that there are currently some senior developers in the PoC community are exploring and researching a mechanism that uses realistic storage content as Plot data. If this mechanism can run through, it may give The entire PoC field brings relatively disruptive changes. This mechanism is called PoC3.

Of course, this mechanism is currently in the demonstration and trial stage, and the Lava technical team is also keeping up with it. We will always ensure that we are at the forefront of the PoC field … However, this is not the topic today and will not be repeated. All in all, Lava proposed the new standard called PoC2 Plus this time because of proper and rigorous considerations, because this is indeed an improvement based on PoC2.

Q: So how do you understand the changes made by PoC2 + compared to the old standard?


To answer this question, we first briefly understand the technical principles of the original PoC2 standard.


PoC mining is that miners first prepare Plot files and write them to the hard disk, and then participate in mining competition through the hard disk. The PoC2 standard defines the process of how a miner address generates a PID and how a PID generates a Plot file. So, if we summarize the role of PoC2 in a simple and rude way, it is that it associates the miner with the hard disk.

Lava's PoC2 + standard redefines the process of "associating miners with hard drives." And we make this connection simpler, clearer, and safer . But the more important significance is that the new standard provides a general solution for the entire PoC field. We try to establish industry specifications and let multi-projects be added to this framework.

Q: You mentioned that you have made some "redefinitions" based on the old standards. What are the specific definitions? In addition, what's wrong with the old standard that caused Lava to do such a "redefinition"?


From the perspective of technical staff, we think that the original PoC2 standard does have some flaws and loopholes. In the short term, these flaws and loopholes may cause minor problems. In the long run, it will definitely have a great and negative impact on the development of the entire PoC industry.

The old standard had a concept of PID, which is the abbreviation of Plot ID. The PID is compressed based on the miner's address and is used to form the Seed (random seed) of the Plot file. But in our opinion, PID has two problems: redundancy and security. Redundancy means that it is not necessary. We can directly associate the miner's address with the Plot file and use the miner's address (Key ID form) as the identity. Therefore, the new PoC2 + standard directly cancels this design. The security problem is that considering that the PID itself is only a digit string with a length of more than ten bits, it is lossy compressed relative to the address and there is the possibility of collision, which will cause confusion and confusion in the consensus process.

Q: In the past, there were behaviors in the community that double-mined Lava and other PoC currencies by looking for PID collisions. Is this also a problem brought by the old standard you said?


Can be understood as such. In essence, this kind of double mining needs to find two different addresses that exactly correspond to the same PID, so the new block issued under the same PID naturally points to two addresses at the same time, and both addresses can get mining rewards. In our opinion, this is a design loophole. This "collision double digging" is different from the general double digging. The general double digging is clearly open for you to dig, which is fair; and this double digging needs to find a specific "double digging PID", which has a threshold Will affect fairness. The PoC2 + upgrade we pushed this time can fill this loophole, and such double-mining behavior will be fundamentally suppressed.

Q: What impact does the new standard have on the entire PoC field?


This is another big topic, and Lava's technical team may have to write another one to make a special interpretation. Here is a summary.

From the perspective of the entire PoC field, what exactly does the new standard do? Let me summarize for you, don't look at a lot of so complicated as mentioned above , in fact, the kernel of the new standard is a sentence: computing power is determined . What is right confirmation? Right confirmation is clear attribution. We must clarify PoC computing power attribution, clarify which address (miner) the calculation power belongs to, and determine which currency the calculation power belongs to. Under the old standard, a Plot file was placed on the hard disk. This Plot file is also hashing power, but who it belongs to and what currency it belongs to is completely unclear. After all, even the Plot ID can collide.

For any project that adopts the new PoC2 + standard, it can support dual mining or not. The new standard only provides a framework and does not make value judgments. It is the project party's decision to make this. Should I double mine with other coins? No matter what your answer is, the new standard can help you do the right thing technically, and it will no longer be unclear.

Q: After upgrading the new standard, will the original coins become invalid? Will there be a situation where the new chain and the old chain coexist?


Answer the first question first. This upgrade is just an agreement upgrade, not a new coin, so there is no difference between the so-called "new currency" and "old currency".

For the second question, it depends on how we ultimately upgrade. In principle, this upgrade must be completed by a hard fork, so nodes that do not upgrade the software version are not compatible with the upgraded chain. In addition, we hope to make the upgrade dominated by computing power, that is, let computing power vote. We will discuss the overall technical process of initiating the upgrade in the near future, and we hope that the community will keep an eye on it.

Q: Along with the new standard, Lava also released new P-disk software. Is this free and open source?


Yes, this time the upgrade of the new standard, Lava proposed a concept called "PoC2 + family bucket", in fact, it is the P disk software (Miner, including scanning software) that is compatible with the new standard. Proposed and posted. The meaning of the family bucket is very clear, that is, to provide a complete set of solutions for the PoC industry, ready to use, and have a certain degree of customization capabilities. For any project that wants to enter the PoC industry, the new standard gives a new choice, and the supporting facilities are complete. We think this is positive for the entire industry.

Lava is a project that adheres to the line of open source, equality and expanding consensus. Our software will also be open source in principle and provided to users for free. For security and stability considerations, it should not be fully open source in a short time, but it must adhere to the principle of free and open to serve the majority of miner users.

Q: How about the performance of the new P disk software? Can you give a brief introduction?


no problem. First of all, I want to emphasize that we will never give you very junk performance because the P disk software is free, and we will continue to develop and upgrade to eventually achieve the best level in the industry. Please rest assured.

From the perspective of user acceptance, we are compatible with the most commonly used TurboPlotter in design, so that old miners who are familiar with TurboPlotter can quickly get started without paying too much learning and acceptance costs. The GUI interface (graphical interface) that the community is more concerned about before, because of time and development issues, there is no graphical version yet, but we provide more flexible scripts to allow users to quickly after extremely simple configuration Start P disk; users with higher requirements for performance can also improve performance and shorten P disk time through detailed parameter configuration.

In terms of performance, our overall idea is to write data for multiple hard disks at the same time by a single GPU calculation hash, so-called "multi-P"; and we have specially optimized disk writes and task scheduling to further reduce the write time . According to our tests, the write speed of ordinary 8T SATA hard disks can reach an average of 100MB / s (24000 nonces / min). As a reference, the write speed of TurboPlotter is on average 60MB / s; the hash calculation speed under N card RTX 2060 can be Easily exceed 240,000 nonces / min. It can be said that compared to the reference product TurboPlotter, Lava's version brings more than 40% performance improvement. Due to the limited space and the performance introduction cannot be detailed and rigorous, we still encourage miner users to participate in practical tests, personally experience and verify the performance of the software, and provide valuable opinions and suggestions!

additional materials:

PoC2 + new standard GitHub link:

Lava official website: