본문으로 건너뛰기

풀노드 구동 목적

비트코인 풀노드를 운영하는 이유는 개인의 금융 주권과 네트워크의 분산이라는 두 측면에서 볼 수 있습니다. 비트코인은 중앙 기관의 허가 없이 개인 간 송금을 할 수 있는 P2P 네트워크입니다. 사용자가 풀노드를 직접 운영하고 자신의 서명 장치와 연결하면 거래 데이터도 스스로 검증할 수 있습니다. 서명 장치가 개인키로 거래에 서명한다면, 풀노드는 거래와 블록이 규칙에 맞는지 확인합니다.

 

원본 영상: 풀노드 구동 목적

개인적인 측면

비트코인 송금 절차를 예로 들어 보겠습니다. 내가 아내에게 1,000 사토시를 보내려 한다면, 워치온리 서명 장치에서 주소와 수량, 수수료를 설정하고 서명 전 트랜잭션을 만듭니다. 워치온리는 개인키 없이 잔액과 거래를 조회하는 도구이므로 스스로 서명할 수 없습니다. 에어갭 방식으로 서명 전 트랜잭션을 차가운 서명 장치에 전달하고, 그 장치 안에서 관리하는 개인키로 서명합니다.

서명된 트랜잭션은 다시 워치온리 서명 장치로 가져와 네트워크에 전파합니다. 이후 채굴자가 거래를 선택해 블록에 넣으면 거래 내역이 전체장부에 기록됩니다. 이 과정은 블루월렛의 워치온리 설명에서도 확인할 수 있습니다. 블루월렛 같은 앱에는 내 비트코인 잔액과 거래 기록이 표시됩니다. 그런데 이 데이터는 어디에서 오는 것일까요?

블루월렛을 공용 서버에 연결해 사용하면 그 서버에서 잔액과 거래 내역을 가져옵니다. 이는 은행 시스템이 제공하는 잔액과 거래 기록을 조회하는 모습과 비슷합니다. 다만 서버에서 데이터를 조회한다고 개인키까지 그 서버에 맡기는 것은 아닙니다.

하지만 비트코인은 은행 도움 없이 송금할 수 있는 네트워크라고 하지 않았나요? 공용 서버의 데이터를 받아 보는 데서 더 나아가 직접 검증하려면 풀노드를 운영할 수 있습니다. 내 풀노드는 다른 노드에서 거래와 블록을 받아 규칙에 맞는지 확인합니다. 다른 노드와 통신하되 그 판단을 그대로 믿지 않는 것입니다.

풀노드가 동기화를 마치면 자신이 검증한 데이터를 서명 장치 앱에 제공할 수 있습니다. 서명한 거래도 내 풀노드를 통해 전파할 수 있습니다. 이 방식은 특정 공용 서버에 조회와 전파를 맡기는 의존을 줄입니다. 공용 서버에 어떤 주소를 조회하는지 알릴 필요도 줄지만, 전체장부에 기록되는 거래 자체는 공개됩니다. Bitcoin.org의 프라이버시 안내는 공개 거래 기록과 접속 정보의 노출을 설명합니다.

내 풀노드가 서명된 트랜잭션을 검증하고 멤풀에 받아들이면 다른 노드에 전달합니다. 채굴자가 이를 블록에 포함하면 내 풀노드가 그 블록을 다시 검증합니다. 자신의 거래를 확인하는 일을 직접 맡는다는 데 풀노드 운영의 개인적 의미가 있습니다.

비트코인 네트워크 측면

두 번째 이유는 비트코인의 전체장부를 분산 저장할 수 있기 때문입니다. 가지치기 없이 전체 블록을 보관하는 내 풀노드에는 비트코인의 제네시스 블록부터 가장 최근의 블록까지의 모든 장부가 들어 있습니다. 또한 아직 소비되지 않은 거래 출력의 집합인 UTXO 세트도 보유합니다. 각 출력에는 비트코인 수량과 이를 소비하기 위해 충족해야 할 조건이 담겨 있습니다. 사람 이름별 잔고 목록을 저장하는 것은 아닙니다. 서명 장치 앱은 자신과 관련된 출력을 찾아 잔액을 계산합니다. 이 구조는 Bitcoin 개발자 문서의 UTXO 설명거래 출력 설명에서 확인할 수 있습니다.

이렇게 각자가 은행 장부의 역할을 하는 풀노드를 운영하면서 데이터를 주고받고 독립적으로 검증합니다. 장부가 탈중앙화되어 있다는 것은 중앙 서버만 장부를 보유하는 것이 아니라 내 책상 위의 작은 기기에서도 거래와 블록을 검증할 수 있다는 뜻입니다.

나의 금융 주권을 지키기 위해 풀노드를 만들었더니 비트코인의 탈중앙화에도 기여하는 선순환이 생깁니다. 비트코인이 탄생했던 초창기에는 네트워크를 유지하려는 사명감으로 풀노드를 운영하는 사람들도 있었을 것입니다. 내 거래를 직접 검증하려는 필요 역시 풀노드를 운영할 이유가 됩니다.

저는 이런 자발적 참여가 비트코인 네트워크를 강건하게 만든다고 봅니다. 개인이 자신의 필요에 따라 행동한 결과가 네트워크를 뒷받침하는 것입니다. 비트코인을 더 잘 이해하고 내 금융 주권을 지키고 싶다면, 직접 검증하는 이점과 운영에 필요한 자원을 살펴 풀노드 구동 여부를 선택할 수 있습니다.

링크 복사하기X에 공유페이스북에 공유쓰레드에 공유