Berlin 하드포크

메인넷 2021-04-15

상태 접근 가스 비용을 조정하고, 여러 거래 형식을 담을 수 있는 틀(타입 거래)을 만들었습니다.

무엇이 달라졌나

사용자
상태를 처음 읽는 비용이 올라, 여러 컨트랙트나 저장 공간을 한 번에 건드리는 거래는 수수료가 전보다 늘었습니다. 대신 같은 거래 안에서 한 번 읽은 곳을 다시 읽는 비용은 내려갔습니다. 접근할 주소와 저장 공간을 미리 적어 두는 접근 목록(access list) 거래를 쓰면 늘어난 비용 일부를 돌려받을 수 있었습니다. 이더를 한 곳에 보내는 단순 송금은 달라지지 않았습니다.
지갑·앱 개발자
거래 맨 앞에 종류를 표시하는 틀(타입 거래)이 생겼습니다. 지갑과 라이브러리는 기존 거래와 새 형식을 함께 읽고 서명할 수 있게 고쳐야 했습니다. 이 틀 위에 접근 목록 거래가 첫 새 형식으로 올라갔습니다. 컨트랙트 개발자는 상태를 처음 읽는 비용이 오른 만큼 가스 사용량을 다시 재야 했습니다. 큰 수의 거듭제곱 나머지를 구하는 연산(MODEXP)은 비용이 내려가 RSA 서명 검증 같은 암호 연산이 싸졌습니다.
노드 운영자
상태 접근 비용을 올린 이유는 디스크를 읽는 작업이 실제 부담보다 싸게 매겨져 있어, 이를 노려 블록 처리 시간을 늘리는 공격 통로가 됐기 때문입니다. 비용이 맞춰지면서 이런 거래로 노드를 느리게 만드는 여지가 줄었습니다. 그 밖에는 정해진 블록 전에 클라이언트를 새 버전으로 올리는 것 말고 직접 달라지는 것은 없었습니다.

주요 EIP

← 하드포크 · 로드맵