메인넷과 마찬가지로 Kill은 별도의 PoW와 PoS 체인으로 출시되었다.그것은 The Merge를 통과했고 지금은 PoS에 의해 완전히 운영된다.
실제 킬로마가 메인넷 합병을 위해 현재의 스펙을 따랐을까?내 말은, 그것이 메인넷 합병을 통해 일어날 일과 같았는가? 즉, 벨라트릭스 포크의 스펙을 따르는가?
응. 킬이 생방송된 후에 스펙을 약간 수정하긴 했지만 역호환성이었어.네트워크에 대한 현재 사양은여기에서 찾을 수 있다.
우리는 지금 큰 스펙의 변화를 기대하지 않으며, Killa에서 툴링/인프라/애플리케이션 개발자 테스트를 통해 자사의 제품이 Merge 이후 Etherum 컨텍스트에서 예상대로 작동하는지 확인할 것을 강력히 권고한다.
가마 테스트넷 비콘 체인은 주계약과 스마트계약이 있는 것 같다.이것은http://ethereum.org이 비콘 체인에 대해 제안하는 것과 반대된다.이것은 단순히 내가 블록 탐험가들에 의해 혼란스러워서일까?
Merge 이후, Beacon 블록은 현재 PoW 블록이 포함하는 트랜잭션 페이로드(payload)를 포함한다.우리는 이것을 "The"라고 부른다.ExecutionPayload명세서어떻게 생겼는지 보여주는 다이어그램:
위의 PoW와 비콘 체인의 처음 두 블록은 프리머지(pre-merge)이며, 마지막 두 블록은 The Merge(The Merge) 이후다.마지막 PoW 블록이 생성되면 후속 Beacon Chain 블록에는 트랜잭션 데이터가 포함된다.이것에 대해 여기에 더 길게 게시하십시오.
높은 수준에서, 블록 처리 흐름은 어떤 모습일까, 포스트 머지?
블록을 제안하기 위해 검증자가 선택됨
이 검증자는엔진 API를 통해 실행 계층(EL)에게 전송을 요청한다.ExecutionPayload
EL은 가장 수익성이 높은 유효 트랜잭션 집합을 포함하는 페이로드(payload)를 합의 계층(CL)에 반환한다.
CL은 이 페이로드(payload)를 포함하는 블록을 제안하고 Beacon Chain p2p 네트워크에 전파한다.
주의:
개별 거래는 여전히 EL p2p 네트워크에서 험담하고 있으며 EL은 전적으로 거래 풀의 유지관리를 담당하고 있다.전체 블록은 CL p2p 네트워크에 전파된다.
검증자는 수수료를 받고자 하는 실행 계층의 주소를 지정한다.거래 수수료는 검증자 지분과 보상처럼 비콘 체인에서 결코 "잠금"되지 않는다.
TL;DR: 섀도 포크는 소수의 노드로 라이브 네트워크를 포킹하여 만든 새로운 디브넷이다.섀도 포크는 동일한 상태와 기록을 유지하므로 메인 네트워크에서 트랜잭션을 재생할 수 있다.
더 긴 버전:섀도 포크란 특정 지점에서 이더리움 네트워크에서 포크를 떼도록 소수의 노드를 구성하는 것을 말한다.The Merge의 맥락에서, 우리는 전체 네트워크보다 더 이른 시점에 Merge를 통해 실행되도록 설정된 노드를 실행함으로써 이 작업을 수행한다.이를 통해 섀도-포크 네트워크와 유사한 조건에서 업그레이드가 어떻게 이루어졌는지를 테스트할 수 있지만, 대부분의 노드가 이러한 일이 발생했음을 인식하지 못하고 있다.섀도 포크 이후, 메인 체인에서 유효한 트랜잭션을 포크 체인에서도 재생할 수 있어, 원래의 네트워크의 처리량을 시뮬레이션 할 수 있다.@parithosh_j는 더 자세한 내용을 담은 좋은 트윗 스레드를 가지고 있다.
아래 다이어그램은 연결된 스레드에서 섀도 포크 이후의 네트워크 모양을 보여준다.
괴를리 블록의 rop 행은 섀도 포크를 인식하지 못하는 정식 체인의 노드를 보여준다.
고엘리 블록의 가운데 줄에는 그림자 포크 체인의 노드가 표시되는데, 이 노드는 TTD(Total Terminal Iconcidence)가 맞으면 포크(Fork)라고 하는 구성이 변형되어 있다.
아래쪽 행은 그림자 포크의 목적으로만 발사된 비콘 체인을 보여준다. 비콘 체인은 TTD가 맞을 때 체인에 대한 합의를 제공한다.
TTD가 적중된 후에도 표준 체인의 노드는 정상적으로 블록을 계속 생산한다. 즉, "그들을 위해" 아무 일도 일어나지 않았다.
TTD가 적중되면 수정된 구성이 있는 노드가 Fork off되어 The Merge를 통해 실행된다.첫 번째 Merge 이후 블록은 비콘 체인의 다음 검증자에 의해 생산된다.이 블록은 표준 체인에서 볼 수 있는 어떤 거래도 포함할 수 있지만, 포함된 정확한 거래나 그 순서가 반드시 표준 체인에서와 같은 것은 아니다.
섀도 포크는 왜 유용한가?
섀도 포크는 소수의 노드만을 사용하여 표준 체인을 중단하지 않고 Merge가 발생할 때 노드가 어떻게 반응하는지 볼 수 있도록 해준다.섀도 포크는 우리에게 새로운 테스트넷을 출시하는 것보다 테스트할 수 있는 더 현실적인 환경을 제공한다. 기존 테스트넷은 이미 그것들에 대해 유기적으로 발생하는 트랜잭션을 가지고 있고, 새로운 테스트넷보다 노드를 더 많은 스트레스를 주는 큰 상태 크기 및 블록 히스토리를 가지고 있기 때문이다.따라서 표준 네트워크 운영에 잠재적으로 영향을 주지 않고 노드에서 "실제" 성능 지표를 얻을 수 있다.
섀도우 포크 메인넷을 줄 수 있어?
그래, 그리고 이제 우리가 해냈어!섀도 포킹 메인넷은 노드의 상태와 내역이 크고 트랜잭션이 가장 복잡할 때 가능한 가장 가혹한 조건에서 노드가 어떻게 반응하는지 보여주기 때문에 매우 유용하다.메인넷 섀도포크 이후, 포키드 네트워크에 가입하려고 할 때 노드가 얼마나 안정적인지, 얼마나 잘 동기화되는지 등을 테스트할 수도 있다.이는 우리에게 전환 자체뿐만 아니라, 새로운 노드가 Merge 이후 상태에서 네트워크에 가입할 때 어떻게 동작하는지에 대한 데이터도 제공한다.
The Process™에서 Shadow Forks는 몇 단계인가?
섀도 포크는 구현이 예상대로 작동한다는 자신감을 높이는 데 도움이 된다.일단 그들이 모든 구현에 걸쳐 순조롭게 진행되면, 우리는 The Merge를 통해 기존의 테스트넷을 자신 있게 실행할 수 있다.섀도 포크의 노드는 소규모 운영자 집합에 의해 제어된다는 점에 주목할 필요가 있다: 일부 공용 테스트넷은 훨씬 더 광범위한 검증자 집합을 가지고 있다.일단 테스트넷이 업그레이드되고 안정되면, 우리는 메인넷에서 Merge가 일어날 수 있도록 계획할 수 있다.
타임라인 병합
'합병'은 언제 일어날까?
Merge의 공식 날짜는 아직 없다.날짜는 고객 팀이 소프트웨어 구현이 철저히 테스트되었고 버그가 없다고 확신할 때에만 설정될 것이다.모든 날짜 발표는 blog.ethereum.org을 통해 전달될 것이다.
합병 전에 무슨 일이 일어나야 하는가?
2022년 4월 현재, 모든 고객 팀은 테스트 스위트, 새로운 테스트넷의 출시, 섀도 포크를 통해 테스트를 거친 The Merge에 대해 진행 중인 구현을 가지고 있다.
기존 테스트넷과 이더리움 메인넷을 모두 대상으로 실행되는 섀도우 포크는 클라이언트에서 구현 문제를 드러냈다.각 팀은 현재 이러한 문제를 해결하고 정기적으로 섀도 포크를 다시 실행하여 수정 사항을 테스트하고 있다.
일단 클라이언트가 섀도 포크 동안 문제 없이 작업하면 기존 이더리움 테스트넷(Ropsten, Goerli 등)이 더 메지어를 통해 실행된다.이 시점에서 blog.ethereum.org에서 발표가 있을 것이다.
일단 테스트넷이 성공적으로 업그레이드되고 안정된 상태를유지하면, Ethereum 메인넷에서 업그레이드가 이루어질 시간이 설정될 것이다.
이전의 이더리움 업그레이드와는 달리, Merge는 블록 타임에 의해 트리거되지 않을 것이다.대신 총 난이도에 의해 촉발될 것이다.이러한 것들이 블록 타임보다 추정하기 어렵다는 점을 감안할 때, 더 병합이 네트워크에서 라이브로 진행되는 시간 선택과 시간 사이의 지연은 이전의 이더리움 업그레이드보다 약간 더 짧을 수 있다.
난이도 폭탄은 5월경 이더리움 네트워크에서 눈에 띄기 시작해 6월~7월 블록타임에 눈에 띄게 기여하기 시작해 8월까지 블록을 견딜 수 없을 정도로 느리게(15~20초 읽기) 할 것으로 예상된다.그것의 진척은 여기서 추적되고 있다.
클라이언트 개발자들이 블록타임이 너무 느려지기 전에 메인넷에 더메르지를 배치할 수 없다고 생각한다면, 그것은 다시 지연될 필요가 있을 것이다.폭탄을 지연시킬 수 있는 두 가지 방법이 있다.
Merge&Bomb delay:만약 우리가 폭탄을 몇 주만 늦출 필요가 있다면, 우리는 The Merge에 대한 고객 출시와 폭탄 지연을 결합할 수 있다.이 방법이 효과가 있는 방법은 이 방출이 특정 블록에서 폭탄을 지연시켜 13초 블록을 복구한 다음 그 후에 더 병합이 활성화되는 것이다.병합은 클라이언트 출시와 상당히 가까운 곳에서 이루어져야 하기 때문에, 이 시나리오는 우리가 폭탄을 몇 주 늦추고 싶을 때에만 도움이 된다.
별도 폭탄 지연:블록 시간이 견딜 수 없을 정도로 느려지기 전에 이더리움 메인넷의 'Merge on the Etherom'을 활성화할 것으로 예상하지 않는다면, 'Merge' 전에 난이도 폭탄만 지연시키는 별도의 네트워크 업그레이드가 이루어져야 할 것이다.난이도 폭탄이 지연되는 시간은 합병의 발생 시기와 무관하다는 점에 유의하십시오.예를 들어, 만약 우리가 폭탄을 6개월 늦춘다면, 우리는 그 전에 합병할 수 있다.마찬가지로, 만약 우리가 폭탄을 3개월 지연시켰다가 다시 터지기 직전에 중대한 문제를 발견한다면, 또 다른 폭탄 지연이 고려될 것이다.
어떻게 하면 합병을 더 빨리 할 수 있을까?
인프라 제공자, 검증자 또는 취미 활동가로서 노드를 실행하는 경우,Killa에서 현재 설정을 테스트하여 예상대로 작동하는지 확인하십시오.많은 환경에서 소프트웨어를 사용해 보는 것은 우리가 그 과정에서 일찍 버그를 잡을 수 있는 최선의 방법이다.
인출
어떻게 철수를 숨길 수 있을까?나는 몇 가지 스펙이 떠다니는 것을 보았지만, 그것에 대한 분명한 공감대가 있는 것은 아무것도 보이지 않는다.예금계약서를 보면 말 그대로 예금()이라는 한 가지 쓰기 방법이 있다.철수를 위한 논리가 전혀 없다.
eth1 인출 키를 지정하면 해당 키의 주소로만 인출할 수 있는가?아니면 단순히 인출 거래에 서명하기 위해 사용하는 것인가, 그리고 당신이 어떤 특정한 주소로 인출할 수 있는 윤리?
신호 체인에서 ETH를 인출하려면, ETH1 주소를 "대상" 수신자로 지정해야한다.당신은 실행 계층의 관점에서 출금이 자동으로 이루어지기 때문에 이 계정으로부터 어떤 것도 서명할 필요가 없을 것이다.출금이 발생하면 대상 계정이 갑자기 출금이 포함된 블록 후 상태의 계좌 잔액에 ETH가 추가되는 것처럼 보이게 된다.
BLS 키를 사용하여 철수한다고 가정해 봅시다.나는 합의 계층이 상태나 계정을 갖지 않을 것이라고 이해한다.따라서 철회된 에트를 보낼 실행 계층 주소를 지정하시겠습니까?아니면 합의 계층이 실제로 상태를 가질 것인가?
인출할 실행 계층 주소와 Gwei에서 인출할 금액을 지정하면사양을 참조하십시오.확실히 하자면 BLS 인출 키로는 인출할 수없다.우리는 합병 이후 갈림길에 서 있는 컨센서스 계층에 대한 당신의 자격 증명을 변경하는 수술을 받을 것이다.
샤딩
샤딩이 앞으로 어떤 모습을 보일지 공감대가 형성돼 있는가.사형집행은 롤업 중심의 미래를 위해 완전히 포기된 것처럼 보인다.
실행 샤딩은 롤업 중심의 실행 확장에 대해 "사용되지 않음"으로 간주되어 왔다.데이터 샤딩은 현재 연구되고 구현되고 있는 주요 접근방식이다.
합병 후 롤업이 실제로 어떻게 작동하는가?여전히 ETH1 / 실행 계층의 맨 위에 앉아 있는가?아니면 직접 합의층 꼭대기에 앉을 것인가.
그들은 현재와 같이 계속 일하고, 실행 계층에 배치되지만, 합의 계층의 최종성을 활용할 수 있다.
데이터 샤딩은 현재 어디에 있는가?실제로 데이터 샤딩이란 무엇인가?롤업이 인기를 끌면서 데이터 가용성 문제를 해결하는 방법뿐인가?
현재의 계획은 우선 EIP-4844에 명시된 새로운 거래 유형을 통해 노출되도록 하는 것이다. EIP-4844에는 FAQ가 있는 전체 웹사이트가 있다:https://www.eip4844.com/
이것은 또한 별도의 p2p 계층에 샤딩의 완전한 구현을 위한 토대를 마련할 것이다.현재제안된 완전 샤딩 모델은 여기에 설명되어 있다.