블록의 크기에 비례해서 처리량이 많아진다고 하던데요. 이미 만들어진 코인의 블록도 변경이 가능한가요?
블록의 크기에 비례해서 처리량이 많아진다면 기존에 작은 용량을 키워서 더 좋은 코인이 될 수 있을꺼 같은데요. 블록 크기를 변경하는 것도 가능할까요?
안녕하세요. 블록의 사이즈를 변경하는 것은 간단한 일입니다. 비트코인의 경우에도 블록사이즈를 증가시키는 것은 코드 몇줄만 수정하면 되는 간단한 작업이긴 하지만 하드포크를 진행해야 하고 하드포크 진행 시 블록체인 규칙이 변경되므로 구버전과 호환이 불가하게 되므로 구버전에 대해서 신버전의 클라이언트로 모두 업데이트를 해줘야 합니다. 이러한 이유로 하드포크진행이 어렵고 또한 진행시킨다 하더라도 컨센서스 합의가 쉽지 않습니다.
그리고 작은 블록의 사이즈를 쉽게 늘리지 못하는 경우도 있는데 블록의 사이즈가 커지게 되면 보안적인 측면에서도 좋지 않을 수 있기 때문입니다. 블록 사이즈가 늘어나면 풀노드에도 필요한 용량이 증가하게 됩니다. 용량이 증가하면 라즈베리파이나 소형 PC와 같은 저렴한 인프라로 구축된 노드들은 더이상 유지가 어렵겠죠. 블록체인 네트워크에서는 노드가 많으면 많을수록 보안적인 측면이 강화되는데 블록의 사이즈 증가로 인해 저렴한 인프라로 구성된 일부 노드가 더이상 운영을 하지 못한다면 노드 감소 측면에 있어 보안에 좋지 않을 수 있습니다.
질문자께서 질문해주신 내용을 중심으로 답변을 드리도록 하겠습니다.
블록의 크기에 비례해서 처리량이 많아진다면 기존에 작은 용량을 키워서 더 좋은 코인이 될 수 있을꺼 같은데요. 블록 크기를 변경하는 것도 가능할까요?
비트코인SV는 현재 128MB인 블록 크기를더 키우기 위해 스케일링 테스트넷(STN)을 현재 메인넷에 대한 테스트넷과 별도로 운영중입니다.
BSV의 개발 로드맵에 따르면, 2019년 7월 24일에 계획된 Quasar 하드포크에서 블록의 크기를 확장시킴으로써 확장성을 키우는 방향으로 업그레이드가 진행될 것으로 보입니다. 즉, STN은 이를 위해 마련된 블록 크기 확장 테스트를 위한 테스트넷인 셈입니다.
비트코인이 직접적인 블록 크기의 확장보다 라이트닝 네트워크나 블록 용량 사용의 효율화(슈노 시그니처, 세그윗) 등의 방법으로 확장성 문제에 접근하고 있는 것과 BSV는 많은 차이가 있다고 할 것입니다.
https://bitcoinscaling.io/에서 STN의 블록 정보를 살펴 볼 수 있는데 테스트넷에서 최대 크기로 만들어질 수 있는 블록의 크기가 10GB까지인 것으로 나와 있으며 24시간 안에 1.42GB 크기의 블록도 생성된 것을 확인할 수 있습니다.
하지만 블록의 크기가 크다고 해서 더 좋은 블록체인이라고 보기에는 힘들 수도 있습니다. 비트코인 SV처럼 블록의 크기가 GB 단위로 확대되면 문제가 생길 수가 있습니다.
지금 테스트 중인 STN이 비트코인SV 하드포크로 메인넷에 적용되고 1GB 이상의 블록이 다량 발생된다면 지금의 비트코인과 같이 비교적 소규모로, 개인적으로 채굴을 진행하기가 사실상 어려워집니다.
왜냐하면 채굴을 진행하기 위해서 필요한 자원과 시간, 비용이 매우 높아지기 때문입니다. 예를 들어 비트코인 SV가 블록 크기를 1GB 이상으로 늘렸을 때 평소의 경우 비트코인SV의 블록 크기는 1GB보다 훨씬 작을 것이므로 문제가 없지만 그렇더라도 블록 크기의 한계가 1GB 이상이라면 마이닝 노드는 1GB 블록을 생성할 수 있도록 준비를 해야 할 것입니다.
따라서 개인, 소규모의 블록 채굴은 사실상 어려우므로 채굴풀에 가입할 수 밖에 없게 됨으로써 채굴의 집중화가 심화될 수 있고 문제가 되는 것입니다. 블록의 크기를 키우는 것이 마냥 좋지만은 않은 이유입니다.
답변이 도움이 되길 바랍니다.