모든 스티미언을 위한 증인 활동 모니터링 툴, 증인 인사이트 1.0

내가 투표한 스팀 증인들은 어떠한 활동을 하고 있을까?

Steem은 현 시점 가장 성공적인 DPOS이며, 아시는바와 같이 스테이크 홀더들의 투표를 가장 많이 받은 상위 20명의 증인의 절대적인 영향력으로 움직입니다. 그러나 증인들의 활동을 한눈에 확인하고, 좀더 깊이 들어가 볼 수 있도록 도와주는 툴은 현재 제가 알기로 거의 없습니다. 저도 대기증인이 되기 전까지는 크게 관심이 없었고, 왜 꼭 있어야 하는지 생각해 본적도 없습니다. 그저 https://steemdb.com/witnesses 를 보면서 재밌어하는 정도였지요. 대기증인이 된 이후 점점 많은 관심을 갖게 되었고 https://steemian.info/witnesses 툴이 상당히 유용하다는것을 알게 되었고 많이 사용하게 되었습니다. 그래도 여전히 steemdb.com가 witness 정보를 정말 세세히 알 수 있는 최고의 툴이라고 생각합니다. 각 계정의 witness 탭을 이용하면 수많은 정보들을 확인 해 보실 수 있습니다.

그러나 이 툴들은 다음과 같은 요구사항을 해결해 주지 못합니다.

  • 증인들은 누구에게 어떠한 방식으로 보팅을 하고 있는가?
  • 증인들은 보팅을 제대로 하고 있는가? 소위 말하는 담합은 없는가?
  • 증인들이 proxy를 설정했다면 그 보팅은 어떻게 되고 있는지?
  • 증인들이 문제있는 증인들에게 보팅하고 있지는 않은가?
  • 내가 보팅한 증인들의 정보만 모아서 볼 수 있는가?
  • 증인 업데이트 글을 올리고 있는가?
  • witness-update 카테고리에 어떤 글을 쓰며, 무슨 프로젝트를 하고있는가?
  • 등등

이러한 관점에서 시작된 증인 인사이트 (Witness Update) 툴이 상당한 시간의 기획 및 개발 과정을 거쳐 드디어 1.0 버젼을 내놓게 되었습니다. 1.0 버젼을 붙일 만큼 완성도가 높은것은 아니지만, 프로젝트를 어느정도 마감하기 위한 차원에서 과감하게 버저닝을 하였습니다. 이후에는 버그 픽스 외에는 손대지 않을 예정입니다. 스팀페이 프로젝트에 여유 시간을 올인하기 위함입니다.

툴 경로: http://steeme.com/witness

1. 스팀을 빛내야 하는 100명의 증인들

사이트에 접속하면, 100위 안의 증인 모두의 정보가 한눈에 보여집니다. 100위로 제한한것은, 100위 이하는 실질적으로 거의 영향력을 미치지 못하기 때문입니다.

이 페이지에서 확인할 수 있는 정보는 다음과 같습니다.

  • Version: 증인 노드 버전
  • Missed Block: 그동안 놓친 블록. 이 숫자는 사실상 크게 의미 없습니다.
  • Receiving Votes: 받고있는 투표 양 (투표자들의 스팀파워의 합이라고 생각하시면됩니다)
  • Vote Leverage: 이 증인의 보팅 파워 (프록시 받은 사람들의 스파와 본인의 스파의 합이라고 생각하시면 됩니다)
  • Feed: 가격 공시
  • Proxy: 증인 보팅을 프록시 한 경우 여기에 계정이 보여집니다. 만일 프록시를 설정한 증인이면, Vote Leverage와 Votes Cast 의 값이 이 프록시 기준으로 변경됩니다.
  • Vote Casts: 증인투표를 한 개수입니다.
  • Votes Received: 다른 증인들로부터 투표를 받은 수입니다. (전체가 아님)

5일 이상 증인노드가 중단된 경우 붉은색으로 표시됩니다.

5일 이내인 경우 노란 색으로 표시됩니다.

버젼이 0.19.3 이하라면 경고를 보여줍니다. 0.19.2는 보안 위험이 있으며, 0.19.2 에 모든 패치를 하면 0.19.3과 동일합니다. 하지만 이는 증인 개인들만 알고 있을 뿐 외부에서 이 버젼이 패치된 것인지 아닌지는 판단이 불가능합니다. 대외적인 이미지를 위해서라도 이를 최신 버전으로 패치하는것은 증인들의 의무라고 봅니다. 이 툴은 이 경고등을 통해서 업데이트를 권장하도록 유도합니다.

오른쪽에 Votes Cast 란이 있습니다. 만일 증인이 다른 증인에게 투표했는데, 그 투표를 받은 증인들이 문제가 있다고 여겨지면 여러가지 알람을 보여줍니다. 증인들이 자신들의 투표를 자주 관리하도록 독려하려는 기획입니다.

  • 오렌지색 하트: 5일 이상 중단된 증인에게 투표하고있음. 활동을 중단한 증인에게 투표하는것은 어떠한 이유로도 포장이 안되며, 간과해서는 안되는 문제라는 의견입니다.
  • 노란 눈: 가격을 100% 이상 차이나게 공시하고있는 증인에게 투표하고 있음. 크게 문제는 아니지만 상위 증인이라면 좀더 신경쓸 필요가 있다는 생각입니다.
  • 빨간경고판: 0.19.1 이하의 버젼을 쓰고있는 증인에게 투표하고 있음. 이건 매우 심각한 문제이며 모든 증인들은 이부분을 무시하지 말고 자신의 증인 투표를 취소해야 합니다.

이 경고판들은 증인들이 스스로의 보팅을 계속해서 관리하도록 유도하는 효과가 있습니다. 이로 인해 얻는 기대 효과는 다음과 같습니다.

  • 비정상적인 증인에게 투표하는 증인은 신뢰를 조금씩 잃게 된다.
  • 결국 증인들의 보팅이 "정상적인" 증인에게 갈 수 밖에 없다.
  • 이 보팅을 놓치지 않기 위해, 다른 증인들도 "정상적인" 증인이 되기 위해 노력한다. 노력은 단지 자신들의 증인 노드 관리 뿐만 아니라 곧 프로젝트 및 캠페인을 의미한다.
  • 태만한 증인들은 빠르게 도태 되고, 좋은 증인들이 상위로 올라간다.
  • 이런 선순환이 대기 증인들의 활발한 프로젝트를 촉진한다.
  • 결국 스팀 전체가 건강해지고, 대외적인 이미지가 높아지며, 따라서 스팀의 가치가 높아진다.

2. 내가 투표한 증인들을 확인하자

모든 증인을 보는 기능은 물론 가장 중요하지만, 내가 선택한 증인들의 상태를 집중적으로 볼 필요가 있습니다. 전에는 분명 건강한 증인이었는데 시간이 지나면 문제가 생길 수 있기 때문입니다. 스팀 인사이트는 이 기능을 지원합니다. 다음과 같이 본인의 계정을 입력하면, 본인이 투표한 증인들만 보여줍니다.

제가 투표한 증인들도 몇명은 활동 중단한 증인들에게 투표하고있고, 몇명은 0.19.1 을 사용중인 증인에게 투표하고 있는것을 한눈에 알 수 있습니다. 이 툴을 공개한 후에도 저 증인들이 자신들의 보팅을 재정비 하지 않는다면 보팅을 취소할 계획입니다.

3. 증인 더 깊이 들여다보기

증인 계정명 옆에 돋보기를 클릭하면, 더 자세한 정보를 보여줍니다.

3.1 프로필

증인 계정 프로필입니다.

프로필이 없는 증인에게는 프로필을 설정하기를 권장합니다.

3.2 지난 한달간 증인 업데이트와 witness-category 에 올린 글 목록

증인들은 증인 업데이트 글을 통하여 무슨 활동을 하고있는지, 문제는 없는지, 문제가 있었다면 원인이 뭐였으며 어떻게 대처 했는지 등의 정보를 공유합니다. 한달에 한번 정도는 업데이트 할 필요가 있다고 생각하며, 업데이트는 따로 없더라도 witness-category에서 활동하는 모습이 보여야 한다고 생각합니다.

증인 업데이트를 하지 않는 증인의 페이지에는 다음과같은 권고사항이 보여지게 됩니다.

3.3 수행하고 있는 프로젝트

증인들이 수행하고 있는 프로젝트를 통해서 사람들은 어떤 증인을 지지할지 결정하고 응원할 수 있습니다. 현재 이러한것들을 확인하는것은 엄청난 시간을 소모합니다. 이는 증인들에게도 마찬가지입니다. 자신들이 어떤 일을 하고 있는지 일목요연하게 보여줄 수 있는 방법이 없습니다. 스팀 인사이트는 증인들이 직접 프로젝트 목록을 등록 하면 이를 보여주도록 하는 기능이 있습니다.

증인들이 자신들의 profile에 custom JSON으로 직접 등록해야 하며, on-chain 이므로 투명함을 보장합니다. custom JSON을 등록하려면 코딩이 필요한데 증인들이라면 당연히 할 수 있는 수준입니다. 혹시 어려움을 겪을지 모를 증인들을 위하여 파이썬 스크립트도 함께 제공합니다.

등록하지 않은 증인들의 페이지에는 다음과같은 메시지가 보여집니다.

링크를 따라가면 파이썬 스크립트가 있으며, 그 스크립트를 통해 쉽게 업데이트 할 수 있습니다. 스크립트의 경로는 다음과 같습니다.

https://github.com/ianpark/steeme/blob/master/misc/witness_profile_updator.py

증인중에서 본계정은 따로 있는 증인들이 있습니다. 이들의 경우 custom JSON의 "owner"에 본계정을 추가하면 그 계정의 witness-update와 witness-category 글들을 보여주도록 설정됩니다.

3.4 증인들간의 보팅 분석 차트

증인들간의 보팅이 어떻게 이루어지고 있는지 한눈에 보여주는 차트입니다.

3.5 어떤 증인들에게 보팅했는가?

증인들이 누구에게 보팅했는지 보여주는 차트입니다. 아래의 숫자는 순위입니다. 보통 1위부터 20위쪽에 많이 보팅하지만, 많은 증인들이 하위 증인들에게도 보팅하고 있습니다. 하위증인중에서 보팅을 많이 받아 상위로 올라오면 이 차트는 결국 또 왼쪽으로 쏠리게 됩니다. 따라서 결국 왼쪽에 더많이 보팅이 될 수 밖에 없는 구조입니다. 그러나 모든 증인들은 자신의 보팅을 자주 점검하고, 열정있는 하위 증인들에게 보팅을 옮겨줄 필요가 있다고 생각합니다.

3.6 어떤 증인들에게 보팅을 받았는가?

이 차트는 어떤 증인들로부터 보팅을 받고있는지를 보여줍니다. 이 차트 자체로는 별 의미가 없습니다. 그러나 간접적인 영향을 유추 해 볼 수 있습니다. 여러 증인들로부터 골고루 보팅을 받고있는지, 하위 증인들에게만 인기가 있는지, 상위 증인들에게서만 받고있는지 등입니다.

마치며

저는 EOS의 BP들을 보면서, 왜 Steem의 증인들은 저렇게 프로페셔널하게 활동 할 수 없을까 하는 고민을 했습니다. 그리고 그 가장 큰 이유중 하나가 정보의 불투명성이라고 생각합니다. 정보의 불투명성으로 인한 증인 투표의 효용성 저하가 반복되다보면 결국 언젠가는 DPOS의 근간을 해칠 수 있습니다. 증인들이 끊임없이 긴장하고 노력하도록 해야 합니다. 그러나 이는 회유와 설득으로는 불가능합니다. 질타와 비난으로는 더더욱 불가능합니다. 정보의 투명성을 만들어 가는 것이 가장 확실한 방법입니다.

사실 증인 투표를 정말 제대로 하고싶은 스티미언들 뿐만 아니라, 증인들 자신조차도 자신들의 증인 투표를 효율적으로 분석 및 관리하는것이 정말 어렵습니다. 이부분을 개선하여 모두가 혜택을 누릴 수 있도록 하는것이 이 프로젝트의 궁극적인 목표입니다. 스팀 인사이트 프로젝트가 현존 최고의 DPOS인 Steem의 긍정적인 변화에 작은 보탬이 되길 바랍니다.

이 글을 재미있게 읽으셨다면, 증인 인사이트 툴을 처음 공개하며 적은 글도 한번 읽어보세요.
@asbear/6vsq1u

피드백은 언제나 대환영입니다. 그럼 좋은 하루 보내세요! ^^

H2
H3
H4
3 columns
2 columns
1 column
36 Comments