Abstract: Faulty implementation of BLOCKHASH can set off a sequence reorganisation resulting in consensus issues
Affected configurations: All geth variations as much as 1.1.3 and 1.2.2. All eth variations previous to 1.0.0.
Probability: Low
Severity: Medium
Influence: Medium
Particulars: Each C++ (eth) and Go (geth) purchasers have an faulty implementation of an edge case within the Ethereum digital machine, particularly which chain the BLOCKHASH instruction makes use of for retrieving a block hash. This edge case may be very unlikely to occur on a dwell community as it might solely be triggered in sure forms of chain reorganisations (a contract executing BLOCKHASH(N – 1) the place N is the pinnacle of a non-canonical subchain that’s not-yet reorganised to turn out to be the canonical (greatest/longest) chain however shall be after the block is processed).
pyethereum is unaffected.
Results on anticipated chain reorganisation depth: none
Remedial motion taken by Ethereum: Provision of hotfixes as under.
Geth:
PPA: sudo apt-get replace then sudo apt-get improve
Brew: brew replace then brew reinstall ethereum
Home windows: obtain the up to date binary from https://ift.tt/U7uXiWp
Constructing from supply:
git fetch origin && git checkout origin/grasp
Eth:
PPA: https://ift.tt/2SWzj4C material/chapter1.html
from Ethereum – My Blog https://ift.tt/9QR0Upl
via IFTTT