**포크(fork)**는 블록체인(https://iq.wiki/wiki/blockchain)의 프로토콜 또는 기본 규칙 집합이 변경될 때마다 발생하는 오픈소스 코드 수정입니다. 기존 코드를 복제하고 수정하여 새로운 제품을 만드는 수단입니다. 일반적으로 포크는 블록체인의 기능과 디자인을 개선하기 위한 제안이 제출된 후 블록체인 프로토콜을 관리하는 커뮤니티 내에서 의견이 일치하지 않을 때 발생합니다. [1][2][3]
포크는 커뮤니티가 블록체인 프로토콜에 변경 사항을 도입할 때 발생합니다. 결과적으로 체인이 분할되어 원본 블록체인(https://iq.wiki/wiki/blockchain)의 전체 이력 데이터를 유지하지만 별도의 경로를 걷는 보조 블록체인이 생성됩니다. 많은 블록체인 포크는 내장된 특성에 대한 의견 불일치로 인해 발생합니다. 그러나 네트워크의 근본적인 변경을 구현하거나 원본과 유사한 특성을 가진 새로운 자산을 생성하기 위해 수행되는 경우가 많습니다. 일반적으로 포크는 다른 이유 없이 "공유된 이력"을 가지는데, 이는 분할 전까지 구형 및 신형 체인 모두에서 거래 기록이 동일했기 때문입니다. [2][4]
포크는 기본적으로 두 가지 유형으로 분류됩니다. 기존 블록체인 코드베이스에서 새로운 독립적인 프로젝트 또는 버전을 생성하는 코드베이스 포크와 실행 중인 블록체인(https://iq.wiki/wiki/blockchain)이 두 부분으로 더 나뉘는 라이브 블록체인 포크입니다. 라이브 블록체인 포크는 소프트웨어 결함이나 해시율의 비정상적인 변동으로 인해 네트워크가 두 개 이상의 방향으로 분할된 후 블록체인에 확장된 분기가 나타나는 우발적 포크와 노드 운영자가 의도적으로 자체 블록체인을 시작하고 블록을 생성하기로 선택할 때 발생하는 의도적 포크의 두 가지 유형으로 나뉩니다. 의도적 포크는 이전 버전과 호환되지 않는 암호화폐 프로토콜에 대한 상당한 변경인 하드 포크(https://iq.wiki/wiki/hard-fork)와 이전 버전과의 역호환성을 유지하는 암호화폐(https://iq.wiki/wiki/cryptocurrency) 프로토콜에 대한 수정인 소프트 포크의 두 가지 범주로 더 나뉩니다. [1][5][6][7]
코드베이스 포크는 소프트웨어 구현의 코드를 복제하는 것을 포함하며 종종 원래 코드베이스에 대한 조정을 포함합니다. 비트코인(https://iq.wiki/wiki/bitcoin)의 맥락에서 코드베이스 포크는 호환 가능한 코드베이스 포크, 블록체인(https://iq.wiki/wiki/blockchain) 포크 및 새로운 암호화폐(https://iq.wiki/wiki/cryptocurrency) 생성의 세 가지 범주로 분류될 수 있습니다. 이러한 구분은 비트코인 생태계 내에서 코드베이스 포크로 인해 발생할 수 있는 다양한 결과를 보여줍니다. [1][8]
이러한 포크는 기존 비트코인 프로토콜과의 완벽한 호환성을 유지하면서 비트코인(https://iq.wiki/wiki/bitcoin) 소프트웨어 코드베이스를 변경하는 것을 포함합니다. 일반적으로 블록체인 분할을 일으키지 않고 새로운 기능이나 개선 사항을 도입합니다. [8]
일부 코드베이스 포크는 비트코인 프로토콜을 이전 버전과 호환되지 않는 방식으로 변경합니다. 이는 네트워크가 서로 다른 규칙 집합을 따르는 두 개의 별도 체인으로 분할되는 "블록체인 포크"를 초래할 수 있습니다. 그런 다음 포크가 충분한 지원을 받으면 새로운 암호화폐가 생성될 수 있습니다. [8]
경우에 따라 비트코인(https://iq.wiki/wiki/bitcoin)의 코드베이스 포크는 자체 블록체인을 가진 완전히 새로운 암호화폐(https://iq.wiki/wiki/cryptocurrency)를 생성할 수 있을 정도로 상당할 수 있습니다. 이러한 포크는 종종 프로토콜, 합의 규칙 또는 기본 기술에 대한 상당한 변경을 포함하여 별도의 디지털 통화의 탄생으로 이어집니다. [8]
라이브 블록체인(https://iq.wiki/wiki/blockchain) 포크는 소프트웨어와 프로토콜 규칙이 처음에는 동일하지만 블록체인 이력의 특정 시점에서 체인이 두 개의 별도 부분으로 분할되는 경우 발생할 수 있습니다. 이는 합의 규칙의 차이, 커뮤니티 내의 의견 불일치 또는 소프트웨어 업그레이드를 포함한 다양한 이유로 발생합니다. 이러한 포크가 발생하면 자체 거래 이력을 가진 두 개의 별도 체인이 생성되며 각 체인은 서로 다른 노드, 채굴자 및 사용자가 한쪽 또는 다른 쪽을 지원하는 등 독립적으로 개발될 수 있습니다. 어떤 체인을 따르거나 지원할지에 대한 결정은 종종 네트워크 참여자의 선호도와 커뮤니티 내에서 달성된 합의에 따라 달라집니다. 라이브 블록체인의 맥락에서 포크는 우발적 포크와 의도적 포크의 두 가지 주요 이유로 발생할 수 있습니다. [1]