ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Report] Bitcoin: A Peer-to-Peer Electronic Cash System
    논문 2020. 1. 2. 18:23

          로재의 개발 일기      

     

    Bitcoin: A Peer-to-Peer Electronic Cash System

     

     

    인터넷 기반의 상거래는 전자거래를 처리하기 위해서 제 3자의 역할을 하고 있는 금융기관과 같은 신뢰할 수 있는 기관을 거치게 됩니다.

     

    하지만 제 3자의 분쟁이나 외부의 침입 등의 보안문제 및 전자 상거래의 이점 반감 등으로 인하여 이러한 기법은 약점을 가지게 됩니다.

     

    따라서 제 3자의 신뢰가 아닌 암호학적 증명에 기반하여 거래하고자 하는 두 개인이 신뢰하는 제 3자를 필요로 하지 않고 서로 직접 거래하도록 합니다.

     

      1. 거래

    상거래를 하기 위해서 송신자와 수신자는 전자적 화폐를 사용하며, 이를 위해서 공개키 알고리즘을 사용합니다.

    직전의 거래를 해시한 값을 소유자의 개인키와 공개키로 검증 및 서명을 하는 구조이며, 이는 연쇄적으로 거래를 만들어갑니다.

    이는 최초의 거래가 신뢰가 있어야 하며, 이후의 거래들은 다수가 동의를 했다는 증명을 가지게 되며, 즉 신뢰할 수 있는 거래라는 의미입니다.

     

      2. 타임스탬프 서버

    세계의 모든 시간은 다르기 때문에 컴퓨터들의 통합된 타임스탬프가 필요하게 된다.

    타임스탬프 서버는 현재 블록과 이전 블록의 연쇄적인 해시들로 구성됩니다.

    이는 블록체인들이 무수히 연결된 세상에서, 상대적인 시간들을 서로 연결한 것인데


    "사건 A이 사건 B 다음에 일어났다"

     

    위와 같은 단순한 맥락으로 암호화 해시 함수를 사용하여 전후 관계를 논리적으로 부정할 수 없도록 하였습니다.

     

      3. 작업증명

    이는 과반수의 합의로 선거제도와 비슷한데, 가장 많은 작업을 하여 길이가 제일 긴 노드가 어느 기록이 참인지 결정할 수 있는 권한을 가지는 것입니다.




    또한 개개인의 노드가 작업증명이 가능하게 되어 그에 준하는 수수료와 코인을 지급받게 되는 방식입니다. (질문1)

    이러한 작업증명은 cpu당 한번씩만 가능하며, 한번 작업증명을 충족했다면 해당 작업을 재수행하지 않고는 변경될 수 없습니다. (질문2)

     

    이는 noncedifficulty를 조정하여 평균 블록 수에 따른 목표치를 결정시켜 동시에 블록이 생기게 되어 생기는 오류인 이중지불을 방지하게 되며 최근에 지나친 자원의 낭비로 노드가 연결되어 있는 가중치에 따라서 블록을 생성하는 지분증명(Proof-of-Stake) 알고리즘이 탄생하게 됩니다.

     

    (이후에 설명이 되겠지만 가능성은 0에 수렴합니다)

     

     

      4. 네트워크

    네트워크는 다음과 같이 실행됩니다.

     

    1.     새로운 거래가 모든 노드에 브로드캐스트 된다.

    2.     각 노드가 새로운 거래를 블록에 수집한다.

    3.     각 노드가 그 블록에 맞는 난이도의 작업증명을 찾아 나선다.

    4.     작업증명을 찾은 시점에 모든 노드로 그 블록을 브로드캐스트한다.

    5.     노드는 모든 거래가 유효하고 아직 사용하지 않은 잔액이 있다면 (UTXO)

    6.     노드는 블록 승인을 표현하기 위해 사슬 안에 다음 블록을 생성한다.

     

    노드들은 항상 긴 브랜치를 받아 작업을 하지만 두 노드가 동시에 혹은 먼저 블록에 브로드캐스트를 하게 되면 다른 브랜치도 저장해 그것이 더 길어져 작업증명이 깨질 경우를 대비합니다.

     

      5.

     

    ※ 본 글은 개인 포트폴리오 혹은 공부용으로 사용하기 때문에, 무단 복사 유포는 금지하지만, 개인 공부 용도로는 얼마든지 사용하셔도 좋습니다

    반응형
Designed by Tistory.