[Web3.0]/블록체인

이더리움 Transaction 구조

_niel 2023. 2. 17. 14:23

트랜잭션이란

1. EOA가 EOA에게 Eth를 전송하거나

2. EOA가 CA를 호출할 때

사용되는 구조이다.

 

EOA-EOA

- value에 보내는 Eth양이 들어가고

- Input Data에는 빈 값이 들어간다

 

EOA-CA

- value에는 보내는 값이 없는 경우가 0이 들어가고(Defi 등의 서비스의 경우 value 존재)

- Input Data에 호출하는 함수명과 파라미터 값이 들어간다.

 

CA-CA

-  간의 호출 정보는 Internal Transaction 이라고 부르며 Contract 코드 상에서 Delegatecall, StaticCall, call 함수를 통해 발생한다.

Transaction 서명

- 이더리운은 secp256k1 기반의 타원곡선암호(ECC)를 사용하여 서명하고 검증한다.

- 트랜잭션에서 r, s 가 실제 서명이고 v는 복구를 위한 값으로 27, 28을 사용하고 있다.

 

Message 구조 

- CA가 CA를 호출할 때 (Internal transaction)만 발생하는 네트워크 구조

- EVM 상에서만 존재하는 가상 객채이다

- 블록체인상에 기록이 남지 않는다.

 

Receipt 구조

- EVM에서 Transaction을 실행하고 결과값이 저장되는 곳이다.

- 실제로 사용된 Gas와 컨트랙트 호출시에 발생하는 Log 등이 저장되는 구조이다.

- 이 데이터는 블록체인상 기록된다.

 

 

'[Web3.0] > 블록체인' 카테고리의 다른 글

Structure of CryptoKitties  (0) 2023.03.06
이더리움 GAS  (0) 2023.02.17
이더리움 Block 구조  (0) 2023.02.17
이더리움의 Account Structure (2) - 자료구조  (0) 2023.02.17
이더리움의 Account Structure (1)  (0) 2023.02.17