의견.png

방향성 비순환 그래프

위키원
sbcha00 (토론 | 기여)님의 2019년 8월 5일 (월) 13:20 판
이동: 둘러보기, 검색
탱글(Tangle) 알고리즘
탱글(Tangle) 알고리즘

방향성 비순환 그래프(DAG; Directed Acyclic Graph)란 개별 요소들이 특정한 방향을 향하고 있으며, 서로 순환하지 않는 구조로 짜여진 그래프를 말한다. 간략히 DAG(대그)라고 쓴다. 아이오타(IOTA)에 적용된 탱글 알고리즘과 헤데라 해시그래프에 적용된 해시그래프 등이 있다.

방향성 비순환 그래프에서 개별 요소들은 블록체인처럼 여러 개의 트랜잭션을 하나의 블록으로 묶지 않고, 각 개별 요소들끼리 상호 연결되어 있다. 방향성 비순환 그래프는 시간적으로 이전 트랜잭션에 대해 그 이후 트랜잭션이 검증하는 구조로 되어 있다. 시간 t를 기준으로 그 다음에 이어질 시간 t+1의 상태를 추측하기 위해 마르코프 체인 몬테 카를로(MCMC; Markov Chain Monte Carlo) 알고리즘을 사용한다.

개요

방향성 비순환 그래프DAG(대그)라고도 하며 Directed Acyclic Graph의 약자이다. 직역 그대로 한 방향으로 이어지지만, 순환은 하지 않는 그래프 이다. '방향성 비 사이클' 그래프이며 방향을 가지지만 루프를 생성하지 않는 그래프라는 의미이다. 여기서 루프, 또는 사이클이란 자기 자신에서 출발해 다시 자신에게 돌아오는 경로를 말하며 비 사이클이므로 이러한 경로가 없어야 한다.[1]

a라는 최초의 거래내역을 그 뒤의 b, c, d, e가 검증한다. 또한 그 뒤의 g, f가 b, c, d, e를 검증한다. g, f 는 동시에 a 를 비간접적으로 검증했다고 볼 수 있다.

이런식으로 꼬리에 꼬리를 물며 추가되는 트랙젝션들이 앞의 트랜젝션들을 직, 간접적으로 검증하게 되면서 네트워크가 형성된다. 이러한 직, 간접 검증이 누적된 트랜젝션은 검증이 완료되었다고 보고 확정이 된다. 이 것은 거래가 완료되었다고 볼 수도 있다.

아이오타에서는 이 구조를 탱글이라고 부르는데, 이 탱글에 사람들이 참여하면 참여할 수록 검증이 더욱 많이 되므로, 더 신뢰할 수 있는 시스템이 된다. 또한 사람들이 이 시스템에 많이 참여할수록 확저되는 트랜젝션들이 늘어남으로써 확장성의 문제도 해결할 수 있다.

이러한 DAG 합의 구조를 쓰는 코인에 IOTA, HSR, ADK 등이 있다.

특징

활용 사례

방향성 비순환 그래프(DAG)를 사용하는 곳은 다음과 같다.

장점

사용자가 많을 수록 빠르다

DAG 알고리즘이 적용된 기술은 불록이 없기 때문에 채굴자들의 트랜잭션 승인을 기다릴 필요가 없다. 블록 생성 없이 트랜잭션이 다른 트랜잭션을 검증하기 때문에 매우 빠른 속도로 절차가 수행되며 검증과정이 병렬적으로 이루어지기 때문에 트랜잭션이 많을 수록 즉, 사용하자가 많을 수록 검증절차는 더욱 빨라진다.

수수료가 없다

POW 방식의 암호화폐를 전송하는데 드는 수수료는 대체로 채굴에 대한 보상으로 발생한다. 하지만 블록의 개념이 없는 DAG 방식은 채굴자가 없기 때문에 기본적으로 수수료 또한 발생하지 않는다.

확작성 문제가 없다

일반적인 블록체인에서는 사용량이 많아질 수록 블록 대비 트랜잭션 수가 넘쳐나는 병목현상이 발생하지만 DAG는 사용량이 많아질 수록 새로운 트랜잭션을 검증할 이전 트랜잭션이 많아지므로 오히려 검증의 신뢰도와 속도는 증가한다.

각주

  1. 마스터누누, 〈DAG와 위상 순서〉, 《티스토리》, 2017-05-24

참고자료

같이 보기


  의견.png 이 방향성 비순환 그래프 문서는 블록체인 기술에 관한 토막글입니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 이 문서의 내용을 채워주세요.