이더리움 2.0 바자회에 오신 것을 환영합니다
편집자 주: 이 기사의 출처는Unitimes(ID: Uni-times), 저자: Ben Edgington, 컴파일러: Jhonny, Odaily가 허가를 받아 출시되었습니다.

텍스트
저는 최근 오픈 소스 개발에 관한 Eric Raymond의 고전적인 1997년 기사 "The Cathedral and the Bazaar"[1]를 다시 읽었습니다. 광범위한 참가자가 소프트웨어 프로젝트 개발에 참여하도록 허용하면 어떻게 됩니까? Eric은 이것을 오픈 소스 소프트웨어 개발의 "bazaar" 모델이라고 부릅니다. 이 "바자회"는 시끄럽고 혼란스럽지만 매우 생산적이고 역동적이며 가장 중요한 것은 더 나은 결과로 이어진다는 것입니다.
그의 기사에서 Eric은 이 시장 모델을 소규모의 폐쇄된 사람들이 모든 개발을 수행하는 보다 전통적인 "대성당" 모델과 대조합니다. 20여 년이 지난 오늘날, 이 "바자"의 힘은 부인할 수 없습니다. 우리는 현재 세계 컴퓨팅의 대부분을 지배하고 있는 Linux 운영 체제가 소프트웨어 개발의 "바자" 모델의 한 예일 뿐이라는 것을 알고 있습니다[2].
Ethereum 2.0의 개발 작업을 살펴보는 흥미로운 렌즈라는 것을 알았습니다. 1년 전 이더리움 2.0 프로젝트의 시작부터 이 거대한 프로젝트의 현재 진행 상황에 이르기까지 지금은 "바자" 개발 모델에 대해 생각하기에 좋은 시기입니다.
Ethereum 2.0 프로젝트는 주로 개방형 시장 스타일 개발 모델을 채택합니다. 그러나 우리는 Eric의 비전을 한 단계 더 발전시키고 있습니다. Ethereum 2.0에서 우리는 단지 소프트웨어를 구축하는 것이 아니라 완전히 개방된 방식으로 전체 프로토콜을 설계하고 있습니다. 이전에 이와 같은 시도가 있었는지 확실하지 않습니다.
현재 Ethereum 2.0 클라이언트의 9개 팀, 출처: ethhub.io

현재 Ethereum 2.0 클라이언트의 9개 팀, 출처: ethhub.io
텍스트
예, 프로세스는 때때로 혼란스럽고 체계적이지 않으며 비효율적으로 보일 수 있습니다. 많은 재설계, 수정 및 재작성이 있었습니다. 그러나이 시장과 같은 소음 속에서 환상적인 것이 나타나고 있습니다. 이것은 놀라운 일이며 덜 개방적인 개발자 커뮤니티가 경쟁하기 위해 고군분투할 것입니다.
제 생각에는 이 "바자" 개발 모델이 이더리움의 슈퍼파워입니다. 철저한 개방성은 광범위한 커뮤니티 참여와 수용을 가져옵니다. 이것은 근본적으로 커뮤니티 중심의 "네트워크 효과"에 의존하는 이더리움과 같은 기술에 매우 중요합니다. 이 수준의 참여만으로도 이더리움은 다른 플랫폼과 차별화됩니다.
Vitalki는 최근 트위터에 다음과 같이 말했습니다. 필요가 발생할 때 누군가 이를 해결하기 위해 얼마나 자주 나서는지는 놀랍습니다[5]. 2017년 말, 저스틴 드레이크가 이더리움 2.0 프로젝트 연구 무대에 등장하여 한때 조용했던 이더리움 2.0에 대한 연구를 활성화시켰습니다. ; 2019년 초, Diederik Loerakker가 나타나 이더리움 2.0 클라이언트 테스트 스위트를 구축하는 데 중요한 역할을 했습니다.
수십 가지 관련 사례를 더 인용할 수 있지만 위의 사례는 사람들이 이더리움을 시장으로 사랑한다는 것을 보여줍니다.

바자회에 개발 로드맵이 있습니까? 출처: 마이크로소프트
저는 때때로 이더리움에 관심이 있는 기업들로부터 흥미로운 질문을 받습니다. 이더리움의 로드맵은 어디에 있습니까?
텍스트
공정하게 말하면, 우리가 어디로 가고 있고 어떻게 거기에 도달할 수 있는지에 대해 많은 공통된 이해가 있지만, 공개되고 상세하며 확고하고 "공식적으로 승인된" 이더리움은 없습니다.Fang 개발 로드맵.
시장 개발을 위한 "적절한" 로드맵은 없습니다. Linux Weekly News의 오래된 기사에서도 이 문제를 다루고 있습니다[6]. 그들의 결론은 다음과 같습니다.
0단계는 전체 이더리움 네트워크를 보호하는 데 사용되는 PoW 프로토콜의 대안인 PoS(Proof of Stake) 프로토콜을 구현하는 비콘 체인 단계입니다.
1단계는 조각난 체인 형태로 이더리움 네트워크에 대규모 확장성을 제공하여 전체 네트워크의 트랜잭션 처리 용량을 1,000배 이상 증가시킵니다.
2단계는 사용자 계정 및 스마트 계약 기능을 지원하는 실행 계층을 구현하고 Ethereum의 분산된 미래에 필요한 일련의 분산 응용 프로그램을 지원합니다.
보조 제목
0단계: 비콘 체인
1년 간의 집중적인 개발 끝에 Ethereum 2.0 비콘 체인 사양이 6월 30일에 동결되었고 관련 연구 및 설계가 완료되었으며 완전히 전달 단계에 들어갔습니다.비콘 체인은 이더리움 2.0의 기반으로 PoS 프로토콜을 관리하고 모든 독립 및 병렬 샤드 체인을 조정하는 역할을 하며 전체 시스템 개발에서 가장 복잡한 부분입니다. 비콘 체인에 대해 잘 모르신다면 Unitimes가 최근 이더리움 2.0 개발자 Hsiao-Wei Wang을 초대한 비콘 체인에 대한 AMA 온라인 Q&A 기사를 참조하십시오.Ethereum 코어 개발자 Hsiao-Wei와의 대화:》
이더리움 2.0 비콘 체인 | Unitimes AMA
이더리움 2.0의 향후 발전 방향으로 지난 7월 베를린에서 열린 워크숍에서 비콘체인이 구상되었다[7]. 거의 빈 종이에서 시작하여 이더리움의 초기 시절로 거슬러 올라가는 아이디어를 엮어 비콘 체인 사양은 통찰력, 토론, 감사 및 테스트의 반복적인 프로세스를 통해 개발되었습니다.
동시에 배경과 지역이 다른 9개 팀이 서로 다른 프로그래밍 언어로 사양을 구현하고 모든 것이 작동하도록 사양에 인프라를 추가했습니다(네트워크 연결, 데이터베이스 및 관련 도구 등 포함). , 하지만 완전히 작동하는 차량을 얻으려면 다른 많은 것을 추가해야 합니다.)
일부 팀은 Prysmatic Lab에서 공개한 Sapphire 테스트넷과 같이 사람들이 이더리움 2.0에서 검증인이 되는 것을 경험할 수 있는 퍼블릭 비콘체인 테스트넷을 공개했습니다. ! "[8]
비콘체인 사양은 빠르게 변화하고 클라이언트 구현 팀은 사양을 계속 따랐습니다.최근 비콘체인 사양의 동결은 중요한 이정표이며 동결은 두 가지 좋은 효과가 있습니다.
비콘 체인 사양 동결의 두 번째 효과는 모든 클라이언트가 동일한 목표를 따라잡고 다음 중요한 단계인 상호 운용성을 시작할 수 있게 한다는 것입니다. Ethereum 2.0 비콘 체인 클라이언트는 현재 Ethereum 노드(예: Geth, Parity 및 Pantheon 클라이언트)와 유사하며, 이러한 노드는 전체 네트워크를 실행하고 서로 통신하며 결정적으로 항상 합의에 도달해야 합니다. 불일치(예: 버그 등으로 인한)는 네트워크 분할로 이어집니다[11].

이미지 설명
브루클린에서 이더리움 2.0 클라이언트를 위한 "상호 운용성으로 가는 길" 워크숍
상호 운용성을 달성하는 것은 프로세스입니다.
첫째, 모든 클라이언트는 공통 참조 테스트를 통과해야 합니다. 비콘 체인 사양의 매우 흥미로운 기능은 이미 실행 가능하다는 것입니다. 클라이언트 테스트는 사양을 실행하여 직접 수행할 수 있습니다. 일부는 Python으로 작성된 현재 사양보다 내러티브 스타일을 선호할 수 있지만 그럼에도 불구하고 현재 사양은 매우 유용한 도구입니다.
또 다른 유형의 테스트는 과거에 이더리움 1.0 클라이언트의 문제를 성공적으로 추적한 "퍼즈 테스트"로, 클라이언트에 무작위 불량 데이터를 반복적으로 공급하여 클라이언트 충돌을 유발할 수 있는 조건을 찾습니다. 이를 위한 퍼징 도구는 현재 Beacon Chain용으로 개발되고 있습니다.
각 Ethereum 2.0 클라이언트 팀이 클라이언트 구현이 작동한다고 확신하면 다음 단계는 해당 클라이언트가 동일한 네트워크에서 통신하도록 하는 것입니다.
분산 시스템에 문제가 있을 때 진단하기 어렵다는 것을 알고 있습니다. 따라서 첫 번째 단계로 각 클라이언트는 전체 네트워크 스택을 구현하기 전에 디버깅 및 분석이 더 쉬운 단순화된 프로토콜 Hobbits[12]를 구현하고 있습니다.
관련 계획은 올 9월 캐나다 온타리오의 원격 위치에서 모든 클라이언트 팀이 함께 모이는 것입니다. 모든 클라이언트 구현이 제대로 상호 운용될 때까지 아무도 떠나지 않을 것입니다.
상호 운용성의 실현은 올해 후반에 출시되는 공통 장기 공개 테스트넷을 위한 길을 열 것입니다.
테스트 네트워크에 참여하려는 모든 사용자는 자신의 선택에 따라 Ethereum 2.0 클라이언트를 설치하고 공개 테스트 네트워크에서 테스트를 위해 ETH 토큰을 스테이크하고 테스트 네트워크에 참여할 수 있습니다. 또는 해당 테스트넷의 버그를 찾으십시오. 버그와 결함을 발견한 모든 사람에게 보너스가 수여될 수 있습니다.
비콘 체인을 시작하기 전 마지막 단계는 유효성 검사기 예금 계약을 현재 이더리움 1.0 체인에 배포하는 것입니다. 스테이킹 계약에서 검증자가 되고자 하는 모든 사용자는 32 ETH를 스테이킹할 수 있습니다. 올해 10월 초 데브콘 V 컨퍼런스에서 스테이킹 컨트랙트를 배포할 예정이다. 모기지 계약에서 약정한 ETH의 수가 약 200만 개, 즉 검증인의 수가 약 65,000개에 도달하면 안심하고 비콘 체인을 시작할 수 있으며 공격에 견딜 수 있을 만큼 안전하다고 믿을 수 있습니다.
보조 제목
1단계: 샤드 체인
Ethereum 2.0의 제공 계획은 여러 단계로 나누어져 있지만 각 단계의 작업은 병렬로 진행되고 있습니다.
1단계 프로토콜은 비컨체인 단계보다 훨씬 간단하고, 명세에 포함된 코드의 총 줄 수는 비컨체인 명세의 절반 정도에 불과하며, 1단계 명세는 이미 대부분 완료되었다.

이미지 설명
1단계의 주요 과제는 이더리움 2.0 P2P 네트워크의 설계에서 검증자가 이러한 1024개의 샤드 체인에 할당될 때 올바른 검증자와 신속하게 올바른 정보를 주고받을 수 있어야 한다는 것입니다. 이에 대한 작업은 클라이언트 상호 운용성과 병행하여 이미 진행 중입니다[13].
보조 제목
2단계: 실행 계층
최근 가장 흥미로운 점은 이더리움 2.0의 최종 단계(실행 계층 단계)를 제공하기 위한 명확한 방법이 있다는 것입니다.
설계 공간이 방대하고 제약이 없을 때는 시작 방법을 알기 어려운 경우가 많습니다. Ethereum 2.0의 실행 계층도 마찬가지입니다. 몇 주 전까지만 해도 아무도 어디서부터 시작해야 할지 확신하지 못했습니다. 이더리움 2.0에서 어떤 종류의 프로그램을 실행할 수 있을까요? 사용자의 계정은 어떻게 생겼습니까? 샤드는 어떻게 통신합니까? 아이디어는 부족하지 않으며 가능성은 무한합니다. 그러나 앞으로 나아갈 명확한 길은 찾기 어려웠습니다.
이 문제를 해결한 사람은 케이시 데트리오(Casey Detrio)입니다. 그는 토론토에서 열린 "스케일 이더리움(Scale Ethereum)" 컨퍼런스에서 아주 짧은 역사적 요약을 했습니다[14]. 그는 또한 매우 효과적인 것으로 입증된 제안된 방법을 발표했습니다[15]. Casey의 제안은 Vitalik에 의해 받아들여지고 더욱 발전되었으며, 다른 사람들은 제안의 프로토타이핑 및 추가 정의에 열정적으로 참여했습니다.
현재 이더리움 블록체인에는 EVM(Ethereum Virtual Machine)이라는 하나의 실행 환경만 있습니다. EVM은 이더리움 프로토콜에 기록되며, 각 스마트 계약은 EVM에 의해서만 실행되어야 하며, 실행은 특정 방식으로 청구되며(트랜잭션 가스), 재생 공격을 방지하기 위한 특정 암호화 서명 및 솔루션(회신 보호)만 허용됩니다.
EVM은 매우 강력하지만 이 모든 것에는 한계가 있습니다: 일부 ERC20 토큰을 보내려고 해도 계정에 자금을 조달하기 위해 ETH를 사용해야 합니다. 필요합니다.
요컨대, 이더리움 2.0 제안은 이 모든 것을 "추상화"하는 것입니다. 이더리움 2.0 자체는 이러한 메커니즘의 사용을 의무화하지 않고 대신 자체 규칙에 따라 작동하고 자체 목적에 맞게 최적화할 수 있는 다양한 실행 환경(EE)을 제공할 것입니다.
예를 들어, eWASM에서 컴파일된 스마트 컨트랙트에 대한 일반적인 실행 환경 외에도 익명의 토큰 트랜잭션을 위한 다른 실행 환경이 있거나 새로운 스마트 컨트랙트 언어(예: Haskell)에 대한 실행 환경 또는 일부 최적화된 실행 환경이 있을 수 있습니다. 대용량 플라즈마 체인을 처리하기 위한 실행 환경 또는 기업 사용자를 위한 허가 및 개인 정보 보호 기능이 있는 일부 특수 실행 환경. Facebook이 최근 발표한 Libra 프로젝트의 Move 가상 머신을 구현하는 실행 환경도 있을 수 있습니다.
향후 기사를 위해 세부 사항을 남겨두겠습니다. 이 영역은 아직 급속도로 발전하고 있으며 이 기사는 충분히 깁니다. 그러나 이 새로운 2단계 모델의 큰 의미에 대해서도 언급하겠습니다.
발문
발문

이미지 설명
분주한 시장. 출처: 디에고 델소
현재 진행 상황에서 저는 이더리움 2.0의 미래에 대해 그 어느 때보다 낙관적입니다. 과장하고 싶지는 않지만 최종 전달 단계인 2단계가 원래 예상보다 조금 빠른 2020년에 실행될지 궁금해지기 시작했습니다. 하지만 이것에 대해서는 제 말을 인용하지 않는 것이 좋습니다.
그 전에는 아직 해야 할 일이 많지만 경로는 그 어느 때보다 명확하고 참여는 강력하고 성장하고 있습니다.
Ethereum Bazaar의 에너지는 어마어마합니다. 이곳은 신나는 곳이며 재능 있고 의욕적인 많은 사람들을 유치함으로써 최종 결과가 탁월할 것이라고 확신합니다.
Ethereum Marketplace는 모든 사람에게 열려 있습니다. 참여해 보시지 않겠습니까? [16]
면책 조항: 이 기사에 표현된 의견은 저자의 의견을 나타내며 투자 조언이나 조언을 구성하지 않습니다.
[1]:http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/index.html?source=post_page
[2]:https://en.wikipedia.org/wiki/Usage_share_of_operating_systems?source=post_page
[3]:https://blog.ethereum.org/2019/05/21/ethereum-foundation-spring-2019-update/?source=post_page
[4]:https://github.com/ethereum/eth2.0-specs?source=post_page
[5]:https://twitter.com/VitalikButerin/status/1146629103648305154?source=post_page
[6]:https://lwn.net/Articles/114804/?source=post_page
[7]:https://media.consensys.net/state-of-ethereum-protocol-1-d3211dd0f6?source=post_page
[8]:https://www.unitimes.pro/articles/share/7746cf7673c54c02b20e597279b95353?lang=1
[9]:https://runtimeverification.com/k/?source=post_page
[10]:https://runtimeverification.com/blog/formal-verification-of-ethereum-2-0-deposit-contract-part-1/?source=post_page
[11]:https://www.ccn.com/ethereums-blockchain-accidentally-splits/?source=post_page
[12]:https://github.com/deltap2p/hobbits?source=post_page
[13]:https://github.com/ethereum/eth2.0-specs/pull/1281?source=post_page
[14]:https://www.youtube.com/watch?v=RW7K3JQOZOg&t=6324&source=post_page
[15]:https://ethresear.ch/t/phase-one-and-done-eth2-as-a-data-availability-engine/5269?source=post_page
[16]:https://github.com/PegaSysEng/artemis/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22help%20wanted%20%F0%9F%86%98%22&source=post_page


