비트코인 작동 원리
보조 제목
비트코인은 트랜잭션을 전송하고 원장 역할을 하는 퍼블릭 블록체인에 포함할 수 있습니다. 비트코인은 가치가 있으며 원장에 포함된 트랜잭션이 합법적임을 확신할 수 있습니다. 비트코인 네트워크의 규모로 인해 이러한 거래가 사기가 아님을 확신할 수 있습니다. 이 기사에서는 분산형 네트워크가 독립적인 행위자가 블록체인에서 법적 거래를 구성하고 생성하도록 장려하는 방법을 설명합니다.
보조 제목
분산 소프트웨어
컴퓨터는 메모리와 처리 능력으로 구성됩니다. 메모리는 저장된 정보이고 처리 능력은 입력을 출력으로 변환하는 능력입니다. 소프트웨어는 컴퓨터가 따르도록 지시받은 규칙으로 구성됩니다. 컴퓨터는 입력을 받아 주어진 규칙을 적용하고 출력을 생성합니다.
비트코인도 소프트웨어이지만 탈중앙화되어 있기 때문에 우리가 익숙했던 것과는 성격이 다릅니다. 우리에게 익숙한 대부분의 소프트웨어는 중앙 집중식 네트워크를 사용하여 작동합니다. Facebook과 작동 방식을 고려하십시오. 계정을 만들기 위해 로그인하면 Facebook이 사용자 정보를 저장하는 데 사용하는 많은 컴퓨터 중 하나에 정보가 업로드됩니다. 게시하거나 댓글을 달 때마다 이 정보가 컴퓨터에 추가됩니다. CEO가 귀하의 정보를 삭제하거나 변경하려면 컴퓨터를 관리하는 사람에게 전화를 걸어 귀하의 이름을 알려주고 정보를 어떻게 처리할지 알려줄 것입니다. 이 모든 것은 페이스북이 중앙 집중식 회사이기 때문에 가능합니다.
우리에게 친숙한 대부분의 회사는 중앙 집중식으로 운영됩니다. CEO는 전화 한 통으로 이러한 변경을 할 수 있어 회사가 효율적으로 운영될 수 있습니다. 이러한 효율성에 대한 대가로 회사의 이해관계자(직원, 주주 및 고객)는 CEO가 그들 모두를 위해 최선을 다하고 있다는 것을 신뢰해야 합니다. 대략적으로 말하면, 기업의 CEO는 이해관계자의 만장일치 동의 없이도 변경 사항을 제정할 수 있으므로 경쟁이 치열한 시장에서 회사가 유연하게 대응할 수 있습니다.
그 반대는 참여자 그룹 간의 합의를 통해 결정이 내려지는 분산형 그룹입니다. 가장 순수한 형태의 시스템은 이해 관계자의 희망이 항상 충족되기 때문에 중앙 기관에 대한 신뢰가 필요하지 않습니다. 이 프로세스는 비효율적이지만 도덕적 해이가 높은 작업에 필요합니다.
컴퓨팅 시대는 분산형 시스템을 가능하게 했으며, 빛의 속도에 가까운 속도로 정보를 전송할 수 있는 능력은 분산화의 요구 사항을 덜 부담스럽게 만들었습니다. 소프트웨어는 분산화를 위한 이상적인 매체가 됩니다. 컴퓨팅 기술의 발전과 함께 이제 탈중앙화할 수 있지만 여전히 운영 가능한 새로운 아이디어가 등장했습니다.
계약은 실행을 통해 작동하고 소프트웨어는 오픈 소스이며 모든 사람이 코드 사본을 가지고 있으며 어떤 방식으로든 변경할 수 있습니다. 그러나 한 사람이 자신의 코드를 너무 많이 변경하면 다른 사람의 코드와 상호 작용하지 못할 수 있습니다. 모든 사람은 원하는 대로 자신의 코드를 자유롭게 변경할 수 있지만 따르는 규칙은 대부분의 네트워크에서 따르기로 선택한 규칙입니다. 이러한 규칙을 따르고 싶지 않은 사람은 누구나 자신의 코드를 변경할 수 있지만 이는 변경을 수행한 다른 사람과만 상호 작용할 수 있음을 의미합니다. 간단히 말해, 누군가 비트코인 소프트웨어를 변경하려면 대다수의 참가자가 똑같이 하도록 설득해야 합니다. 그들이 할 수 없다면 비트코인은 변하지 않을 것입니다.
보조 제목
비트코인 네트워크
노드는 라우팅, 검증 및 마이닝의 세 가지 주요 기능을 통해 네트워크에 참여합니다. 노드가 트랜잭션을 들으면 발신자가 사용할 수 있는 비트코인이 충분한지, 다른 곳에서 비트코인을 사용했는지, 서명이 주소와 일치하는지 확인하여 트랜잭션을 확인합니다. 모든 확인이 성공하면 노드는 트랜잭션을 다른 노드로 전달하지만 그렇지 않으면 잊어버리게 됩니다. 마이닝 노드는 유효성을 검사하고 라우팅할 뿐만 아니라 스토리지 풀에 트랜잭션을 추가하고 컴퓨팅 퍼즐(작업 증명)을 해결하여 블록체인에 스토리지 풀 사본을 기록하려고 시도합니다.
보조 제목
마이닝 프로세스
새로운 블록이 채굴되어 블록체인에 포함되려면 채굴 노드가 작업 증명(PoW) 계산 퍼즐을 풀어야 합니다. 작업 증명 알고리즘은 목표 난이도 아래 블록 헤더 항목의 해시를 생성하여 해결됩니다. 해시 함수의 출력은 무작위이기 때문에 충분히 낮은 숫자를 생성하는 유일한 방법은 계속 추측하는 것입니다. 난이도 목표는 광부가 작업 증명 알고리즘을 풀 가능성을 높이거나 낮추는 데 사용됩니다. 목표 난이도가 낮을수록 가능한 답의 범위가 작아서 풀기가 더 어렵습니다.
이전 블록 헤더를 검토합니다.
블록 헤더에는 타임스탬프, 난이도 목표 및 논스 값이 있습니다.
블록 헤더 해시 =
해시 함수(Merkle 루트 + 이전 블록 해시 + 버전 + 타임스탬프 + 난이도 목표 + nonce)
채굴자들은 난이도 목표보다 낮은 블록 헤더 해시가 생성될 때까지 nonce 필드를 업데이트하여 작업 증명 계산 퍼즐을 풀기 위해 경쟁합니다.
보조 제목
채굴자가 솔루션을 찾으면 즉시 이를 피어(즉, 연결된 노드)에 브로드캐스트합니다. 그런 다음 이러한 노드는 솔루션이 올바른지 확인하고 올바른 경우 솔루션을 동료에게 브로드캐스트합니다. 아래 차트는 블록체인의 95%가 평균 약 40초 이내에 이를 실현한다는 것을 보여줍니다.
이미지 설명
블록 전파 시간의 확률 밀도 함수
노드는 이 새로운 블록을 수락하여 블록체인 사본에 통합합니다. 광부는 이 새로운 블록을 수락하고 다음 블록을 채굴하기 시작하여 최신 블록을 블록체인에 추가하고 프로세스를 처음부터 다시 시작합니다. 이 주기는 평균 10분마다 발생하며 이 주기가 달성되도록 난이도 목표가 자동으로 조정됩니다.
평균 10분마다 블록을 찾도록 난이도 목표가 조정되기 때문에 평균 10분마다 블록을 성공적으로 채굴하면 채굴자가 블록 보상으로 보상을 받는다는 것을 알고 있습니다. 블록 보상은 트랜잭션에 대해 노드가 지불하는 수수료로 구성되며 코인베이스 트랜잭션은 더 많은 새로운 비트코인을 생성합니다.
블록 보상 = 코인베이스 트랜잭션 + 블록 수수료
2008년에 코인베이스 거래는 50개의 비트코인을 보상했으며 보상은 2140년에 최대 공급량인 2100만 비트코인에 도달할 때까지 4년마다 절반으로 줄었습니다.
다음 블록이 발견되는 즉시 체인이 길어지고 짧은 체인의 노드가 가장 긴 체인을 채굴하도록 전환됩니다. 노드는 가장 긴 체인 규칙을 따라 시간이 지남에 따라 모든 불일치를 해결합니다.
보조 제목
인센티브 메커니즘 - 작업증명(POW) 알고리즘
대답해야 할 중요한 질문: 왜 10분마다 일부 광부의 블록을 무작위로 선택하지 않습니까? 이 문제를 해결하기 위해 컴퓨터를 실행하는 데 이 모든 에너지를 소비하는 이유는 무엇입니까?
우리는 PoW가 디지털 희소성을 야기한다는 것을 알고 있지만 보안이라는 또 다른 목적도 제공합니다. 블록체인은 알고리즘을 푸는 사람들에 의해 확장됩니다. 채굴자가 해결하면 해당 사기 거래를 포함시킬 수 있지만 이러한 사기 거래는 검증을 통과하지 못하기 때문에 다른 노드에서 거부됩니다. 블록체인이 사기성 트랜잭션으로 확장되려면 같은 생각을 가진 채굴자가 확장해야 하며 전체 네트워크 컴퓨팅 성능의 50% 이상이 필요합니다. 따라서 채굴 비용이 높을수록 나쁜 행위자가 채굴하기가 더 어렵습니다.
그렇게 하는 것은 나쁜 행위자에게 최선의 이익이 되지도 않습니다. 사토시 나카모토의 말:
그는 시스템의 타당성과 자신의 부를 훼손하는 것보다 다른 모든 사람들을 합친 것보다 더 많은 비트코인을 얻는 데 유리한 규칙에 따라 플레이하는 것이 더 유익하다는 것을 알게 될 것입니다.
작업 증명 알고리즘은 테스트와 같습니다. 비트코인은 네트워크 보안을 통해 신뢰를 얻습니다. 그것의 보안은 단지 2,100만 개의 비트코인만이 확실히 존재한다고 알려져 있다는 사실에 있습니다. 광업 비용은 그것을 확실하게 만드는 것입니다. 비트코인 네트워크를 보호한다는 것은 도덕적 해이가 없는 신뢰할 수 없고 분산된 자금 매체를 확보하는 것을 의미합니다. 화폐제도는 경제의 근간이며 안보가 가장 중요합니다.
보조 제목
비트코인 규칙

이러한 규칙은 네트워크 참여자가 기꺼이 수락하기 때문에 합의에 존재합니다. 명목화폐 시스템에서 규칙은 합의를 통해서가 아니라 명목화폐(fiat라는 단어의 정의)를 통해 나타납니다. 우리는 통화 정책에 대해 투표하지 않습니다. 대신 통화 정책은 정치인에 의해 영향을 받고 통제됩니다.

2019년 4월 연준 이사회 회의
보조 제목
사람들은 비트코인의 뛰어난 금전적 특성 때문에 비트코인을 구매하여 가격이 상승합니다. 상승하는 가격은 더 많은 채굴자를 끌어들여 네트워크의 컴퓨팅 성능을 확장하여 네트워크를 더 안전하게 만들고 더 가치 있게 만듭니다. 이것은 시간이 지남에 따라 가격을 더욱 증가시킵니다. 비트코인 가격이 상승함에 따라 참여자들이 비트코인 가격이 계속 상승할 것이라고 믿는 긍정적인 피드백 루프가 생성됩니다. 이것이 가치 기준에 적용되는 네트워크 효과의 힘입니다. 이 피드백 루프는 비트코인의 금전적 속성(규칙에 의해 결정됨)을 전제로 합니다. 이러한 속성이 없으면 사람들은 애초에 비트코인에 대해 추측하지 않을 것이기 때문입니다.
보조 제목
규칙이 어떻게 바뀌는지
Bitcoin 소프트웨어는 Bitcoin Core라고 하며 bitcoin.org에서 다운로드할 수 있습니다. 이것은 가장 널리 사용되는 비트코인 소프트웨어이지만 다른 유효한 비트코인 소프트웨어 버전도 있습니다. 다른 버전은 비트코인 네트워크에 참여하기 위해 비트코인 코어와 최소한의 유사성을 유지해야 합니다. 이 최소 수준에서 노드는 다른 노드와 동일한 방식으로 트랜잭션 및 블록의 유효성을 확인해야 합니다. 그렇지 않으면 생성하고 전달하는 트랜잭션/블록이 다른 노드에서 수락되지 않을 가능성이 높으며 그 반대의 경우도 마찬가지입니다.
규칙을 변경하려면 세 가지 주요 이해 관계자 그룹 간의 합의가 필요합니다.
각 그룹에는 어떤 형태의 권한이 있지만 모든 권한을 가진 그룹은 없습니다. 커뮤니티의 다른 구성원이 변경 사항을 공개적으로 제안하는 동안 실제로 코드를 업데이트할 수 있는 소수의 개발자 그룹(커밋 권한이라고 함)이 있습니다.
누군가 커밋 액세스 권한이 있는 소수의 개발자를 제어하려고 하면 어떻게 될까요? 커뮤니티 구성원이 자발적으로 다운로드할 수 있는 새 소프트웨어를 만들 수 있는 권한이 있지만 강제로 다운로드할 수는 없습니다. 소프트웨어에 대한 모든 수정 사항은 커뮤니티 회원이 검토하며 오픈 소스이므로 모든 수정 사항을 신속하게 발견할 수 있습니다.
비트코인 규칙은 커뮤니티에서 만들고 커밋 권한이 있는 개발자가 구현합니다. 노드(광부)는 네트워크가 이를 수락하도록 업데이트된 소프트웨어를 다운로드해야 합니다. 그리고 투자자들은 소프트웨어 변화가 중요해지도록 비트코인을 계속 보유하고 구매해야 합니다.
Bitcoin 규칙 변경에는 주요 이해 관계자 그룹의 합의가 필요합니다.
우리의 법정화폐 금융 시스템은 고도로 중앙 집중화된 그룹에 의해 통제됩니다. 비트코인 시스템의 민주주의를 따를 것인지, 아니면 현재 명목 화폐 시스템의 끊임없이 변화하는 규칙을 따를 것인지 선택할 수 있습니다. 점점 더 많은 사람들이 비트코인 시스템을 채택함에 따라 이 결정은 더 쉬워질 것입니다.
원작: 에릭 야케스
편집: 비바부


