Q/A about Bitcoin은 David Coen이 문답 형식으로 Bitcoin 기술을 설명한 책입니다. 기본 개념에서 지갑, 노드, Lightning Network로 이어집니다. 짧은 정의를 모은 사전보다는 차근차근 배우는 경로를 제시합니다.
Coen은 사전 지식이 없는 독자도 접근할 수 있는 기술 교육서로 이 책을 소개합니다. 목차의 순서도 이해하기 쉽습니다. Bitcoin이 무엇이고 누가 만들었으며 왜 등장했는지 묻고, 그다음 공급량, 채굴, 결제, 지갑을 다룹니다. 독자는 프로그램 설정부터 시작할 필요가 없습니다. 먼저 그 기술이 어떤 문제를 해결하려는지 살펴볼 수 있습니다. [1] [3]
저자는 처음에는 장의 순서대로 읽되, 어려운 부분은 건너뛰었다가 나중에 돌아와도 된다고 권합니다. 굵은 글씨는 뒤에서 더 설명할 개념을 가리키며, 난도가 높은 부분에도 표시가 있습니다. 초보자가 서서히 이해할 여지를 주는 방식입니다. 결제를 보내는 방법을 묻다 보면 지갑을 만나고, 다시 지갑에 표시된 정보를 누가 검증하는지 궁금해집니다. [2]
저자는 David Coen입니다. 공개 저장소는 책을 출간된 상태로, 두 번째 판을 작업 중인 상태로 표시합니다. 그 기록만으로 이후 판본의 완성을 확인할 수는 없습니다. 스페인어 본문에는 copyright 2019와 스페인어 초판 2020년, ISBN 9781657029903이 적혀 있습니다. 따라서 책을 찾을 때는 언어와 판본도 확인해야 합니다. 같은 제목이라도 본문과 정보가 작성된 시기가 다를 수 있습니다. [1] [6]
노드에 관한 장은 중요한 차이를 소개합니다. Full Node는 자신이 적용하는 규칙에 따라 Bitcoin 블록과 거래를 독립적으로 검증합니다. 반면 채굴자는 새 블록을 만드는 데 필요한 해답을 찾습니다. 직접 검증한다고 직접 채굴해야 하는 것은 아닙니다. 받은 결제를 확인할 때 다른 서비스가 제공한 정보에 의존할 수도 있고, 자신의 검증 노드를 사용할 수도 있습니다. [4]
이 부분에서는 책의 설명을 바로잡을 필요가 있습니다. Pruned Node는 블록을 완전히 검증한 뒤 오래된 블록 파일을 삭제할 수 있습니다. 자기 지갑의 거래만 검사하는 노드가 아닙니다. Bitcoin Core는 이후 검증에 필요한 상태를 보존하며, 아직 사용되지 않은 거래 출력인 UTXO 집합도 여기에 포함됩니다. 줄이는 것은 디스크 사용량이지 검증 규칙이 아닙니다. 일반적인 초기 동기화에서는 이런 노드도 기록을 차례로 내려받아 처리해야 합니다. [4] [7]
다음 장은 간소화된 결제 검증인 SPV를 다룹니다. 이 클라이언트는 블록의 모든 내용을 직접 검증하는 대신 블록 헤더와 거래가 포함되었다는 증명을 사용합니다. 따라서 Full Node와 신뢰에 관한 전제가 다릅니다. 가벼운 지갑에도 여러 방식이 있습니다. 키를 보유하는 것과 네트워크를 검증하는 것은 별개의 문제입니다. 자신의 키를 보관하면서 네트워크 정보는 다른 사람의 서버에서 받을 수도 있습니다. [5]
부제에는 LNP/BP가 나옵니다. 처음에는 Coen이 Bitcoin 프로토콜과 그 위의 결제 계층인 Lightning Network를 함께 부르는 이름이라고 이해하면 충분합니다. 목차에는 Sidechain과 인터넷 프로토콜과의 비교도 있습니다. 첫 장을 펼치기 전에 약어를 전부 외울 필요는 없습니다. 공통된 기반 위에 서로 다른 활용 방식을 만들 수 있다는 생각이 핵심입니다. [1] [3]
답을 읽고 자신의 상황에 대입해 설명해 보세요. 내 지갑은 무엇을 검증하고 무엇을 신뢰할까요? 실제 설정은 현재 문서에서 확인해야 합니다. 책의 앱 목록은 집필 당시의 것이며, Coen은 Edge Wallet을 추천하면서 그 회사와 협업한다는 사실도 밝힙니다. 이 소개는 도입 자료와 노드 및 가벼운 지갑에 관한 장 전체를 읽고 작성했습니다. 모든 답변을 평가한 것도, 언급한 제품의 보안을 감사한 것도 아닙니다. [1] [2] [4] [5] [7]
더 정확히 이해하려면 이 항목과 함께 다음도 읽어 보세요 Bitcoin, Full Node, 지갑, Lightning Network.
01읽기 전에 프로그래밍을 알아야 하나요?+
저자에 따르면 입문 부분에는 사전 기술 지식이 필요하지 않습니다. 다만 뒤로 갈수록 어려운 주제도 나옵니다. 모르는 용어를 확인하고 어려운 장에는 나중에 돌아와도 됩니다. 한 번에 모든 내용을 이해할 필요는 없습니다.
02직접 검증하려면 모든 블록을 보관해야 하나요?+
영구히 보관할 필요는 없습니다. Pruned Node는 블록을 검증한 뒤 오래된 파일을 제거할 수 있습니다. 이는 모든 블록을 직접 검증하지 않는 가벼운 클라이언트와 다릅니다. 저장 공간을 아낀다고 일반적인 초기 동기화에서 과거 기록을 내려받는 과정까지 없어지는 것도 아닙니다.