의견.png

우로보로스 비잔틴 장애 허용

위키원
eom9522 (토론 | 기여)님의 2019년 9월 4일 (수) 13:22 판 (구현 언어)
이동: 둘러보기, 검색

우로보로스 비잔틴 장애 허용(OBFT; Ouroboros Byzantine Fault Tolerance)이란 간단한 결정론적 블록체인 기반 프로토콜로, 서버는 그들에게 이용 가능한 가장 긴 체인을 확장하는 거래의 블록을 분산시키는 미리 결정된 라운드 로빈(round-robin) 방식으로 돌아가게 된다. 서버는 거래의 결과로 클라이언트에 즉시 응답할 수 있으므로 거래의 결과를 얻을 수 있다.

개요

카르다노가 가지고 있는 기존 지분 증명 프로토콜의 한계, 그 중에서도 특히 Grinding Attack을 막기 위해 설계된 지분증명(Pos) 기반 합의 프로토콜로 우로보로스(Ouroboros)가 있는데, 이 기존의 우로보로스의 디자인에서 영감을 얻은 새로운 BFT 원장 합의 프로토콜이다. 2018년 11월에 발표된 페이퍼가 존재하며, 프로그래밍 언어 하스켈(Haskell) 과 러스트(Rust) 구현이 있다. 우로보로스 BFT를 사용하면 Shelley로의 구현 및 배포 시간을 단축할 수 있다고한다. 또한 우로보로스 비잔틴 장애 허용은 Byron이 사용하는 우로보로스 클래식과 우로보로스 제네시스 사이의 브리지(연결 다리) 역할을 한다.

구현 언어

  • 하스켈 : 순수하고 단순한 함수형 프로그래밍 언어로 함수형 프로그래밍 분야의 학자들이 부작용의 해악에 대한 아이디어를 집어넣어 설계해 20년 이상 개발해왔다. 하스켈은 함수형 프로그래밍의 이상에 대한 순수한 표현 중 하나로 I/O 채널을 다루는 데 있어 신중한 메커니즘을 갖추고 있으며, 또한 불가피한 부작용도 갖고 있다. 그러나 그 부분을 제외한 나머지 부분은 완벽하게 기능한다. 커뮤니티는 매울 활발하여 십여 개의 하스켈 변형 버전이 나와 있다. 그 중에서는 독립형도 있고 자바 도는 파이썬과 같은 주류 프로젝트와 통합되는 형태도 있다. 대부분의 이름은 하스켈 연구가 활발하게 이루어지는 스코틀랜드 또는 하스켈에서 구현되는 아이디어의 지적 뿌리라고 할 수 철학자/논리학자와 관련된다. 데이터 구조가 복잡하고 많은 형식이 사용된다면 하스켈을 통해 효율적인 작업이 가능할 것이다.
  • 러스트 :

각주

참고자료

같이보기

  의견.png 이 우로보로스 비잔틴 장애 허용 문서는 합의 알고리즘에 관한 토막글입니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 이 문서의 내용을 채워주세요.