전체 글 (117) 썸네일형 리스트형 트랜잭션 트랜잭션 트랜잭션이란? 트랜잭션이란 일종의 거래기록으로서 쉽게 말해 내가 상대방에게 코인을 전송했을 때 코인을 전송한다는 그 메시지가 트랜잭션이며 블록에 기록됩니다. 트랜잭션의 구조 네트워크마다 트랜잭션의 구조가 다를 수 있어 대표적으로 이더리움의 트랜잭션 구조를 살펴보겠습니다. 구조 설명 Nonce EOA에서 발행되는 시퀀스 넘버 Gas price 메시지 전송자가 지급하는 가스의 가격 Gas limit 가스의 최대 사용량 Recipient 수신자 Value 수신자에게 보낼 이더의 양 v, r, s EOA의 ECDSA 디지털 서명의 세가지 구성 요소 이더리움의 트랜잭션 메시지는 RLP(Recursive Length Prefix)라는 인코딩 체계를 사용하여 바이트 단위로 직렬화됩니다. 또한 이더리움의 모든.. vscode에서 aws 접속, 개발하기 Remote-SSH extension을 이용하면 터미널로 작업해야 했던 aws를 vscode를 이용해 간편하게 작업할 수 있습니다. vscode의 extension 탭에서 Remote - SSH를 설치합니다. F1을 눌러 Remote-SSH : Open SSH Configuration File을 선택합니다. 경로가 여러 개가 나타날 수 있는데 C:\Users\{사용자 이름}\.ssh/config를 선택합니다. 다음과 같이 작성해주시는데 Host는 임의로 작성하시면 되고 HostName은 ec2의 콘솔 홈페이지에서 퍼블릭 ip dns 를 적어주시면 됩니다. User는 수동으로 aws에 접속할 때 사용되는 이름을 적어주시고 IdentityFile은 pem키 위치를 적어주시는데 다른 장소에 있다면 ~/. ss.. [SpeedRunEthereum] Challenge 3 [Dex] 챌린지 3부터는 프로필에 Builder라는 태그가 부착되고 개발자들 풀에 참여해 팀원을 찾거나 서로 정보를 공유하는 커뮤니티에 접근할 수 있게 됩니다. Checkpoint 0: install 템플릿 프로젝트 파일을 설치해 주겠습니다. git clone https://github.com/squirtleDevs/scaffold-eth.git challenge-3-single-pool-dex cd scaffold-eth git checkout challenge-3-single-pool-dex yarn install Checkpoint 1: Environment 리액트, 하드햇 로컬 체인, 배포를 진행해줍니다. yarn start yarn chain yarn deploy Checkpoint 2: Reserves.. [SpeedRunEthereum] Challenge 2 [Token Vendor] Checkpoint 1: Environment 터미널 3개를 실행 후 하나씩 실행합니다. yarn chain //로컬 네트워크 yarn start //리액트 yarn deploy //스마트 컨트랙트 배포 Checkpoint 2: Your Token YourToken.sol의 생성자로 초기 물량을 발행합니다. contract YourToken is ERC20 { constructor() ERC20("EBTT", "EBT") { _mint(msg.sender , 1000 * 10 ** 18); } } Checkpoint 3: Vendor Vendor.sol 에서 다음 코드를 추가합니다. uint256 public constant tokensPerEth = 100; // 이더당 토큰 개수 event BuytT.. [SpeedRunEthereum] Challenge 1[Decentralized Staking App] challenge 1은 스테이킹 앱을 만들어보는 것입니다. Checkpoint 1: Environment challenge 0처럼 템플릿 프로젝트를 받고 로컬 네트워크, 리액트, 디플로이를 해줍니다. git clone https://github.com/scaffold-eth/scaffold-eth-challenges.git challenge-1-decentralized-staking cd challenge-1-decentralized-staking git checkout challenge-1-decentralized-staking yarn install //terminal 1 yarn chain //terminal 2 yarn start //terminal 3 yarn deploy Checkpoint 2.. Vmmem 메모리 과다 사용 해결 wsl2로 리눅스를 사용하다 보니 점점 컴퓨터가 느려지는 것 같아서 작업 관리자를 확인해보다가 깜짝 놀랐다.. 이 Vmmem 이라는 프로세스가 메모리를 미친 듯이 먹고 있는 것 아닌가? 찾아보니 wsl2으로 리눅스를 사용할 때 리눅스의 캐시 저장 방식이 메모리 사용량을 계속해서 증가시키는 것이 원인이라고 한다. 이를 위해서 wsl2가 윈도우의 메모리를 공유해서 사용하는데 의도적으로 wsl2에서 사용할 수 있는 최대 메모리 사용량을 정해주는 것으로 어느 정도 해결할 수 있다. C:\Users\[사용자_이름] 디렉토리에서 .wslconfig 이라는 파일을 생성해 다음과 같이 작성한다. [wsl2] memory=(사용할 만큼)GB swap=0 작성 후 컴퓨터를 다시 시작하고 리눅스에서 메모리 전체 용량을 확인.. [SpeedRunEthereum] Challenge 0[Simple NFT Example] Scaffold-eth를 활용한 예제 챌린지를 해보겠습니다. Checkpoint_0: 설치 필수 설치 Git Node (v16 이하 버전) Yarn git clone https://github.com/scaffold-eth/scaffold-eth-challenges.git challenge-0-simple-nft cd challenge-0-simple-nft git checkout challenge-0-simple-nft yarn install 총 3개의 터미널을 열어 각 명령어를 실행합니다. Hardhat LocalNetwork 실행 yarn chain React 실행 yarn start Contract deploy yarn deploy // 재 배포시 yarn deploy --reset http://.. [Solidity] fallback 과 payable, 이더 전송 함수 fallback fallback 함수에 대해서 알아보겠습니다. 솔리디티 0.6 이전 버전에서는 무기명 함수로 사용되었던 fallback은 0.6 이후부터 fallback과 receive로 사용 가능하게 되었습니다. fallback 함수는 무기명 함수로서 다음과 같은 경우에 사용할 수 있습니다. 1. 다른 컨트랙트로부터 이더를 받는다. 2. 이더를 받고 난 후 어떠한 행동을 취할 수 있다. fallback 함수와 다른 함수와의 차이점은 fallback 함수는 컨트랙트당 1개밖에 가질 수 없습니다. contract Example { //0.6 이전 function() external payable { } //0.6 이후 fallback() external payable { } receive() externa.. 이전 1 ··· 6 7 8 9 10 11 12 ··· 15 다음