Victoree's Blog

[1-3] 블록체인 기반 플랫폼 본문

Blockchain

[1-3] 블록체인 기반 플랫폼

victoree 2021. 6. 21. 18:46
728x90

블록체인 기반 플랫폼 분류

공개형 블록체인

  • 누구나 블록체인 생태계에서 자신이 노드를 구성하여 참여할 수 있음
  • 개발자는 해당 플랫폼의 기능을 개선하거나 해당 플랫폼 기반의 새로운 서비스를 구축할 수 있음
  1. 비트코인 코어

    비트코인 레퍼런스 클라이언트로서 비트코인 파운데이션에서 개발

    → 비트코인 네트워크에 연결하여 비트코인 블록체인 데이터를 다운 / 동기화 / 비트코인 거래와 마이닝 등을 할 수 있음
  2. 이더리움

블록체인 기반의 범용 서비스 개발을 위한 컴퓨팅 플랫폼을 지향

  • 이더리움 로드맵
    • 1단계 프론티어
      • 암호화폐인 이더리움을 개발 및 채굴하고 네트워크를 형성하는 단계
    • 2단계 홈스테드
      • 이더리움에 노드들이 생기면서 생태계가 구축되는 초기 단계
    • 2016년 DAO 공격 이후, 1920000번째 블록에서 하드 포크 → 이더리움 클래식 출현
    • 3단계 메트로 폴리스
      • 개별 가구들이 모여 도시가 형성되는 것처럼, 이더리움의 대중화를 위한 인프라가 형성
      • 4370000번째 블록에서 1차 비잔티움 업그레이드
      • 2018년 2차 콘스탄티노플 업그레이드
      • 높은 컴퓨터 자원을 필요로하는 작업 증명에서 이더 보유자들의 지분 증명 방식으로 전환
        PoW → PoS
      • 4단계 세레니티

블록체인에 트랜잭션 뿐만 아니라 실행 가능한 프로그램 코드를 저장하고, 이를 실행하여 다양한 응용서비스를 개발할 수 있는 모델로 확장

프라이빗 블록체인

  • For 기업이나 특정 조직
    • 일정 자격조건을 갖춘 사람이나 회사들에 한해서만 네트워크에 참여를 허락
    • 각종 트랜잭션이나 블록체인의 정합성을 합의할 경우에도 일부 권한이 있는 노드들을 통해서만 수행시킴
  • 높은 처리 성능(권한 노드들만 합의 과정을 거침)
  • 데이터를 모두에게 공유하지 않고, 해당 트랜잭션에 관련된 노드들에게만 공유하는 경우
  • 프라이빗 블록체인에서 지원해야하는 기능
    • 프라이빗 채널
      • 해당 거래와 직접 관계가 없는 참여자에게는 거래 내용 비공개 및 관련 참여자들간 프라이빗 채널을 통해 거래 내용을 공유
    • 권한이 다른 노드들
      • 처리 과정을 관리 감독하거나 권한을 부여하는 등 특정 권한을 갖는 노드가 필요함
      • 모든 노드가 동일한 권한을 가져서는 안됨
    • 빠른 처리 속도와 높은 처리량
      • 은행, 주식거래, 티켓 예매 등 거래를 처리하기 위해서 높은 거래 처리 용량과 속도가 보장되어야 함
    • 스마트 컨트랙트
    • 시스템 커스터마이징
      • 기업환경에 맞도록 블록체인 전체 엔진을 커스터마이징 할 수 있어야 함
  1. 하이퍼레저 패블릭

하이퍼레저 프로젝트 중 하나로, 리눅스 재단과 함께 폐쇄형 블록체인을 개발하고 있음

  • 멤버쉽 서비스
    • 일정한 허가나 인증을 받는 노드만이 패블릭 네트워크에 참여할 수 있음
    • 참여자에 대한 관리
      → 사용자의 가입, 참여자의 신원확인, 참여기관 인증서 관리를 위한 참여자 인증서 발행,
      거래의 익명성을 위한 거래 인증서 발행, 통신 암호화를 위한 TLS 인증서 발행 등의 기능 제공
  • 블록체인 서비스
    • 데이터를 원장(ledger)라고 부름
      • 타임스탬프, 트랜잭션, 이전 블록 해시, 전체 계정 및 거래 증빙 정보등의 상태 정보가 저장됨
    • 공유 원장과 P2P 프로토콜, 합의 엔진 등이 구현되어 있음
    • 거래에 대한 합의 알고리즘 : PBFT(Practical Byzantine Fault Tolerance)를 사용
      • 참여한 전체 노드가 아니라 권한이 있는 노드만 투표를 하여 합의 함
      • 트랜잭션 처리 속도를 높이고, 많은 트랜잭션을 처리할 수 있음
  • 체인 코드 서비스
    • 이더리움의 스마트 컨트랙트처럼 트랜재션을 수행하기 위해 작성하는 프로그램
    • Go와 자바를 지원함
  • 패브릭 노드 구성
    • 개인형 블록체인이기 때문에, 패블릭 네트워크에 참여하는 모든 노드는 접근 권한이 있어야 함
    • 승인 노드 (Validating Peer)
      • 트랜잭션 유효성의 검증을 위한 합의 프로토콜의 실행을 담당
      • 승인된 트랜잭션은 블록에 담겨 블록체인에 추가됨
      • 승인 노드는 체인 코드의 배포와 호출, 조회 권한을 가지고 있음
    • 비승인 노드
      • 승인 노드에 접근하여, 트랜잭션 처리 요청을 전달
    • 이벤트 처리와 패블릭에 접근하기 위한 REST API를 제공
  1. 코다

블록체인 기술을 금융 서비스에 적용하기 위해 결성한 공동 프로젝트

코다는 블록체인이 아니라 공유 원장 플랫폼임

모두가 아니라 거래 당사자들끼리만 데이터를 공유하는 선택적 공유 원장 방식을 사용함

→ 금융권에 특화된 플랫폼을 개발하기 위함

  1. EEA (Enterprise Etherium Alliance)

공개형 이더리움 플랫폼을 기업 및 죅에 적용하는 데 필요한 것을 지원

데이터 프라이버시와 접근 제어, 성능 개선 같은 기능을 워킹 그룹을 만들어 명세화하고, 깅버을 대상으로 각종 교육 활동을 하고 있음

클라우드 블록체인 (BPasS == Blockchain Platform as a Service)

프라이빗 블록체인을 가장 손쉽게 구축하는 법은 상용 클라우드를 이용하는 것

  • ec2에 하이퍼레저 패블릭을 설치하고 개인형 클라우드 구축가능

클라우드에서 블록체인을 설치하고, 네트워크와 노드를 손쉽게 설정, 개발, 운영, 관리등을 효율적으로 할 수 있는 환경을 지원

차별화된 성능과 보안, 분석 기능을 제공하기 위한 노력을 하고 있음

  1. 마이크로소프트 - 코코 프레임워크
    블록체인 플랫폼이 아니라 이더리움이나 하이퍼레저와 같은 기존 블록체인 플랫폼을 기업에서 보다 쉽게 활용할 수 있도록 지원하기 위해 개발된 프레임워크

https://s1.tokenpost.kr/assets/uploads/20170811e03f6f8a5383f3590.jpg

TEE : CPU 상에 있는 별도의 고립된 안전한 공간

  • 안전하게 특정 코드와 데이터를 로드하고 실행할 수 있음
  • TEE를 통해 신뢰할 수 있는 블록체인 네트워크를 구성함
  1. IBM

하이퍼 패블릭을 기반으로 한 IBM 블록체인 을 제공

블루믹스에서 네트워크 설정 도구를 사용하여 손쉽게 블록체인 네트워크를 구성하고, 노드를 추가 및 관리할 수 있음

728x90

'Blockchain' 카테고리의 다른 글

[2-2] 이더리움 단일 상태 모델  (0) 2021.06.22
[2-1] 이더리움 플랫폼  (0) 2021.06.22
[1-2] 블록체인 기술 및 P2P 컴퓨팅  (0) 2021.06.21
[1-1] 블록체인 컴퓨팅  (0) 2021.06.21
[0] 블록체인과 이더리움  (1) 2021.06.21
Comments