콘텐츠로 바로가기

Blockchain & Decentralized Web

신뢰의 전산화인 블록체인 합의 알고리즘(PoW, PoS), 스마트 컨트랙트 물리, 그리고 분산 원장 기술(DLT)을 다루는 학습 노드입니다.

Article
M

Me

hyunyoun's Blog

web-emerging-technologieswebemerging-technologiesphysical-systemsblockchaindecentralized-webblockchain-physicsblockchain-architecture8 min read

1. Overview

탈중앙화 웹 및 블록체인 물리(Decentralized Web & Blockchain Physics)는 중앙 집중화된 서버(DB) 없이, 서로를 믿지 않는 전 세계의 노드들이 데이터의 무결성과 순서를 암호학적으로 합의해내는 전산학적 신뢰 구축 메커니즘을 다룹니다.

기존 웹(Web 2.0)이 아마존이나 구글의 거대한 물리적 서버에 데이터를 의탁했다면, 블록체인(Web3)은 데이터가 해시 체인(Hash Chain)으로 맞물려 과거 기록을 위조하려면 그 이후의 모든 블록을 다시 채굴해야 하는 비가역적(Irreversible) 수학 물리를 띱니다. 학습자는 작업 증명(PoW)에서 CPU를 갈아 넣어 51% 공격을 방어하는 물리적 에너지 한계와 지분 증명(PoS)의 경제적 페널티(Slashing)를 분해하고, 스마트 컨트랙트(Smart Contract)라는 가상 머신(EVM)에서 코드가 곧 법(Code is Law)이 되어 실행을 보장하는 스마트 계약의 물리적 제약 조건을 체화합니다.

2. Scope & Boundaries

In-Scope

  • 블록체인 물리(Chain Physics): 블록 구조, 머클 트리(Merkle Tree), 암호학적 해시 체이닝, Nonce.
  • 합의 알고리즘(Consensus): PoW(작업 증명) 난이도 조절, PoS(지분 증명), BFT(비잔틴 장애 허용).
  • 실행 환경(Execution): 스마트 컨트랙트, EVM(Ethereum Virtual Machine), 가스(Gas) 비용 모델, 튜링 완전성 제어.
  • 네트워크 동기화: P2P 가십(Gossip) 프로토콜, 멤풀(Mempool) 대기열, 상태 트리(State Trie) 무결성.

Out-of-Scope

  • 암호 화폐 차트 분석 및 투자: 코인 가격 예측이나 경제학적 투자 기법 ightarrow ightarrow 전산학 범위 밖.
  • 웹 백엔드 트랜잭션 (ACID): 일반적인 관계형 데이터베이스(MySQL)의 락킹(Locking) 및 롤백 메커니즘 ightarrow ightarrow 04-03. Data Consistency & Isolation 영역으로 위임.

Boundaries

  • 블록체인 vs 분산 시스템 (14-01-01 vs 07-01): 일반적인 분산 시스템(07-01)은 '서로 믿을 수 있는' 구글의 내부 서버 1,000대가 장애(Crash)를 극복하고 고가용성을 유지하는 Paxos/Raft 물리라면, 블록체인(14-01-01)은 '서로 언제든 배신할 수 있는' 악의적 노드들 사이에서 비잔틴 장애(Byzantine)를 방어하며 1개의 진실을 합의해내는 제로 트러스트(Zero Trust) 물리입니다.

3. Counterexample

  • 공짜 무한 루프의 환상 (Infinite Loop Fallacy): 스마트 컨트랙트를 짤 때 일반 백엔드처럼 while(true) 같은 무한 루프를 방치하는 행위. 블록체인에서는 모든 노드가 내 코드를 똑같이 실행해야 하므로, 무한 루프에 빠지면 전 세계 네트워크가 멈춥니다. 이를 방지하기 위해 스마트 컨트랙트는 연산마다 물리적인 주유비(Gas)를 지불하게 강제하며, 가스가 떨어지면 실행을 롤백(Revert)시켜 네트워크 붕괴를 막습니다.
  • 수정 가능한 데이터 (Mutable State Fallacy): 배포한 스마트 컨트랙트에 치명적인 보안 버그(예: Reentrancy 해킹)가 발견되었을 때, 서버 코드를 고치듯 덮어쓰기(Update)를 시도하는 무지. 블록체인에 한 번 올라간 코드와 데이터는 물리적으로 절대 수정 불가능(Immutable)합니다. 변경이 필요하다면 프록시 컨트랙트(Proxy Pattern)를 미리 뚫어두어 논리적인 라우팅 주소만 갈아끼우는 우회로를 짜야 합니다.

4. Prerequisites

  • 비대칭키 암호학과 해시 (Basic): RSA/ECC와 SHA-256이 데이터의 위변조를 어떻게 막는지 알아야 머클 트리를 이해할 수 있습니다. (10-01. Cryptography)
  • 분산 시스템 이론 (Recommended): CAP 정리와 비잔틴 장군 문제(Byzantine Generals Problem)를 알아야 PoW가 왜 위대한 수학적 타협인지 깨닫게 됩니다. (07-01. Distributed Physics)

5. Learning Map

Sequence Core Cluster Objective & Description Evidence (BoK)
1 Immutable Chain 왜 10년 전 비트코인 장부를 지금 수정하려면 우주적인 에너지가 필요한지 해시 체이닝의 물리를 해부합니다. Primary
2 Consensus Mechanics 서로 모르는 해커와 은행이 모여서 가짜 장부를 가려내고 1개의 진실(블록)에 합의하는 비용 증명(PoW/PoS)을 뜯어봅니다. Industry
3 Smart Contracts (EVM) 코드를 한 줄 실행할 때마다 돈(Gas)을 내야 하는 세상에서, 메모리를 극한으로 아끼는 솔리디티(Solidity) 코딩을 배웁니다. Primary
4 Scaling & ZKP 이더리움이 초당 15건밖에 처리 못하는 속도 한계를 깨기 위해 롤업(Rollup)과 영지식 증명(ZKP)으로 압축하는 마법을 익힙니다. Industry

6. Learning Topics

Basic

Core Topic 01: 머클 트리와 체인(Chain) 물리

  • Why to Learn: 중앙 DB가 없는데도 어떻게 내 통장 잔고가 조작되지 않았는지 100% 확신할 수 있는 암호학적 수학을 이해하기 위함입니다.
  • What to Learn: Hash Function(SHA-256), Block Header, Merkle Root, Nonce, Genesis Block.
  • How to Learn: 1번 블록의 해시값이 2번 블록의 헤더에 박혀 있기 때문에, 누군가 1번 블록의 글자 하나만 바꿔도 2번, 3번, 4번 블록의 해시값이 도미노처럼 깨져버리는 물리적 연쇄 붕괴 구조를 그림으로 추적합니다.
  • Implement: 파이썬이나 자바스크립트로 간단한 Block 클래스를 만들고, 이전 블록의 hash와 현재 data를 섞어 내 hash를 만드는 50줄짜리 미니 블록체인 객체 모델링 작성.

Core Topic 02: 비잔틴 장애 허용(BFT)과 PoW/PoS 합의

  • Why to Learn: 51%의 악당이 가짜 장부를 우기려 할 때, 네트워크가 이를 어떻게 수학적으로 거부하고 물리적으로 방어하는지 알기 위해서입니다.
  • What to Learn: Byzantine Generals Problem, Proof of Work (PoW), Difficulty Target, Proof of Stake (PoS), Slashing.
  • How to Learn: PoW에서 정답(Nonce)을 찾기 위해 CPU를 불태워야만 발언권이 주어지는 '비용 강제 물리'와, PoS에서 자신의 전 재산(Stake)을 걸고 거짓말을 하면 재산을 몰수당하는(Slash) '경제적 페널티 물리'를 비교 분석합니다.
  • Implement: PoW 시뮬레이터를 작성하여, 해시값 앞자리에 0이 4개 나오는 Nonce를 찾기 위해 CPU가 수십만 번의 연산을 도는 채굴(Mining) 과정을 콘솔 로그 타임스탬프로 측정.

Core Topic 03: 가상 머신(EVM)과 가스(Gas) 역학

  • Why to Learn: 누군가 고의로 짠 악성 무한 루프 코드가 이더리움 네트워크 전체 서버를 다운시키는 것을 막는 중단 장치(Halting Problem 회피)를 이해하기 위함입니다.
  • What to Learn: Ethereum Virtual Machine(EVM), Gas Limit, Base Fee, Opcodes, Solidity.
  • How to Learn: 스마트 컨트랙트에서 배열에 데이터를 한 줄 추가할 때마다(SSTORE) 메모리 가격(가스비)이 기하급수적으로 폭등하는 EVM 바이트코드 물리표를 보고, 일반적인 배열 조작 방식을 어떻게 회피해야 하는지 분석합니다.
  • Implement: 리믹스(Remix IDE)에서 Solidity로 투표 컨트랙트를 짜고 배포한 뒤, 함수 호출 시 지불되는 실제 트랜잭션 가스(Gas Used)가 코드를 리팩토링함에 따라 어떻게 줄어드는지 벤치마킹.

Core Topic 04: L2 스케일링과 영지식 증명(ZKP)

  • Why to Learn: 초당 수만 건을 처리하는 비자(Visa) 카드에 비해 턱없이 느린 블록체인 메인넷의 속도를 끌어올리기 위한 압축 기술을 익히기 위함입니다.
  • What to Learn: Layer 2, Optimistic Rollup, ZK-Rollup (Zero-Knowledge Proof), SNARKs/STARKs.
  • How to Learn: 1만 건의 거래를 메인넷(L1)에서 하나하나 검증하면 하루 종일 걸리지만, L2 서버가 1만 건을 연산한 뒤 "내가 제대로 계산했다"는 하나의 작은 수학적 증명(ZKP)만 L1에 던져 확인받는 무결성 압축 물리학을 뜯어봅니다.
  • Implement: (이론 및 아키텍처) 비밀번호를 상대방에게 알려주지 않고도 "내가 비밀번호를 알고 있음"을 수학적으로 증명하는 알리바바 동굴 비유(ZKP)를 트랜잭션 무결성 검증 아키텍처 다이어그램으로 설계.

7. Terminology

Term (EN / ko, abbr) 1문장 정의 단계(기본/권장/실무/심화) 역할/맥락 관련 개념 유사/대비/함께 사용 오해 포인트 Evidence(Primary/Secondary/Industry) Flags(core)
Merkle Tree 1만 개의 트랜잭션을 2개씩 짝지어 해시(Hash)하고, 결국 1개의 뿌리(Root) 해시로 압축해 위변조를 감시하는 데이터 검증 트리입니다. 기본 데이터 무결성 Hash, Block Header vs. Binary Search Tree 모든 트랜잭션을 다운받아야만 내 거래를 증명할 수 있다는 오해 Primary core
Proof of Work (PoW) 가짜 장부를 만들지 못하도록, 해시 퍼즐을 푸는 데 막대한 전기와 CPU 시간을 태운 자에게만 블록 생성 권한을 주는 물리적 합의입니다. 권장 합의 알고리즘 Hash Rate, Nonce vs. Proof of Stake 채굴이 복잡한 암호를 해독해 인류 과학에 기여하는 연산이라는 착각 (단순 노가다임) Primary core
Gas (EVM) 이더리움 가상 머신에서 코드가 한 줄 실행될 때마다 내야 하는 주유비로, 무한 루프 공격을 막는 물리적 차단기(Breaker)입니다. 실무 자원 통제 Smart Contract vs. Cloud AWS Billing 코딩을 대충 해도 서버비(가스)가 항상 일정할 거라는 웹2 마인드 Industry Docs core
Zero-Knowledge Proof 정보 자체(비밀번호, 잔액)를 상대방에게 보여주지 않으면서도, 그 정보가 참이라는 것을 수학적으로 완벽히 증명하는 암호학 마법입니다. 심화 프라이버시/확장 ZK-Rollup vs. Encryption (암호화) 암호화해서 보내면 그게 영지식 증명이라는 흔한 오해 (영지식은 '증명' 연산임) Industry core

8. References

Primary References

  • [CS2023: Security & Parallel Computing] — 비잔틴 장애 허용(BFT) 알고리즘 분산 합의 및 암호학적 해시 체인 무결성 보장.
  • [SWEBOK v3: Software Security] — 스마트 컨트랙트 모듈의 불변성(Immutability)에 따른 런타임 보안 패치 한계점 및 감사(Audit) 설계.

Secondary References

  • [Mastering Ethereum (Andreas M. Antonopoulos)] — EVM 옵코드(Opcode) 가스 비용 모델 및 재진입(Reentrancy) 공격의 스택 프레임 물리.
  • [Bitcoin: A Peer-to-Peer Electronic Cash System] — 나카모토 사토시의 PoW 논문; 롱기스트 체인(Longest Chain) 룰에 의한 확률적 파이널리티(Finality) 증명.

Industry References

  • [Ethereum Foundation: Smart Contract Security] — 프록시 패턴(Proxy Pattern)을 이용한 스마트 컨트랙트 논리적 업그레이드 바인딩.
  • [Matter Labs: ZK-Rollups Architecture] — L1(메인넷) 데이터 가용성(Data Availability) 확보와 L2 오프체인 연산 압축 분할.

9. Final Checklist

Primary Checklist

  • 블록체인에서 과거 블록의 트랜잭션 하나를 위조할 경우, 그 이후에 연결된 모든 블록의 해시값이 틀어지며 네트워크(노드)에서 물리적으로 거부당하는 체인 붕괴를 설명할 수 있는가?
  • PoW(작업 증명)와 PoS(지분 증명)가 비잔틴 장애(악의적 해커)를 방어하기 위해 각각 '에너지 낭비'와 '자본 몰수'라는 물리적 페널티를 어떻게 활용하는지 비교했는가?

Secondary Checklist

  • 스마트 컨트랙트를 작성할 때 무한 루프(while(true))나 방대한 배열 순회를 넣을 경우, 가스(Gas) 고갈로 인해 트랜잭션이 런타임 롤백(Revert)되는 EVM의 할팅(Halting) 방어를 뚫지 않게 최적화했는가?
  • 블록체인에 한 번 배포된 스마트 컨트랙트는 절대 코드를 수정할 수 없다는 불변성(Immutability) 제약을 극복하기 위해 프록시(Proxy) 업그레이드 패턴 아키텍처를 설계했는가?

Industry Checklist

  • 스마트 컨트랙트 내에서 call.value()로 외부 송금 시, 잔고 차감 전 외부 악성 컨트랙트가 다시 내 함수를 호출해 돈을 털어가는 재진입(Reentrancy) 공격을 Check-Effects-Interactions 패턴으로 락(Lock)을 걸어 차단했는가?
  • 이더리움 메인넷(L1)의 느린 트랜잭션 속도를 해결하기 위해 도입된 ZK-Rollup이 1만 건의 거래를 오프체인에서 연산한 뒤 하나의 영지식 증명(SNARK)으로 압축해 L1에 던지는 구조적 이득을 측정했는가?

Decentralized Web & Blockchain Architecture

4 / 7