Saturday, July 11, 2026
The BLOCKCHAIN Page
No Result
View All Result
  • Home
  • Cryptocurrency
  • Blockchain
  • Bitcoin
  • Market & Analysis
  • Altcoins
  • DeFi
  • Ethereum
  • Dogecoin
  • XRP
  • Regulations
  • NFTs
The BLOCKCHAIN Page
No Result
View All Result
Home Ethereum

Solidity Bugfix Release | Ethereum Foundation Blog

by admin
October 13, 2023
in Ethereum
0
Dodging a bullet: Ethereum State Problems
0
SHARES
13
VIEWS
Share on FacebookShare on Twitter


The most recent version 0.4.25 release of Solidity fixes
two necessary bugs.
One other necessary bug has already been fastened in model 0.4.22 but it surely was solely found not too long ago that the bug existed.

Be aware that the Ethereum Basis runs a bounty program for the code generator a part of Solidity.

Cleanup of Exponent in Exponentiation

  • Probability of prevalence: very low
  • Exploitability: excessive
  • Discoverability by assessments: low
  • Fastened in model: 0.4.25

Abstract: Utilizing brief varieties within the exponent of an exponentiation operation can result in invalid outcomes.

The Solidity language permits integer varieties which might be shorter than 256 bits, though the Ethereum Digital Machine
solely is aware of kinds of precisely 256 bits. Due to that, increased order bits must be set to zero now and again.
For a lot of operations, it’s not related whether or not these bits are set to zero or not (addition is one instance).
Due to that, the Solidity compiler delays this cleanup till it’s wanted so as to save gasoline.

Within the very particular circumstance that the exponent of the ** operator has a kind that’s shorter
than 256 bits, however not shorter than the kind of the bottom and accommodates soiled increased order bits,
this could result in an incorrect end result. Be aware that literal exponents like in x ** 2 in addition to
the case the place the kind of the bottom is uint256 or int256 are unaffected.

Be aware {that a} perform parameter can have soiled increased order bits if referred to as by a malicious entity,
and the identical is true for knowledge returned from features of contracts deployed by malicious entities.

After having screened a lot of contracts, we deem this bug to have an effect on solely a really tiny variety of
good contracts, if any in any respect, as a result of the common makes use of of the exponentiation operator don’t result in the bug.

This bug was discovered by nweller.

Reminiscence Corruption in Multi-Dimensional Array Decoder

  • Probability of prevalence: low
  • Exploitability: medium
  • Discoverability by assessments: excessive
  • Launched in model: 0.1.4
  • Fastened in model: 0.4.22

Abstract: Calling features of different contracts that return multi-dimensional fixed-size arrays leads to reminiscence corruption.

If Solidity code calls a perform that returns a multi-dimensional fixed-size array,
the returned ABI-encoded knowledge must be transformed to Solidity’s inside illustration
of arrays. In Solidity, multi-dimensional arrays are applied as arrays of
reminiscence pointers, whereas within the ABI, the information is encoded inline.
The decoder didn’t take this distinction under consideration with the end result that the returned
parts are interpreted as reminiscence pointers and thus could cause reminiscence
corruption if the return values are accessed. Calling features with multi-dimensional
fixed-size array arguments is unaffected as is returning fixed-size arrays from perform calls
if they don’t seem to be utilized in a Solidity contract.
The bug is simply within the element that decodes a multi-dimensional fixed-size array
that’s returned from a perform name from Solidity.

This bug was discovered by jmahhh.

Invalid Encoding of Structs in Occasions

  • Probability of prevalence: low
  • Exploitability: low
  • Discoverability by assessments: excessive
  • Launched in model: 0.4.17
  • Fastened in model: 0.4.25

Abstract: Structs as occasion parameters aren’t dealt with correctly.

Structs weren’t meant to be supported as occasion parameters with out the brand new ABI encoder.
The compiler did settle for them however, however encoded their reminiscence handle as a substitute of their precise worth.
Even with the brand new ABI encoder, structs can’t be listed occasion parameters.

Now, structs are correctly disallowed for the outdated encoder and if they’re listed additionally for the brand new encoder.



Source link

Tags: BlogBugfixEthereumFoundationreleaseSolidity
admin

admin

Recommended

Revolutionary Blockchain Partnership Announced By Microsoft, Goldman Sachs

Revolutionary Blockchain Partnership Announced By Microsoft, Goldman Sachs

3 years ago
Best early Amazon Prime Day deals under $25 in 2025: My favorite cheap sales this October

Best Amazon Prime Day deals under $25 in October 2025: My 30+ favorite deals on Echo, Anker, Eufy, and more

9 months ago

Popular News

  • Protocol-Owned Liquidity: A Sustainable Path for DeFi

    Protocol-Owned Liquidity: A Sustainable Path for DeFi

    0 shares
    Share 0 Tweet 0
  • Cryptocurrency for College: Exploring DeFi Scholarship Models

    0 shares
    Share 0 Tweet 0
  • What are rebase tokens, and how do they work?

    0 shares
    Share 0 Tweet 0
  • What is Velodrome Finance (VELO): why it’s a next-gen AMM

    0 shares
    Share 0 Tweet 0
  • $10 XRP Price Envisioned By Fund Manager As Ripple Mounts Trillion-Dollar Payment Markets ⋆ ZyCrypto

    0 shares
    Share 0 Tweet 0

Latest

SpaceX wants to launch 100,000 more Starlink satellites – for 100x the bandwidth

SpaceX wants to launch 100,000 more Starlink satellites – for 100x the bandwidth

July 10, 2026
I set up a solar panel security camera in my yard – and the image quality beat my Ring

I set up a solar panel security camera in my yard – and the image quality beat my Ring

July 10, 2026

Categories

  • Altcoins
  • Bitcoin
  • Blockchain
  • Cryptocurrency
  • DeFi
  • Dogecoin
  • Ethereum
  • Market & Analysis
  • NFTs & Metaverse
  • Regulations
  • XRP

Follow us

Recommended

  • SpaceX wants to launch 100,000 more Starlink satellites – for 100x the bandwidth
  • I set up a solar panel security camera in my yard – and the image quality beat my Ring
  • LG is giving away free soundbars with this CineBeam Q projector deal – how to qualify
  • ‘I’m not a programmer’ anymore: Linus Torvalds on the only two tools he uses now
  • I replaced my Sonos home theater with this Sony system – here’s why innovation is king
  • About us
  • Privacy Policy
  • Terms & Conditions

© 2023 TheBlockchainPage | All Rights Reserved

No Result
View All Result
  • Home
  • Cryptocurrency
  • Blockchain
  • Bitcoin
  • Market & Analysis
  • Altcoins
  • DeFi
  • Ethereum
  • Dogecoin
  • XRP
  • Regulations
  • NFTs

© 2023 TheBlockchainPage | All Rights Reserved