# ethereum
[Blockchain] Smart Contract와 상태 기계, 그리고 EVM
Solidity를 다루면서 스마트 컨트랙트에 대한 언급을 했다. 간단하게 이야기하자면 디지털로 작성된 계약서를 뜻한다. 이를 작성하는 방법이 Solidity였고, 계약 조건이 충족되면 자동으로 계약 내용이 실행되도록 하는 것이 스마트 컨트랙트이다.

[Blockchain] Let's start Solidity
블록체인, 특히 이더리움이나 솔라나 같은 종류의 블록체인을 활용한다면 꼭 등장하는 것이 스마트 컨트랙트이다. 서론을 막론하고 일단 만들어보자!

[Blockchain] Transaction
위 그림은 이더리움에서 거래가 이루어지기까지의 과정을 요약한 것이다. 이걸 모두 이해하는 걸 목표로 하자. 위 그림을 잘 살펴보면 화살표가 모두 단방향이어서, 뒤로 되돌아갈 수 없다. 정확히는 모든 경우의 수를 다 검증해야 하기 때문에, 되돌아가기가 굉장히 어렵다.
이더리움 go-etheruem Nonce 관련 Issue submit
이전 게시글에서 GetTransactionCount(), 즉 Nonce값을 가져오는 메서드를 분석했었다.간단히 다시 한번 보자면s.b.GetPoolNonce(ctx, address)txNoncer라는 구조체의 nonces라는 map에서 address에 대한 nonce값
이더리움 코어 get Nonce 과정 (txNoncer)
한동안 typescript로 ethers를 사용하다가 최근에는 ethclient를 사용하여 코드를 작성하다 보니, 트랜잭션에 필요한 account nonce를 얻어오는 getTransactionCount()를 썼다. 그 과정에서 갑자기 궁금증이 생긴 것이, 설마 db에

solana에서 account란?
위 그림을 설명 드리기 앞서 먼저 Account가 무엇인지 알면 편합니다.솔라나에서 상태(값)을 저장하는 공간. SHA256 함수로 생성한 256bit Hash 값으로 표현한다고 합니다.주소, 계좌, 계정과 혼용해서 지칭합니다.아래와 같이 program 저장용일 때는

Smart contract community audit 참가 내용 정리
Dixel Club 에서 진행했던 smart contract community audit에 참가하여 활동한 내역을 나중에 보기 쉽게 정리 해보려 한다. 진행 기간 : 6월 2일 ~ 6월 12일 #1 PR - scripts/deploy: add verifying co
ethereum - type assertion
Typescript library for type check in ethereum.ethers.js 에서 타입 체크해주는 것 보고, 이러면 더 낫지 않을까 싶은 생각이 들어 만들어보았다.https://github.com/dbadoy/ether-typecheck

블록체인 이해하기 [#1]
스마트 컨트랙트(Smart Contract) : 특정 계약을 스스로 수립, 검증, 이행 하기 위한 컴퓨터 프로토콜 스마트 컨트랙트 in ethereum : evm계열 account의 상태를 변경 할 수 있는 프로그램 코드. 이더리움 P2P 네트
anaconda 서버세팅
mnt가 아니라 tmp에서 실행enter 계속 누르다가 끝이 보이면 yes/mnt/anaconda/anaconda3/ 로 경로설정 후 enter설치 완료 후 yes or no 나오면 yes 위 부분의 과정 캡쳐화면
이더리움 코어 API 등록 과정
위와 같은 Rpc API를 호출하면 이더리움 코어 안에 GetTransactionCount() EstimateGas() GetBalane() 이와 같은 메서드가 호출이 되는데, 어느 부분에서 포팅이 되는지 평소에 알 수 가 없던 터라 이번 기회에 한번 알아 본다.
이더리움 코어 Event 분석
최근에는 배포된 스마트 컨트랙트 event를 구독하여 데이터를 가져오는 로직을 짜고 있다. 그러다 보니, 자연스럽게 event를 어떻게 가져오는지 궁금해져서 알아보았다. [다루는 내용은 geth 기준이며, 다른 클라이언트에서의 동작은 다를 수도 있습니다.] web3,