Klaytn 클레이튼 블록체인 입문

빵 반죽·2022년 1월 18일
0

기존 블록체인 약점

  1. Scalability(확장성)
  • TPS + Block interval
  • 거래 처리량 작고 네트워크 느림
  1. Finality(검증)
  • TX변경 불가 보증을 위해 기다리는 시간
  • 비트코인 6 block, 이더리움 25 block -> 너무 오래 걸림
  1. Fork(분기)
  • PoW -> 먼저 온 블록을 받아들이므로 포크 발생

합의

  • public 블록체인 -> PoW, PoS
  • private 블록체인 -> pBFT, Raft
  • BFT(비잔티움 결함 허용)
    -> 참여 노드 수 제한/ 성능 높임
    -> 분산화 약화/ 투명성 저하
  • 클레이튼-> IBFT(이스탄불 비잔티움 결함 허용)
    -> private consensus with pubic disclosure
    -> 합의 달성 소수 private nodes/ 블록 생성 결과 접근 및 검증 노드

proposer: 블록 제안자
prepare: 살아있는 노드 확인
commit: finality 형성(바로 투표)
-> 바로 finality를 형성해서 좋다. 그러나 노드의 수가 늘어나면 통신량도 기하급수적으로 는다.

블록 생성 및 전파

  • round: 블록 생성 주기
    -> 블록 생성 간격 1초
  • 제안자(proposer)와 위원회(committee)를 Governance Council 노드들(합의 노드들) 중 선택한다.
    -> randomly & deterministically 헤더 난수로 증명, broadcast
  • 블록 전파(block propagation)
    -> 2/3 동의 후 블록 추가
    -> 프록시 노드를 통해 엔드포인트 노드들에게 전달

네트워크 구조

  • core: CNN+PNN
    -> 빠른 합의를 위해 CNN은 닫혀 있음. 엔드 노드를 위한 정보는 따라서 각 CNN 노드에 연결된 프록시 노드가 전달.
    -> 엔드포인트는 참여 제한 없음
  • bootnode: 새로운 노드들이 네트워크에 등록하고 다른 노드에 연결할 수 있도록 정보 전달
    -> CN(공개 안됨), PN(허용된 프록시만 등록하고 엔드와 연결되도록), EN(프록시와 엔드와 연결 도움)

코어 셀

  • 확장이 필요할 때
    -> 클레이튼은 노드/서버가 늘어난다고 해서 성능이 좋아지지 않음.
    -> 대신에 노드 자체의 성능을 좋게 함(RAM/CPU).
    -> 합의 노드 하나 하나 비슷하게 성능이 좋아져야 효과가 있음(하나만 특출나봤자 쓸모x)

  • 합의노드(CN) 참여 조건
    -> physical core 40+
    -> 256GB RAM
    -> 14TB per year
    -> 10G network

  • 한 CN 당 여러 PN -> PN은 한꺼번에 엄청난 다수의 엔드 포인트와 연결하고, CN은 방해받지 않기 위해

서비스 체인

  • 메인 넷과 연결된 독립적으로 운영되는 체인
    -> 특별한 노드 환경 필요 ex. 가스비 0
    -> 맞춤 보안 필요(private blockchain)
    -> 많은 처리량, 메인넷 배포시 경제성 낮음

0개의 댓글

관련 채용 정보