Eth ore pool nonce0
At the end of March this year, bitmainland launched an ant miner X3 based on ASIC, which is mainly aimed at Monroe coin (XmR) and cryptonight algorithm dependent cryptocurrency. Monroe coin immediately issued a counter statement that it will change the core algorithm to fight against the invasion of ASIC computing power
what would be the result if it appeared in the world of digital cryptocurrency? That is, the wrong calculation results may be brought into the whole network without being discovered
More importantly, if a "calculator manufacturer" monopolizes the calculator market, it can also deliberately proce this kind of calculator with errors to change the mathematical rulesafter all, the "calculation" in the field of crypto digital currency is not as simple as 1 + 2 + 3. You can't compare paper currency with special currency by hand
the practical significance of computing power monopoly in mainland China
we have learned about attacks based on 51% computing power in various articles P>
but the reality is that although the global power of 78% was in Chinese mainland, fortunately, they were scattered in different pools and controlled by different people. p>
although all POW based cryptocurrencies have the risk of being attacked by 51%, few people can really launch attacks e to the dispersion of computing power
but what if the miners themselves don't want to attack, but the mining machinery manufacturers attack
still using the analogy just now, although each miner subjectively wants to do the problem checking independently, their calculator is manipulated remotely and gives consistent wrong answers. This may pose a great threat to digital cryptocurrency
however, the manufacturer with the absolute voice of mining machinery had such a problem in mainland China
in April 2017, the back door of antbled came out. Although this is described as a "vulnerability" in Chinese, antbled is more like a function that has been implemented and designed
anonymous people found that after an ant miner made by bitmainland was connected to the network, it would communicate with a domain name held by bitmainland on a regular basis and return the miner's serial number, MAC address and IP address to bitmainland's server. If the server of bitcontinent gives a negative signal, the miner will stop running
although bitcontinental responded that they could not shut down any mining machines that did not belong to them. However, the bitcoin core team has proved in experiments that this function has no verification. Anyone can shut down mining machines by forging DNS - but it also means that bitcoin mainland has the ability to shut down any sold mining machines
After, bitcontinent fixed this "loophole", but it caused heated discussion in the community. This has also set the tone that almost all pow blockchain communities are biased against mainland China
a few months later, under the leadership of bitcontinent, viabtc g out the first block and made a hard bifurcation with the blockchain of bitcoin. From then on, bitcoin BCH (bitcoin cash) appeared in the world
will the monopoly of mining machinery destroy the distributed system
facing this problem, we should have a clear answer now. That is, the monopoly of mining machinery will certainly affect the safe operation of pow digital cryptocurrency
the problem is not whether bitcontinental and its founder Wu Jihan are trustworthy, but that one of the values of any blockchain system is to operate safely without trust in any single company or indivial
even if the ASIC miner is not monopolized by bitmainland, the ASIC miner itself will increase the concentration of computing power
the ASIC used for mining has great requirements for ventilation, power and site, and has no use except for mining. At the same time, the calculation difficulty of the whole network is increased e to the powerful computing power
as a result, it is very difficult for external players to start mining in the next software on the computer as they did five years ago. And the recent centralized exchange is caused by frequent black incidents, which also proves that concentration in this unregulated market will definitely lead to insecurity
assuming that the bitcoin network runs on top of one million miners, no one can shut it down. And if the bitcoin network runs on 20 large mines, it's much easier to shut it down P>
and by the end of 2017, 78% of the effort was concentrated in mainland China, which led to a real possibility of Chinese mainland regulators' launching a deadly attack against the special currency. p>
moreover, most of the scenarios of using digital cryptocurrency are related to "decentralization". Once centralized, it means that these scenarios no longer exist. It turns a project that might have value into a pure waste of computing power
Then, what measures should we take in the face of this situationfirst of all, as the project side, it may be time to give up the pure POW mechanism. In fact, in many projects of issuing cryptocurrency, especially in asset securitization projects. Similar to the concept of stock in the real world, POS itself is more reasonable than pow
in the media that don't know about blockchain, we often hear such words as "bitcoin wastes a lot of computing power and has no value", which is reasonable to some extent. It is difficult for a POW based blockchain to bind the value of the project itself to the issued digital cryptocurrency - because the real value behind the price of the currency does not come from the project, but from the cost of maintaining computing power
and the hybrid mode of pow + POS is more like the future. In the hybrid mode, both coin holders and miners can participate in the major decisions of this community. If a decision is widely accepted, the blockchain will be soft forked to the latest state without excessive intervention of developers, and there will be almost no private resistance of miners or mining machines
secondly, as a retail miner, if you are still digging a pure POW mechanism currency, you should unconditionally support the bifurcation activities initiated by the community to resist the ASIC mining machine, even if it will lead to the failure of your mining machine
this may sound contradictory, but in the long run, it is better to promote the reform of the community and get more benefits in a currency controlled by the monopoly of computing power. Because in many conflicts between computing power and community in the past, the ultimate result is that the computing power owner will forcibly keep the old algorithm to hard fork the blockchain
just like Eth and etc, the classic Ethereum (etc), which belongs to the computing power master, has lost the support of developers and become an air coin with no vitality and impossible to develop applications
as a retail leek, you should be careful to trade the non mainstream digital currencies (except bitcoin) supported by bitmainland mining machinery, so as to avoid falling into a blockchain in which bitmainland controls the computing power completely
finally, if you are bitcontinent, what should you do
bitcontinent's goal is to become Intel, AMD and NVIDIA, make greater contributions to the whole computer instry, and become a great company, not just entangled in the immediate interests of mining
Wall Street financiers have long seen through the violence brought about by NVIDIA's video card mining. The rise and fall of the company's stock price has been consistent with the price of bitcoin, and even affected by the digital currency market. Citron, a well-known short seller, has recently been bearish on NVIDIA, arguing that the company has focused too much on providing services for digital currency miners rather than on serious businesses such as artificial intelligence, games and driverless driving
the mission of chip manufacturers is to provide more powerful chips to drive more intelligent services, and finally contribute to the real world, rather than become monopoly tycoons in the virtual world. When we no longer enter the gate of the virtual world, the only thing left is a deserted land
in an interview with US media last year, Wu Jihan disclosed that he would make an IPO with a market value of billions of dollars. As a company about to go public, bitmainland should not only be responsible to investors, but also accept investors' questions about the sustainability of its business. "If your mining machinery goes public, it will encounter a fork, what should you do?"
and this question, which needs to be asked after the listing, has already appeared: the current price of the split coin xmo after the Monroe team split is $7.50, while the current price of the real Monroe coin XmR is $194, and the split coin is completely abandoned by the Monroe community
before bitcontinent becomes the name of all blockchain communities, we can rely on the huge amount of capital accumulated in recent years to transform into an artificial intelligence chip company along the previous plan, rather than continue to develop a variety of digital currency mining machines to extract the last drop of oil before the ecological collapse
content source: phoenix.com
first, you need to create a "Genesis" JSON configuration file, which describes some parameters of the genesis block. The following is the content of the file:
{
& quot; coinbase": & quot;& quot;,< br />" config": {< br />" homesteadBlock": 5
},
" difficulty": & quot; 0x20000",< br />" extraData": & quot; 0x",< br />" gasLimit": & quot; 0x2FEFD8",< br />" mixhash": & quot;& quot;,< br />" nonce": & quot; 0x0",< br />" parentHash": & quot; 000000000000000000000000",< br />" timestamp": & quot; 0x00",< br />" alloc": {< br />"& quot;:< br />{
" balance":& quot;& quot;
}
}
} 1234567891011213141516171819
the above code into a text file and name it genesis.json
Genesis!:
in order not to conflict with the data of the main chain, it is recommended to establish your own private chain data folder. On my computer, I built an ethdbspace as the Ethereum experimental work area on disk e, and created a privchain folder as the data storage folder of my first private chain
here, in order to facilitate management, I put genesis.json under the ethdbspace folder
open the windows command line
type the following command
geth -- dataDir & quot; E:\ EthDBSpace\ PrivChain" init " E:\ EthDBSpace\ genesis.json" 1
– the dataDir option is used to specify the data directory of our private chain. On my computer, it's E: &; EthDBSpace\ Privchain
init is the genesis command, followed by our Genesis configuration file path
after clicking enter, the execution result is as follows
at this time, genesis is complete
create an account:
in order to do experiments on the private chain, we also need to create our own account on the private chain
windows command line, type
geth -- dataDir & quot; E:\ EthDBSpace\ PrivChain" Console1
we have successfully created the world, so when we enter the client for the second time, we do not need to specify the genesis.json file path again, but directly – dataDir to indicate the private link data path
the console command is used to open the command line of geth
after clicking enter, the client will be initialized for a while. After the command prompt appears, it means that you have entered the geth console
type
personal. Newaccount (& #) in the geth command line; Your Password') 1
the personal.newaccount function is used to create an account, in which the parameter is the account password.
after clicking enter, the account creation address will be listed in green below the command, that is, the public key of the account.
we can check the account balance first, In the geth command line, type:
My = eth. Accounts [0]
eth. Getbalance (my) 12
My = eth. Accounts [0]. The purpose of this sentence is to assign the account address we just created to my variable. This can simplify the subsequent account address input. Among them, eth.accounts records the addresses of all accounts on this machine. Since we created an account for the first time, there is only one account on the computer at present. So here we use eth. Accounts [0] to extract the first account address. The eth.getbalance function is used to obtain the account balance, and the parameters are filled in the account address. The my variable here records the address of the first account
I hope my answer can help you
Differences:
1. Different link sources
eth trunk: generally refers to the link aggregation of the same device. A switch binds multiple interfaces to form an eth trunk interface, so as to achieve the purpose of increasing bandwidth and improving reliability
e-trunk (enhanced trunk): generally refers to cross device link aggregation, which is a mechanism to realize cross device link aggregation. Based on LACP (single device link aggregation standard), it is extended to realize link aggregation among multiple devices. Thus, the link reliability is improved from the board level to the device level
2. Different advantages
eth trunk: load sharing can be realized through trunk interface. In an eth trunk interface, traffic load sharing can be realized. When the physical link connected by a member interface fails, the traffic will switch to other available links, so as to improve the reliability of the whole trunk link. The total bandwidth of trunk interface is the sum of the bandwidth of each member interface
e-trunk (enhanced trunk): it is mainly used for the link protection between CE and PE and the protection of PE equipment node failure when CE al homing access VPLS, Vll and PWE3 networks. Before e-trunk is used, CE can only return to one pe device through eth trunk link
If eth trunk fails or PE equipment fails, CE will not be able to continue to communicate with PE equipment. After using e-trunk, CE can be returned to PE, so as to realize the protection between devices
extended data
port aggregation is the aggregation of multiple ports to form a aggregation group, so as to realize the load sharing among the member ports in the aggregation group, and also provide higher connection reliability. Both e-trunk and eth trunk are link aggregation technologies
in some three-tier data center networks, the core layer is composed of two ce12800, and two 10GE links are aggregated between the two devices, so as to ensure the high reliability of the links. The convergence layer uses ce12800 switch stack to achieve rendant backup, and the stack is connected with upstream and downstream devices through cross frame eth trunk
at the same time, through the traffic local priority forwarding function of eth trunk, the bandwidth load of inter frame link is reced. The aggregation layer creates VRF to isolate service network segment route and public network route, and deploys firewall by side. Two firewalls carry out hot backup to ensure high reliability
This prompt means that the MAC address of the network port has changed, but the device name has not changed. As a result, the device name and MAC address cannot match, and Linux cannot mount the network port. In other words, the MAC address in the configuration file of the network port does not match the actual MAC address of the network port
this situation generally occurs when the virtual machine migrates or the network card is replaced. The solution is as follows:
1: record the actual address of the network port, Execute ifconfig eth0
{rrrrrrr}
where hwaddr is followed by the actual MAC address of Ethernet port
2: change the MAC address in the configuration file
open the Ethernet port configuration file of eth0 / etc / sysconfig / network scripts / ifcfg-eth0
(the address may vary with different operating systems)
look for hwaddr = in the file, If not, add a new line. Change the value after this line to the MAC address value you see in the first step, for example, hwaddr = & quot; 00:0C:29:2D:2D:CF", Then save and exit
3: restart the network card through service network restart, or start the network card through ifup eth0 (this command will check the configuration file)
after ing the VMware virtual machine, you need to use vi editor to modify the MAC address in the original ifcfg-eth0 file to the MAC address shown on the way
Modify hwaddr = XX: XX: XX: XX: XX in the file VI / etc / sysconfig / network scripts / ifcfg-eth0 in the virtual machine, Make XX: XX: XX: XX: XX: XX: XX: XX consistent with the MAC address in the advanced network adapter of the virtual machine
replace the MAC address in the ifcfg-eth0 file with the MAC address in the advanced
the MAC address here should be consistent with the MAC address in the advanced
VI / etc / sysconfig / network scripts / ifcfg-eth0
the content is as follows
device = eth0
ty PE=Ethernet
UUID=54b95a3e-5a36-40bd-8d53-c9850f68d985
ONBOOT=yes
NM_ CONTROLLED=yes
BOOTPROTO=none
IPADDR=192.168.100.22
PREFIX=24
GATEWAY=192.168.100.1
DEFROUTE=yes
IPV4_ FAILURE_ FATAL=yes
IPV6INIT=no
NAME=" System eth0"
hwaddr = 00:0c: 29: Ce: 24: F0
##########################################
delete the 70 persistent-net.rules file in udev directory, udev directory, rules. D directory, etc directory, and then look at the steps
<, Do not use the file name of 70-persistent-net.rules. After deleting this file, a new one will be automatically generated after the next system restart<
after deleting the file 70-persistent-net.rules, restart the virtual machine with the reboot command
after restarting the Linux system, use ifconfig - A to view the network card information, eth0 network card has been up
this is the solution that VMware Linux can't find for eth0
Transaction
the behavior of blockchain transaction follows different rule sets
< UL >e to the distributed and unlicensed nature of public blockchain, anyone can sign the transaction and broadcast it to the network
according to different blockchains, traders will be charged a certain transaction fee, which depends on the needs of users rather than the value of assets in the transaction
blockchain transactions do not require any central authority verification. It only needs to use the digital signature algorithm (DSA) corresponding to its blockchain to sign it with the private key
once a transaction is signed, broadcast to the network and mined into a successful block in the network, the transaction cannot be recovered
Ethereum transaction structure
Ethereum transaction data structure: transaction 0.1 eth
{& 39; nonce': 39; 0x00', // Decimal: 0
& 39; gasLimit': 39; 0x5208', // Decimal system: 21000
& 39; gasPrice': 39; 0x3b9aca00', // Decimal system: 10000000000
& 39; to': 39; 39; ,// Sending address
& 39; value': 39; 0x16345785d8a0000',// 100000000000000000 ,10^17
' data': 39; 0x', // Decimal representation of null data; chainId': 1 / / blockchain network ID
}
these data have nothing to do with the transaction content, but have something to do with the execution mode of the transaction. This is because when you send a transaction in Ethereum, you must define some other parameters to tell miners how to handle your transaction. Transaction data structure has two attribute designs & quot; gas": & quot; gasPrice",& quot; gasLimit"
" gasPrice": The unit is Gwei, which is 1 / 1000 eth, indicating the transaction cost
& quot; gasLimit": The maximum gas charge allowed for the transaction
these two values are usually filled in automatically by the wallet provider
in addition, you need to specify which Ethereum network to execute the transaction (chainid): 1 represents the Ethereum main network
ring development, tests are usually carried out locally and on the test network, and transactions are carried out through the test eth issued by the test network to avoid economic losses. After the test, enter the main network transaction
in addition, if you need to submit some other data, you can use & quot; data" And & quot; nonce" Attach as part of a transaction
a nonce (number used only once) is the value used by Ethereum to track transactions, which helps to avoid double spending and replay attacks in the network
Ethereum transaction signature
Ethereum transaction involves ECDSA algorithm. Taking JavaScript code as an example, the popular ethers.js is used to call ECDSA algorithm for transaction signature
you can use the online application composer to deliver signed transactions to Ethereum. This is known as "offline signature.". Offline signatures are particularly useful for applications such as status channels, which are smart contracts that track the balance between two accounts and transfer funds after a signed transaction is submitted. Offline signature is also a common practice in dexes
you can also use online wallet to create signature verification and broadcast through Ethereum account
with Portis, you can sign a transaction to interact with the gas station network (GSN)
< / UL >
the Xueshuo innovation blockchain Technology Workstation of Lianqiao ecation online is the only approved "blockchain Technology Specialty" pilot workstation of "smart learning workshop 2020 Xueshuo innovation workstation" launched by the school planning, construction and development center of the Ministry of ecation of China. Based on providing diversified growth paths for students, the professional station promotes the reform of the training mode of the combination of professional degree research, proction, learning and research, and constructs the applied and compound talent training system