페이지를 읽고 있을 때 확정적 최종성이 뜻하는 것
“확인은 몇 번이나 기다려야 하나요”에 대한 짧은 답은 기다릴 필요 없음입니다. 이 질문은 이 체인에 해당하지 않으며, 그 답을 보여 줄 계수기는 이 사이트의 모든 페이지에서 의도적으로 빠져 있습니다.
확률적 최종성과 확정적 최종성
작업 증명이나 최장 체인 방식의 지분 증명 네트워크에서 블록은 아마도 영구적일 뿐입니다. 경쟁 체인이 더 길게 자랄 수 있으므로, 지금 보고 있는 블록이 재구성으로 사라질 수 있습니다. 위에 블록이 쌓일수록 확신이 커지는데, 확인 수가 재는 것이 바로 그것입니다. 상태가 아니라, 끝내 1에 닿지 않는 확률이죠. 거래소가 기다리게 하는 이유입니다.
Arc는 BFT 계열 합의인 Malachite를 씁니다. 제안자가 블록을 제안하고 검증자들이 투표하며, 투표권의 3분의 2가 넘게 precommit하면 그 블록은 커밋됩니다. 커밋되었다는 것은 최종이라는 뜻이지 “높은 확률로 최종”이 아닙니다. 밀릴 경쟁 체인 자체가 없습니다. 충돌하는 블록이 나오려면 검증자 집합의 3분의 1이 넘는 쪽이 서로 모순되는 두 가지에 서명해야 하는데, 그것은 하드웨어로 이길 수 있는 경주가 아니라 탐지 가능하고 책임을 물을 수 있는 프로토콜 위반입니다.
실제로 최종성은 1초 안에, 블록이 눈에 보이는 바로 그 순간에 도달합니다.
이것이 이 사이트에서 바꾸는 것
- 확인 수 계수기가 없습니다. 트랜잭션은 성공 또는 실패를, 그 블록은 확정됨을 표시합니다. 늘어나는 숫자는 없습니다. 늘어나는 숫자는 여러분이 향해 가고 있는 안전 임계값이 있다는 뜻이 되는데, 그런 것은 없기 때문입니다.
- 재구성도, 고아 블록도, 분기된 블록도 없습니다. 엉클 목록도 “분기 블록” 페이지도 없습니다. 그런 산물 자체가 만들어질 수 없기 때문입니다.
- 높이를 키로 하는 모든 페이지는 영구적입니다. 블록 페이지나 트랜잭션 페이지는 한번 렌더링되면 결코 바뀌지 않으므로, Arcscan은 재검증하는 대신 영구히 캐시합니다. 이 사이트가 빠른 이유가 그것입니다 — 최적화라기보다 체인의 성질입니다.
- 여기서 읽은 것은 되돌릴 수 없습니다. 이 사이트에 보이는 전송은 영구히 일어난 일입니다. 우리도, 검증자도, 발행사도 그것을 되돌릴 수 없습니다.
정직한 단서
체인의 최종성과 체인에 대한 우리의 시야는 같지 않습니다. Arcscan은 노드에서 읽고, 노드는 뒤처질 수 있으며, 일부 페이지는 더 뒤처질 수 있는 인덱스에서 만들어집니다. 그래서 최근 트랜잭션이 Arc에서는 이미 최종인데 여기서는 잠깐 보이지 않을 수 있습니다.
그래서 이 익스플로러는 가능한 모든 곳에서 둘을 구분합니다. 인덱스에서 제공되는 페이지는 그 사실과 커버리지를 밝히고, 네트워크 상태 페이지는 우리의 헤드 높이와 그 경과 시간, 인덱스가 얼마나 뒤처졌는지를 공개합니다. “아직 찾지 못했습니다. 우리 노드는 블록 N에 있습니다”는 정직한 답이고, “대기 중”은 그렇지 않습니다.
Arcscan이 멈추는 경우가 하나 있습니다. Arc는 재구성될 수 없으므로, 받은 블록 헤더가 바로 앞 블록과 이어지지 않는다면 그것은 단지 늦은 것이 아니라 심각하게 잘못된 것입니다. 그 상태는 집계되어 상태 페이지에 공개되며, 거짓일 수 있는 체인 이력을 계속 제공하게 두는 대신 이 서비스를 로테이션에서 뺍니다.