본격적으로 스마트 컨트랙트를 배우기 앞서, 실험을 해보고 싶었다. 어떤 식으로 스마트 컨트랙트가 테스트넷에 배포되는지에 대해서 말이다.사실 이전에도 여러번 시도를 해봤는데, 에러가 속출해서 다른 공부 때문에 접어두었다. 하지만 이제 정말 때가
ethereum banner개인키를 통해 누구나 통제할 수 있는 계정생성하는데 어떤 비용도 들지 않는다.트랜잭션의 시작점이 될 수 있다.EOA 간 트랜잭션은 ETH/Token 의 송수신만 가능하다.공유키와 개인키의 암호호된 키 쌍에 의해 만들어진다.네트워크에 배포되어
이더리움 네트워크를 이용하는 것은 비용이 든다. 바로 `가스비`(Gas Fee, 이하 가스비)다. 블록체인 네트워크를 가만히 관찰하다보면 세상에 공짜가 없다는 것을 몸소 느끼게 된다. 일상 생활에서도 내가 지금 이 자리에서 숨을 쉬고 있게 하는데는 여러 비용이 들고 있
Geth를 사용하여 임의의 테스트넷을 만들어 본다.도커로 새로운 ubuntu 환경을 만들어 사용해줬다. Geth를 돌리기 위한 환경설정은 다음과 같다. 이는 우선 도커로 실행되고 있는 ubuntu 가상환경의 터미널을 이용하고 있다는 가정에서
ethereum banner이더리움은 블록체인을 이용하는 대가로 비용을 지불해야 한다. 하지만 이는 비단 이더리움만 갖는 특성은 아니다. 이 비용은 새로운 블록을 채굴하는 노드에게 보상으로 지급되기 때문이다. 그들의 컴퓨터 자원을 사용하여 블록체인을 기록하는 데 대한
ethereum banner메타마스크 같이 클라이언트에서 Web3.js API를 제공하는 지갑은 wallet_getPermissions와 wallet_requestPermissions 함수를 제공하는 것을 권장한다.이는 기존의 다른 웹서비스, 이를테면 페이스북이나 애플
solidity banner헷갈리는 가시성. 제대로 정리하고 넘어가보려 한다.public : Getter Function 을 컴파일러가 자동으로 만들어준다는 특징이 있다. 외부에서 접근을 하게 되면 this.x의 형식으로 가능하고, 내부에서 접근하면 직접 x로 가능하다
이더리움 체인의 솔리디티를 통하여 가위바위보 게임을 구현하게 되었다. 배팅을 하고, 승부 결과에 따라 배팅된 금액을 번복 없이 보낼 수 있어 구현하기 쉬울 줄 알았다. 내가 솔리디티를 공부하면서 예시로 만들어 본 가위바위보 게임에는 문제가 있다. 우선 가위바위보 입력을
항상 블록체인 관련 개발은 기존의 웹개발과 다르다는 생각을 하며 접근하고 있다. 그리고 이번에도 스마트컨트랙트와 디앱을 연결하면서 맞딱뜨린 개념, Provider가 있었다. Provider가 있어야만 비로서 작동하는 디앱과 배포된 스마트 컨트랙트를 연결시켜 상호작용
ERC-721, NFT를 발행할 수 있는 스마트 컨트랙트 작성을 학습 중이다. 사실 이더리움에서 제안된 EIP-721에서 ERC-721을 개발하는데 제안된 표준은 딱 블록체인에서 NFT가 거래될 수 있는 최소한의 기능만 구현되어있다. 그렇다보니 좀 더 현실 비즈니스 실
NFT는 Non-Fungible Token의 약어로, 대체불가능한 토큰 이라는 뜻을 가지고 있다. 이로인해 ERC-20을 따르는 기존 Token이 Fungible(대체가능한)하다는 것과 반대되는 특징을 가지게 된다. NFT가 있기 전까지는 디지털 자산의 소유권을 주장
NFT 컨트랙트는 Transfer 함수에 도달하는 과정까지의 총집합이다. 그리고 그 과정에는 특정 NFT에 대해 Transfer 함수를 호출할 수 있는 권한이 있는 사람들을 가려내는 작업이 필요하다. 이번에는 이 권한 관련한 함수들을 확인하려고 한다.
권한 확인과 권한 부여 관련한 함수를 이전 장에서 다뤄봤다. 이제껏 다뤘던 함수를 통해서 이번에는 NFT를 다른 계정에 넘겨주는 Transfer 함수를 살펴보려고 한다. 그리고 나머지 다루지 못한 함수들 이를테면 miniting 이나 burn 함수를 확인해보겠다.
`0.8.0` 버전 이상부터는 대부분의 연산에 대하여 기본적으로 오버플로우와 언더플로우를 런타임 때 체크하게 되었다는 것이다. 만약 연산 결과가 위 두 문제 중에 하나를 발생시키면 트랜잭션 과정 중에 발생한 모든 것들을 되돌려버리고 이전 상태로 돌아가게 만든다. 기본
Infura가 제공하는 provider를 이용하여 이더리움 클라이언트에 원격으로 블록체인 온체인 데이터를 요청해봤다. 이는 web3 라이브러리를 사용하면 쉽게 가능하다. 하지만 Infura에서는 sendTransaction이라는 메소드를 지원하지 않는다. 덕분에 htt
프로젝트 진행 중에 우리가 만든 컨트랙트에서 ERC20을 다뤄야하는 일이 생겼다. 컨트랙트에서 유저가 이용하는 ERC20 토큰을 위임받아서 대신 지불을 할 수 있게 만들어야 했다. 하지만 이 기획은 결국 수정되었다. 해당 컨트랙트 내에서 ERC20의 함수를 실행시켜 원