위험 경고: '가상화폐', '블록체인'이라는 이름으로 불법 자금 모집 위험에 주의하세요. — 은행보험감독관리위원회 등 5개 부처
검색
로그인
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt
BTC
ETH
HTX
SOL
BNB
시장 동향 보기
12시간 카운트다운, 이더리움 프로토콜 계층의 7년 변화 검토
PANews
特邀专栏作者
2022-09-14 14:00
이 기사는 약 4910자로, 전체를 읽는 데 약 8분이 소요됩니다
역사를 돌아보면 "세계 컴퓨터"를 향한 모든 발걸음이 빽빽한 코드로 인쇄되어 있습니다.

원래 제목:

원래 제목:보조 제목

이더리움이란?

이더리움이란 무엇입니까? 천명의 사람들이 천개의 답을 가지고 있고 이 글이 논의하고자 하는 것은 가장 일관된 답, 즉 이더리움의 프로토콜은 무엇인가? 또는 보다 기술적인 설명에서 이더리움 클라이언트(PoW 체인/ETH1)를 개발하려면 어떤 규칙을 따라야 합니까?

첫 번째 레벨 제목

개요

개요

Ethereum의 이전 하드 포크를 통과할 수 있습니다.이 페이지확인하다. 2015년 7월 30일 출시 이후 39개의 EIP("Constantinople"과 "Petersburg"는 동일하게 간주됨)를 포함하여 총 14개의 하드 포크가 수행되었습니다. 가장 가까운 2개의 하드포크는 26일, 가장 먼 2개의 하드포크는 490일 차이가 났습니다.

하드 포크는 "액티브 업그레이드"와 "패시브 업그레이드"로 나뉩니다. 능동적 업그레이드는 이더리움 프로토콜을 수정하려는 개발 팀의 이니셔티브를 말하며, 수동적 업그레이드는 잠재적인 보안 위험을 처리하기 위해 "반드시" 취해야 하는 조치입니다. 패시브 업그레이드에는 해커 절도(DAO Fork)를 처리하거나 DDOS 공격(Tangerine Whistle, Spurious Dragon) 또는 단순히 난이도 폭탄 처리(Muir Glacier, Arrow Glacier, Gray Glacier). "적극적인 업그레이드"는 백서의 계획(적어도 명명 측면에서), Frontier(Frontier, Frontier Thawing), Homestead, Metropolis(Byzantium, Constantinople/Petersburg, Istanbul), 베를린과 런던의 계획과 대략 일치합니다. 이더리움 로드맵 변경 후 전환 업그레이드. 또한 몇 가지 사전 업그레이드에는 난이도 폭탄을 연기하는 옵션도 포함되었습니다.

보조 제목

대표적인 하드포크 해석

DAO 포크

  • DAO 포크

DAO 포크 이벤트는 이더리움 개발에서 가장 광범위한 이벤트입니다. DAO의 스마트 컨트랙트가 해킹된 이후 약 360만 이더가 해커들에게 도난당했지만 28일간의 동결이 있었다. 이 기간 동안 Carbonvote의 도움으로 토큰 보유자는 자신의 희망을 표현하고 Ethereum Foundation은결정하다자금의 이 부분은 새로운 스마트 계약으로 이전되어 투자자가 인출할 수 있습니다. 이 포크는 이더리움 클래식(Ethereum Classic)을 낳았고, 이는 또한 많은 사회적 논쟁을 불러일으켰습니다.

  • 상하이 DOS

Devcon 2 동안 이더리움 핵심 개발자들이 상하이에 모였지만 이더리움 네트워크는 많은 네트워크 트래픽을 겪었습니다.공격, 서비스 거부(DOS)가 발생합니다. EXTCODESIZE 연산 코드가 소모하는 실제 시스템 리소스는 공격자가 지불해야 하는 트랜잭션 수수료보다 훨씬 높기 때문에 공격자는 반복적으로 이 연산 코드를 호출하여 전체 네트워크의 대부분의 노드가 최신 블록을 따라잡지 못하게 합니다. 덜 영향을 받는 Parity 클라이언트를 활성화하기 위해 마이닝 풀과 전체 노드를 조정하는 동안 개발자는 블록 가스를 줄이기 위해 협상했습니다(5백만에서 1.5백만으로). 결국 Tangerine Whistle과 Spurious Dragon의 두 하드 포크의 도움으로 관련 opcode의 가격을 조정하고 상태를 정리하여 DOS 공격의 영향을 완화했습니다. 이번 하드포크 역시 EIP-161(Spurious Dragon에 포함)의 부적합한 구현(Go-ethereum과 Parity에서 각각 잘못 구현)으로 인한 후속효과를 불러일으켜 합의 포크로 이어졌습니다.

  • 두 성의 약탈자

~에 따르면

~에 따르면ChainSecurity의 보고서, EIP-1283은 일부 계약에 대해 재진입 공격의 위험을 도입합니다. TrailOfBits 제공더 자세한 분석그리고 영향을 받을 수 있는 계약 목록을 제공합니다. 하드 포크가 활성화되기 32시간 전에 이더리움 재단은 콘스탄티노플의 업그레이드를 연기하기 위해 노드를 업그레이드 또는 다운그레이드하도록 상기시키는 문서를 발행한 다음 상트페테르부르크 하드 포크를 도입하는 새 버전을 출시했습니다.높거나 비활성화된 콘스탄티노플 하드 포크.

  • 폭탄 위기

Muir Glacier와 Istanbul의 두 하드 포크 사이에 26일밖에 없는 이유는 핵심 개발자가 난이도 폭탄의 폭발 시간을 잘못 계산하여 난이도 폭탄을 연기하자는 제안이 이스탄불에 포함되지 않았기 때문입니다. 난이도 폭탄이 네트워크에 영향을 미치려 한다는 사실이 밝혀지면,제76회 핵심 개발자 회의EIP-2384는 빠르게 승인되어 Muir Glacier 하드 포크에 통합되었습니다.

하드 포크 결정 프로세스 변경

하드포크는 어떻게 결정되나요? 사실 이더리움은 오랫동안 서면 문서가 없었고 "사회적 합의"에 더 의존했습니다(제가 틀렸다면 정정해주세요). EIP-233은 포크에 대한 공식 프로세스를 공식화하려고 시도했지만 승인되지 않았습니다.

이 글은 이더리움 커뮤니티의 하드포크 결정 과정에 대한 논의를 보여줄 수는 없지만, 이더리움의 하드포크 결정 과정은 분명히 바뀌었습니다. 베를린 하드포크 이전에 개발자들은 먼저 하드포크 시점을 결정한 다음 어떤 EIP를 포함할지 결정한 다음 이를 구현하고 테스트했습니다. 베를린 이전의 모든 하드포크는 메타 EIP입니다. 예를 들어 이스탄불의 하드포크는 통과했습니다.EIP-1679정의(HFM-1679라고 함).

Martin Holst Swende 발표EIP 중심의 하드포크 프로세스, 핵심 관점은 하드 포크에서 EIP 승인을 분리하는 것입니다. 핵심 개발자는 단일 EIP의 승인, 구현 및 테스트에 중점을 둡니다. 단일 EIP가 승인되면 후속 하드 포크는 EIP를 포함하도록 선택할 수 있습니다. . 베를린 하드 포크는 더 이상 사용되지 않지만 이 프로세스가 이더리움 코어 개발자들에 의해 어떻게 받아들여졌는지는 작성 시점에 발견되지 않았습니다.HFM-2070, 하지만양자Martin이 제안한 프로세스를 따랐습니다.

의사결정 과정의 변화는 빠르게 작용했고, 베를린 하드포크 테스트넷이 활성화되기 2주 전에 개발자들은 EIP-2315의 사용 중단에 대해 열띤 토론을 벌였고 결국 EIP-2315를 제거했습니다. 새로운 프로세스의 채택으로 인해 마지막 순간의 변경은 하드포크에 큰 영향을 미치지 않았고 결국 예정대로 이루어졌습니다. 자세한 내용은 "EIP-2315 제거: 이더리움 베를린 업그레이드를 앞두고 비상 제동

변경하지 변경

연구 보고서연구 보고서

EIP 심층 분석

이러한 EIP가 이더리움에 어떤 영향을 미쳤으며 누가 이더리움의 의사 결정에 영향을 미쳤습니까? 이 글은 이더리움 하드포크에 포함된 모든 EIP(메타 제안 제외)를 정리한 것입니다. 자세한 내용은 링크를 참조하세요.

https://primitiveslane.notion.site/cbd45cf0289c414b86715b8a9e71b28e?v=838baf2ac3a442a6b3fa03e58c5dc0ae

EIP가 하는 일

하드포크에 포함된 EIP 유형은 주로 청구 모델 변경, 새로운 opcode 도입, 난이도 폭탄, 경제 모델, 사전 컴파일, 보안 고려 사항 등을 포함합니다.

  • 청구 모델 변경

과금 모델 변경은 EIP가 가장 많아 총 10개로 25.6%를 차지한다. 작동 코드의 단가를 높이거나 낮춤으로써 가스 소비와 실제 시스템 리소스 간의 불일치 균형을 조정하여 DOS의 공격을 받는 시스템의 숨겨진 위험을 제거하거나 특정 유형의 응용 프로그램 배포를 용이하게 할 수 있습니다. 일부 DOS 숨겨진 위험은 시스템 자원의 잘못된 평가로 인해 발생합니다.EIP-150 및 EIP-160은 이 문제를 해결하는 반면, DOS 숨겨진 위험의 또 다른 부분은 시스템의 고유한 특성입니다.상태 데이터의 증가와 함께 액세스 상태의 실제 자원은 그에 따라 데이터 소비도 증가하므로 해당 opcode의 단가를 주기적으로 조정해야 합니다. 일반적으로 EIP-1884(내 생각에 가장 잘 작성된 EIP 중 하나)입니다.

Ethereum의 상태 표현 모델로 인해 청구 모델을 주기적으로 조정해야 하며 이는 결함이 아닌 기능입니다.

  • 새로운 opcode 도입

총 9개의 EIP가 이더리움 가상 머신에 새로운 opcode를 도입했습니다(EIP-1884 제외). 이는 23.08%를 차지합니다. 더 영향력 있는 것은 EIP-7(DELEGATECALL), EIP-1014(CREATE2), EIP-3198(BASEFEE) 등입니다.

  • 난이도 폭탄

총 6개의 EIP가 난이도 폭탄을 연기하고 있으며, 15.4%를 차지합니다. 경제 모델의 조정, 즉 새로운 블록 보상의 감소와 함께 2개의 하드 포크가 있습니다. 이 포크 중 3개는 이름에 Glacier가 포함된 하드 포크인 난이도 폭탄을 지연시키기 위해서만 구현되었습니다. 난이도 폭탄의 역사는 다음을 참조하십시오.경제 모델

  • 경제 모델

경제 모델에 영향을 미치는 EIP는 4개이며, 2개는 신규 블록 보상을 줄였고, 1개는 난이도 계산 모델(EIP-100)을 조정했으며, 더 많은 논란을 불러일으킨 EIP-1559는 수수료 시장을 조정했습니다. .

  • 미리 컴파일됨

일부 암호화 작업을 사전 컴파일하는 4개의 EIP가 있으므로 운영 효율성을 향상시키기 위해 EVM에서 실행할 필요가 없습니다. EIP-152, EIP-196, EIP-197, EIP-198을 포함합니다.

  • 보안 고려 사항

다른

  • 다른

기타 EIP에는 네트워크 프로토콜 개선(EIP-8), 트랜잭션 실행 상태 인터페이스 추가(EIP-658), 새 트랜잭션 유형 추가(EIP-2718) 등도 포함됩니다. 또한 EIP-2에는 더 복잡한 홈스테드의 모든 업데이트가 포함되어 있습니다.

EIP에 기여하는 사람

총 43명과 77명이 이 EIP 작성에 참여했으며, 그 중 11명의 저자가 2개(포함) 이상의 EIP에 참여했습니다. 비탈릭 부테린이 총 17개로 43.6%로 가장 많이 집필에 참여했다. Martin Swende와 Christian Reitwiessner는 각각 5개, Alex Beregszaszi와 James Hancock은 각각 3개, 나머지는 2개 이하로 참가했습니다.

Martin Swende는 Ethereum Foundation의 보안 이사이자 Go-ethereum 엔지니어이며 EIP를 중심으로 한 하드 포크 프로세스의 제안자이며 Christian Reitwiessner는 Solidity 언어의 발명가입니다.

요약하다

요약하다

이 글은 이더리움의 역사에서 이전의 하드포크를 소개하고, 여러 하드포크 이면의 대표적인 사건들을 해석하고, 이더리움의 하드포크 의사결정 과정이 EIP로 변모한 과정을 중심으로 자세히 기술한다. 이 기사는 또한 이전 하드 포크에서 EIP가 수행한 역할과 그 배후의 기여자에 대한 심층 분석을 제공합니다.

새로운 시대를 여는 이더리움, 과거가 떠오른다 독자 여러분의 기분은 어떠신가요?

확장 독서

https://github.com/ethereum/execution-specs

https://github.com/ethereum/go-ethereum/blob/d10c28030944d1c32febba3f45ae8c175ab34063/params/config.go

https://www.ethereum.cn/the-history-of-ethereum-hard-forks

https://etherscan.io/chart/gaslimit

https://github.com/ethereum/go-ethereum/pull/3341/files#r89548312

https://blog.ethereum.org/2019/01/15/security-alert-ethereum-constantinople-postponement

https://ethereum-magicians.org/t/hardfork-meta-eip-2070-berlin-discussion/3561

https://notes.ethereum.org/@holiman/S1ELAYY7S?type=view

공유 계약

이 저작물은 Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License에 따라 사용이 허가되었습니다.

ETH
Odaily 공식 커뮤니티에 가입하세요