Decred 소개

국내에는 많이 알려져 있지 않지만 비트코인 초기 개발자들이 모여 만든 Decred라는 암호화폐가 있습니다.

Decred는 비트코인 Go 언어 구현체인 btcd를 포크하여 만들었는데, 비트코인과 달리 민주적인 운영 방법(governance)에 대한 고려가 프로토콜에 반영되어 있는 점이 특징입니다.

마이닝의 중앙화를 막기 위해 PoW와 PoS를 결합한 하이브리도 방식의 합의 알고리즘을 사용하고 있습니다. 여기서 PoS는 트랜잭션을 validate하여 보상을 받는 역할뿐만 아니라 프로젝트의 방향성을 결정하는 투표의 역할도 병행합니다.

보상의 60%는 PoW 마이너, 30%는 PoS 투표자, 10%는 개발팀에 갑니다. Decred 개발 팀 외에도 외부에서 제안을 내고 그 제안이 통과되면 직접 펀딩을 받을 수도 있습니다.

이 외에도 기술적으로는 on-chain atomic swap을 구현하는 등 비트코인에 비해 비교적 새로운 아이디어를 많이 시도하고 있기 때문에 비트코인에 관심 있는 개발자라면 한 번 살펴보시길 권합니다.

비트코인 공부의 정석

개발자가 비트코인 공부하려면 뭐부터 봐야 하는지 물어보는 분이 많이 계셔서 정리해 보았습니다.

일단 비트코인 입문자에게 추천 드리는 강의는 Coursera의 Bitcoin and Cryptocurrency Technologies입니다. 암호화폐 기초 개념 및 동작 원리를 잘 설명하고 있습니다.
https://www.coursera.org/learn/cryptocurrency

강의와 함께 보시면 좋은 책으로는 Mastering Bitcoin 있습니다.
https://www.bitcoinbook.info/

비트코인의 개념을 어느 정도 잡았으면 사토시 나카모토가 작성한 비트코인 논문도 꼭 읽어보시기 바랍니다. 9페이지 짧은 논문이지만 비트코인의 등장 배경과 동작 원리를 그 어느 문서보다 명료하게 설명하고 있습니다.
https://bitcoin.org/bitcoin.pdf

비트코인의 동작 원리는 알았고 구현 세부사항을 알고 싶으신 분은 Bitcoin Developer Guide을 추천 드립니다. 공식 매뉴얼이라 조금 따분하긴 하지만 다른 어느 문서보다 기술 세부사항을 자세히 설명하고 있습니다.
https://bitcoin.org/en/developer-guide

비트코인은 따로 스펙이 없고 Bitcoin Core 소스 코드를 스펙으로 하고 있습니다. 개발자 가이드에서 확인할 수 없는 코너 케이스는 소스 코드를 직접 확인할 수 밖에 없으니 다른 문서를 찾아 헤매지 말고 소스 코드를 공부하시면 됩니다.
https://bitcoin.org/en/bitcoin-core/

Bitcoin Core는 C++로 작성되어 있고 레거시 코드가 많다 보니 처음 보시는 분들이 이해하기에 조금 어려울 수 있습니다. 비트코인 공부의 시행착오를 줄이고 싶으신 분에게는 코드체인 에듀가 제공하는 “비트코인 프로그래밍 입문”을 추천드립니다! 비트코인 기초부터 구현까지 친절하게 안내해 드립니다.

http://edu.codechain.io/course/5