DescriptionThe goal of this level is for you to claim ownership of the instance you are given.Things that might helpLook into Solidity's documentation on the delegatecall low level function, how it works, how it can be used to delegate operations to on-chain libraries, and what implications it has on execution scope.Fallback methodsMethod idsCode// SPDX-License-Identifier: MITpragma solidity ^0...
DescriptionThe goal of this level is for you to hack the basic token contract below.You are given 20 tokens to start with and you will beat the level if you somehow manage to get your hands on any additional tokens. Preferably a very large amount of tokens.Things that might help:What is an odometer?Code// SPDX-License-Identifier: MITpragma solidity ^0.6.0;contract Token { mapping(address => u..
DescriptionClaim ownership of the contract below to complete this level.Things that might helpSee the "?" page above, section "Beyond the console"Code// SPDX-License-Identifier: MITpragma solidity ^0.8.0;contract Telephone { address public owner; constructor() { owner = msg.sender; } function changeOwner(address _owner) public { if (tx.origin != msg.sender) { ..
Code// SPDX-License-Identifier: MITpragma solidity ^0.8.0;contract CoinFlip { uint256 public consecutiveWins; uint256 lastHash; uint256 FACTOR = 57896044618658097711785492504343953926634992332820282019728792003956564819968; constructor() { consecutiveWins = 0; } function flip(bool _guess) public returns (bool) { uint256 blockValue = uint256(blockhash(block.number ..
DescriptionClaim ownership of the contract below to complete this level.Things that might helpSolidity Remix IDECode// SPDX-License-Identifier: MITpragma solidity ^0.6.0;import "openzeppelin-contracts-06/math/SafeMath.sol";contract Fallout { using SafeMath for uint256; mapping(address => uint256) allocations; address payable public owner; /* constructor */ function Fal1out() publi..
DescriptionLook carefully at the contract's code below.You will beat this level ifyou claim ownership of the contractyou reduce its balance to 0Things that might helpHow to send ether when interacting with an ABIHow to send ether outside of the ABIConverting to and from wei/ether units (see help() command)Fallback methodsCode// SPDX-License-Identifier: MITpragma solidity ^0.8.0;contract Fallback..
DescriptionThis level walks you through the very basics of how to play the game.1. Set up MetaMaskIf you don't have it already, install the MetaMask browser extension (in Chrome, Firefox, Brave or Opera on your desktop machine). Set up the extension's wallet and use the network selector to point to the preferred network in the top left of the extension's interface. Alternatively you can use the ..
0. Grass 코인이란?잔디 코인(Grass Coin)은 Wynd Network에 의해 개발된 신생 암호화폐 프로젝트로, 웹 스크레이핑을 활용하여 AI를 위한 데이터셋을 생성하며 AI의 오라클이 되고자 합니다. 최근 Polychain Capital과 Tribe Capital이 주도하는 $3.5백만 달러의 시드 펀딩 라운드를 성공적으로 마무리하며 주목받고 있습니다. 이로써 총 펀딩 금액은 $4.5백만 달러에 이릅니다. 이 자금은 Grass의 기술 인프라를 강화하고 노드 네트워크를 확장하며 데이터 검증 프로세스를 개선하는 데 사용될 예정입니다.Grass 코인은 사용자가 이용하지 않는 잉여 인터넷을 제공하고 보상을 받는 프로젝트입니다. Grass는 사용자들이 사용하지 않는 인터넷 대역폭을 프로젝트..
유저 네임을 변경해서 우분투 사용자 계정 이름도 변경해야 했다. usermod를 그냥 쓰면 해당 process가 사용되고 있다는 에러가 뜨는데 이를 해결하기 위해서는 process kill을 해야 한다고 한다. 그런데 나는 에러 뜬 pid에 해당하는 process만 죽였는데 터미널이 아예 꺼져서 엄청 삽질했다.. 결국 process를 죽이는 방법이 아닌 아예 ubuntu 기본 로그인 계정을 변경하는 방법으로 문제를 해결했다. 나는 Ubuntu 22.04 버전을 사용하고 있다. 1. 임시 사용자 계정을 만들고 sudo 권한 부여 # 새로운 임시 사용자 이름 생성 sudo adduser {임시 사용자 이름} # 새로 만든 임시 사용자 sudo 권한 부여 sudo adduser {임시 사용자 이름} sudo ..