아하
검색 이미지
생활꿀팁 이미지
생활꿀팁생활
생활꿀팁 이미지
생활꿀팁생활
훌륭한개50
훌륭한개5020.02.06

블록이 생성되지 않으면 어떤 문제가 생기나요?

블록체인은 기본적으로 정보를 암호화하고 이를 블록화해서 체인으로 연결하는 것으로 알고 있습니다.

그런데 만약 블록이 생성되지 않을 수도 있지 않을까요? 만약 이렇게 된다면 어떻게 될지 궁금합니다.

55글자 더 채워주세요.
답변의 개수
2개의 답변이 있어요!
  • 안녕하세요. 답변 드립니다.

    블록은 유효한 거래 정보의 묶음이라고들 합니다.

    “A가 B에게 100원을 송금한다.”와 같은 것이 하나의 거래이며, 하나의 블록에는 여러 개의 거래가 포함된다. 블록에 대해 더 구체적으로 이해하려면 실제 구현체를 살펴보는 것이 효율적이다. 그래서 블록 체인의 최초 구현체인 비트코인을 기준으로 블록과 블록 체인에 대해 살펴볼 것이다. 구현체마다 세부적인 방식은 다를 수도 있지만 큰 줄기는 거의 같습니다.

    비트코인의 블록 하나에는 평균 약 1,800개의 거래 정보가 포함될 수 있으며, 블록 하나의 물리적인 크기는 평균 0.98Mbyte 입니다.

    블록 헤더는 version, previousblockhash, merklehash, time, bits, nonce 이렇게 6개의 정보로 구성된다.

    블록의 식별자 역할을 하는 블록 해쉬는 6가지의 블록 헤더 정보를 입력값으로 하고, 여기에 SHA256 해쉬 함수를 적용해서 계산되는 값으로, 32바이트의 숫자값이다. 이름은 블록 해쉬이지만 그 값은 블록 전체를 해쉬한 값이 아니라, 블록 헤더를 해쉬한 값입니다.

    개별 거래 정보는 결국 머클 트리의 해쉬값인 merklehash 값으로 집약된다. 블록 헤더의 6가지 정보 중에서 version, previousblockhash, merklehash, time, bits 이렇게 5가지는 블록 해쉬를 만드는 시점에서 이미 확정되어 변하지 않는 값이다. 하지만 마지막 nonce는 확정되어 있지 않고 새로 구해야 하는 값이다. nonce 값을 구해서 최종적으로 블록 해쉬 값을 구하고, 이 블록 해쉬값을 식별자로 가지는 유효한 블록을 만들어내는 것이 바로 작업 증명(Proof of Work), 흔히 말하는 채굴이다.

    이렇게 nonce 값을 구하는 채굴 작업에는 엄청나게 많은 횟수의 해쉬 계산이 필요하며 그런 계산을 수행하는 채굴기와 그 채굴기를 돌릴 수 있는 막대한 양의 전기라는 비용이 든다. 그래서 이런 비용에 대한 보상이 없다면 아무도 채굴을 하지 않을 것이다.

    비트코인에서의 보상은 새로 발행되는 비트코인과 해당 블록에 포함되는 거래의 거래 수수료의 합이다. 비트코인의 새로운 발행은, 채굴자가 블록을 처음 구성할 때 채굴자의 지갑으로 일정량의 비트코인이 입금되는 거래를 그 블록의 첫 거래(generation transaction)로 추가하는 방식으로 이루어진다.


  • 안녕하세요 Danny입니다.

    블록의 생성여부는 블록체인 시스템 및 합의 알고리즘에 따라 상이합니다.

    그리고 블록이 생성되고 기존 네트워크와 연결(승인)되는 과정 역시 모두 다릅니다.

    기본적으로 블록이 생성되는 과정에서 실패하는 경우는 거의 찾아보기 힘들고,

    생성된 블록이 합의알고리즘의 조건에 맞아서 네트워크와 연결되는 과정에서 실패하는 경우는 많이 있습니다.

    즉, 실제적으로 블록생성이 실패하는 경우는 거의 없다고 보실 수 있으며

    생성된 블록이 합의 알고리즘의 조건에 맞지 않아서 네트워크와 연결이 되지 않는 경우들은 많이 발생할 수 있습니다.

    감사합니다.