비잔틴 장군 문제

특정 수 이상의 장군이 동시에 공격을 해야 성을 공략할 수 있다.

서로 P2P로만 연락을 주고 받을 때, 첩자의 방해가 있더라도 이 공격을 성공시키는 방법은?

스크린샷 2024-01-08 오전 10.12.05.png

BFT

Byzantine Fault Tolerance(BFT)란 분산화된 네트워크에서 일부 장애가 발생하더라도 네트워크가 정상적으로 동작할 수 있도록 하는 알고리즘이다. PBFT(Practical BFT)가 블록체인 생태계에서 많이 사용되고 있으며, Cosmos, Hyperledger 등에서 사용

스크린샷 2024-01-08 오전 10.12.46.png

Proof Of Work

Computing Power로 Double Spending과 같은 거래 위변조 공격을 막는 방법

새로운 블록을 생성하는 것이고 그 방법은 그 블록 내에 Field로 포함되는 Nonce값을 찾는 것

전체 Network Hash에 따라 Difficulty 가 변화하고, 10분마다 Block이 생성되게 조정

스크린샷 2024-01-08 오전 10.13.10.png

채굴 과정

  1. 새로운 블록(a)이 생성됨을 알림받는다.
  2. 다음 블록 생성을 위해서 임시 Pending 중인 Transaction을 포함한다.
  3. CoinBase 거래를 임시 블록에 포함한다.
  4. 이전 블록(a)와 Transaction들을 포함한 임시 Block구조(b)를 만든다.
  5. 새로운 Block(b)의 Header Hash가 결과값이 나올 때 까지 brute force 방식으로 nonce를 찾는다.

스크린샷 2024-01-08 오전 10.13.45.png

스크린샷 2024-01-08 오전 10.14.08.png