기본적으로 맥북의 terminal로 세팅을 하였다.brew를 설치했으니 brew로 진행을 하자. 예를들어이런 코드가 있다면이렇게 바뀐다. apt가 brew로 대체된다우리는 geth를 사용할 것이다. geth란?"Geth"는 Go Ethereum의 줄임말로, Ethere
블록체인에서 블록이 생성되는 원리에 대해 코드로 구현해볼 생각은 하고 있었다. 언젠가하지만 우연치 않게 이번 수업에서 블록을 typescript로 구현하신다 하셔서 속으로 쾌재를 불렀다.블록 작동 원리는 다음과 같이 요약할 수 있다.위 과정을 계속 반복하는게 채굴이다.
1.체인 시스템 추가 이전글에서 다뤘던 블록체인 시스템 구현 부분에서 블록들을 담은 체인을 추가할 것이다. 각 체인안의 메서드는 다음과 같은 기능들을 담고있다. 체인을 확인 할 수 있는 메서드 체인의 길이를 반환하는 메서드 체인의 마지막 블록을 반환하는 함수 체인에
enum 타입으로 객체의 role을 정해준다.socket으로 보내줄 message의 interface이다.p2p기능을 구현할 함수들과 속성들을 담은 클래스이다.socket주소를 담을 배열이다. 이 배열을 활용하여 다양한 ip와 포트에서 들어온 유저와 통신한다. 소켓을
기본적인 역할로 암호화폐를 안전하게 보관할 수 있고 암호화폐를 전달하거나 받을 수 있다.자산의 소유권을 암호화 방식으로 증명 지갑의 개인키를 사용해서 거래의 서명을 검증하고 본인의 자산을 관리본인의 암호화폐의 보유량 확인지갑의 거래내역 확인복구 문구를 사용해서 지갑 복
이더리움 창시자:비탈릭 부테린비트코인의 보완을 좀 더 신경쓴거 같은 느낌내용을 보면 비트코인과 크게 다른점이 있는데비트코인은 결제라는 포커스에 맞춰서 구현을 했다면이더리움은 탈중앙화한 어플리케이션을 제안했다고 보면 된다.중요한 내용은 스마트 컨트랙트와 어플리케이션이라는
컨트랙트에 저장할 수 있는 영역 데이터를 영구적으로 저장할 수 있다.contract storage 데이터를 저장한다.storage에 상태를 저장해서 유지시킬 수 있다. (블록체인 스마트 컨트랙트)javascript의 클래스는 인스턴스를 생성을 하는 과정이 (new 키워
기본적으로 ERC20의 형식을 가지고 있는 인터페이스이다. 여기서 말하는 ERC20은 openzepplin을 말한다.override는 말 그대로 부모 (IERC20)의 메서드를 오버라이드 했다는 뜻이다. balance는 사용자의 계좌잔액을 말하며, 여기서는 토큰의
여기서 override를 한 변수가 interface에선 function(함수)로 정의돼 있는 걸 볼 수있다. 즉 ,함수->객체,uint 로 오버라이딩 된건데 구체화하는 형식이라 solidity에서는 가능하다.receive() external payable같은 경우
temp함수를 보면 subscribe메서드를 확인할 수 있는데, 이는 해당하는 이벤트를 구독(관찰)하는 메서드이다.newBlockHeaders 이벤트는 블록이 생성될 때 마다 실행되는 메서드를 정의 할 수 있다.구독을 하였다면 on으로 이벤트를 감시하자. data이벤트