본문 바로가기

알기쉬운 블록체인

DAG (Directed Acyclic Graph)

블록체인 기술은 분명 획기적인 기술이지만 몇 가지 단점이 있다.

비트코인에서 항상 논란이 되는 확장성 문제나 10분 가량 소요되는 블록생성시간, 점점 커지는 수수료 문제다.  이러한 점은 암호화폐 실용화의 장애물이 된다.

사용할수록 비효율적인 부분이다.

블록을 꼭 하나만 인정해야 하는가와 한정적인 블록 공간안에 꼭 트랜잭션을 넣어야 하나하는 의문이 생긴다. 10분이나 기다려야 블록이 하나 생기고, 만약 내 트랜잭션이 블록에 포함되지 않으면 또 기다려야 한다는 불만이 생긴다.

이 문제에 대한 해결책으로 대두된 것이 DAG방식이다.

DAG기술은 DAG알고리즘을 블록체인에 적용하면서 과감히 블록을 없애고 체인의 형식만을 남겨버린다. 사실상 더이상 블록체인이라고 부를 수 없게 된 셈이긴 하다.

DAG는 IOTA에서 ‘탱글’이라는 기술로 다듬어져 소개되면서 많이 알려진 알고리즘이다. Byteball 역시 DAG방식을 채택하면서 많이 알려졌다. DAG방식을 채택한 프로젝트에는 IOTA , RaiBlocks, DAGCOIN, Byteball, Aidos Kuneen , Hcash가 있다.

DAG(Directed Acyclic Graph)를 직역하자면 방향이 있으며 사이클(순환)을 이루지 않는 그래프다. 그래서 ‘방향성 비사이클 그래프’ 또는 ‘방향성 비순환 그래프’라고 일컬어진다. 처리를 나타내는 화살표는 일정한 방향이 있고 순환하지는 않는다. 한 트랜잭션이 다음 트랜잭션을 증명해주는 방식이다. 이러한 알고리즘을 블록체인 기술과 접목을 시키게 되자 큰 변화가 생겼다.

- 이미지출처 : 위키피디아

 


DAG (Directed Acyclic Graph) 알고리즘을 적용하면 하나의 트랜잭션이 다음 트랜잭션을 검증하고 승인하게 된다. 또 이러한 검증라인은 직렬이 아닌 병렬적으로 이뤄지게 된다. 블록의 수준을 트랜잭션 수준으로 쪼개고 이러한 검증이 동시다발적으로 이뤄지는 방식이다.

이 기술이 획기적인 이유는 비트코인과 스케일링 (확장성) 이슈를 예로 들 수 있다. 비트코인의 대표적 문제로 지적되는 스케일링 문제가 있다. 처음 설계 된 비트코인 블록 크기는 1MB였다. 여기에는 대략 3000개의 트랜잭션이 담길 수 있다고 한다. 처음에는 이 정도 크기로도 충분히 감당할 수 있었다. 그런데 비트코인 거래가 늘면서 블록이 감당하지 못하는 수준에 이르자 문제의 해결책으로 세그윗이나 사이드 체인이 언급된 것이다. 세그윗을 통해 비트코인을 그대로 두고 블록 크기를 늘리거나 트랜잭션을 더욱 가볍게 도와줄 사이드 체인으로 이 문제를 해결하려 했던 것이다. 하지만 논란도 있고 사이드체인  루트스탁과 같은 프로젝트도 아직 진행중이다.

그래서 블록을 없애고 검증단위를 쪼개면서 해결한 것이 바로 DAG기술이다.  DAG기술은 기술 대중화에 가장 큰 난관인 확장성 문제를 해결할 대안이 되었고 블록체인 3.0단계에서 주목받게 되었다.


그렇다면 DAG방식의 장점은 무엇일까?


먼저 속도가 빠르다.

DAG방식은 블록이 없다. 채굴자들의 트랜잭션 승인을 기다릴 필요가 없다. 블록 생성없이  트랜잭션이 다른 트랜잭션을 검증하므로 매우 빠른 속도로 이 절차가 수행된다. 게다가 이러한 과정이 동시에 병렬적으로 이뤄지므로 더욱 빠르다.


수수료가 없다.

거래소 수수료는 논외로 하고 POW방식의 암호화폐를 전송하는 데 드는 수수료는 대체로 채굴에 대한 보상으로 발생한다. 그리고 덩치가 커진 암호화폐는 그만큼 수수료가 커진다. 하지만 블록 개념이 없는 DAG방식은 채굴자가 없기 때문에 기본적으로 수수료가 발생하지 않는다.


확장성 문제에서 자유롭다.

DAG방식은 확장성에서 자유롭다. 거래요청이 늘어난다고 해서 거래 승인이 지연되거나 병목 현상이 발생하지 않는다. 오히려 사용자가 늘어 트랜잭션이 많아질수록 검증 신뢰도와 속도가 증가한다. 이는 블록체인 기술의 대중화에 걸맞는 장점이다.


 

'알기쉬운 블록체인' 카테고리의 다른 글

암호화폐 USDT 테더  (0) 2018.11.16
블록체인 발전단계  (0) 2018.11.15
블록체인 DAO(Decentralized Autonomous Organization)  (0) 2018.11.13
전자서명 (Digital signature)  (0) 2018.11.12
트랜잭션 (Transaction)  (0) 2018.11.09