안녕하세요 크리머 입니다 :)
- 다소 자극적인 제목일 수 있지만 댄이 한말이니 저를 미워하지 말아주세요 ㅎ..
- 댓글로 에이다에 대해 궁금해하시는 분들이 많아 얼마전 있었던 댄과 찰스의 논쟁을 소개해 드립니다.
- 댄은 카르다노(에이다)의 합의 알고리즘인 우로보로스(Uroboros)에 대해 비판 적인 글을 적었습니다.
Peer Review of Cardano's Ouroboros
@dan/peer-review-of-cardano-s-ouroboros
- 댄의 주장을 의역 해보자면 이렇습니다.
에이다의 합의알고리즘은 DPOS의 하위 호환 버젼이야.
댄은 최근에 에이다(카르다노)의 합의 알고리즘을 리뷰할 기회를 가졌습니다. 에이다의 마케팅은 최초의 ( 피어 리뷰, 안전하게 입증가능한) POS 합의 알고리즘을 가지고 있다는 것이라고 합니다. 그러나 비트쉐어, 그래핀 , 스팀 , EOS에 익숙하다면 에이다의 합의 알고리즘은 몇 가지 수정사항이 포함된 DPOS의 카피 일 뿐 이라는것이 분명 해집니다. 에이다의 논문에서는 댄의 이전의 결과물들에 대한 언급하거나 인정하지 않고 πDPoS라는 용어를 사용하였습니다.
에이다의 합의알고리즘에 대한 기술적인 리뷰를하기 전에 EOS와 ADA를 비교해 봅시다.
EOS vs ADA
블록 인터벌 (블록 생성 속도)
- 블록 인터벌은 트랜잭션이 첫번째 블록에 포함될 때까지의 지연 시간을 결정합니다.
- 프로토콜에 구축된 댑들의 응답속도에 대한 하한선 입니다.
- 짧을 수록 블록 생성 속도가 빠릅니다.
EOS: 0.5 초
Steem/BitShares: 3 초
ADA(Ouroboros): 20 초
확정 시간
- 트랜잭션이 옳바르게 됬는지 확인하기 위해 기다려야 하는 시간.
- 트랜잭션에서 가장 중요. ( 결제가 확인 되지 않았다면 상품을 줄 수 없으므로)
EOS: 2초 이하
Steem/BitShares: 45초 이하
ADA(Ouroboros): 5시간 초과
ADA는 댑들에게 어울리지 않는 플랫폼이다.
- 만약 ADA가 수학적인 증명을 통해 더 안전한 합의알고리즘을 제안하더라도 실용적 가치는 없을 것입니다.
- 에이다는 안전하다고 주장하는 방탄복을 만들었는데 180kg 짜리 방탄복을 만든 것 입니다.
- 불행하게도 ADA가 만든 방탄복이 안전하다는 보장도 없습니다. 180kg 짜리 방탄복이지만 입는다해도 총알은 막지 못합니다.
- 에이다의 합의 알고리즘에는 잘못된 가정이 있습니다. 에이다의 보안 수준이 훨씬 낮다는 것을 보여 드리겠습니다.
에이다의 문제점
에이다의 합의 알고리즘은 지분의 1%이상을 보유한 사람들에 한해 수확적 확률을 이용한 무작위로 블록생성자들이 결정 됩니다.이러한 방식은 채굴풀과 같은 중앙집권화를 야기 시킬 수 있습니다. ( 쉽게 생각하면 1%라고 해서 1%를 가진 100명이 존재 할 수 없다는 것입니다. 또한 옳바른 투표가 아닌 보유지분에 의해 랜덤하게 결정 되므로 발전적인 커뮤니티가 만들어지기 어려우며 중앙집권화를 야기 시킬 수 있습니다.)
사견: 노드의 중앙집권화에 대해서는 21개의 노드를 가지게 될 EOS의 DPOS도 비슷한거 아니냐? 하는 비판을 하시는 분들이 계실 수도 있는데 완전히 다릅니다. (이 부분에 대해서는 글의 흐름을 위해 따로 자세하게 포스팅 하겠습니다 : )
또한 확정시간은 2/3이상의 합의가 나왔을때 확정됩니다. 그러한 방식은 때때로 새로운 블록이 생성되었음에도 불구하고 실제로 블록생성이 일어나지 않는 불확실성을 가지고 있습니다.
댄의 주장 . 결론
- 에이다의 합의 알고리즘은 잘못된 가정으로 인해 수학적으로도 안전하지 않다.
- 에이다의 합의 알고리즘은 새로운 것이 아닌 댄이 2014년에 도입한 DPOS보다 보안이 약하고 느린 하위 호환 버젼일 뿐이다.
글을 마치며
- 메인 사진은 댄과 아저씨의 원빈을 합성한 사진 입니다. (댄저씨)
- 제 글의 취지는 많은 사람들이 쉽고 재밌게 읽을 수 있는 글을 적는 것 입니다. 때문에 기술적인 부분은 일정 부분 중략 하였습니다.
- 이건 저의 의견이 아닌 댄의 글을 의역한 것 뿐입니다.
- 건전한 비판과 토론은 언제나 환영입니다 :)
- 글이 도움이 되셨다면 리스팀/팔로우/댓글/보팅 부탁드립니다 :)