Q. 콘스탄티노플 하드포크로 인해 변하는 주요 사항에 대하여 설명부탁드립니다

그랑죠 2019. 01. 23.


레이어를 나누어 기존체인 및에 하부체인으로 비콘체인으로 두고 pos를 채택하는 것으로 알고있는데 그외에 또 어떤변화가 생기나요?

공유하고 보상받기 ♥︎

1개의 답변이 있습니다.

질문자 채택
저거슨 답변자인증
BS/개발팀 2019. 01. 24

콘스탄티노플 하드포크를 하면서 포함되는 EIP(Ethereum Improvement Proposal)를 살펴보면, 총 5가지의 EIP가 포함됩니다.

내용으로는 EVM 성능 향상, 오프체인(스테이트 채널) 트랜잭션 대비, PoS 전환 대비를 위한 내용이 포함되어 있습니다.

EIP 145 : Bitwise shifting instructions in EVM

  • 목적 : EVM 성능 향상 (가스비 절약)

  • 요약 : Bitwise SHIFT 연산(SHR, SHL, SAR) OPCODE 추가

  • 내용 : native한 코드에서 SHIFT 연산이 구현되어 있지 않아서, 다른 연산들의 조합으로 SHIFT를 구현했었습니다. 이렇게 구현 된 SHIFT 연산은 35 gas가 필요했는데, 직접 native하게 구현하여 SHIFT 연산을 3 gas로 줄였습니다.

EIP 1052 : EXTCODEHASH opcode

  • 목적 : EVM 성능 향상 (가스비 절약)

  • 요약 : EXTCODEHASH OPCODE 추가

  • 내용 : 컨트랙트가 동일한지 비교하기 위해서는 EXTCODECOPY 코드를 사용하여 컨트랙트의 전체 bytecode를 복사하는 작업을 수행해야 했습니다. 그런데 컨트랙트가 큰 경우에는 비용이 매우 많이 발생했는데, 이것을 효율적으로 하고자 EXTCODEHASH를 추가해서 bytecode의 Hash 값을 가지고 비교할 수 있게 했습니다.

EIP 1283 : Net gas metering for SSTORE without dirty maps

  • 목적 : EVM 성능 향상 (가스비 절약)

  • 요약 : SSTORE OPCODE 구현 내용 수정

  • 내용 : state 값의 구분을 세분화 (originValue, currentValue, newValue)하여 값의 변화가 필요 없는 경우, DB에 저장하는 과정을 생략하여 리소스 낭비를 줄입니다. 그래서 필요한 gas도 줄어들게 합니다.

EIP 1014 : Skinny CREATE2

  • 목적 : 오프체인(스테이트 채널) 트랜잭션 대비

  • 요약 : CREATE2 OPCODE 추가

  • 내용 : 오프체인에서 처리 중이라서 아직 온체인에 기록되지 않은 데이터를 위한 컨트랙트 주소를 미리 만들어 놓을 수 있는 명령어를 추가했습니다. 이 주소는 msg.sender, salt, init_code의 Hash로 만들어지며, 기존 msg.sender와 nonce의 Hash를 가지고 컨트랙트 주소를 만드는 방식과는 차이가 있습니다.

EIP 1234 : Constantinople Difficulty Bomb Delay and Block Reward Adjustment

  • 목적 : PoS 전환 대비

  • 요약 : 난이도 폭탄 연기, 채굴보상 감소

  • 내용 : 애초에 Byzantium 하드포크(4,370,000 블록) 때 시행하려고 계획되어 있던 난이도 폭탄이 Byzantium 하드포크 때 3M 블록 뒤에 시행하기로 연기 됩니다. 그런데 아직 PoS로 전환을 하려면 시간이 더 필요하다고 판단되어 이번 하드에서 그 보다 2M 블록(Byzantium 하드포크 기준 5M블록, 블록타임 15초 기준, 약 12개월) 뒤에 난이도 폭탄이 시행되도록 변경하여 채굴 빙하기를 늦추게 했습니다. 그와 더불어 채굴보상을 감소(3 ETH -> 2 ETH)시켜 빙하기가 왔을 때 채굴자 받는 충격을 순차적으로 완화시키려 하고 있습니다.

아래 링크는 문서로 정리된 링크입니다

https://medium.com/day34/%EC%9D%B4%EB%8D%94%EB%A6%AC%EC%9B%80-%EC%BD%98%EC%8A%A4%ED%83%84%ED%8B%B0%EB%85%B8%ED%94%8C-%ED%95%98%EB%93%9C%ED%8F%AC%ED%81%AC-%EB%82%B4%EC%9A%A9-%EC%A0%95%EB%A6%AC-ethereum-constantinople-hardfork-d7dce501ba37

아래 링크는 영상입니다

https://www.youtube.com/watch?v=gA3RV6O9xg8