'2018/03'에 해당되는 글 2건

  1. 2018.03.21 이더리움 Gas는 토큰이 아니다
  2. 2018.03.13 내 맘대로 정한 이더리움 FAQ
이더리움 gas 개념에 대해 고민하던 중 유용한 글이 있어 요약함
https://ethereum.stackexchange.com/questions/3/what-is-meant-by-the-term-gas

Gas란?

  • Gas는 이더리움은 생태계에서 사용되는 특별한 "단위"
  • 이더리움 플랫폼 위에서 실행되는 모든 작업은 실행을 위해 필요한 Gas량이 정해져 있음
  • 이더리움 위에서 ETH(이더)를 이체하거나 SmartContract를 실행시키기 위해서는 Gas 요금을 지불해야 함

Gas는 토큰이 아니다.

  • 예를 들어 1000 Gas를 구매하거나 소유할 수 없음
  • Gas는 EVM 소스코드 안에 얼마나 많은 작업을 처리했는지 나타내는 카운터로 존재

왜 ETH를 바로 쓰지 않고 Gas를 도입했나?

  • ETH(화폐)의 가치는 시장에서 등락을 거듭하며 항상 변화함
  • 반면 어떤 작업을 위해 필요한 컴퓨팅 자원(CPU, 메모리, 스토리지)의 양은 정해져 있음 (변화하지 않음)
  • 그래서 이더리움 개발팀은 컴퓨팅 자원량의 단위(Gas)와 화폐의 단위(ETH)를 분리하는 것이 합리적이라고 생각했음


Posted by ingeeC
,

이더리움 FAQ

  • "A가 B에게 투자한 조건 아래서 B가 A에게 일정 기간마다 이자를 지급하는 Smart Contract"를 만들려고 한다. "일정 기간마다" 트랜잭션을 일으켜서 Smart Contract를 실행시키는 주체는 누구인가 (블록체인이 자동 처리할 수 있는가)?

    • Smart Contract는 트랜잭션에 의해서만 호출됨
    • 일정 시간마다 B가 트랜잭션을 일으켜야 함
    • "일정 기간마다 자동으로 트랜잭션을 일으키는 일"은 이더리움 블록체인만으로는 불가능. 블록체인 밖에 자동화 어플리케이션을 만들어야 함


  • 이더리움 지갑 어플리케이션은 현재 잔액을 블록체인이 아닌 별도의 장소에 따로 관리하나?
    • 계정의 잔고는 이더리움 블록체인에 저장/관리
    • 이더리움 블록체인은 계정별 잔고 데이터를 유지/관리함 (비트코인처럼 UTXO를 추적하지 않음)


  • Smart Contract에 ether를 송금할 수 있는가?
    • Smart Contract도 이더리움 계좌의 한 종류
    • Smart Contract로 ehter를 송금할 수 있다


  • Smart Contract 실행시 gas limit를 낮게 설정해도 Smart Contract가 실행되는가?
    • gas limit를 Smart Contract가 필요로 하는 최소 gas limit 보다 낮게 설정하면 실행/채굴되지 않음
    • 채굴자에 의해 선택/실행되더라도 중간에 중단되며 트랜잭션은 취소되고 gas 수수료는 차감됨


  • Smart Contract 실행시 gas price를 낮게 설정해도 Smart Contract가 실행되는가?
    • Smart Contract의 실행을 보장하지 못함 (채굴업자가 선택하지 않음)
    • 하지만, 채굴자에 의해 선택/실행된다면 낮은 가격을 지불함


  • Smart Contract 실행을 위해 ehter를 직접 쓰지 않고 gas 개념을 도입한 이유?
    • gas는 블록체인 네트워크의 자원 (연산, 스토리지) 사용에 대한 비용
    • 지불 가치 측면에서, ether의 가치는 시장에 의해 결정되며 항상 유동적
    • 자원 가치 측면에서, 블록체인 네트워크의 연산 능력은 항상 유동적 (노드가 추가되기도 하고, 삭제되기도 함). 이에 따라 연산 비용도 항상 유동적
    • Smart Contract 처리 시점의 적정 비용을 공정하게 산정하기 위해 gas 개념을 도입


  • 이더리움의 TPS가 비트코인보다 높은 이유 (이더리움의 트랜잭션 처리 속도가 비트코인보다 빠른 이유)?
    • 해시 알고리즘이 다름 (ETHash)
    • 해시 난이도가 다름


Posted by ingeeC
,