Q. 이더리움 하드포크

RoRo 2019. 01. 30.


작년 이더리움의 큰 이슈는

  1. 병목현상의 심화.

    제 생각에는 병목현상의 원인이 너무 많은 이더기반 토큰, 이로인해 발생되는 트랜젝션 과부하인것 같은데.. 다른 이유도 있나요?

  2. 하드포크연기

    심각한 오류가 발견되었다는데.. 이클처럼(조금 다른 의미로) 좋지 않은 이미지를 남길것 같네요

2019년에는 해결될 수 있을까요?

전문가적 또는 개인적인 의견도 좋습니다

공유하고 보상받기 ♥︎

1개의 답변이 있습니다.

질문자 & 큐레이터 채택
JayPark 답변자인증
개발팀 2019. 01. 30
100%의 채택
  1. 병목현상 심화

    여러가지 이유는 있지만, 원인은 트랜잭션 과부하가 맞습니다.

  2. 하드포크연기

    이더리움은 완벽한 탈중앙 오픈 플랫폼입니다. 어느 한 기업이나 집단이 소프트웨어를 개발하는게 아니라 이더리움 코어 개발자 그룹에서 네트워크 프로토콜을 제안, 결정하고 배포를 하면 몇몇 이더리움 개발팀들이 각자의 코드를 만들어 릴리즈하는 구조입니다. 한 번 프로토콜이 네트워크에 적용되어 블록들이 생성되기 시작하면 프로토콜 업데이트가 쉽지 않습니다. 그래서 이더리움은 처음부터 최종 안정기에 도달할 때까지 4단계로 나누어 릴리즈를 계획 했습니다. 현재는 POW(작업 증명방식)에서 POS(지분 증명방식)로 합의 알고리즘을 변경하는 최종 단계인 세레니티의 전 단계인 메트로폴리스 단계입니다. 세레니티를 위한 중간 과정이라 보시면 됩니다. 또한 메트로폴리스는 두 번의 하드포크 업데이트가 계획 되어있는데, 첫 번째가 지난 2017년 10월에 있었던 비잔티움(Byzantium) 하드포크였고 두 번째가 이번 콘스탄티노플 하드포크입니다.

    이미 1년이상 지연되었던 프로젝트이나 해당 하드포크는 올해 안에 가능하리라 보고 있습니다.

    다만 세레니티까지의 길은 아직 많이 남아보입니다.

  3. 콘스탄티노플 (이번 하드포크의 개선사항)

    이더리움에도 EIP(Ethereum Improvement Proposals)가 있습니다. 누구든지 이더리움 개발자 그룹에 가입을 해서 이더리움 업그레이드 내용을 제안할 수 있습니다. 개발자 그룹의 맴버들로부터 채택이 되면 하드포크 업그레이드에 포함이 될 것입니다. 이번 콘스탄티노플에는 5개의 EIP가 적용됩니다.

    EVM(이더리움 버추얼 머신; 컨트랙트 실행기)에 비트 쉬프트 연산자를 추가하는 제안입니다. 비트 쉬프트 연산자가 없을 때 기존 연산자로 35 gas가 소모되는 연산을 이 연산자를 통해 3 gas로 실행할 수 있습니다.

    한 컨트랙트에서 다른 컨트랙트의 코드를 검증할 때 타 컨트랙트의 모든 소스를 가져와야만 했습니다. 이는 많은 가스비를 부담해야 했습니다. 이 제안에서는 추가되는 EVM 연산자에 의해 컨트랙트 소스의 해시 값만 얻어올 수 있도록 하여 가스비를 드라마틱하게 줄일 수 있습니다.

    비탈릭 부테린에 의해 제안된 EVM 연산자입니다. 컨트랙트를 생성하는 연산자인데, 기존의 연산자와는 조금 다르게 이더리움 체인상에 없는 주소로 컨트랙트를 만들 수 있도록 했습니다. 이는 비트코인의 라이트닝 네트워크 같은 오프 체인(off chain) 기술에서 사용할 수 있도록 한 기능입니다. 일부 보도 자료에서는 이 기능에 대해 이더리움 네트워크에 오프체인 상태 채널(state channel)이 추가된 것이라고 표현하기도 했지만 사실 상태 채널을 추가한 것은 아니고 상태 채널의 한 기반을 마련한 것으로 보는게 정확합니다.

    SSTORE라는 EVM 연산자의 gas 소모 계산 방식을 바꿔 gas 비용을 줄입니다.

    현재 적용되어 있는 난이도 폭탄(difficulty bomb) 알고리즘을 1년 정도 지연시킵니다. 이 업데이트를 이해하려면 배경 지식이 필요합니다. 이더리움은 스마트 컨트랙트의 빠른 실행을 위해 현재의 POW 합의 알고리즘을 캐스퍼라는 POS 방식의 합의 알고리즘으로 전환할 계획입니다. 하지만 어느 순간부터 갑자기 POS로 전환하게 되면 기존 마이너들이 이에 동의하지 않고 계속 마이닝을 유지하려고 할 것이고, 이로 인해 체인 분할을 초래하게 될 것입니다. 이를 막기 위해 이더리움 진영은 합의 알고리즘을 서서히 이동시킬 계획을 구상했습니다. 즉, 어느 기간 동안은 네트워크 상에서 POW, POS를 모두 허용하되(하이브리드 방식) POW의 난이도를 점차 높혀 보상 비율을 줄이는 방식입니다. 그렇게 되면 마이너들은 점차적으로 POW 채굴을 포기하게 되고 최종적으로 네트워는 POS로 전환될 것입니다. POS 알고리즘은 현재 구현중이고 아직 네트워크에 적용되어 있지는 않습니다. 하지만 난이도를 점차적으로 높이는 난이도 폭탄은 프론티어때부터 이미 구현되어 있고, 적용되어 있습니다. 이 난이도 폭탄 알고리즘은 현재 블록 번호에 의해 조절되는데, 블록 번호가 커질 수록 난이도가 기하급수적으로 커지게 되어 있습니다. 애초에 POS로의 전환을 예상해서 넣은 알고리즘이지만 POS 적용이 지연됨에 따라 난이도 상승율을 낮출 필요성이 생겼습니다. 이를 위해 지난 비잔티움 하드포크때 난이도 폭탄 알고리즘을 1.4년 지연시킨 바 있는데, 이번 콘스탄티노플 하드포크에서도 1년 더 지연하게 되었습니다.

    이와 함께 블록 보상을 3ETH에서 2ETH로 줄였는데, 그 이유는 난이도 폭탄을 지연시킴에 따라 채굴자들에게 생긴 이득을 상쇄시키기 위해서 입니다.