블록을 연결하는 체인이 빠질수도 있나요?

채굴자들이 채굴을 해서 보상으로 블록을 받고 그 블록들이 사슬처럼 연결되어 블록체인이라고 부르는 것으로 알고 있습니다. 그런데 블록이 안캐지거나 블록을 연결하는 체인이 빠질수도 있는건가요?

    1개의 답변이 있어요!

    • 질문자께서 해 주신 질문을 중심으로 답변을 드리도록 하겠습니다.

      • 블록이 안캐지거나 블록을 연결하는 체인이 빠질수도 있는건가요?

        1. 결과적으로 블록은 계속 생성되고 체인으로 이어져 나가게 되겠지만, 질문자께서 말씀하신 것처럼 특수한 경우 일시적으로 블록의 생성이 중단되어 채굴이 중지되기도 합니다.

        2. 그 예로 이번 달 초에 비트코인SV 블록체인에서 거대 블록의 생성으로 인한 리오그가 발생하여 약 1시간 30분 동안 블록체인이 블록을 생성하며 이어지지 못하고 중지된 사건이 있었습니다. 해당 사건에 대해 설명해 드리도록 하겠습니다.

        3. 비트코인SV의 경우 최대 블록 크기는 128MB입니다. 블록체인에서는 수많은 트랜젝션이 발생하게 되고 그것이 마이닝 노드에 분배되어 처리되게 되겠죠. 예를 들어 마이닝이 진행되고 있는데 어느 순간에 한 마이닝 노드가 블록 사이즈가 600kb인 블록을 빠르게 생성하고 그것이 6번의 컨펌 시간이 지나 확정되어 블록에 완전히 기록되었다고 해 보겠습니다. 그리고 계속해서 다음 블록이 연결되고 역시 6번의 컨펌 시간이 지나서 계속해서 블록체인이 이어져 나가게 됩니다.

        4. 그런데 공교롭게도 해당 앞서 600kb인 블록이 생성될 때 128MB의 거대 블록이 생성되었다면 어떻게 될까요? 해당 블록의 크기가 크기 때문에 처리하는데 시간이 더 많이 걸리게 됩니다. 그런데 그 사이에도 아까 600kb인 블록은 6번 정도의 컨펌이 일어나 확정성을 갖게 되는 사이의 시간 동안 계속해서 다음 블록으로 이어지게 되고 이미 더 길이가 긴 블록체인을 만들었기 때문에 128MB 용량의 블록은 유효한 블록이 되지 못하고 '고아 블록'이 되어버리는 것입니다.

        5. 이렇게 어느 순간 고아 블록이 만들어지게 되면 이미 빠르게 처리되어 버린 블록과 고아 블록 중 어느 것이 유효한 것인지 판단하고 선택하여 블록을 확정 짓는 '블록 재구성(Block ReOrganization=reorg)' 작업이 필요하게 됩니다. 이 과정에서 블록체인의 트랜젝션 처리가 장시간 지연될 수도 있는 것입니다.

      답변이 도움이 되길 바랍니다.