"해시그래프"의 두 판 사이의 차이
잔글 |
잔글 (→같이 보기) |
||
(사용자 7명의 중간 판 53개는 보이지 않습니다) | |||
1번째 줄: | 1번째 줄: | ||
− | '''해시그래프'''( | + | [[파일:해시그래프 로고.png|썸네일|200픽셀|'''해시그래프'''(Hashgraph)]] |
+ | [[파일:해시그래프 글자.png|썸네일|300픽셀|'''해시그래프'''(Hashgraph)]] | ||
− | + | '''해시그래프'''<!--해시 그래프, 해쉬그래프, 해쉬 그래프-->(Hashgraph)란 기존 [[블록체인]]의 한계를 극복하고자 [[연결리스트]] 방식이 아니라, 하나의 [[노드]]가 다른 불특정 노드에게 [[가십]](gossip)을 전달하는 방식으로 작동하는 [[알고리즘]]이다. 기존 블록체인의 장점인 위변조 방지 기능과 탈중앙 의사결정구조를 유지하면서도, 1초에 수십만 건 이상의 빠른 속도로 [[트랜잭션]]을 처리할 수 있다. [[리몬 베어드]](Leemon Baird)가 창시했다. [[헤데라 해시그래프]] 미국 본사의 CEO는 [[맨스 하몬]](Mance Harmon)이다. | |
− | '''해시그래프'''( | ||
− | + | {{:2019년 업비트 개발자 컨퍼런스 배너|해시그래프가 2019년 업비트 개발자 컨퍼런스에 참여했습니다.}} | |
− | |||
− | == 합의 알고리즘 == | + | ==개요== |
− | 위에서 설명했듯이 해시그래프의 | + | [[파일:리몬 베어드.jpg|썸네일|200픽셀|'''[[리몬 베어드]]'''(Leemon Baird)]] |
− | 이러한 해시그래프의 네트워크 작동방식( | + | [[파일:맨스 하몬.jpg|썸네일|200픽셀|'''[[맨스 하몬]]'''(Mance Harmon)]] |
− | 또한 | + | |
− | [[리몬 베어드]](Leemon Baird)는 이런 방식의 합의에 대하여 "무료이며, 다른 사람과 토론할 필요도 없고 당신이 옳다는 것을 수학적으로 보증하는 완벽한 합의를 얻어낼 수 있다"고 이야기한다.< | + | 헤데라 해시그래프 플랫폼은 새로운 형태의 분산 합의를 제공한다. 서로를 모르거나 신뢰하지 않는 사람들이 믿을 수 있는 중개자 없이도 안전하게 온라인 상에서 협력하고 거래할 수 있는 방법이다. 플랫폼은 번개처럼 빠르고, 공정하며, 안전하며, [[Pow]] 작업을 요구하지 않는다. 헤데라는 개발자들이 이전에는 불가능했던 완전히 새로운 종류의 [[디앱]]을 구축할 수 있게 한다. 즉, HBAR 암호화폐를 사용하여 헤데라 해시그래프 플랫폼 위에 전 세계적으로 디앱을 쉽게 구축할 수 있게 돕는다. 그리고 디앱 마다 선택한 라이선스에 대해 당사자는 완전한 소유권 및 재량권을 갖게 된다. |
− | 이러한 | + | |
+ | 또, 헤데라 해시그래프 플랫폼은 위원회(Council)에 의해 운영된다. 위원회는 각 분야의 선두 기관과 기업 39곳으로 구성될 것이며, 또 다양한 산업과 지역을 반영하고, 높은 브랜드와 신뢰도를 가진 시장을 확보하고 다양한 관점을 장려하기 위해 멤버십을 구성할 것이다. 운영 위원는 이사회를 선출하고 소위원회 멤버십을 통해 전문성을 제공한다. 헤데라의 운영 조건은 어떤 멤버라도 지배력을 갖지 못하도록 하고, 작은 그룹의 멤버들도 전체에 과도한 영향력을 행사하지 못하게 한다. | ||
+ | |||
+ | ==특징== | ||
+ | [[파일:비교.PNG|썸네일|400픽셀|블록체인(blockchain)과 해시그래프(hashgraph) 비교]] | ||
+ | 해시 그래프 데이터 구조와 [[합의 알고리즘]]은 분산된 합의를 위한 새로운 [[플랫폼]]을 제공한다. 합의 알고리즘의 목표는 커뮤니티에서 모든 사람이 단 한 명의 회원도 신뢰하지 않을 경우, 그들 중 일부가 거래를 생성한 순서에 대한 합의에 이르게 하는 것이다. | ||
+ | |||
+ | ===블록체인과 해시그래프의 차이점=== | ||
+ | [[블록체인]]은 자라면서 끊임없이 가지를 치는 나무와 같다. 반면 해시그래프는 새로운 성장을 위해 가지치기하기 보다는 다시 몸통으로 돌아가 엮어짐으로 합쳐진다. 블록체인과 해시그래프 모두 어떤 멤버라도 거래를 만들 수 있으며, 이것은 결국 블록에 넣어질 것이다. 그리고 나서 커뮤니티 전체에 퍼질 것이다. 블록체인 경우, 이러한 블록은 하나의 긴 [[체인]]을 형성하도록 되어 있다. 만약 두 채굴자가 동시에 두 블록을 만들면, 결국 한 블록을 선택하여 다른 한 블록을 버릴 것이다. 그것은 마치 자라나는 나무가 그 나뭇가지를 제외한 모든 것을 잘라내는 것과 같다. 해시그래프에서는 모든 블록이 사용되고, 그 어떤 블록도 버려지지 않는다. 모든 가지들은 영원히 계속 존재하며, 결국 다시 하나로 합쳐진다. 이게 더 효율적이다. | ||
+ | |||
+ | 게다가 블록체인에서는 새로운 블록이 예상보다 너무 빨리 도착하면 실패한다. 블록체인은 인위적으로 성장을 늦추기 위해 PoW나 어떤 다른 메커니즘이 필요하다. 반면, 해시그래프에서는 아무것도 버려지지 않는다. 빠르게 성장하는 구조에 아무런 해가 없다. 모든 멤버는 원할 때마다 거래와 블록을 만들 수 있다. 그래서 그것은 매우 간단하고, 매우 빠르다. 마지막으로 해시그래프는 가지치기가 필요하지 않기 때문에 더 단순하고, 비잔틴 합의와 공정성과 같은 더 강력하게 수학적으로 보장된 알고리즘이다. 반면 블록체인은 [[비잔틴 합의]]도 공정성도 갖추고 있지 않다. 다시 말해, 해시그래프 알고리즘은 공정성, 빠른 속도, 비잔틴 보안 준수, ACID 준수, 효율성, 저렴한 가격, [[타임스탬프]], [[디도스]] 공격 저항성 등을 다 갖추었다. | ||
+ | |||
+ | ===네트워크 작동방식=== | ||
+ | 일반적인 블록체인 네트워크에서 특정 [[트랜잭션]]이 발생하면 전체 [[네트워크]]가 합의 및 검증에 참여하는 방식과는 달리, 해시그래프 노드는 발생한 트랜잭션뿐만 아니라 네트워크의 현재 상태나 과거 이력에 대한 정보 조각들을 보고서 형태로 만들어서 무작위로 이웃 노드를 선택하여 전파한다. 새로운 정보가 발생하면 이전에 전파한 보고서에 내용을 추가하고 다시 무작위로 노드를 선택하여 계속 전파한다. 이 과정을 지속적으로 반복하는데, 이를 gossiping이라고 한다. | ||
+ | |||
+ | ===합의 알고리즘=== | ||
+ | 해시그래프는 새로운 알고리즘 방법을 통하여 합의를 이루는 기술이다. 정확한 알고리즘의 명칭은 스월드 해시그래프 합의 알고리즘(Swirlds hashgraph consensus algorithm)이다.<ref>klim066, 〈[https://steemit.com/kr/@kim066/hashgraph 해시그래프 (Hashgraph), 가상 화폐 기술 혁신을 이루다?]〉, 《스팀잇》</ref> 2016년 12월 11일, [[스월즈]]사(Swirlds. Inc.)에 의해 소개되었다. 위에서 설명했듯이 해시그래프의 [[노드]]들은 정보를 보고서 형태로 만들어서 전파하는데 이 보고서에는 정보를 취득한 시간을 나타내는 해시값이 포함되어 있다. 이 해시값을 레포트에 포함하는 개념을 gossip about gossip이라고 한다. 이러한 해시그래프의 네트워크 작동방식(gossiping)과 gossip about gossip은 결과적으로 네트워크가 정보 발생 순서를 확인할 수 있게 한다. 이런 방식의 의의는 일반적인 블록체인 네트워크에서 상대적으로 높은 합의 권한을 가진 노드가 악의적으로 데이터를 지연시켜서 변조시킬 가능성을 막을 수 있다는 데 있다. | ||
+ | |||
+ | 또한 해시그래프 네트워크는 단순히 해시값만 검사함으로써 누가 어떤 정보를 언제 발생시켰는지 알 수 있게 된다. 특정 노드는 네트워크에 유용한 정보에 대해서 반대표를 던지지 않을 것이라는 신념에 기초하여 가상의 투표를 수행한다고 가정했을 때 자연스럽게 합의(consensus)가 도출되게 된다. [[리몬 베어드]](Leemon Baird)는 이런 방식의 합의에 대하여 "무료이며, 다른 사람과 토론할 필요도 없고 당신이 옳다는 것을 수학적으로 보증하는 완벽한 합의를 얻어낼 수 있다"고 이야기한다. 여기에 덧붙여서 [[맨스 하몬]](Mance Harmon)은 해시그래프 합의 알고리즘의 이런 특성들은 현재 블록체인 세계에서 빈번하게 발생하고 있는 [[포크]] 발생 가능성을 배제시킨다고 언급하고 있다. 이러한 원리로 인하여 헤데라 해시그래프 측은 블록체인 네트워크에 비하여 높은 성능, 보안, 공정성과 신뢰성을 실현할 수 있다고 주장하고 있다. | ||
+ | |||
+ | ====DAG==== | ||
+ | 헤데라 해시그래프는 [[DAG]]내에서 ‘비동기식 비잔틴 장애 허용([[aBFT]], Asynchronous Byzantine Fault Tolerance)’ 합의 알고리즘을 이용한다.<ref name="kblock">kblock, 〈[https://steemit.com/kr/@kblock/34-hashgraph-feat (케블리) #34. ‘해시그래프(Hashgraph)’, 블록체인을 뛰어넘는 신뢰 프로토콜이 될 수 있을까? (feat. 헤데라)]〉, 《스팀잇》</ref> 이는 기존 블록체인 네트워크와는 조금 다른 형태의 분산원장 플랫폼이다. 기존의 블록체인은 모든 참여자들이 한 블록씩 차례로 검증을 진행한다. 하지만 DAG에서는 모든 [[노드]]들이 해당 블록을 동시에 검증할 필요가 없으며, 수많은 노드들이 분산되어 각자 검증을 동시에 진행한다. 즉, ‘차례로 검증한다’는 기존 블록체인에 틀을 깬 것이다. 해시그래프는 DAG을 통해서도 충분히 검증 결과의 완결성을 보증할 수 있다고 주장한다. [[IOTA]]가 이런 방식의 분산원장 기술을 이용하고 있다. DAG는 다수의 검증이 동시에 이루어질 수 있기 때문에 빠른 속도를 자랑한다. 헤데라 해시그래프는 초당 수십만 개의 거래를 처리할 수 있다고 밝혔다. 완결성을 확정하기 까지 필요한 시간은 약 3초이다. | ||
+ | |||
+ | ===인터넷=== | ||
+ | ====인터넷 레이어==== | ||
+ | 노드는 완벽한 포워드 보안을 위해 [[TLS]] 암호화에 의해 보호되는 [[TCP]]/[[IP]] 연결에 의해 통신한다. 노드는 기호 이름이 아닌 IP 주소와 포트로 처리되므로 [[DNS]] 시스템에 대한 공격은 네트워크에 영향을 미치지 않는다. | ||
+ | |||
+ | ====해시그래프 컨센서스 레이어==== | ||
+ | 노드는 고객들로부터 거래를 받아 [[가십 프로토콜]] 네트워크를 통해 거래를 공유한다. 이후 모든 노드가 해시그래프 합의 알고리즘을 실행하여 각 [[트랜잭션]]에 대한 합의 [[타임스탬프]] 및 합의에 도달한다. 그런 다음 각 노드는 공유 상태의 복사본을 수정하기 위해 합의 하에 거래를 적용한다. 이러한 방식으로 모든 노드는 특정한 샤드 내의 동일한 합의 상태를 유지한다. | ||
+ | ====서비스 레이어==== | ||
+ | * 암호화폐 | ||
+ | 암호화폐는 빠른 속도로 설계되어 네트워크 요금을 낮추어 아주 작은 마이크로 트랜잭션을 실용화한다. 헤데라 플랫폼이 실행되면, 어떤 사용자라도 네트워크에서 노드를 실행할 수 있고 그렇게 함으로써 암호 지불을 받을 수 있다. 사용자는 어떤 이름이나 주소도 없이 키 쌍을 생성함으로써 계정을 만들 수 있다. 선택적으로, 사용자가 신분증 해시를 부착할 수 있도록 규정이 마련된다. 이는 사용자가 선택하는 제3자 인증기관 또는 신원 기관으로부터 올 수 있다. 이는 KYC(Know Your Customer) 또는 AML(Anti-Money Laundering) 법률의 관할권에 사용될 암호화폐로 계정에 대해 규제 준수를 허용하기 위한 것이다. | ||
+ | * 파일 저장 | ||
+ | 파일 시스템은 사용자가 정확히 무엇을 저장하고 무엇을 저장하지 않는지에 대한 합의를 통해 정보를 저장할 수 있도록 한다. [[샤드]]의 모든 노드는 동일한 파일을 저장하므로, 노드 중 하나가 충돌해도 손실되지 않는다. 저장된 정보는 허가를 받은 사람만이 삭제할 수 있다. 이런 식으로 파일 시스템은 폐기 서비스 역할을 할 수 있다. 예를 들어, 미래에 사용자는 자동차부(DMV)로부터 운전면허를 발급 받을 수 있으며, 사용자와 DMV는 이를 원장에 해시하는 거래에 디지털 서명한다. 둘 다 면허 해시를 제거할 권리가 있다. 사용자는 면허 파일 사본을 해당 사용자에게 제공하여 유효한 면허를 가지고 있음을 증명하도록 선택할 수 있으므로, 사용자는 해시가 여전히 원장에 저장되어 있는지 확인할 수 있다. DMTV가 라이선스를 취소하면 해시도 삭제되어 더 이상 라이선스가 유효하지 않음을 보여줄 것이다. 사용자가 해시를 다시 저장하려고 할 경우, DMV의 서명이 없으면 해시가 DMV의 협조 없이 사용자만 저장되었으며 사용자가 운전할 수 있는 권리에 대한 유효한 증거로 간주되지 않을 것이다. | ||
+ | |||
+ | 파일은 실제로 [[머클트리]]로 저장되지만, 해시그래프는 개발자들이 그것들을 조작할 수 있도록 [[자바]] 클래스를 제공한다. 해시그래프는 개발자들에게 파일 시스템인 것처럼 머클트리를 조작할 자바코드를 제공한다. 그들은 디렉터리, 하위 디렉터리, 파일을 볼 수 있고, 파일의 내용, 디렉터리 이름을 변경할 수 있고, 사물을 움직이고, 복사하고 붙여넣을 수 있지만, 그 아래는 모두 자동으로 머클트리로 저장된다. 이것은 해시그래프가 파일이 합의 상태의 일부라는 증거를 제시할 수 있게 해준다. 또한, 사용자들은 헤데라 파일 시스템에 전체 디렉토리를 저장할 수 있다. | ||
+ | |||
+ | 머클 트리를 저장할 뿐만 아니라 머클 DAG도 저장하는데, 이는 두 파일에 몇 바이트의 공통 바이트가 있을 경우 공통 바이트의 복사본 한 개만 저장할 수 있다는 것을 의미한다. 파일은 해시로 접근할 수 있기 때문에 사람들은 그것이 불변의 사실에 의존할 수 있다. 하지만 그것은 파일 ID도 가지고 있다. 그것의 소유자는 새 파일을 만들 수 있고, 파일 ID를 이전 파일 대신에 새 파일과 연결되게 할 수 있다. 이러한 방법으로 사용자는 항상 최신 버전의 파일을 찾을 수 있다. 해시 대신 파일 ID에 액세스한다. 따라서 파일은 안전하게 변경할 수 없고 동시에 안전하게 변경할 수 없다. 파일이 해시로 액세스되는 경우 파일은 변경되지 않는다. 파일 ID로 액세스하면 최신 버전이 검색된다. | ||
+ | * 스마트계약 | ||
+ | 헤데라 원장은 연대순으로 작성된 [[스마트 계약]]을 운영할 수 있다. 현재 해데라에서 변경하지 않고 실행할 수 있는 [[솔리디티]] 스마트 계약 코드의 큰 라이브러리가 있다. 이것은 분산형 애플리케이션을 헤데라 위에 쉽게 구축할 수 있도록 한다. | ||
+ | |||
+ | ===프록시와 프록시 스테이킹=== | ||
+ | [[노드]]는 자신이 소유하고 있는 코인과 그것에 근접한 코인을 모두 보유할 수 있다. 그러한 고정과 관련된 수수료는 노드와 대리 고정 간에 공유된다. 실제로, 한 노드는 그 노드에 자신의 지분을 대리하는 많은 계정을 가질 것으로 예상된다. [[프록시]] 고정은 노드를 실행하지 않는 사람들이 여전히 그들의 암호화폐에 대한 관심을 얻을 수 있도록 하고, 이러한 관행을 장려함으로써 일부 노드들이 전체 지분의 3분의 1에 대한 영향력을 얻을 수 있다는 기준을 높인다. 그리고 노드를 운영하는 사람들은 그들의 이익을 증가시킬 수 있을 것이다. 노드와 대리인의 이익 분배는 둘 사이에서 협상될 것이다. 노드를 운영하고 대리 [[스테이커]]를 유치하기 위해서는 진입 장벽이 매우 낮다. 따라서 대리인을 위해 경쟁하는 대규모 노드 생태계가 있을 것으로 예상된다. 따라서 한 명의 공격자가 전체 지분의 3분의 1을 대리인으로 고정시키는 것은 어려울 것이다. | ||
+ | |||
+ | ===지급 및 수수료=== | ||
+ | 헤데라는 거래를 처리하고 서비스를 수행하는 모든 노드를 대신하여 서비스와 네트워크 수수료를 수집한다. 헤데라는 이 수금된 수수료를 두 가지 다른 유형의 지급에 투자하기 위해 사용한다. | ||
+ | * 인센티브:하루에 한 번 헤데라 계정에서 노드로의 지불이 이루어지며, 노드 역할을 하도록 유도한다. 지불하려면, 헤데라에서 정의된 임계값에 따라 노드가 하루 종일 온라인 상태여야 한다(예: 노드가 24시간 동안 라운드의 최소 90%에 각 이벤트를 제공하도록 요구). 노드는 저장하는 암호화폐의 양에 비례하여 지급된다. 정기적으로 헤데라는 그들의 역할에 대한 보상을 하기 위해 관리직 회원들에게 돈을 지불할 수 있다. 헤데라가 수집하는 수수료는 확정된 바와 같이 인센티브 지급과 배당 지급으로 구분된다. 헤데라 수수료 모델은 비용과 위험을 적절히 배분하도록 설계되었다. | ||
+ | |||
+ | ==강점== | ||
+ | [[분산형 합의 알고리즘]]의 목표는 사용자 커뮤니티가 모든 사람이 신뢰할 수 있는 단 한 명의 멤버도 없을 때 그들 중 일부가 거래를 생성한 순서에 대한 합의를 도출할 수 있도록 하는 것이다. 즉, 해시그래프 알고리즘은 개별 사용자가 서로를 신뢰하지 않는 상황에서 신뢰를 창출하는 시스템이다.<ref>메버릭, 〈[https://blog.naver.com/ltaijini/221229438515 (블록체인 소식) ‘4세대 블록체인’ 해시그래프 기반 플랫폼 공개… ICO 소식은 없다]〉, 《네이버 블로그》, 2018-03-15</ref> 스월즈 해시그래프 시스템은 신뢰를 구축함과 동시에 공정하고 빠르며 검증이 가능하고 비잔틴 보안 수준, 데이터의 ACID 준수, 효율성, 저렴성, 타임스탬프 형식, 디도스 공격 저항성, 무허가형 시스템 등이 모두 가능하다. | ||
+ | |||
+ | ===공정성=== | ||
+ | 해시그래프는 특정 사용자가 거래의 순서를 변경할 수 없기 때문에 공정하다. 주식시장으로 예를 들어보면, 만약 A와 B가 동시에 동일한 가격으로 마지막 하나의 주식을 매수한다고 가정해보자. 블록체인 시스템에서는 채굴자가 두 거래 모두 동일한 블록에 넣어 진행한다면 순서를 임의로 정할 수 있다. 또는 A의 거래만 포함시키고 B의 거래를 다음 블록에 포함시킬 수도 있다. 이러한 경우에, 해시그래프 시스템 하에서는 한 개인이 거래의 순서를 변경할 수 없다. 여기서 A가 분산형 시스템 내 모든 사용자에게 B의 거래보다 먼저 전파할 수 있는 최선의 방법은 인터넷 속도에 투자하는 것이며 이로 공정한 경쟁을 도모할 수 있다.<ref name="번역본">〈[http://www.swirlds.com/downloads/Overview-of-Swirlds-Hashgraph.pdf Overview of Swirlds Hashgraph 스월즈 사 해시그래프 개요 한글 번역본- EMD]〉</ref> 거래 처리 권한이 특정 인물에게 위임되지 않았기 때문에 A는 채굴자에게 뇌물을 주며 부당한 혜택을 꾀할 수 없다.<ref name="번역본2">Leemon Baird, 〈[http://www.swirlds.com/downloads/Overview-of-Swirlds-Hashgraph.pdf Overview of Swirlds Hashgraph]〉, 《스월즈》, 2016-05-31</ref> | ||
+ | 아울러 해시그래프 시스템 하에서는 특정 사용자가 시스템에 입력되는 거래를 저지하거나 멈출 수 없으므로 공정하다.<ref name="kblock">kblock, 〈[https://steemit.com/kr/@kblock/34-hashgraph-feat (케블리) #34. ‘해시그래프(Hashgraph)’, 블록체인을 뛰어넘는 신뢰 프로토콜이 될 수 있을까? (feat. 헤데라)]〉, 《스팀잇》</ref> 블록체인 시스템에서는 만약 다수의 채굴자가 특정 거래를 블록에 포함시키는 것을 거부할 경우, 한 개 또는 두 개의 채굴 기간까지 처리가 지연될 수 있다.<ref name="번역본"></ref> 블록체인의 대안으로 리더형이 있는데, 이 시스템 하에서는 다음 지도자가 선정될 때까지 지연 시간이 굉장히 오래 걸릴 수 있다.<ref name="번역본2"></ref> 그러나 해시그래프 시스템 하에서는 인터넷 연결을 차단하는 방법 외에는 사용자의 거래를 막을 수 없다. | ||
+ | |||
+ | ===빠른 속도=== | ||
+ | 해시그래프는 빠르다. 해시그래프의 속도에 영향을 줄 수 있는 것은 대역폭의 크기뿐이다. 만약 각 회원이 1초에 4,000건의 거래 다운로드가 가능한 대역폭을 사용한다면 그것이 해시그래프의 처리 속도다. 이 상황에서는 초당 몇 메가비트만으로 가능하며 이는 일반 자택에 설치되는 광대역 연결 수준이다.<ref name="이엠디"></ref> 이 정도로도 전 세계의 [[비자카드]] [[네트워크]] 내 모든 거래 처리가 가능할 만큼 신속하다. | ||
+ | |||
+ | ===검증 가능=== | ||
+ | 해시그래프는 증명이 가능하다. 거래 발생 후 단 몇 분 안에 커뮤니티 내의 모든 사용자들은 그 거래가 어디에 기록되는지 알 수 있다. 더욱 중요한 사실은 모든 사용자들이 똑같은 정보를 공유하게 된다는 점이다. 사용자들 간의 합의가 성립된 후에는 거래를 최종 처리한 후 다 잊으면 된다. 예를 들어 가장 기본적인 [[암호화폐]] 시스템에서 각 회원들은 활성화된 지갑들의 현 잔고만 저장하고, 예전의 블록이나 거래는 기억할 필요가 없게 된다. 이 결과, [[비트코인]]의 60GB 저장 공간에 비해 해시그래프는 1GB 미만의 저장 공간만으로도 사용이 가능하며 이는 일반 [[스마트폰]]에서도 구동이 가능하다.<ref name="kblock"></ref> | ||
+ | |||
+ | ===비잔틴 장애 허용=== | ||
+ | 해시그래프의 보안 수준은 [[비잔틴 장애 허용]](BFT)이다. 이는 기술적인 용어로 커뮤니티가 합의를 도출하는데 어느 누구도 이를 방지할 수 없음을 뜻한다.<ref name="번역본"></ref> 또한 한 번 합의가 도출된 이후부터는 그 내용을 수정할 수도 없다. 각 사용자는 모든 사용자 간의 도출된 합의 내용에 대해 확신을 갖을 수 있는 시점에 도달하게 된다.<ref name="번역본2"></ref> 블록체인 시스템에서는 사용자 간 합의에 대해 확신할 수 없으므로 이는 비잔틴 합의가 될 수 없다. 아울러, 블록체인 시스템은 네트워크 파티션에 자동으로 대응하지 않기 때문에 비잔틴 수준이 될 수 없다. 만약 특정 집단이 다른 회원들과 인터네 상에서 분리되어 있는 경우 이는 여러 개의 블록들을 생성해 낼 수 있으며, 이는 거래의 순서에 있어 불필요한 혼란을 초래할 수 있다. 비잔틴이라는 용어는 실제 의미보다 약한 의미로 사용되기도 하는데 해시그래프는 본래의 엄격한 수준의 정의를 적용하고 있다. 해시그래프는 (1) 모든 사용자들이 도출된 합의에 대해 알고 있어야 한다는 점, (2) 잠정 위해자들이 공모를 할 수 있다는 점, 그리고 (3) 위해자가 [[인터넷]] 자체를 통제할 수도 있다는 점을 인식하고 있기 때문에 엄격한 의미에서의 비잔틴을 보장할 수 있다. | ||
+ | |||
+ | ===ACID=== | ||
+ | 해시그래프는 ACID(Atomicity, Consistency, Isolation, Durability)를 준수한다. 이는 [[데이터베이스]] 용어로서, 해시그래프를 분산형 데이터베이스로 운용할 경우 적용된다. 커뮤니티 내 사용자들은 거래가 발생한 순서에 대해 합의를 구할 때 본 지침을 적용한다. 합의가 도출된 후, 각 사용자가 갖고 있는 데이터베이스의 로컬 복사본에 합의된 추가 거래 내용을 입력하게 된다. 만약 모든 로컬 데이터베이스가 ACID 표준을 준수할 경우, 커뮤니티 전체가 하나의 분산형 데이터베이스를 보유하고 있다고 명명할 수 있다<ref name="이엠디">emd, 〈[http://wiki.hash.kr/index.php?title=%ED%95%B4%EC%8B%9C%EA%B7%B8%EB%9E%98%ED%94%84&action=edit§ion=18 Overview of Swirlds Hashgraph (Korean) 스월즈 사 해시그래프 개요 한글 번역본- EMD]〉, 《스팀잇》</ref> 블록체인에서는 완전한 합의가 도출된 시점을 알 수 있는 방법이 없다. 여섯 번 정도의 확인과정을 통해 알아내는 정도가 해시그래프와 비슷한 수준에서의 ACID 준수라고 볼 수 있다. | ||
+ | |||
+ | ===효율성=== | ||
+ | 해시그래프는 블록체인 커뮤니티에서 언급되는 100% 효율성을 가지고 있다. 블록체인에서는 추후에 탈락되거나 커뮤니티에서 채택하지 않을 블록 때문에 시간을 허비하는 경우가 있다. 해시그래프에서는 블록이 절대 탈락되지 않는다. | ||
+ | |||
+ | ===저렴한 가격=== | ||
+ | 해시그래프는 [[작업증명]] 절차가 필요 없기 때문에 저렴하다. [[비트코인]]의 경우, 불필요한 계산과정 때문에 시간이 지연되는 경우가 있다. 앞으로 컴퓨터들의 성능이 좋아질수록 이러한 과정들은 추가가 될 것이다. 이런 것들은 일의 처리를 지연시킬 뿐 별다른 도움이 되지 않는다. 이로 인해 서로 간의 경쟁에서 이기고 싶은 채굴자는 고가의 특별 주문 제작된 [[하드웨어]]를 구매해야 할지도 모른다. 하지만 해시그래프는 블록들이 처리되는 속도가 빨라져도 영향을 받지 않기 때문에 효율적이다. 다시 말해, 일처리의 속도를 줄이기 위해 컴퓨터 연산을 낭비할 필요가 없다는 말이다.<ref name="번역본"></ref> | ||
+ | |||
+ | ===타임스탬프=== | ||
+ | 해시그래프는 [[타임스탬프]] 형식이다. 모든 거래에는 합의시간이 배저되며 이는 각 사용자가 해당 거래를 처음 수신한 시간들의 중앙값이다. 합의 도출을 위한 절차인 타임스탬프 작업은 비잔틴 수준을 보장하며 또한 증명이 가능하다.<ref name="번역본2"></ref> 만약 참여하는 사용자들의 대다수가 정직하고 신뢰할 수 있는 컴퓨터 시간을 입력했다면, 정직하고 신뢰할 수 있는 사용자가 생성한 공동의 시간표이므로 타임스탬프 내 한 개 또는 두 개 시점 사이에 존재한다고 볼 수 있고, 그 결과 정확성과 신뢰성이 보장된다.<ref name="이엠디"></ref> 합의 타임스탬프 형식은 마감시간 내에 사건이 실제로 발생했는지에 대한 합의가 정립되며 공격에 취약하지 않기 때문에 스마트계약 등의 환경을 개발하는 데에 유용하다.<ref name="번역본"></ref> 블록체인 시스템은 각 블록에 타임스탬프가 있지만 채굴을 처리한 컴퓨터 시계만 반영된다. | ||
+ | |||
+ | ===무허가형 시스템=== | ||
+ | 해시그래프는 무허가형으로 설정이 되어있고, [[작업증명]]의 비용은 피할 수 있다. 허가형 시스템은 승인을 받은 사용자만 참여가 가능하고, 무허가형 시스템은 승인절차를 요구하지 않고 누구든지 참여가 가능한 커뮤니티이다. 일반적인 블록체인은 작업증명을 사용하면 개방될 수 있지만 안전을 확보하려면 [[지분증명]]과 같은 솔루션들이 허용되어야 한다. 해시그래프 시스템은 다양한 방식으로 작동 가능하도록 설계되었다. 더욱 흥미로운 점은 지분증명을 사용하는 것인데 이는 특정 암호화폐의 소유권에 비례하여 투표권한을 부여한다. 좋은 암호화폐는 널리 사용될 수 있기 때문에 공격자가 전체 통화 공급액의 상당 부분을 소유함으로써 시장을 장악하기가 어렵다. 만약 통화 소유자들 중 상당수가 해시그래프 시스템에 참여한다면, 지분증명의 도입을 통해 허위의 다중계정 집단에 의한 시빌 공격으로부터 보호받을 수 있다. 이런 시스템은 허가되지 않았더라고 보안상 안전하며 작업증명의 비용을 없앨 수 있다. | ||
+ | |||
+ | ==장단점== | ||
+ | ===장점=== | ||
+ | * [[블록체인]]과 해시그래프 시스템은 모두 특정 회원이 거래를 생성할 수 있고 이는 블록에 저장되어 커뮤니티 전체에 전파된다.<ref name="번역본2"></ref> 블록체인에서의 블록 개념은 한 개의 긴 사슬을 형성하도록 되어있다. 만약 채굴자들이 두 개의 블록을 동시에 생성 한다면 커뮤니티는 둘 중 하나만 선택하고 나머지를 버려야 한다.<ref name="이엠디"></ref> 비유하자면 하나를 제외한 모든 가지들을 계속 쳐내야 하는 나무를 키우는 것과 같다. | ||
+ | * 해시그래프에서는 버리는 것 없이 모든 블록이 사용된다. 그 결과, 나무의 모든 가지는 영원히 공존하며 전체를 하나로 묶도록 설계되어 있다. 이게 더 효율적이다. 따라서 해시그래프에서는 버려지는 것이 없다. 또, 시스템이 빠르게 성장하면서 생기는 위험이 없다. 모든 사용자들은 언제든 필요시 새로운 거래 및 블록을 생성할 수 있기 때문에 매우 단순하면서 빠른 속도를 자랑할 수 있다.<ref name="번역본"></ref> | ||
+ | * 마지막으로 해시그래프에서는 가지치기가 필요 없기 때문에 더 단순하고, 이로 인해 비잔틴 합의와 공정성과 같은 강력한 수학적 보증을 가능케 한다.<ref name="번역본2"></ref> [[Paxos]]와 같은 분산형 데이터베이스는 비잔틴이긴 하나 공정하지는 못한다. 블록체인은 비잔틴도 아니며 공정하지도 않다. 하지만 [[스월즈 해시그래프]]는 비잔틴 합의와 공정성을 모두 갖고 있다. | ||
+ | |||
+ | ===단점=== | ||
+ | * 해시그래프는 [[아이오타]]의 [[탱글]]과 비슷한 알고리즘으로서 현재까지 가장 진보된 분산원장 기술이라고 평가 받고 있다.<ref name="kblock"></ref> 하지만 한편으로는 오픈소스가 아니라는 점 때문에 탈중앙화와는 거리가 멀다는 비판을 받고 있다. | ||
+ | * 또한 근본적으로 확장성이라는 것이 일차원적인 접근으로는 해결이 불가능한데, 해시그래프는 [[트랜잭션]] 수에 대한 확장성만을 높인 프로토콜로 보여진다.<ref name="kblock"></ref> 즉, 네트워크 노드의 수 등에 대한 확장성에 대해서는 해시그래프도 해결하지 못하고 있다. | ||
+ | * 해시그래프가 지금처럼 프라이빗한 세팅 안에서는 빠르고 공정하고 안전하지만, 퍼블릭 세팅에서 사용된다면 해시그래프는 지금의 다른 퍼블릭 블록체인이 가지고 있는 안정성이나 성능 측면의 문제들을 똑같이 마주하게 될 것으로 보여진다.<ref name="kblock"></ref> 따라서 여전히 다른 퍼블릭 블록체인 프로젝트들처럼 실제 제품이나 서비스가 실현되기 전까지는 확신을 할 수 없다는 한계점을 가진다.<ref name="kblock"></ref> | ||
+ | |||
+ | ==전망 == | ||
+ | 해시그래프는 자칭 ‘4세대 블록체인’이다. 하지만 ‘3세대 블록체인’이 완성되지도 않은 상태에서 본인들의 플랫폼을 ‘4세대’라고 부르는 것은 엄청난 도전장이다.<ref name="kblock"></ref> [[DAG]] 방식의 분산원장 플랫폼이 이론처럼 운영될 수 있다면 블록체인 생태계를 뒤바꿀 수 있는 엄청난 혁신일 것이다. 아직까지 안정적으로 초당 수천 개의 거래를 완결성 있게 처리하는 블록체인은 없기 때문이다. | ||
+ | |||
+ | 해시그래프는 해시그래프 기술이 이미 기업 생태계 내에서 큰 문제없이 운영되었으며, 수많은 내부 테스팅을 거쳤다고 주장했다. 하지만 ‘가능성’ 만을 내세운 해시그래프의 이벤트는 조금 실망스럽다는 평가를 받았다. 해시그래프 기술이 어떻게 돌아가거나 어떤 진전이 있었는지에 대한 설명보다는, 플랫폼을 홍보하기 위한 자리였다. 플랫폼의 ‘공개’ 이벤트였던 만큼 자세하게 설명하지 못한 바에 대해서 앞으로 서서히 공개할 가능성은 있다. 하지만 만약 해시그래프 플랫폼이 약속한 대로 구축된다면 블록체인 생태계에서 엄청난 영향력을 가진 거인이 될 것으로 보인다.<ref>나그네, 〈[https://blog.naver.com/sshong3/221320655357 ‘4세대 블록체인’ 해시그래프]〉, 《네이버 블로그》, 2018-07-17</ref> | ||
{{각주}} | {{각주}} | ||
21번째 줄: | 113번째 줄: | ||
* 케블리, 〈[https://steemit.com/kr/@kblock/34-hashgraph-feat ‘해시그래프(Hashgraph)’, 블록체인을 뛰어넘는 신뢰 프로토콜이 될 수 있을까? (feat. 헤데라)]〉, 《스팀잇》, 2018-04-18 | * 케블리, 〈[https://steemit.com/kr/@kblock/34-hashgraph-feat ‘해시그래프(Hashgraph)’, 블록체인을 뛰어넘는 신뢰 프로토콜이 될 수 있을까? (feat. 헤데라)]〉, 《스팀잇》, 2018-04-18 | ||
* 편집부, 〈[http://www.bccpost.com/news/articleView.html?idxno=847 헤데라 해시그래프, 공공 블록체인 구축 위해 1억 달러 조달]〉, 《비씨씨포스트》, 2018-08-02 | * 편집부, 〈[http://www.bccpost.com/news/articleView.html?idxno=847 헤데라 해시그래프, 공공 블록체인 구축 위해 1억 달러 조달]〉, 《비씨씨포스트》, 2018-08-02 | ||
+ | * Adam Reese, <[https://www.ethnews.com/what-is-hashgraph What Is Hashgraph?]> , 《ETHNews》, 2018-03-16 | ||
== 같이 보기 == | == 같이 보기 == | ||
+ | * [[가십]] | ||
+ | * [[가십 프로토콜]] | ||
* [[체인 알고리즘]] | * [[체인 알고리즘]] | ||
* [[블록체인]] | * [[블록체인]] | ||
35번째 줄: | 130번째 줄: | ||
* [[맨스 하몬]] | * [[맨스 하몬]] | ||
− | {{ | + | {{블록체인 기술|검토 필요}} |
− | |||
− | |||
− | |||
− |
2023년 11월 18일 (토) 11:42 기준 최신판
해시그래프(Hashgraph)란 기존 블록체인의 한계를 극복하고자 연결리스트 방식이 아니라, 하나의 노드가 다른 불특정 노드에게 가십(gossip)을 전달하는 방식으로 작동하는 알고리즘이다. 기존 블록체인의 장점인 위변조 방지 기능과 탈중앙 의사결정구조를 유지하면서도, 1초에 수십만 건 이상의 빠른 속도로 트랜잭션을 처리할 수 있다. 리몬 베어드(Leemon Baird)가 창시했다. 헤데라 해시그래프 미국 본사의 CEO는 맨스 하몬(Mance Harmon)이다.
해시그래프가 2019년 업비트 개발자 컨퍼런스에 참여했습니다. |
목차
개요[편집]
헤데라 해시그래프 플랫폼은 새로운 형태의 분산 합의를 제공한다. 서로를 모르거나 신뢰하지 않는 사람들이 믿을 수 있는 중개자 없이도 안전하게 온라인 상에서 협력하고 거래할 수 있는 방법이다. 플랫폼은 번개처럼 빠르고, 공정하며, 안전하며, Pow 작업을 요구하지 않는다. 헤데라는 개발자들이 이전에는 불가능했던 완전히 새로운 종류의 디앱을 구축할 수 있게 한다. 즉, HBAR 암호화폐를 사용하여 헤데라 해시그래프 플랫폼 위에 전 세계적으로 디앱을 쉽게 구축할 수 있게 돕는다. 그리고 디앱 마다 선택한 라이선스에 대해 당사자는 완전한 소유권 및 재량권을 갖게 된다.
또, 헤데라 해시그래프 플랫폼은 위원회(Council)에 의해 운영된다. 위원회는 각 분야의 선두 기관과 기업 39곳으로 구성될 것이며, 또 다양한 산업과 지역을 반영하고, 높은 브랜드와 신뢰도를 가진 시장을 확보하고 다양한 관점을 장려하기 위해 멤버십을 구성할 것이다. 운영 위원는 이사회를 선출하고 소위원회 멤버십을 통해 전문성을 제공한다. 헤데라의 운영 조건은 어떤 멤버라도 지배력을 갖지 못하도록 하고, 작은 그룹의 멤버들도 전체에 과도한 영향력을 행사하지 못하게 한다.
특징[편집]
해시 그래프 데이터 구조와 합의 알고리즘은 분산된 합의를 위한 새로운 플랫폼을 제공한다. 합의 알고리즘의 목표는 커뮤니티에서 모든 사람이 단 한 명의 회원도 신뢰하지 않을 경우, 그들 중 일부가 거래를 생성한 순서에 대한 합의에 이르게 하는 것이다.
블록체인과 해시그래프의 차이점[편집]
블록체인은 자라면서 끊임없이 가지를 치는 나무와 같다. 반면 해시그래프는 새로운 성장을 위해 가지치기하기 보다는 다시 몸통으로 돌아가 엮어짐으로 합쳐진다. 블록체인과 해시그래프 모두 어떤 멤버라도 거래를 만들 수 있으며, 이것은 결국 블록에 넣어질 것이다. 그리고 나서 커뮤니티 전체에 퍼질 것이다. 블록체인 경우, 이러한 블록은 하나의 긴 체인을 형성하도록 되어 있다. 만약 두 채굴자가 동시에 두 블록을 만들면, 결국 한 블록을 선택하여 다른 한 블록을 버릴 것이다. 그것은 마치 자라나는 나무가 그 나뭇가지를 제외한 모든 것을 잘라내는 것과 같다. 해시그래프에서는 모든 블록이 사용되고, 그 어떤 블록도 버려지지 않는다. 모든 가지들은 영원히 계속 존재하며, 결국 다시 하나로 합쳐진다. 이게 더 효율적이다.
게다가 블록체인에서는 새로운 블록이 예상보다 너무 빨리 도착하면 실패한다. 블록체인은 인위적으로 성장을 늦추기 위해 PoW나 어떤 다른 메커니즘이 필요하다. 반면, 해시그래프에서는 아무것도 버려지지 않는다. 빠르게 성장하는 구조에 아무런 해가 없다. 모든 멤버는 원할 때마다 거래와 블록을 만들 수 있다. 그래서 그것은 매우 간단하고, 매우 빠르다. 마지막으로 해시그래프는 가지치기가 필요하지 않기 때문에 더 단순하고, 비잔틴 합의와 공정성과 같은 더 강력하게 수학적으로 보장된 알고리즘이다. 반면 블록체인은 비잔틴 합의도 공정성도 갖추고 있지 않다. 다시 말해, 해시그래프 알고리즘은 공정성, 빠른 속도, 비잔틴 보안 준수, ACID 준수, 효율성, 저렴한 가격, 타임스탬프, 디도스 공격 저항성 등을 다 갖추었다.
네트워크 작동방식[편집]
일반적인 블록체인 네트워크에서 특정 트랜잭션이 발생하면 전체 네트워크가 합의 및 검증에 참여하는 방식과는 달리, 해시그래프 노드는 발생한 트랜잭션뿐만 아니라 네트워크의 현재 상태나 과거 이력에 대한 정보 조각들을 보고서 형태로 만들어서 무작위로 이웃 노드를 선택하여 전파한다. 새로운 정보가 발생하면 이전에 전파한 보고서에 내용을 추가하고 다시 무작위로 노드를 선택하여 계속 전파한다. 이 과정을 지속적으로 반복하는데, 이를 gossiping이라고 한다.
합의 알고리즘[편집]
해시그래프는 새로운 알고리즘 방법을 통하여 합의를 이루는 기술이다. 정확한 알고리즘의 명칭은 스월드 해시그래프 합의 알고리즘(Swirlds hashgraph consensus algorithm)이다.[1] 2016년 12월 11일, 스월즈사(Swirlds. Inc.)에 의해 소개되었다. 위에서 설명했듯이 해시그래프의 노드들은 정보를 보고서 형태로 만들어서 전파하는데 이 보고서에는 정보를 취득한 시간을 나타내는 해시값이 포함되어 있다. 이 해시값을 레포트에 포함하는 개념을 gossip about gossip이라고 한다. 이러한 해시그래프의 네트워크 작동방식(gossiping)과 gossip about gossip은 결과적으로 네트워크가 정보 발생 순서를 확인할 수 있게 한다. 이런 방식의 의의는 일반적인 블록체인 네트워크에서 상대적으로 높은 합의 권한을 가진 노드가 악의적으로 데이터를 지연시켜서 변조시킬 가능성을 막을 수 있다는 데 있다.
또한 해시그래프 네트워크는 단순히 해시값만 검사함으로써 누가 어떤 정보를 언제 발생시켰는지 알 수 있게 된다. 특정 노드는 네트워크에 유용한 정보에 대해서 반대표를 던지지 않을 것이라는 신념에 기초하여 가상의 투표를 수행한다고 가정했을 때 자연스럽게 합의(consensus)가 도출되게 된다. 리몬 베어드(Leemon Baird)는 이런 방식의 합의에 대하여 "무료이며, 다른 사람과 토론할 필요도 없고 당신이 옳다는 것을 수학적으로 보증하는 완벽한 합의를 얻어낼 수 있다"고 이야기한다. 여기에 덧붙여서 맨스 하몬(Mance Harmon)은 해시그래프 합의 알고리즘의 이런 특성들은 현재 블록체인 세계에서 빈번하게 발생하고 있는 포크 발생 가능성을 배제시킨다고 언급하고 있다. 이러한 원리로 인하여 헤데라 해시그래프 측은 블록체인 네트워크에 비하여 높은 성능, 보안, 공정성과 신뢰성을 실현할 수 있다고 주장하고 있다.
DAG[편집]
헤데라 해시그래프는 DAG내에서 ‘비동기식 비잔틴 장애 허용(aBFT, Asynchronous Byzantine Fault Tolerance)’ 합의 알고리즘을 이용한다.[2] 이는 기존 블록체인 네트워크와는 조금 다른 형태의 분산원장 플랫폼이다. 기존의 블록체인은 모든 참여자들이 한 블록씩 차례로 검증을 진행한다. 하지만 DAG에서는 모든 노드들이 해당 블록을 동시에 검증할 필요가 없으며, 수많은 노드들이 분산되어 각자 검증을 동시에 진행한다. 즉, ‘차례로 검증한다’는 기존 블록체인에 틀을 깬 것이다. 해시그래프는 DAG을 통해서도 충분히 검증 결과의 완결성을 보증할 수 있다고 주장한다. IOTA가 이런 방식의 분산원장 기술을 이용하고 있다. DAG는 다수의 검증이 동시에 이루어질 수 있기 때문에 빠른 속도를 자랑한다. 헤데라 해시그래프는 초당 수십만 개의 거래를 처리할 수 있다고 밝혔다. 완결성을 확정하기 까지 필요한 시간은 약 3초이다.
인터넷[편집]
인터넷 레이어[편집]
노드는 완벽한 포워드 보안을 위해 TLS 암호화에 의해 보호되는 TCP/IP 연결에 의해 통신한다. 노드는 기호 이름이 아닌 IP 주소와 포트로 처리되므로 DNS 시스템에 대한 공격은 네트워크에 영향을 미치지 않는다.
해시그래프 컨센서스 레이어[편집]
노드는 고객들로부터 거래를 받아 가십 프로토콜 네트워크를 통해 거래를 공유한다. 이후 모든 노드가 해시그래프 합의 알고리즘을 실행하여 각 트랜잭션에 대한 합의 타임스탬프 및 합의에 도달한다. 그런 다음 각 노드는 공유 상태의 복사본을 수정하기 위해 합의 하에 거래를 적용한다. 이러한 방식으로 모든 노드는 특정한 샤드 내의 동일한 합의 상태를 유지한다.
서비스 레이어[편집]
- 암호화폐
암호화폐는 빠른 속도로 설계되어 네트워크 요금을 낮추어 아주 작은 마이크로 트랜잭션을 실용화한다. 헤데라 플랫폼이 실행되면, 어떤 사용자라도 네트워크에서 노드를 실행할 수 있고 그렇게 함으로써 암호 지불을 받을 수 있다. 사용자는 어떤 이름이나 주소도 없이 키 쌍을 생성함으로써 계정을 만들 수 있다. 선택적으로, 사용자가 신분증 해시를 부착할 수 있도록 규정이 마련된다. 이는 사용자가 선택하는 제3자 인증기관 또는 신원 기관으로부터 올 수 있다. 이는 KYC(Know Your Customer) 또는 AML(Anti-Money Laundering) 법률의 관할권에 사용될 암호화폐로 계정에 대해 규제 준수를 허용하기 위한 것이다.
- 파일 저장
파일 시스템은 사용자가 정확히 무엇을 저장하고 무엇을 저장하지 않는지에 대한 합의를 통해 정보를 저장할 수 있도록 한다. 샤드의 모든 노드는 동일한 파일을 저장하므로, 노드 중 하나가 충돌해도 손실되지 않는다. 저장된 정보는 허가를 받은 사람만이 삭제할 수 있다. 이런 식으로 파일 시스템은 폐기 서비스 역할을 할 수 있다. 예를 들어, 미래에 사용자는 자동차부(DMV)로부터 운전면허를 발급 받을 수 있으며, 사용자와 DMV는 이를 원장에 해시하는 거래에 디지털 서명한다. 둘 다 면허 해시를 제거할 권리가 있다. 사용자는 면허 파일 사본을 해당 사용자에게 제공하여 유효한 면허를 가지고 있음을 증명하도록 선택할 수 있으므로, 사용자는 해시가 여전히 원장에 저장되어 있는지 확인할 수 있다. DMTV가 라이선스를 취소하면 해시도 삭제되어 더 이상 라이선스가 유효하지 않음을 보여줄 것이다. 사용자가 해시를 다시 저장하려고 할 경우, DMV의 서명이 없으면 해시가 DMV의 협조 없이 사용자만 저장되었으며 사용자가 운전할 수 있는 권리에 대한 유효한 증거로 간주되지 않을 것이다.
파일은 실제로 머클트리로 저장되지만, 해시그래프는 개발자들이 그것들을 조작할 수 있도록 자바 클래스를 제공한다. 해시그래프는 개발자들에게 파일 시스템인 것처럼 머클트리를 조작할 자바코드를 제공한다. 그들은 디렉터리, 하위 디렉터리, 파일을 볼 수 있고, 파일의 내용, 디렉터리 이름을 변경할 수 있고, 사물을 움직이고, 복사하고 붙여넣을 수 있지만, 그 아래는 모두 자동으로 머클트리로 저장된다. 이것은 해시그래프가 파일이 합의 상태의 일부라는 증거를 제시할 수 있게 해준다. 또한, 사용자들은 헤데라 파일 시스템에 전체 디렉토리를 저장할 수 있다.
머클 트리를 저장할 뿐만 아니라 머클 DAG도 저장하는데, 이는 두 파일에 몇 바이트의 공통 바이트가 있을 경우 공통 바이트의 복사본 한 개만 저장할 수 있다는 것을 의미한다. 파일은 해시로 접근할 수 있기 때문에 사람들은 그것이 불변의 사실에 의존할 수 있다. 하지만 그것은 파일 ID도 가지고 있다. 그것의 소유자는 새 파일을 만들 수 있고, 파일 ID를 이전 파일 대신에 새 파일과 연결되게 할 수 있다. 이러한 방법으로 사용자는 항상 최신 버전의 파일을 찾을 수 있다. 해시 대신 파일 ID에 액세스한다. 따라서 파일은 안전하게 변경할 수 없고 동시에 안전하게 변경할 수 없다. 파일이 해시로 액세스되는 경우 파일은 변경되지 않는다. 파일 ID로 액세스하면 최신 버전이 검색된다.
- 스마트계약
헤데라 원장은 연대순으로 작성된 스마트 계약을 운영할 수 있다. 현재 해데라에서 변경하지 않고 실행할 수 있는 솔리디티 스마트 계약 코드의 큰 라이브러리가 있다. 이것은 분산형 애플리케이션을 헤데라 위에 쉽게 구축할 수 있도록 한다.
프록시와 프록시 스테이킹[편집]
노드는 자신이 소유하고 있는 코인과 그것에 근접한 코인을 모두 보유할 수 있다. 그러한 고정과 관련된 수수료는 노드와 대리 고정 간에 공유된다. 실제로, 한 노드는 그 노드에 자신의 지분을 대리하는 많은 계정을 가질 것으로 예상된다. 프록시 고정은 노드를 실행하지 않는 사람들이 여전히 그들의 암호화폐에 대한 관심을 얻을 수 있도록 하고, 이러한 관행을 장려함으로써 일부 노드들이 전체 지분의 3분의 1에 대한 영향력을 얻을 수 있다는 기준을 높인다. 그리고 노드를 운영하는 사람들은 그들의 이익을 증가시킬 수 있을 것이다. 노드와 대리인의 이익 분배는 둘 사이에서 협상될 것이다. 노드를 운영하고 대리 스테이커를 유치하기 위해서는 진입 장벽이 매우 낮다. 따라서 대리인을 위해 경쟁하는 대규모 노드 생태계가 있을 것으로 예상된다. 따라서 한 명의 공격자가 전체 지분의 3분의 1을 대리인으로 고정시키는 것은 어려울 것이다.
지급 및 수수료[편집]
헤데라는 거래를 처리하고 서비스를 수행하는 모든 노드를 대신하여 서비스와 네트워크 수수료를 수집한다. 헤데라는 이 수금된 수수료를 두 가지 다른 유형의 지급에 투자하기 위해 사용한다.
- 인센티브:하루에 한 번 헤데라 계정에서 노드로의 지불이 이루어지며, 노드 역할을 하도록 유도한다. 지불하려면, 헤데라에서 정의된 임계값에 따라 노드가 하루 종일 온라인 상태여야 한다(예: 노드가 24시간 동안 라운드의 최소 90%에 각 이벤트를 제공하도록 요구). 노드는 저장하는 암호화폐의 양에 비례하여 지급된다. 정기적으로 헤데라는 그들의 역할에 대한 보상을 하기 위해 관리직 회원들에게 돈을 지불할 수 있다. 헤데라가 수집하는 수수료는 확정된 바와 같이 인센티브 지급과 배당 지급으로 구분된다. 헤데라 수수료 모델은 비용과 위험을 적절히 배분하도록 설계되었다.
강점[편집]
분산형 합의 알고리즘의 목표는 사용자 커뮤니티가 모든 사람이 신뢰할 수 있는 단 한 명의 멤버도 없을 때 그들 중 일부가 거래를 생성한 순서에 대한 합의를 도출할 수 있도록 하는 것이다. 즉, 해시그래프 알고리즘은 개별 사용자가 서로를 신뢰하지 않는 상황에서 신뢰를 창출하는 시스템이다.[3] 스월즈 해시그래프 시스템은 신뢰를 구축함과 동시에 공정하고 빠르며 검증이 가능하고 비잔틴 보안 수준, 데이터의 ACID 준수, 효율성, 저렴성, 타임스탬프 형식, 디도스 공격 저항성, 무허가형 시스템 등이 모두 가능하다.
공정성[편집]
해시그래프는 특정 사용자가 거래의 순서를 변경할 수 없기 때문에 공정하다. 주식시장으로 예를 들어보면, 만약 A와 B가 동시에 동일한 가격으로 마지막 하나의 주식을 매수한다고 가정해보자. 블록체인 시스템에서는 채굴자가 두 거래 모두 동일한 블록에 넣어 진행한다면 순서를 임의로 정할 수 있다. 또는 A의 거래만 포함시키고 B의 거래를 다음 블록에 포함시킬 수도 있다. 이러한 경우에, 해시그래프 시스템 하에서는 한 개인이 거래의 순서를 변경할 수 없다. 여기서 A가 분산형 시스템 내 모든 사용자에게 B의 거래보다 먼저 전파할 수 있는 최선의 방법은 인터넷 속도에 투자하는 것이며 이로 공정한 경쟁을 도모할 수 있다.[4] 거래 처리 권한이 특정 인물에게 위임되지 않았기 때문에 A는 채굴자에게 뇌물을 주며 부당한 혜택을 꾀할 수 없다.[5] 아울러 해시그래프 시스템 하에서는 특정 사용자가 시스템에 입력되는 거래를 저지하거나 멈출 수 없으므로 공정하다.[2] 블록체인 시스템에서는 만약 다수의 채굴자가 특정 거래를 블록에 포함시키는 것을 거부할 경우, 한 개 또는 두 개의 채굴 기간까지 처리가 지연될 수 있다.[4] 블록체인의 대안으로 리더형이 있는데, 이 시스템 하에서는 다음 지도자가 선정될 때까지 지연 시간이 굉장히 오래 걸릴 수 있다.[5] 그러나 해시그래프 시스템 하에서는 인터넷 연결을 차단하는 방법 외에는 사용자의 거래를 막을 수 없다.
빠른 속도[편집]
해시그래프는 빠르다. 해시그래프의 속도에 영향을 줄 수 있는 것은 대역폭의 크기뿐이다. 만약 각 회원이 1초에 4,000건의 거래 다운로드가 가능한 대역폭을 사용한다면 그것이 해시그래프의 처리 속도다. 이 상황에서는 초당 몇 메가비트만으로 가능하며 이는 일반 자택에 설치되는 광대역 연결 수준이다.[6] 이 정도로도 전 세계의 비자카드 네트워크 내 모든 거래 처리가 가능할 만큼 신속하다.
검증 가능[편집]
해시그래프는 증명이 가능하다. 거래 발생 후 단 몇 분 안에 커뮤니티 내의 모든 사용자들은 그 거래가 어디에 기록되는지 알 수 있다. 더욱 중요한 사실은 모든 사용자들이 똑같은 정보를 공유하게 된다는 점이다. 사용자들 간의 합의가 성립된 후에는 거래를 최종 처리한 후 다 잊으면 된다. 예를 들어 가장 기본적인 암호화폐 시스템에서 각 회원들은 활성화된 지갑들의 현 잔고만 저장하고, 예전의 블록이나 거래는 기억할 필요가 없게 된다. 이 결과, 비트코인의 60GB 저장 공간에 비해 해시그래프는 1GB 미만의 저장 공간만으로도 사용이 가능하며 이는 일반 스마트폰에서도 구동이 가능하다.[2]
비잔틴 장애 허용[편집]
해시그래프의 보안 수준은 비잔틴 장애 허용(BFT)이다. 이는 기술적인 용어로 커뮤니티가 합의를 도출하는데 어느 누구도 이를 방지할 수 없음을 뜻한다.[4] 또한 한 번 합의가 도출된 이후부터는 그 내용을 수정할 수도 없다. 각 사용자는 모든 사용자 간의 도출된 합의 내용에 대해 확신을 갖을 수 있는 시점에 도달하게 된다.[5] 블록체인 시스템에서는 사용자 간 합의에 대해 확신할 수 없으므로 이는 비잔틴 합의가 될 수 없다. 아울러, 블록체인 시스템은 네트워크 파티션에 자동으로 대응하지 않기 때문에 비잔틴 수준이 될 수 없다. 만약 특정 집단이 다른 회원들과 인터네 상에서 분리되어 있는 경우 이는 여러 개의 블록들을 생성해 낼 수 있으며, 이는 거래의 순서에 있어 불필요한 혼란을 초래할 수 있다. 비잔틴이라는 용어는 실제 의미보다 약한 의미로 사용되기도 하는데 해시그래프는 본래의 엄격한 수준의 정의를 적용하고 있다. 해시그래프는 (1) 모든 사용자들이 도출된 합의에 대해 알고 있어야 한다는 점, (2) 잠정 위해자들이 공모를 할 수 있다는 점, 그리고 (3) 위해자가 인터넷 자체를 통제할 수도 있다는 점을 인식하고 있기 때문에 엄격한 의미에서의 비잔틴을 보장할 수 있다.
ACID[편집]
해시그래프는 ACID(Atomicity, Consistency, Isolation, Durability)를 준수한다. 이는 데이터베이스 용어로서, 해시그래프를 분산형 데이터베이스로 운용할 경우 적용된다. 커뮤니티 내 사용자들은 거래가 발생한 순서에 대해 합의를 구할 때 본 지침을 적용한다. 합의가 도출된 후, 각 사용자가 갖고 있는 데이터베이스의 로컬 복사본에 합의된 추가 거래 내용을 입력하게 된다. 만약 모든 로컬 데이터베이스가 ACID 표준을 준수할 경우, 커뮤니티 전체가 하나의 분산형 데이터베이스를 보유하고 있다고 명명할 수 있다[6] 블록체인에서는 완전한 합의가 도출된 시점을 알 수 있는 방법이 없다. 여섯 번 정도의 확인과정을 통해 알아내는 정도가 해시그래프와 비슷한 수준에서의 ACID 준수라고 볼 수 있다.
효율성[편집]
해시그래프는 블록체인 커뮤니티에서 언급되는 100% 효율성을 가지고 있다. 블록체인에서는 추후에 탈락되거나 커뮤니티에서 채택하지 않을 블록 때문에 시간을 허비하는 경우가 있다. 해시그래프에서는 블록이 절대 탈락되지 않는다.
저렴한 가격[편집]
해시그래프는 작업증명 절차가 필요 없기 때문에 저렴하다. 비트코인의 경우, 불필요한 계산과정 때문에 시간이 지연되는 경우가 있다. 앞으로 컴퓨터들의 성능이 좋아질수록 이러한 과정들은 추가가 될 것이다. 이런 것들은 일의 처리를 지연시킬 뿐 별다른 도움이 되지 않는다. 이로 인해 서로 간의 경쟁에서 이기고 싶은 채굴자는 고가의 특별 주문 제작된 하드웨어를 구매해야 할지도 모른다. 하지만 해시그래프는 블록들이 처리되는 속도가 빨라져도 영향을 받지 않기 때문에 효율적이다. 다시 말해, 일처리의 속도를 줄이기 위해 컴퓨터 연산을 낭비할 필요가 없다는 말이다.[4]
타임스탬프[편집]
해시그래프는 타임스탬프 형식이다. 모든 거래에는 합의시간이 배저되며 이는 각 사용자가 해당 거래를 처음 수신한 시간들의 중앙값이다. 합의 도출을 위한 절차인 타임스탬프 작업은 비잔틴 수준을 보장하며 또한 증명이 가능하다.[5] 만약 참여하는 사용자들의 대다수가 정직하고 신뢰할 수 있는 컴퓨터 시간을 입력했다면, 정직하고 신뢰할 수 있는 사용자가 생성한 공동의 시간표이므로 타임스탬프 내 한 개 또는 두 개 시점 사이에 존재한다고 볼 수 있고, 그 결과 정확성과 신뢰성이 보장된다.[6] 합의 타임스탬프 형식은 마감시간 내에 사건이 실제로 발생했는지에 대한 합의가 정립되며 공격에 취약하지 않기 때문에 스마트계약 등의 환경을 개발하는 데에 유용하다.[4] 블록체인 시스템은 각 블록에 타임스탬프가 있지만 채굴을 처리한 컴퓨터 시계만 반영된다.
무허가형 시스템[편집]
해시그래프는 무허가형으로 설정이 되어있고, 작업증명의 비용은 피할 수 있다. 허가형 시스템은 승인을 받은 사용자만 참여가 가능하고, 무허가형 시스템은 승인절차를 요구하지 않고 누구든지 참여가 가능한 커뮤니티이다. 일반적인 블록체인은 작업증명을 사용하면 개방될 수 있지만 안전을 확보하려면 지분증명과 같은 솔루션들이 허용되어야 한다. 해시그래프 시스템은 다양한 방식으로 작동 가능하도록 설계되었다. 더욱 흥미로운 점은 지분증명을 사용하는 것인데 이는 특정 암호화폐의 소유권에 비례하여 투표권한을 부여한다. 좋은 암호화폐는 널리 사용될 수 있기 때문에 공격자가 전체 통화 공급액의 상당 부분을 소유함으로써 시장을 장악하기가 어렵다. 만약 통화 소유자들 중 상당수가 해시그래프 시스템에 참여한다면, 지분증명의 도입을 통해 허위의 다중계정 집단에 의한 시빌 공격으로부터 보호받을 수 있다. 이런 시스템은 허가되지 않았더라고 보안상 안전하며 작업증명의 비용을 없앨 수 있다.
장단점[편집]
장점[편집]
- 블록체인과 해시그래프 시스템은 모두 특정 회원이 거래를 생성할 수 있고 이는 블록에 저장되어 커뮤니티 전체에 전파된다.[5] 블록체인에서의 블록 개념은 한 개의 긴 사슬을 형성하도록 되어있다. 만약 채굴자들이 두 개의 블록을 동시에 생성 한다면 커뮤니티는 둘 중 하나만 선택하고 나머지를 버려야 한다.[6] 비유하자면 하나를 제외한 모든 가지들을 계속 쳐내야 하는 나무를 키우는 것과 같다.
- 해시그래프에서는 버리는 것 없이 모든 블록이 사용된다. 그 결과, 나무의 모든 가지는 영원히 공존하며 전체를 하나로 묶도록 설계되어 있다. 이게 더 효율적이다. 따라서 해시그래프에서는 버려지는 것이 없다. 또, 시스템이 빠르게 성장하면서 생기는 위험이 없다. 모든 사용자들은 언제든 필요시 새로운 거래 및 블록을 생성할 수 있기 때문에 매우 단순하면서 빠른 속도를 자랑할 수 있다.[4]
- 마지막으로 해시그래프에서는 가지치기가 필요 없기 때문에 더 단순하고, 이로 인해 비잔틴 합의와 공정성과 같은 강력한 수학적 보증을 가능케 한다.[5] Paxos와 같은 분산형 데이터베이스는 비잔틴이긴 하나 공정하지는 못한다. 블록체인은 비잔틴도 아니며 공정하지도 않다. 하지만 스월즈 해시그래프는 비잔틴 합의와 공정성을 모두 갖고 있다.
단점[편집]
- 해시그래프는 아이오타의 탱글과 비슷한 알고리즘으로서 현재까지 가장 진보된 분산원장 기술이라고 평가 받고 있다.[2] 하지만 한편으로는 오픈소스가 아니라는 점 때문에 탈중앙화와는 거리가 멀다는 비판을 받고 있다.
- 또한 근본적으로 확장성이라는 것이 일차원적인 접근으로는 해결이 불가능한데, 해시그래프는 트랜잭션 수에 대한 확장성만을 높인 프로토콜로 보여진다.[2] 즉, 네트워크 노드의 수 등에 대한 확장성에 대해서는 해시그래프도 해결하지 못하고 있다.
- 해시그래프가 지금처럼 프라이빗한 세팅 안에서는 빠르고 공정하고 안전하지만, 퍼블릭 세팅에서 사용된다면 해시그래프는 지금의 다른 퍼블릭 블록체인이 가지고 있는 안정성이나 성능 측면의 문제들을 똑같이 마주하게 될 것으로 보여진다.[2] 따라서 여전히 다른 퍼블릭 블록체인 프로젝트들처럼 실제 제품이나 서비스가 실현되기 전까지는 확신을 할 수 없다는 한계점을 가진다.[2]
전망[편집]
해시그래프는 자칭 ‘4세대 블록체인’이다. 하지만 ‘3세대 블록체인’이 완성되지도 않은 상태에서 본인들의 플랫폼을 ‘4세대’라고 부르는 것은 엄청난 도전장이다.[2] DAG 방식의 분산원장 플랫폼이 이론처럼 운영될 수 있다면 블록체인 생태계를 뒤바꿀 수 있는 엄청난 혁신일 것이다. 아직까지 안정적으로 초당 수천 개의 거래를 완결성 있게 처리하는 블록체인은 없기 때문이다.
해시그래프는 해시그래프 기술이 이미 기업 생태계 내에서 큰 문제없이 운영되었으며, 수많은 내부 테스팅을 거쳤다고 주장했다. 하지만 ‘가능성’ 만을 내세운 해시그래프의 이벤트는 조금 실망스럽다는 평가를 받았다. 해시그래프 기술이 어떻게 돌아가거나 어떤 진전이 있었는지에 대한 설명보다는, 플랫폼을 홍보하기 위한 자리였다. 플랫폼의 ‘공개’ 이벤트였던 만큼 자세하게 설명하지 못한 바에 대해서 앞으로 서서히 공개할 가능성은 있다. 하지만 만약 해시그래프 플랫폼이 약속한 대로 구축된다면 블록체인 생태계에서 엄청난 영향력을 가진 거인이 될 것으로 보인다.[7]
각주[편집]
- ↑ klim066, 〈해시그래프 (Hashgraph), 가상 화폐 기술 혁신을 이루다?〉, 《스팀잇》
- ↑ 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 kblock, 〈(케블리) #34. ‘해시그래프(Hashgraph)’, 블록체인을 뛰어넘는 신뢰 프로토콜이 될 수 있을까? (feat. 헤데라)〉, 《스팀잇》
- ↑ 메버릭, 〈(블록체인 소식) ‘4세대 블록체인’ 해시그래프 기반 플랫폼 공개… ICO 소식은 없다〉, 《네이버 블로그》, 2018-03-15
- ↑ 4.0 4.1 4.2 4.3 4.4 4.5 〈Overview of Swirlds Hashgraph 스월즈 사 해시그래프 개요 한글 번역본- EMD〉
- ↑ 5.0 5.1 5.2 5.3 5.4 5.5 Leemon Baird, 〈Overview of Swirlds Hashgraph〉, 《스월즈》, 2016-05-31
- ↑ 6.0 6.1 6.2 6.3 emd, 〈Overview of Swirlds Hashgraph (Korean) 스월즈 사 해시그래프 개요 한글 번역본- EMD〉, 《스팀잇》
- ↑ 나그네, 〈‘4세대 블록체인’ 해시그래프〉, 《네이버 블로그》, 2018-07-17
참고자료[편집]
- 헤데라 해시그래프 공식 홈페이지 - https://www.hedera.com/
- 블록인프레스, 〈‘4세대 블록체인’ 해시그래프 기반 플랫폼 공개… ICO 소식은 없다〉, 《블록인프레스》, 2018-03-14
- 케블리, 〈‘해시그래프(Hashgraph)’, 블록체인을 뛰어넘는 신뢰 프로토콜이 될 수 있을까? (feat. 헤데라)〉, 《스팀잇》, 2018-04-18
- 편집부, 〈헤데라 해시그래프, 공공 블록체인 구축 위해 1억 달러 조달〉, 《비씨씨포스트》, 2018-08-02
- Adam Reese, <What Is Hashgraph?> , 《ETHNews》, 2018-03-16
같이 보기[편집]