RegEx-DoS
openzeppelin-solidity
Our great sponsors
RegEx-DoS | openzeppelin-solidity | |
---|---|---|
- | 4 | |
163 | 10,805 | |
-0.6% | - | |
0.0 | 9.4 | |
over 6 years ago | almost 3 years ago | |
JavaScript | JavaScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
RegEx-DoS
We haven't tracked posts mentioning RegEx-DoS yet.
Tracking mentions began in Dec 2020.
openzeppelin-solidity
-
Attack Vectors in Solidity #6:Unexpected Ether( Incorrect Use of this.balance)
pragma solidity ^0.5.0; import "https://github.com/OpenZeppelin/openzeppelin-solidity/contracts/math/SafeMath.sol"; contract MyContract { using SafeMath for uint256; function deposit() public payable { // code to deposit ether } function withdraw(uint256 _amount) public { require(this.balance.sub(_amount) >= 0, "Insufficient funds"); // code to withdraw ether } }
-
How to check if tokenholder is holding 2 different tokens at the same time before an event is triggered?
The basic structure could be done as follows using OZ ERC20 interface https://github.com/OpenZeppelin/openzeppelin-solidity/blob/master/contracts/token/ERC20/IERC20.sol
-
Is this why shib price keeps going down?
return c; } /** * @dev Returns the subtraction of two unsigned integers, reverting on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { require(b <= a, "SafeMath: subtraction overflow"); uint256 c = a - b; return c; } /** * @dev Returns the multiplication of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } /** * @dev Returns the integer division of two unsigned integers. Reverts on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { // Solidity only automatically asserts when dividing by 0 require(b > 0, "SafeMath: division by zero"); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { require(b != 0, "SafeMath: modulo by zero"); return a % b; }
-
can someone tell me what this contract wants?
// See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522
What are some alternatives?
Themis - Easy to use cryptographic framework for data protection: secure messaging with forward secrecy and secure data storage. Has unified APIs across 14 platforms.
openzeppelin-contracts - OpenZeppelin Contracts is a library for secure smart contract development.
snyk - Snyk CLI scans and monitors your projects for security vulnerabilities. [Moved to: https://github.com/snyk/cli]
echidna - Ethereum smart contract fuzzer
nsp
eattheblocks - Source code for Eat The Blocks, a screencast for Ethereum Dapp Developers
unix-permissions - Swiss Army knife for Unix permissions
yulp - ➕ A low-level, highly efficient extension to Yul, an intermediate language for the Ethereum Virtual Machine.
rate-limiter-flexible - Atomic counters and rate limiting tools. Limit resource access at any scale.
bytecode-verifier - Compile Solidity source code and verify its bytecode matches the blockchain
💀 SimpleDDoS - [UNMAINTAINED AND UNPUBLISHED] 💀 Multi-threaded DDoS script
SoliditySamples - Solidity Smart Contracts Samples