코인(Coin)? 토큰(Token)?
가상화폐(Cryptocurrency)를 보다보면 코인(Coin) 또는 토큰(Token) 이라는 용어가 자주 나옵니다. 기술적인 측면에서 코인(Coin) 과 토큰(Token)은 서로 완전히 다른 것이지만 같의 의미로 자주 쓰입니다. 특히나 거래소에서는 둘 다 거래를 할 수 있기때문에 이해하기 쉽도록 그냥 코인(Coin)으로 통칭해서 부르는 경우가 많습니다.
국내 거래소 중 하나인 빗썸(https://www.bithumb.com)에서는 코인과 토큰의 구분없이 일렬로 표시하고 있으며, 대표적인 코인 가격 비교 사이트인 코인마켓캡(https://coinmarketcap.com)에서는 두 개를 구분하여 표시하기도 합니다.
오늘은 이 두 가지 용어에 대해서 적어보겠습니다.
코인(Coin)
코인은 독자적인 블록체인 시스템을 갖추고 있으며, 자체 제네시스 블록(Genesis block)에서 시작하게 됩니다. 그래서 프로토콜, 블록의 합의방식, 해쉬 알고리즘, 마스터노드의 유무, 블록보상량, 블록생성시간, 수수료 등이 프로그램된 것에 따라 달라집니다. 대표적으로 비트코인(Bitcoin), 이더리움(Ethereum), 리플(Ripple), 라이트코인(Litecoin), 모네로(Monero) 등이 있습니다. 그 외의 코인들은 https://coinmarketcap.com/coins 에서 보실 수 있습니다.
토큰(Token)
토큰은 독자적인 블록체인 없이 기존에 있는 블록체인 위에 존재하게 되며, 스마트 컨트렉트(Smart contract)를 기반으로 해서 발행됩니다. 요즘 발생되는 토큰은 ERC20(ERC-20 Token Standard, https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md)으로 발행되는 경우가 거의 대부분입니다. 이는 이더리움(Ethereum)에서 제공하는 스마트 컨트렉트(Smart Contract) 위에서 작동하게 되며 블록체인을 처음부터 만들 필요가 없으므로 일반적으로 코인의 발행보다 더 쉽습니다. 대표적으로 이오스(EOS), 테더(Tether), 오미세고(OmiseGO), 트론(TRON) 등이 있습니다. 그 외의 토큰들은 목록은 https://coinmarketcap.com/tokens 에서 보실 수 있습니다.
코인을 발행하려면 노드(Node) 개발, 지갑(Wallet, 대부분 노드에 포함) 개발, 시드 노드(Seed node) 유지, 마이닝풀(Mining pool) 제공, 보안을 위한 초기 해쉬파워(Hash power) 유지 등등등... 필요한 것들이 많은데 이를 모두 고려해야 합니다. 복잡하고 힘든 일이죠. 반면에 이더리움(Ethereum)의 경우는 이미 안정성이 확보된 상태이므로 스마트 컨트렉트(Smart Contract)를 작성하는 것만으로 토큰을 발행할 수 있습니다. 다른 구성품들은 이미 잘 돌아가고 있으니 크게 고민할 필요는 없습니다. 토큰으로 발행하는 가장 큰 장점이죠.
그러나, 블록의 합의 방식을 POW(Proof-Of-Work)에서 POS(Proof-Of-Stake)로 바꾸고 싶다거나 해쉬 알고리즘을 CPU에 더 맞도록 변경하고 싶다거나 하는 등 코인의 핵심 기능을 변경하고자 한다면 토큰으로 발행할 수 없으며 코인을 새로 개발해야만 합니다.
이더리움의 가장 큰 장점은 역시나 스마트 컨트렉트(Smart Contract)입니다. 스마트 컨트렉트(Smart Contract)는 복잡한 개념이기는 합니다만 개발자의 입장에서 개념만 간단하게 비유하자면 웹브라우저에서는 자바 스크립트를 작성하는 것과 유사합니다. 웹브라우져 대신 이더리움이 있는 것이고 자바 스크립트(Java script) 대신 솔리디티(Solidity)가 있는 것입니다. 솔리디티가 어떤 형태인지 보고 싶다면 https://etherscan.io 에서 OmiseGoToken
을 검색해 보세요.
일반 투자자라면 코인이나 토큰이나 크게 상관이 없을 겁니다.
좋은 정보 감사합니다
저는 그동안 코인과 토큰이 뭐다른지 알지도 못했네요
제가 쓴 글에 처음 댓글을 달아주셨네요. 감사합니다. ^^