ethereum 자습서: OpenZeppelin Defender에서 자동 작업 시작하기 Autotask는 일정에 따라 또는 일부 조건 집합에 의해 트리거되는 약간의 Javascript 코드를 실행할 수 있는 Defender를 통해 사용할 수 있는 환경입니다. 이 연습에서는 Defender Autotask 설정과 관련된 움직이는 부분에 대한 실습 소개를 제공합니다. 자동 작업 -> 새 자동 작업을 선택합니다. Autotask에 이름을 지정하고 Autotask의 끝점으로 전송된 요... ethereumweb3blockchain 암호화 및 AI를 위한 개발 설정 t2.medium이면 충분합니다. 2개의 vCPU와 4GB 메모리가 있으며 비용은 시간당 0.0464 USD입니다. 한 달에 약 35달러입니다. 조금 가파르지만 그만한 가치가 있습니다. AMI의 경우 Deep Learning AMI GPU PyTorch 1.12.0(Ubuntu 20.04) 20220913(ami-08e2d37b6a0129927)을 선택합니다. 출처: 또 다른 옵션은 먼저 노... ethereumsolidity 서드웹 Dapp에서 여러 체인을 지원하는 방법 이 가이드는 여러 체인에서 작동하는 Dapp을 만드는 방법을 보여줍니다. 이 Dapp에서 우리는 사용자가 체인을 선택하고 해당 체인에서 NFT를 청구할 수 있도록 할 것입니다. 나는 goerli와 Mumbai를 보여줄 것이지만 당신은 어떤 네트워크에서나 그것을 할 수 있고 그것에 열중할 수 있습니다. 시작하기 전에 이 가이드에서 사용할 도구에 대해 자세히 알아볼 수 있는 몇 가지 유용한 리소... thirdwebethereumweb3nextjs 플롭체인 이 프로젝트는 개념 증명입니다. 간단한 메타마스크 트랜잭션(전송만 가능)을 수락하기 위해 필요한 최소 이더리움 rpc API를 구현합니다. 이것은 sub.net 라이브러리에 포함될 것입니다. 프로젝트 구축 브라우저에 따른 메타마스크 확장: subdotnet/metamask-mini-api 리포지토리 복제 1) 단순 블록체인에는 2개의 사전 자금 지갑이 있습니다. 메타마스크에서 이러한 개인 키... ethereumblockchainmetamasksubdotnet Solidity의 함수 수정자 Solidity에 익숙하다면 다음과 같은 코드를 보거나 접했을 수 있습니다. 수정자는 기본 함수가 호출되기 전에 호출되며 다음과 같은 경우에 이 동작이 필요할 수 있습니다. Solidity에는 기본 제공 수정자가 있으며 자체 사용자 지정 수정자를 만들 수도 있습니다. 이 수정자는 계약에서 내부 상태만 읽으려는 의도를 Solidity에 명시적으로 알리는 데 사용됩니다. 이 수정자를 포함하는 함... blockchainethereumsmartcontractssolidity 가스 비용을 75% 최적화한 방법 이더리움 블록체인에서 각 거래는 "가스 수수료"로 일정 금액의 비용이 듭니다. 이 기사에서는 가스 비용을 보고하도록 안전모를 구성하는 방법과 가스 비용을 줄이기 위해 Solidity의 내장 최적화 프로그램을 구성하는 방법에 대해 설명합니다. 옵티마이저를 켜기 전에 비교할 벤치마크를 제공하기 위해 현재 가스 비용을 측정하는 것부터 시작하겠습니다. 먼저 hardhat-gas-reporter 플러... ethereumsoliditytutorialweb3 정렬을 사용하여 Moonbirds NFT 매출을 마법처럼 Google 스프레드시트로 가져오기 을 사용하여 이더리움 트랜잭션 데이터를 Google 스프레드시트로 가져올 수 있습니다. 특히 의 경우 새 둥지, 판매, 이전 또는 Moonbirds의 블록체인에서 발생한 모든 이벤트에 대한 Google 시트를 만들 수 있습니다. 을 사용하면 개별 블록체인 트랜잭션을 보거나 밀리초 집계(차트 작성에 유용한 평균, 합계 등)를 수행할 수도 있습니다. 개별 트랜잭션에 초점을 맞추고 자습서를 단순화... blockchainethereumnftweb3 오프체인 데이터 온체인 수집을 위한 Trustus EIP712 기반 솔루션 프로젝트에 대한 자세한 내용은 에서 확인할 수 있습니다. 계약의 주요 부분은 입력된 구조화된 날짜의 해싱 및 서명을 위한 EIP712 표준의 구현입니다. Trustus는 1) 계약에 데이터를 보낼 수 있는 화이트리스트 주소와 2) EIP712 부분을 허용합니다. 즉, 구체적이고 미리 정의된 데이터 구조 및 서명에 오프체인 데이터(예: NFT 가격 피드)를 가져올 수 있습니다. 그런 다음 V,... soliditytrustuoraclesethereum 안전모 설치 Neste 자습서는 VS Code를 사용하여 스마트 계약을 수행하는 데 중요한 역할을 합니다. 예를 들어, criaremos 또는 nosso próprio 토큰. >= v.1.64 >= v.12.0 터미널은 VS 코드를 수행하지 않습니다. 1 - Vamos criar o package.json com uma configuração 기본 2 - Vamos 설치 또는 hardhat desenvo... soliditytutorialweb3ethereum 폴백() | 에테르노트 #01: 존재하지 않는 함수를 호출하거나 send() 또는 transfer()를 통해 계약에 이더를 보내면 어떻게 됩니까? 다음과 같은 경우에 실행됩니다. 계약에 기능이 없습니다 비어 있지 않은 통화 데이터가 포함된 에테르 전송 receive() 기능이 없을 때 에테르 전송 다음과 같은 경우에 실행됩니다. 빈 호출 데이터가 있는 에테르 전송 address(contract).transfer(AMOUNT... blockchainethereumevmweb3 이제 EthairBalloons를 Python에서 사용할 수 있습니다! 예! 마침내 거기에 있습니다. 이더리움 블록체인을 위한 많은 사랑을 받는 ORM 라이브러리를 이제 Python에서 사용할 수 있습니다. EthAir Balloons는 이더리움 블록체인을 위한 엄격한 유형의 ORM 라이브러리입니다. 사용자 지정 복잡한 스마트 계약을 작성하지 않고도 이더리움 블록체인을 조직적이고 모델 지향적인 방식으로 영구 저장소로 사용할 수 있습니다. 지금까지 EthairBa... blockchainpythonweb3ethereum PetShop 프로젝트, 2일차: ERC721 표준 PetShop NFT 생성 을 설치해야 Solidity에서 ERC721 호환 NTF를 쉽게 생성할 수 있습니다. 이를 통해 JavaScript에서 계약에 대한 프록시를 배포하고 업그레이드할 수 있습니다. 따라서 사용자 지정 Hardhat 작업에서 upgrades 인스턴스를 전역 범위에서 사용할 수 있습니다(ethers와 동일). 이제 test/PetShop.js를 생성하고 을 준수하는 PetShop NFT에 대한 몇 ... solidityweb3hardhatethereum PetShop 프로젝트, 4일차: PetShop NFT에 메타데이터 추가 당사의 PetShop NFT 계약은 메타데이터 표준 확장( )과 토큰별 메타데이터 메커니즘을 포함하는 의 구현인 OpenZeppelinIERC721Metadata 계약을 확장합니다. 따라서 "ERC721 메타데이터 JSON 스키마"를 준수하는 JSON 파일을 가리키는 URI를 각 토큰에 부여할 수 있습니다. 넷째 날에는 을 통해 일부 이미지와 ERC721 메타데이터 JSON 파일을 IPFS(... solidityweb3hardhatethereum Solidity에서 다른 계약을 호출하는 방법 이 블로그 게시물은 다른 스마트 계약에서 스마트 계약의 기능을 호출하는 방법을 보여줍니다. 아래에 정의된 두 개의 스마트 계약이 있다고 가정합니다. 가장 먼저 알아야 할 것은 계약 외부에서 호출하려는 함수의 가시성을 external 로 표시해야 한다는 것입니다. 스마트 계약ContractOne에서 스마트 계약CallContractOne을 호출합니다. 호출하려는 계약을 초기화하기로 결정할 수 ... soliditysmartcontractblockchainethereum 견고성 안녕하세요 세계 이 짧은 기사에서는 Solidity에서 첫 번째 "Hello World"를 작성하는 짧은 단계별 가이드를 보여드리겠습니다. 을(를) 방문하여 아직 선택하지 않은 경우 "기본 작업 공간"을 선택해야 합니다. HelloWorld.sol 파일 Solidity에서 우리가 사용하는 파일 확장자는 .sol입니다. 왼쪽 상단의 아이콘 🗒️을 클릭하여 "HelloWorld.sol"이라는 새 파일을 만듭니다... beginnersblockchainethereumweb3 Esta tecnología que revolucionará Ethereum está próxima a lanzar Esto no solo nos permitirá ahorrar gas de la manera mas segura, sino que también podremos lanzar smart contracts escritos en solidity haciéndolo un buen lugar para acoger a DeFi, NFTs y todo lo demás que hoy está ocurrie... ethereumblockchainlayer2 Ethernaut 해킹 레벨 26: 이중 진입점 OpenZeppelin web3/solidity 기반 게임의 레벨 26입니다. 주어진 계약: player는 CryptoVault에서 버그를 찾아 고갈되는 것을 방지하기 위해 Forta 봇을 만들어야 합니다. 먼저 기본(DET) 토큰을 유출할 수 있는 익스플로잇을 알아봅시다. sweepToken() 메서드를 보면 예상대로 require 검사로 기본 토큰 스윕을 제한하는 것을 볼 수 있습니다. ... ethereumopenzeppelinsoliditysmartcontract 이더리움으로 풀린 블록체인의 한계… 💜 요약하자면 먼저 블록체인의 특징을 보자... 블록체인은 온라인 통화, 즉 비트코인(BTC)으로서 종이 화폐의 대안으로 만들어졌습니다. 즉, 어떤 종류의 단일 기관이 운영하거나 소유하지 않습니다. 거의 뚫을 수 없는 가장 안전한 시스템을 제공합니다. 요약하면 블록체인은 온라인 통화, 즉 비트코인을 사용하여 공공 원장 역할을 하는 매우 안전한 분산 시스템입니다. 💜 그래서, 탈중앙화 시스템이... ethereumblockchainbitcoinsmartcontrac 분산형 소셜 네트워크, 하위 그래프, IPFS - 다각형 4주차 이번 주에는 IPFS, Alchemy, Pinata, TheGraph Protocol 등을 사용하여 web3 인프라 및 스토리지를 탐색하는 것이 전부였습니다. 소셜 미디어 Dapp 이번 주 가장 큰 과제는 우리만의 독창성을 가지고 풀스택 분산형 소셜 미디어 앱을 구축하는 것이었습니다. Polygon Academy에 대한 과제는 다음과 같습니다. Use ethereum to point to i... ethereumwebdevblockchainjavascript 견고성 : 가스 최적화 소개 . 많은 EIP는 EVM에서 가스 운영 비용을 최적화하거나 조정하려고 합니다. (예: EIP 2929, EIP 1559) 온체인 또는 오프체인 데이터 견고성 옵티마이저 EVM 슬롯 배열을 통한 루프 도서관 이벤트 계산된 값 상수 오류 처리 이 목록은 완전하지 않습니다. 프록시 계약을 위해 EIP 1167을 추가할 수도 있지만 고급 기술을 설명하고 싶지는 않습니다. 이 10가지 팁을 시도... ethereumblokchainsolidityprogramming Ethernaut: 0. 안녕 Ethernaut 길지만 엄청나게 교육적인 길이 될 것입니다. help()를 입력하여 시작하십시오! 거기에 표시되는 명령에 익숙해지십시오. 테스트용 에테르도 필요하니 거기에 연결된 수도꼭지를 방문하여 에테르를 얻으십시오! 이것은 모든 퍼즐에 대한 목표 계약이 될 것입니다. 당신은 그것의 소유권을 탈취하고 그것의 균형을 고갈시키는 등 무엇이든 할 것입니다! 나머지 레벨은 contract.info() 를 호출하여... ethereumopenzeppelinsecuritysolidity Ethernaut: 1. 폴백 수신 기능에 결함이 있습니다. 기여를 통해 일부 값을 전송한 다음 수신을 통해 소유자를 변경하기만 하면 됩니다. 기여에는 0.001 이더 미만이 필요하고 수신에는 0보다 큰 것으로 예상됩니다. 계획은 다음과 같습니다. 1위를 기부하겠습니다. 그런 다음 폴백 기능을 통해 컨트랙트 주소로 돈을 보낼 것입니다. 일부 에테르 값으로 계약에 존재하지 않는 함수를 호출하여 이를 수행할 수 있습니다. 이... ethereumopenzeppelinsecuritysolidity Ethernaut: 2. 낙진 constructor 함수 이전에는 컨트랙트와 이름이 같은 함수로 생성자를 사용했습니다. 그러나 만일 생성자 함수의 이름이 다른 경우 공격에 노출될 수 있습니다! 이 경우 이름은 Fallout이지만 함수는 Fal1out로 작성됩니다. 이것은 실제로 에 발생했습니다. 작성자는 처음에 DynamicPyramid를 계약 이름으로 사용했고 따라서 생성자를 사용했습니다. 나중에 그는 계약 이름만 Ru... ethereumopenzeppelinsecuritysolidity Ethernaut: 3. 코인플립 이 공격에서 우리는 계약에서 공격을 호출하여 가정된 "무작위"플립을 추측할 것입니다. 대상 계약은 각 블록에서 동전을 던지도록 프로그래밍되어 있으므로 우리가 추측하는 각 블록은 서로 다른 블록에 있어야 합니다. 계약서에 flip 기능을 복사하여 붙여넣은 다음 결과에 따라 실제 flip 기능을 호출할 수 있습니다. 다음은 항상 정확하게 추측하는 psychicFlip 함수를 사용한 공격 계약입니... ethereumopenzeppelinsecuritysolidity Ethernaut: 4. 전화 tx.origin는 트랜잭션을 생성하는 주소이고 msg.sender는 현재 메시지의 발신자입니다. 따라서 tx.origin == msg.sender는 메시지 발신자가 이더리움 계정이면 참입니다. 또는 메시지 발신자가 계약인 경우 false입니다. 따라서 tx.origin != msg.sender가 대상의 소유자가 되기를 원합니다. 계약을 작성하고 해당 함수를 호출하기만 하면 됩니다.... ethereumopenzeppelinsecuritysolidity Ethernaut: 5. 토큰 이 공격은 정수 오버플로 또는 정수 언더플로 익스플로잇을 사용합니다. 실제로 계산이 부호 없는 정수에서 발생하기 때문에 명령문require(balances[msg.sender] - _value >= 0);은 완전히 잘못되었습니다! 물론 그들은 항상 0보다 크거나 같을 것입니다. 우리는 우리 자신에게 돈을 보내 버그를 악용할 수 없습니다. 왜냐하면 두 줄이 취소되기 때문입니다. 대신, 일부 토... ethereumopenzeppelinsecuritysolidity Ethernaut: 6. 위임 delegatecall는 중요한 함수입니다. 일반적으로 컨트랙트는 을 만들어 기능을 호출합니다. 은 기본적으로 계약의 컨텍스트를 다른 계약으로 전달하고 원하는 대로 수행하도록 하는 보다 전문적인 호출입니다. 이는 스토리지 변수에서 작동할 수 있는 라이브러리를 구현하거나 프록시가 시간이 지남에 따라 다양한 계약에 대리자를 호출하는 업그레이드 가능한 계약이 있는 경우에 유용합니다. delegat... ethereumopenzeppelinsecuritysolidity
자습서: OpenZeppelin Defender에서 자동 작업 시작하기 Autotask는 일정에 따라 또는 일부 조건 집합에 의해 트리거되는 약간의 Javascript 코드를 실행할 수 있는 Defender를 통해 사용할 수 있는 환경입니다. 이 연습에서는 Defender Autotask 설정과 관련된 움직이는 부분에 대한 실습 소개를 제공합니다. 자동 작업 -> 새 자동 작업을 선택합니다. Autotask에 이름을 지정하고 Autotask의 끝점으로 전송된 요... ethereumweb3blockchain 암호화 및 AI를 위한 개발 설정 t2.medium이면 충분합니다. 2개의 vCPU와 4GB 메모리가 있으며 비용은 시간당 0.0464 USD입니다. 한 달에 약 35달러입니다. 조금 가파르지만 그만한 가치가 있습니다. AMI의 경우 Deep Learning AMI GPU PyTorch 1.12.0(Ubuntu 20.04) 20220913(ami-08e2d37b6a0129927)을 선택합니다. 출처: 또 다른 옵션은 먼저 노... ethereumsolidity 서드웹 Dapp에서 여러 체인을 지원하는 방법 이 가이드는 여러 체인에서 작동하는 Dapp을 만드는 방법을 보여줍니다. 이 Dapp에서 우리는 사용자가 체인을 선택하고 해당 체인에서 NFT를 청구할 수 있도록 할 것입니다. 나는 goerli와 Mumbai를 보여줄 것이지만 당신은 어떤 네트워크에서나 그것을 할 수 있고 그것에 열중할 수 있습니다. 시작하기 전에 이 가이드에서 사용할 도구에 대해 자세히 알아볼 수 있는 몇 가지 유용한 리소... thirdwebethereumweb3nextjs 플롭체인 이 프로젝트는 개념 증명입니다. 간단한 메타마스크 트랜잭션(전송만 가능)을 수락하기 위해 필요한 최소 이더리움 rpc API를 구현합니다. 이것은 sub.net 라이브러리에 포함될 것입니다. 프로젝트 구축 브라우저에 따른 메타마스크 확장: subdotnet/metamask-mini-api 리포지토리 복제 1) 단순 블록체인에는 2개의 사전 자금 지갑이 있습니다. 메타마스크에서 이러한 개인 키... ethereumblockchainmetamasksubdotnet Solidity의 함수 수정자 Solidity에 익숙하다면 다음과 같은 코드를 보거나 접했을 수 있습니다. 수정자는 기본 함수가 호출되기 전에 호출되며 다음과 같은 경우에 이 동작이 필요할 수 있습니다. Solidity에는 기본 제공 수정자가 있으며 자체 사용자 지정 수정자를 만들 수도 있습니다. 이 수정자는 계약에서 내부 상태만 읽으려는 의도를 Solidity에 명시적으로 알리는 데 사용됩니다. 이 수정자를 포함하는 함... blockchainethereumsmartcontractssolidity 가스 비용을 75% 최적화한 방법 이더리움 블록체인에서 각 거래는 "가스 수수료"로 일정 금액의 비용이 듭니다. 이 기사에서는 가스 비용을 보고하도록 안전모를 구성하는 방법과 가스 비용을 줄이기 위해 Solidity의 내장 최적화 프로그램을 구성하는 방법에 대해 설명합니다. 옵티마이저를 켜기 전에 비교할 벤치마크를 제공하기 위해 현재 가스 비용을 측정하는 것부터 시작하겠습니다. 먼저 hardhat-gas-reporter 플러... ethereumsoliditytutorialweb3 정렬을 사용하여 Moonbirds NFT 매출을 마법처럼 Google 스프레드시트로 가져오기 을 사용하여 이더리움 트랜잭션 데이터를 Google 스프레드시트로 가져올 수 있습니다. 특히 의 경우 새 둥지, 판매, 이전 또는 Moonbirds의 블록체인에서 발생한 모든 이벤트에 대한 Google 시트를 만들 수 있습니다. 을 사용하면 개별 블록체인 트랜잭션을 보거나 밀리초 집계(차트 작성에 유용한 평균, 합계 등)를 수행할 수도 있습니다. 개별 트랜잭션에 초점을 맞추고 자습서를 단순화... blockchainethereumnftweb3 오프체인 데이터 온체인 수집을 위한 Trustus EIP712 기반 솔루션 프로젝트에 대한 자세한 내용은 에서 확인할 수 있습니다. 계약의 주요 부분은 입력된 구조화된 날짜의 해싱 및 서명을 위한 EIP712 표준의 구현입니다. Trustus는 1) 계약에 데이터를 보낼 수 있는 화이트리스트 주소와 2) EIP712 부분을 허용합니다. 즉, 구체적이고 미리 정의된 데이터 구조 및 서명에 오프체인 데이터(예: NFT 가격 피드)를 가져올 수 있습니다. 그런 다음 V,... soliditytrustuoraclesethereum 안전모 설치 Neste 자습서는 VS Code를 사용하여 스마트 계약을 수행하는 데 중요한 역할을 합니다. 예를 들어, criaremos 또는 nosso próprio 토큰. >= v.1.64 >= v.12.0 터미널은 VS 코드를 수행하지 않습니다. 1 - Vamos criar o package.json com uma configuração 기본 2 - Vamos 설치 또는 hardhat desenvo... soliditytutorialweb3ethereum 폴백() | 에테르노트 #01: 존재하지 않는 함수를 호출하거나 send() 또는 transfer()를 통해 계약에 이더를 보내면 어떻게 됩니까? 다음과 같은 경우에 실행됩니다. 계약에 기능이 없습니다 비어 있지 않은 통화 데이터가 포함된 에테르 전송 receive() 기능이 없을 때 에테르 전송 다음과 같은 경우에 실행됩니다. 빈 호출 데이터가 있는 에테르 전송 address(contract).transfer(AMOUNT... blockchainethereumevmweb3 이제 EthairBalloons를 Python에서 사용할 수 있습니다! 예! 마침내 거기에 있습니다. 이더리움 블록체인을 위한 많은 사랑을 받는 ORM 라이브러리를 이제 Python에서 사용할 수 있습니다. EthAir Balloons는 이더리움 블록체인을 위한 엄격한 유형의 ORM 라이브러리입니다. 사용자 지정 복잡한 스마트 계약을 작성하지 않고도 이더리움 블록체인을 조직적이고 모델 지향적인 방식으로 영구 저장소로 사용할 수 있습니다. 지금까지 EthairBa... blockchainpythonweb3ethereum PetShop 프로젝트, 2일차: ERC721 표준 PetShop NFT 생성 을 설치해야 Solidity에서 ERC721 호환 NTF를 쉽게 생성할 수 있습니다. 이를 통해 JavaScript에서 계약에 대한 프록시를 배포하고 업그레이드할 수 있습니다. 따라서 사용자 지정 Hardhat 작업에서 upgrades 인스턴스를 전역 범위에서 사용할 수 있습니다(ethers와 동일). 이제 test/PetShop.js를 생성하고 을 준수하는 PetShop NFT에 대한 몇 ... solidityweb3hardhatethereum PetShop 프로젝트, 4일차: PetShop NFT에 메타데이터 추가 당사의 PetShop NFT 계약은 메타데이터 표준 확장( )과 토큰별 메타데이터 메커니즘을 포함하는 의 구현인 OpenZeppelinIERC721Metadata 계약을 확장합니다. 따라서 "ERC721 메타데이터 JSON 스키마"를 준수하는 JSON 파일을 가리키는 URI를 각 토큰에 부여할 수 있습니다. 넷째 날에는 을 통해 일부 이미지와 ERC721 메타데이터 JSON 파일을 IPFS(... solidityweb3hardhatethereum Solidity에서 다른 계약을 호출하는 방법 이 블로그 게시물은 다른 스마트 계약에서 스마트 계약의 기능을 호출하는 방법을 보여줍니다. 아래에 정의된 두 개의 스마트 계약이 있다고 가정합니다. 가장 먼저 알아야 할 것은 계약 외부에서 호출하려는 함수의 가시성을 external 로 표시해야 한다는 것입니다. 스마트 계약ContractOne에서 스마트 계약CallContractOne을 호출합니다. 호출하려는 계약을 초기화하기로 결정할 수 ... soliditysmartcontractblockchainethereum 견고성 안녕하세요 세계 이 짧은 기사에서는 Solidity에서 첫 번째 "Hello World"를 작성하는 짧은 단계별 가이드를 보여드리겠습니다. 을(를) 방문하여 아직 선택하지 않은 경우 "기본 작업 공간"을 선택해야 합니다. HelloWorld.sol 파일 Solidity에서 우리가 사용하는 파일 확장자는 .sol입니다. 왼쪽 상단의 아이콘 🗒️을 클릭하여 "HelloWorld.sol"이라는 새 파일을 만듭니다... beginnersblockchainethereumweb3 Esta tecnología que revolucionará Ethereum está próxima a lanzar Esto no solo nos permitirá ahorrar gas de la manera mas segura, sino que también podremos lanzar smart contracts escritos en solidity haciéndolo un buen lugar para acoger a DeFi, NFTs y todo lo demás que hoy está ocurrie... ethereumblockchainlayer2 Ethernaut 해킹 레벨 26: 이중 진입점 OpenZeppelin web3/solidity 기반 게임의 레벨 26입니다. 주어진 계약: player는 CryptoVault에서 버그를 찾아 고갈되는 것을 방지하기 위해 Forta 봇을 만들어야 합니다. 먼저 기본(DET) 토큰을 유출할 수 있는 익스플로잇을 알아봅시다. sweepToken() 메서드를 보면 예상대로 require 검사로 기본 토큰 스윕을 제한하는 것을 볼 수 있습니다. ... ethereumopenzeppelinsoliditysmartcontract 이더리움으로 풀린 블록체인의 한계… 💜 요약하자면 먼저 블록체인의 특징을 보자... 블록체인은 온라인 통화, 즉 비트코인(BTC)으로서 종이 화폐의 대안으로 만들어졌습니다. 즉, 어떤 종류의 단일 기관이 운영하거나 소유하지 않습니다. 거의 뚫을 수 없는 가장 안전한 시스템을 제공합니다. 요약하면 블록체인은 온라인 통화, 즉 비트코인을 사용하여 공공 원장 역할을 하는 매우 안전한 분산 시스템입니다. 💜 그래서, 탈중앙화 시스템이... ethereumblockchainbitcoinsmartcontrac 분산형 소셜 네트워크, 하위 그래프, IPFS - 다각형 4주차 이번 주에는 IPFS, Alchemy, Pinata, TheGraph Protocol 등을 사용하여 web3 인프라 및 스토리지를 탐색하는 것이 전부였습니다. 소셜 미디어 Dapp 이번 주 가장 큰 과제는 우리만의 독창성을 가지고 풀스택 분산형 소셜 미디어 앱을 구축하는 것이었습니다. Polygon Academy에 대한 과제는 다음과 같습니다. Use ethereum to point to i... ethereumwebdevblockchainjavascript 견고성 : 가스 최적화 소개 . 많은 EIP는 EVM에서 가스 운영 비용을 최적화하거나 조정하려고 합니다. (예: EIP 2929, EIP 1559) 온체인 또는 오프체인 데이터 견고성 옵티마이저 EVM 슬롯 배열을 통한 루프 도서관 이벤트 계산된 값 상수 오류 처리 이 목록은 완전하지 않습니다. 프록시 계약을 위해 EIP 1167을 추가할 수도 있지만 고급 기술을 설명하고 싶지는 않습니다. 이 10가지 팁을 시도... ethereumblokchainsolidityprogramming Ethernaut: 0. 안녕 Ethernaut 길지만 엄청나게 교육적인 길이 될 것입니다. help()를 입력하여 시작하십시오! 거기에 표시되는 명령에 익숙해지십시오. 테스트용 에테르도 필요하니 거기에 연결된 수도꼭지를 방문하여 에테르를 얻으십시오! 이것은 모든 퍼즐에 대한 목표 계약이 될 것입니다. 당신은 그것의 소유권을 탈취하고 그것의 균형을 고갈시키는 등 무엇이든 할 것입니다! 나머지 레벨은 contract.info() 를 호출하여... ethereumopenzeppelinsecuritysolidity Ethernaut: 1. 폴백 수신 기능에 결함이 있습니다. 기여를 통해 일부 값을 전송한 다음 수신을 통해 소유자를 변경하기만 하면 됩니다. 기여에는 0.001 이더 미만이 필요하고 수신에는 0보다 큰 것으로 예상됩니다. 계획은 다음과 같습니다. 1위를 기부하겠습니다. 그런 다음 폴백 기능을 통해 컨트랙트 주소로 돈을 보낼 것입니다. 일부 에테르 값으로 계약에 존재하지 않는 함수를 호출하여 이를 수행할 수 있습니다. 이... ethereumopenzeppelinsecuritysolidity Ethernaut: 2. 낙진 constructor 함수 이전에는 컨트랙트와 이름이 같은 함수로 생성자를 사용했습니다. 그러나 만일 생성자 함수의 이름이 다른 경우 공격에 노출될 수 있습니다! 이 경우 이름은 Fallout이지만 함수는 Fal1out로 작성됩니다. 이것은 실제로 에 발생했습니다. 작성자는 처음에 DynamicPyramid를 계약 이름으로 사용했고 따라서 생성자를 사용했습니다. 나중에 그는 계약 이름만 Ru... ethereumopenzeppelinsecuritysolidity Ethernaut: 3. 코인플립 이 공격에서 우리는 계약에서 공격을 호출하여 가정된 "무작위"플립을 추측할 것입니다. 대상 계약은 각 블록에서 동전을 던지도록 프로그래밍되어 있으므로 우리가 추측하는 각 블록은 서로 다른 블록에 있어야 합니다. 계약서에 flip 기능을 복사하여 붙여넣은 다음 결과에 따라 실제 flip 기능을 호출할 수 있습니다. 다음은 항상 정확하게 추측하는 psychicFlip 함수를 사용한 공격 계약입니... ethereumopenzeppelinsecuritysolidity Ethernaut: 4. 전화 tx.origin는 트랜잭션을 생성하는 주소이고 msg.sender는 현재 메시지의 발신자입니다. 따라서 tx.origin == msg.sender는 메시지 발신자가 이더리움 계정이면 참입니다. 또는 메시지 발신자가 계약인 경우 false입니다. 따라서 tx.origin != msg.sender가 대상의 소유자가 되기를 원합니다. 계약을 작성하고 해당 함수를 호출하기만 하면 됩니다.... ethereumopenzeppelinsecuritysolidity Ethernaut: 5. 토큰 이 공격은 정수 오버플로 또는 정수 언더플로 익스플로잇을 사용합니다. 실제로 계산이 부호 없는 정수에서 발생하기 때문에 명령문require(balances[msg.sender] - _value >= 0);은 완전히 잘못되었습니다! 물론 그들은 항상 0보다 크거나 같을 것입니다. 우리는 우리 자신에게 돈을 보내 버그를 악용할 수 없습니다. 왜냐하면 두 줄이 취소되기 때문입니다. 대신, 일부 토... ethereumopenzeppelinsecuritysolidity Ethernaut: 6. 위임 delegatecall는 중요한 함수입니다. 일반적으로 컨트랙트는 을 만들어 기능을 호출합니다. 은 기본적으로 계약의 컨텍스트를 다른 계약으로 전달하고 원하는 대로 수행하도록 하는 보다 전문적인 호출입니다. 이는 스토리지 변수에서 작동할 수 있는 라이브러리를 구현하거나 프록시가 시간이 지남에 따라 다양한 계약에 대리자를 호출하는 업그레이드 가능한 계약이 있는 경우에 유용합니다. delegat... ethereumopenzeppelinsecuritysolidity