먼저 마지막 주장에서 잘못된 부분을 정정해드리자면 BP 또는 증인 수가 늘어나도 네트워크 속도는 동일합니다. 다만 네트워크 유지 비용이 비례해서 증가하게 됩니다. 또한 투표수를 줄이지 않는 근본적인 이유는 20인 중 한 명이라도 악의적인 증인이 들어오지 못하게 하기 위함입니다. BP나 증인들은 긴밀한 연결관계에 있기 때문에 적은 표로 상위 증인에 들게 된다면 보안위험이 발생할 수 있습니다. 물론 저도 증인 수를 늘리면 좋겠지만 적어도 네트워크 보안이 안정적으로 유지되고 효율적인 정도까지만 늘리는 것이 좋다는 입장입니다.
이 부분이 잘 이해가 안되네요. 우선 의문점은 두가지 입니다.
- 정말로 BP 또는 증인 수가 늘어나도 네트워크의 속도가 동일한게 맞나요?
노드의 수가 증가하게 되면 자연히 블록체인의 처리 속도가 감소하게 되는게 제가 기존의 알고있는 상식이여서요.
https://medium.com/loom-network/ethereum-will-be-the-backbone-of-the-new-internet-88718e08124f
이 글에선 이런 구문이 있죠.
So if you want the network to be sufficiently decentralized by having thousands of users running validators, the max number of transactions per second needs to be capped by what the average user’s PC and network speed can handle.
즉 탈중앙화와 처리속도는 tradeoff관계로 볼 수 있습니다.
글에서 주장하신 BP 수가 증가해도 처리량이 감소하지 않는다는 주장은 검증이 필요해보입니다. 과연 BP수가 몇천개가 되어도 여전히 같은 속도를 유지할수 있을까요? 단순히 네트워크 유지비용 때문에 BP수를 20으로 제한했다는 말은 설득력이 부족합니다. 네트워크 유지비용이 더 늘더라도, 지금과 같은 처리량에 탈중앙화 수준을 높일 수 있더라면 당연히 그렇게 하지않았을까요?
2 .두번째 질문은 이 부분에 대한 질문입니다.
또한 투표수를 줄이지 않는 근본적인 이유는 20인 중 한 명이라도 악의적인 증인이 들어오지 못하게 하기 위함입니다.
저는 애초에 합의 알고리즘의 설계과정에서 악의적인 노드가 있다고 가정해야 한다고 봅니다. 즉 설사 증인 또는 BP에 악의적인 노드가 여러개가 존재한다고 하더라도 저항성을 가져야된다는거죠.
투표라는 선출을 통해 이런 악의적인 노드가 증인으로 참가하지 못하게 된다면 정말 베스트지만, 항상 최악의 상황, worst case를 가정해야죠. 그런 의미에서 20명의 증인은 너무 작다고 보여집니다. 증인 몇개가 악의적인 노드일시에는 정말 취약해지는 것이 아닌가요?
당장은 투표가 잘되고, 증인도 공정하게 선출되고 있죠. 지금은요. 하지만 아직 문제가 발생하지 않은 것뿐, 잠재적인 위험이 크다고 생각됩니다.
RE: DPoS 비판에 대한 반론