플라즈밍
플라즈마 IT
플라즈밍
  • All (163)
    • MindSet (2)
    • Wisdom (8)
    • Book (18)
    • [Web] (6)
      • [Web]Guide (2)
      • [Web]HTML-CSS-JS (1)
      • [Web]ReactJS (0)
      • [Web]NextJS (1)
    • 퀀트주식투자 (4)
      • [리포트]포트폴리오 (4)
    • 자산배분전략 (2)
      • [리포트]자산배분전략 (1)
    • 포트폴리오 (0)
      • 발걸음 (0)
    • 개발 Note (3)
    • TipNote (5)
    • 알고리즘 (27)
      • 백준[BOJ] 오답노트 (27)
      • 백준[BOJ] 강의 정리 노트 (0)
    • etc-posts (18)
      • Unity :: C# 튜토리얼 (18)
    • Web&Know (23)
    • 끄적임 (4)
    • 세상이슈 (0)
    • Youtube 유튜브 (3)
      • Youtube 채널소개 (3)
    • 창업 Know&Idea (1)
    • Web&Dev (4)
    • 프로젝트 (6)
      • Unity5 Project (3)
      • UnrealEngine4 Project (2)
      • Web Page (1)
    • 주가차트-기술적분석 (2)
    • BlockChain (7)
    • SystemDesign (11)

인기 글

최근 글

hELLO · Designed By 정상우.
플라즈밍

플라즈마 IT

[쉽게 이해하는 블록체인 A-Z] 1.3 논스, 골든논스,비잔틴 장애 허용(BFT; Byzantine Fault Tolerance)
BlockChain

[쉽게 이해하는 블록체인 A-Z] 1.3 논스, 골든논스,비잔틴 장애 허용(BFT; Byzantine Fault Tolerance)

2023. 1. 24. 11:43
반응형

쉽게 이해하는 블록체인, 논스, 골든논스, 비잔틴 장애 허용(BFT; Byzantine Fault Tolerance)에 대해 개략적으로 알아보겠습니다.

이 연재글을 읽는 것만으로 블록체인의 탄탄한 기초가 만들어집니다. 5분 내외로 이해하세요. 

 

공격자가 아무리 애를써도 전체 시스템은 먼지 한 톨 무너지지 않는다. 왜냐면 다수의 합의 과정이 있기 때문

논스

논스

- 블럭체인의 필드에는 블록넘버, 데이터, 이전 해시값, 블록의 해시값이 있다고 소개했다

- 추가로 채굴에 이용되는 논스라는 필드도 존재한다. 

- 논스는 단 한 번만 사용되는 숫자라는 뜻

- 블록의 데이터는 변경할 수 없다, 트랜잭션들의 목록이며 이는 불변하는 원장이기 때문. 즉, 장부는 변하면 안 된다.

- 변경가능한 것은 논스값이다. 0부터 40억에 숫자를 넣을 수 있다. 

- 논스값을 변경하게 되면 블록의 해쉬값이 변경된다.  ( 눈사태효과에 의해 논스값을 조금이라도 변경하면, 전혀 다른 해시값을 얻게 된다. ) 

 

 

 

골든 논스

- 골든 논스란, 채굴자들이 채굴을 성공했을 때 정답인 논스값을 말한다. 

- 이를 이해하기 위해서는 채굴의 전반적인 과정을 이해해야 한다. 

- 블록에서 유일하게 변경가능한 값인 논스값을 변경하여, 블록의 해시값을 얻을 수 있는데 모든 논스값이 정답은 아니다. 

- 어떠한 약속에 의해 타겟값 이하인 해시값만 정답으로 인정이 된다. 

- 그래서 채굴자들은 논스값을 무작위로 대입하여, 해시값을 얻어내고 타겟값 범위에 허용되면 채굴에 성공한 것이다. 

 

비잔틴 장애 허용(BFT; Byzantine Fault Tolerance)

 

비잔틴 장애 허용(BFT; Byzantine Fault Tolerance)

 

http://wiki.hash.kr/index.php/%EB%B9%84%EC%9E%94%ED%8B%B4_%EC%9E%A5%EC%95%A0_%ED%97%88%EC%9A%A9

 

비잔틴 장애 허용 - 해시넷

비잔틴 장애 허용(BFT; Byzantine Fault Tolerance)이란 장애가 있더라도 전체의 3분의 1을 넘지 않는다면, 시스템이 정상 작동하도록 허용하는 합의 알고리즘이다. 비잔티움 장애 허용이라고도 쓴다. 블

wiki.hash.kr

 

비잔틴 장애 허용은 시스템 혹은 알고리즘에 특정 장애가 있어도 전체 시스템이 잘 작동하는 것이다. 

 

쉽게 생각해서 젠가를 떠올려보자. 처음 젠가의 탑이 완성되면 탑이 잘 세워진다. 여기서 블록 하나를 빼도 여전히 젠가가 무너지지 않는다. 

블록을 여러 번 빼도 젠가가 무너지지 않을 수 있다. 특별한 변수가 없다면 여전히 전체 시스템(젠가가 무너지지 않은 상태)이 유지된다. 

물론 모든 젠가의 블록들이 온전하게 있으면 좋겠지만, 일부 블록이 빠져도 이를 온전한 시스템으로 허용하겠다고도 볼 수 있다. 

 

비행기 시스템을 생각해 보자. 비행기에 어려 계기판이 존재한다. 하지만 일부 계기판이 오류가 나왔다. 당신이 파일럿이라면 언제 비행기를 비상착륙시켜야 할까? 계기판 중 하나가 엔진의 온도가 급격하게 올라갔다고 말한다. 하지만 엔진 출력도 이상 없고, 화재 진압 소화액도 분사되지 않았다. 이를 통해 단순 계기판 오류로 볼 수 있다. 계기판 오류를 가지고 비행기는 온전히 잘 순항한다.

이런 계기판 오류를 가지고도 정상시스템으로 허용하겠다고 볼 수 있다.    

 

블록체인도 생각해 보자. 여러 분산된 P2P 네트워크 환경에서 일부 공격자가 블록을 해킹하려고 해도, 여전히 시스템은 온전히 잘 작동한다. 이는 수학적으로 33% 이하의 반역자가 있어도 잘 작동한다고 비잔틴 장애 허용 관련 논문에서 증명되었다. 

 

여기까지 생각해서, 일부 공격자가 있어도 블록체인 시스템이 전혀 이상이 없다고 이해하고 넘어가도 된다. 

 

 

 

비잔틴 장애 허용을 좀 더 이해해 보자면, 

4명의 장군을 머릿속에 그려보자. 이들은 구두로만 '공격', '후퇴' 명령을 주고받는다. 4명 중 한 명은 사령관이 되어 먼저 명령을 내린다. 

사령관의 명령을 받는 3명의 장군은 그 명령을 인접한 장군들에게 한 번 더 내용을 전달한다. 즉 전파가 2번 일어나는 것이다. 

여기서 모두가 '공격', 혹은 '후퇴'에 합의점이 도달되면 적의 침공에 안전하고 일부 장군들은 후퇴하고 일부는 공격하면 전쟁에서 패배하게 된다. 

 

 

1명의 스파이 장군이 있다고 가정하고, '공격'을 '후퇴'라고 바꿔어 말한다고 해보자. 어떠한 경우에도 4명의 장군(사령관 포함) 모두 하나의 명령에만 합의점이 나오게 된다. 

 

1명의 스파이 사령관이 있다고 가정하고, '공격'을 '후퇴'라고 바꿔어 말한다고 해보자. 어떠한 경우에도 4명의 장군(사령관 포함) 모두 하나의 명령에만 합의점이 나오게 된다. 

 

이는 33% 이하의 반역자가 있어도 하나의 합의점이 만들어진다. 그래서 블록체인에는 공격자가 있어도 전체 시스템이 전혀 이상이 없다는 것이다. 

 

 

공격자가 아무리 애를 써도 전체 시스템은 먼지 한 톨 무너지지 않는다. 왜냐면 다수의 합의 과정이 있기 때문

공격자가 아무리 애를써도 전체 시스템은 먼지 한 톨 무너지지 않는다. 왜나면 다수의 합의 과정이 있기 때문

반응형
저작자표시 비영리 변경금지 (새창열림)

'BlockChain' 카테고리의 다른 글

[쉽게 이해하는 블록체인 A-Z] 1.5 암호화폐Layer, 에코시스템, 통화정책, 채굴난이도  (1) 2023.03.05
[쉽게 이해하는 블록체인 A-Z] 1.4 컨센서스 프로토콜, PoW, 블록체인 데모  (0) 2023.03.05
[블록체인 지표] 500% 돈버는 온체인 지표 보는 법  (0) 2023.01.27
[쉽게 이해하는 블록체인 A-Z] 1.2 Immutable ledger,분산 P2P Network  (0) 2023.01.23
[쉽게 이해하는 블록체인 A-Z] 1.1 블록체인 이란, SHA256  (0) 2023.01.23
    'BlockChain' 카테고리의 다른 글
    • [쉽게 이해하는 블록체인 A-Z] 1.4 컨센서스 프로토콜, PoW, 블록체인 데모
    • [블록체인 지표] 500% 돈버는 온체인 지표 보는 법
    • [쉽게 이해하는 블록체인 A-Z] 1.2 Immutable ledger,분산 P2P Network
    • [쉽게 이해하는 블록체인 A-Z] 1.1 블록체인 이란, SHA256
    플라즈밍
    플라즈밍
    퀀트 주식투자 자산배분 데이터분석 정보 공유 프로그래밍,투자 주제의 책 강의 리뷰 노하우 전수

    티스토리툴바