MENU

In order to prevent Overflow/Underflow

0
635
0

As I research hacking cases, I found that each attack has relied on arithmetic exceptions such as Overflow/Underflow.

OpenZeppelin created a library called SafeMath that prevents those issues by default. But it was annoying to use add, sub, mul, div instead of arithmetic operators.

Luckily, since Solidity 0.8.0, arithmetic operations revert on underflow and overflow by default. You can use unchecked { ... } to use the previous wrapping behaviour.

They said:

Checks for overflow are very common, so we made them the default to increase readability of code, even if it comes at a slight increase of gas costs.

So, from now on, can we rid of SafeMath?

I made a Solidity game that you can play Underflow. Through this game, you can learn about that protecting your smart contract from underflow is also another way to protect it from hackers.

https://github.com/maAPPsDEV/token-attack

Sorry, the comment form is closed at this time.