EntroBeam
Search…
Entropy mining

Basic information

The act of users paying gas fees and creating entropy registry TXs are similar to mining, which generates hash power by paying electricity and equipment costs. The more transactions flow into the contract, the more reliable the secure entropy.
— From Leon, EntroBeam dev
Entropy Registry, Entropy Chain, and Shuffle Entropy are all organically linked on-chain. All these processes are done only by performing Entropy Mining, in which the user sends an arbitrary 256-bit hexadecimal string to the EntroBeam Contract.
  • To solve the byzantine problem in a decentralized system, Bitcoin presents the number of leading '0's in the SHA hash value, and the user changes the nonce and performs continuous hashing.
  • To solve the deterministic problem in a decentralized system, EntroBeam presents a set to be used as an Entropy, and the user continuously transmits a noise that does not allow duplicates.
These processes consume resources such as electricity, equipment, network fees, labor costs, and especially time, so users are rewarded with coins or tokens. It is called crypto mining because it has many similarities to conventional mining.
Even if entropy mining produces an unpredictable entropy that will not even allow the probability of accurately fitting the phase information of every element in the universe, it will inevitably entail disadvantages even in the distant future. That's the entropy creation time.
Most of the solutions that accept or create entropy sources and apply them to applications are completed quickly. You can easily implement these functions with OpenSSL or the native functions of the OS.
If the length of the entropy chain is 10, the block time is 5 seconds, and more than ten entropy seeds Txs are input for each block, Secure Entropy is immediately assigned in 5 seconds. However, if one seed is input for every block, Secure Entropy is assigned after 50 seconds. It is difficult to predict what will happen.
However, if the entropy chain's length is reduced to shorten the entropy creation time, the informational value also decreases proportionally. According to information theory, secure entropy must always have a high information value.
Therefore, Entropy mining will have to continuously solve two crucial proposals:
  1. 1.
    It further faster the creation time of secure entropy.
  2. 2.
    It further increases the informational value of secure entropy.

Version

The starting version of EntroBeam is 1.0.0, indicating that this is Phase 1. Phase 2 will be ver 2.0.0. The version information of EntroBeam is indicated in the comments at the beginning of the Source Code.
//SPDX-License-Identifier: MIT
pragma solidity ^0.8.7;
/// @title EntroBeam ver 1.0.0

Milestone

Milestones are unique on a roadmap in that they do not span any timeframe. Moreover, we know that projects that are derived from the roadmap in the crypto world will be inconvenient to users if they are delayed or do not meet expectations. Therefore, brief or outlined but significant milestones are published on the official website.
Please keep in mind that Milestone may be updated at any time if EntroBeam devs thought there was a better way to improve EntroBeam.
And there is no Milestone priority. In other words, Milestones can be applied to EntroBeam in various forms, such as changing the order, mixing them up, or splitting them together.
  • The Milestone from the Smart Contract Perspective
Phase 1: This is the currently active version.
Phase 1.5: An option will be added that allows the user to select the algorithm to use for drawing lots in the entropy chain. It would be Fisher-Yates shuffle, Fast Random Integer Generation in an Interval by Daniel Lemire, optimal algorithm by Stephen Canon of Apple Inc, but it works "like" rather than "exactly". If no option is selected, the process applies as default(Even by default, Phase 1 only calculates the initial gas fee; Phase 1.5 calculates all initial/intermediate/last gas fees while the transaction is running).
Phase 1.9: The contract will add the option of accumulating secure Entropy to generate more unpredictable security entropy. Prior to Phase 1.9, the point to be problematic is that if the length of the entropy chain is
pp
, the probability of predicting which secure entropy will be generated may appear to be
1/p1/p
. But it is far from that. Number of user transactions is
nn
, When multiple transactions occur, and reveal entropy values accumulate, users get the number of cases
pnp^n
, which exponentially reduces the probability of predicting the secure entropy. This entropy accumulation process had to be performed manually by the user before ver 1.9, but from ver 1.9, it is handled automatically. If no option is selected, Phase 1 process applies as default.
Enabling the options in Phase 1.5 and 1.9 will consume some EntroBeam (EIX) tokens as well as gas fees. The default value of not selecting an option consumes only gas fee.
Phase 2.0: The act of users paying gas fees and creating entropy registry TXs are similar to mining, which generates hash power by paying electricity and equipment costs. However, some things are not suitable to specify that it is mining in the stage before ver 2.0. From ver 2.0 onwards, it is very suitable to call it Entropy Mining.
Entropy Mining-1
Mining is generally with CPU, but GPU/ASIC mining is recommended for efficiency. For entropy mining, Phase 2 is recommended rather than Phase 1 for unbiased entropy. Similar to effectively determining which side has the upper hand in rewards for CPU/GPU/ASIC, in entropy mining, Phase 2 gets more rewards than Phase 1. Even if there is Phase 2, Phase 1 also coexists, but since the rewards are within limited EntroBeam Token(EIX), Phase 1 may be wither away.
Phase 1 transmits Tx by specifying 256 bits by the user. Users can use the SHA256 hash function as it is. Unpredictability can be achieved with Phase 1 as well, but it cannot be guaranteed that the seed will not be biased, as users may do things like constantly adding +1 to the seed. Phase 2 satisfies both unbiasedness and unpredictability to increase the reliability of secure entropy.
Entropy mining-2
Phase 2 is mainly composed of two parts, 1) Entropy seed(256 bits seed by the application) generated by the application directly like OpenSSL, 2) Seed generation and transaction generation occur at the same time(users cannot know which seed was created until the transaction generates). Users need the validator's private key to sign the ECDSA, however the contract doesn't hide this key value. Phase 2 applications are open source. The most important is the process of checking the integrity of the compiled entropy generation/transfer application. The ecrecover(r,s,v) function will be utilized for important integrity checks.
User transaction consists of 1) Entropy Seed, 2) Time Stamp, and 3) the hash value of the compiled file, 4) A value obtained by hashing all data from 1 to 3 at once. The contract only knows 3) and it is not known which 1), 2), and 4) data will be transmitted. The contract internally checks the integrity by determining whether the hashed value of 1), 2), 3) matches 4) sent by the user.
But, there is a way to pass the verification of the integrity of the contract by decompiling (reverse engineering) the compiled file or manipulating the source code. Surprisingly, the method is simple. However, the point is that there is no benefit to be gained by executing such an attack. It is self-evident that such an attack while consuming gas fees reduces the value of the contract, and this is a proportional decrease in the actual value of contract rewards that the attacker must obtain. Instead, it is advantageous to transmit the more unbiased entropy seed to the supporter's position rather than the attacker's position. Of course, in any case, the goal of generating unpredictable secure entropy is constantly being achieved.
  • The Milestone from the Main Net Perspective
The main net is not a consideration at this time. The main net is not expected to be launched, but if things change, it will be released with a separate WhitePaper.
Copy link
On this page
Basic information
Version
Milestone