시아코인
시아코인(Siacoin, 云储币) 또는 간략히 시아(Sia)는 분산형 클라우드 기반의 스토리지 서비스를 위한 암호화폐이다. 시아코인의 모회사는 미국의 네뷸러스(Nebulous)이다. 시아코인은 기존 중앙화 방식의 클라우드 저장소를 임대하여 사용하는 대신, 시아 네트워크에 있는 개인들은 서로 저장소를 공유할 수 있다. 시아코인은 모든 데이터를 블록체인 위에 올리는 것이 아니라, 양 당사자 간에 발생하는 고객정보와 데이터 계약에 대한 정보만을 해시로 변환하여 블록체인에 저장한다. 시아코인은 비트코인을 기반으로 만든 암호화폐로서, 작업증명(PoW) 방식의 합의 알고리즘을 사용한다. 시아코인 전용 채굴기로는 중국 비트메인의 앤트마이너 A3와 이노실리콘의 S11 시아마스터 등의 제품이 있다. 시아코인은 한국의 업비트 등 10여개의 암호화폐 거래소에 상장되어 있으며, 2018년 가을 기준으로 단가 6원 정도로, 시가총액 2,447억원으로 40위이다. 분산 클라우드 서비스를 제공하는 유사한 암호화폐로는 디피니티, 골렘, 파일코인, 스토리지코인, 소늠, 유토큰 등이 있다.
목차
개요
시아코인(Siacoin)은 2013년 MIT 해커톤에서 사용하지 않는 파일 저장소를 활용하기 위한 해결책을 찾는 과정에서 시작되었다.[1] 시아코인은 블록체인 기반의 클라우드 서비스를 목적으로, 고객의 정보와 데이터를 블록체인에 담는 암호화폐이다. 시아가 제공하는 서비스는 기존 온라인 데이터 저장소인 웹하드 기능과 유사하지만, 더 저렴한 비용으로 사용할 수 있다는 장점이 있다. 시아코인은 데이터 저장소를 가지고 있는 호스트와 데이터 저장을 원하는 고객이 계약(contract)을 함으로써 서비스가 시작된다. 호스트는 고객이 자신의 컴퓨팅 자원을 사용하는 것에 대해 동의하며, 계약이 종료될 때까지 주기적으로 데이터 저장을 증명한다. 호스트는 고객에 대하여 증명할 때마다 보상을 받게 되며, 만약 증명에 실패하면 처벌(penalty)을 받게 된다. 시아 블록체인으로 이러한 과정을 공개적으로 확인할 수 있다. 네트워크의 합의를 통해 이러한 계약을 자동으로 강화할 수 있다.
블록체인에 데이터를 암호화시켜서 저장하면 완벽한 보안이 가능해진다. 블록체인 전체 네트워크를 해킹하지 않고서는 이 블록체인에 저장된 내용을 볼 수 없기 때문이다. 서버를 운영하기 위한 관리자가 필요 없고, 전기료가 별도로 들지 않기 때문에 운영 비용이 저렴하다. 클라우드 서비스 5TB 사용 비용을 비교해 보면, 구글 클라우드는 월 100달러, 아마존 웹서비스(AWS)는 115달러, 마이크로소프트 애저는 120달러의 비용이 들지만, 시아코인은 5달러로 매우 저렴하게 이용할 수 있다. 물론 구글이나 아마존 같은 중앙집중형 대형 클라우드 사업자들은 2017년 기준으로 약정 기간에 따라 최초 10%에서 최대 75%까지 클라우드 서비스 이용요금을 할인하는 서비스를 진행하고 있다. 하지만 이러한 할인 가격과 비교하더라도, 시아가 제공하는 분산형 클라우드 서비스 이용료는 저렴한 편이다.
주요 인물
- 데이비드 보릭(David Vorick) : 2011년부터 비트코인 및 암호해독 공간에서 활동을 해 왔으며 렌셀러 폴리테크닉 대학교에서 컴퓨터과학을 공부하였으며, 2013년에 IBM에서 소프트웨어 개발자로 일을 하였으며 TPF 운영체제 업그레이드 일을 했다. 그 후 2014년 시아코인의 모회사인 네뷸러스(Nebulous)를 공동 설립하였고 공동 설립자 겸 CEO이다.
- 루크 챔파인(Luke Champine) : RPI에서 3년간 컴퓨터 및 시스템 공학을 전공하였다. 네뷸러스(Nebulous)의 공동 창시자이다.
특징
시아는 분산형 클라우드 데이터 저장 시스템이다. 시아를 통해 피어(peer) 방식의 데이터 저장 계약을 맺을 수 있는데, 이러한 계약은 저장장치 공급자인 호스트와 저장장치 사용자인 클라이언트 간의 계약이다. 계약의 내용에는 어떤 데이터가 어떤 가격으로 저장될지가 포함되어 있다. 계약을 유지하려면 저장장치 공급자는 클라이언트의 데이터를 저장하고 있다는 사실을 주기적으로 증명해야 한다. 계약 내용은 블록체인에 저장되며, 공개적으로 감시할 수 있다.
시아코인은 처음에는 독립적인 알트코인으로 시작되었지만, 나중에는 양방향 페그(two-way peg)를 통하여 비트코인과 연결될 예정이다. 양방향 페그는 단어에서 유추할 수 있듯이, 비트코인을 시아코인으로 또는 그 반대로 전송하는 기능이다. 실제로 비트코인이 시아코인으로 교환될 때, 블록체인 간에 통화는 전송되지 않는다. 이러한 작업을 수행하는 단일 트랜잭션이 없기 때문이다. 이것은 시아코인이 다른 블록체인에서 잔액의 진위를 확인할 수 없기 때문이다.
구조
시아코인의 트랜잭션 구조는 비트코인과 유사하다. 시아코인은 모든 계약과 관련하여 비트코인의 모든 거래를 유효하게 하는 스크립트 언어[2]를 사용하지 않는 대신에 공동 서명 스키마(M-of-N multi-signature scheme)를 채택하였다. 공동 서명 스키마는 m-of-n의 조합으로 지정되고, 이때 m과 n은 1과 32 사이의 숫자가 된다. 멀티시그 계정으로 변환되는 계정은 개인 키(private key)가 무효가 됨에 따라, 해당 계정이 더 이상 거래할 수 있는 권한이 없어지게 된다. 이를 통해 복잡성을 늘리고 외부 공격으로부터 위험을 줄이게 된다.
시아코인은 또한 트랜잭션 부분을 확장하여 계약을 만들고 실행하는 것을 가능하도록 하는데, 계약(contract), 증명(proofs), 계약 업데이트(contract updates)의 3가지로 확장하는 것이다. 계약 안에는 호스트와 고객이 원하는 파일의 저장 공간과 해시값이 담겨 있다. 호스트는 저장소에 대한 증명(proof)을 주기적으로 해야 하며, 계약에는 그 주기를 포함하고 있다. 계약이 실행되면, 나중에 계약 업데이트를 통해 수정될 수 있다.
트랜잭션
트랜잭션에 포함되는 내용은 다음과 같다.[3]
- 버전(version) : 프로토콜 버전 번호
- 임의의 데이터(arbitrary data) : 메타 데이터를 위해 사용된 데이터
- 채굴 수수료(miner fee) : 채굴자에게 지급되는 보상
- 입력(inputs) : 수입 금액
- 출력(outputs) : 지급 금액
- 파일계약(file contract)
- 저장증명(storage proof)
- 서명(signature) : 입력된 서명
1. 입력과 출력
시아코인의 출력은 코인의 양으로 구성된다. 각각의 출력은 관련된 식별자(identifier)가 존재하며, 식별자는 출력이 이루어지는 거래로부터 발생한다. 트랜잭션에 대한 output I의 식별자는 다음과 같이 정의된다.
H(t||"output"||i)
여기에서 H는 암호화된 해싱 기능이며, "output"은 string literal이다. 블록 보상과 채굴자 수수료(miner fee)는 특별한 output ID를 가진다.
H(H(Block Header)||"blockreward")
모든 입력(input)은 선행하는 출력(output)으로부터 시작되어야 하며, 따라서 입력(input)은 출력 ID(output ID)와 같다. 입력과 출력은 조건을 보내는 것(spend conditions)으로 동조된다. 입력은 스스로 조건을 보낼 수 있으며, 출력은 머클루트해시(Merkle root hash)를 가지고 있다.[4] 여기서 머클루트(Merkel root)는 블록에 있는 모든 거래명세를 작은 크기의 용량을 가진 데이터로 변환해 블록헤더에 저장한 데이터이다. 이를 해시로 변환한 데이터를 머클루트해시라 한다.
2. 지불조건
지불조건(spend condition)이란 코인이 전송되기 이전에 반드시 충족되어야 하는 속성으로서, 시간잠금(time lock)과 공개키의 집합을 포함하고 서명도 필요하다. 시간잠금(time lock)이 풀리고, 서명의 항목에 키가 추가되어야만 출력(output)이 전송될 수 있다. 지불조건은 시간잠금, 서명의 개수, 공개의 3가지를 통하여 머클트리로 해시 암호화된다. 이 머클트리의 루트해시(root hash)는 코인이 전송되는 주소로 활용된다. 코인을 소비하기 위해서, 주소 해시에 대한 소비 조건이 충족되어야 한다. 머클트리의 사용을 통하여 거래 당사자들은 소비 조건 속에서 선택된 정보를 공개할 수 있다. 시간잠금과 서명의 개수는 낮은 엔트로피(entropy)를 나타내며, 공격에 취약하다는 점을 이해해야 한다. 이러한 문제를 해결하기 위해 이 필드들에 더미(dummy) 함수와 같은 랜덤한 문자열을 추가해야 한다. 이러한 방법으로 엔트로피를 높일 수 있게 된다.
3. 서명
거래(transaction)의 각 입력(input) 부분은 반드시 서명되어야 한다. 암호화된 서명(signatures)은 입력 아이디, 시간잠금, 플래그(flag)와 쌍을 이룬다. 입력 아이디는 서명이 어떠한 입력에 대응하는지를 나타낸다. 시간잠금(time lock)은 서명이 유효해지는 시간을 나타낸다. 거래의 필드 하위 집단은 각각 서명될 수 있다. 플래그를 나타내면 모든 거래가 서명되어야 한다.
파일계약
파일계약(file contract)은 저장소를 제공하는 호스트(host)와 저장소를 이용하는 고객(client) 간의 계약이다. 파일계약의 핵심은 그 파일의 머클루트해시이다. 루트해시는 파일의 총 크기와 함께 저장소 증명을 위해 사용될 수 있다. 파일계약은 지속시간(duration), 검사 빈도(challenge frequency), 유효 증명에 대한 지급(payout parameter)을 규정한다. 검사 빈도(challenge frequency)는 저장소 증명이 얼마나 자주 발행되어야 하는지를 나타내며, 호스트가 저장소 증명을 전송하는 동안, 별도의 챌린지 윈도우(challenge window)를 만들어내는데, 하나의 윈도우에는 하나의 챌린지만 나타낸다. 만약 계약 금액이 계약 기간이 종료된 뒤에도 여전히 남아있다면, 계약은 종료되며 나머지 코인들은 유효한 증명 주소로 전송된다. 반대로 계약 금액이, 기간이 지나기 전에 고갈되어 버리거나, 혹은 최대 손실 증명 횟수를 초과하게 되면, 계약은 비성공적으로 종료되며, 나머지 코인들은 손실 증명 주소로 전송된다. 이러한 증명 과정을 완수하거나 손실하는 것을 통해 계약에 명시된 수신자에게로 향하는 새로운 거래 출력을 만들어낸다. 증명의 아이디(ID)는 계약 아이디에 따라 달라지며, 다음과 같이 정의된다.
H(transaction||"contract"||i)
여기에서 I는 계약 안에서의 계약의 인덱스(index)를 나타낸다. 출력 아이디(output ID)는 다음으로부터 정의된다.
H(contract ID||outcome||Wi)
여기서 Wi는 윈도우 인덱스(window index)의 약자로, 계약이 이뤄진 이후 지나간 윈도우의 개수를 나타낸다. 저장소 증명의 유효성에 따라 출력값은 문자열로 '유효함'(validproof) 또는 '손실됨'(missedproof) 둘 중 하나이다.
계약 종료의 출력 아이디(output ID)는 다음으로 정의된다.
H(contract ID||outcome)
출력은 계약 종료의 상태에 따라, '성공적 계약 종료'(successful-termination) 또는 '비성공적 계약 종료'(unsuccessful-termination) 중 하나로 구성된다. 파일계약은 또한 수정 조건(edit conditions)의 리스트와 함께 생성되는데, 만약 수정 조건이 충족되면 계약은 수정될 수 있다. 계약금, 파일 해시, 출력 주소 등 어느 것이든 수정할 수 있다. 이러한 수정은 저장소 증명의 유효성에 영향을 줄 수 있으므로, 계약 수정은 어느 시점의 챌린지 윈도우로부터 유효한지를 명시해야 한다. 이론적으로 각 개인은 미세 수정 채널을 통하여 자주 수정할 수 있다.
저장소에 대한 증명
계약(contract)을 충족하기 위하여 저장소 증명 트랜잭션은 주기적으로 전송된다. 저장소 증명을 할 때마다 특정한 파일계약을 목표로 한다. 저장소 증명은 입력(input)이나 출력(output)은 불필요하며, 단지 계약 아이디(contract ID)와 증명 데이터(proof data)가 요구된다.
1. 알고리즘
호스트는 원래 파일 조각을 저장하고 있음을 입증해야 하고, 머클트리로부터 어떠한 해시 리스트가 있는지 목록을 제공해야 한다. 이러한 정보를 통해 충분히 해당 조각이 머클트리로부터 온 파일이라는 것을 입증할 수 있다. 이러한 입증과정이 블록체인으로 전송되므로 누구나 유효성을 확인할 수 있다. 각각의 저장소 입증은 무작위로 선택된 조각을 이용한다. 챌린지 윈도우 Wi에 대한 무작위 시드는 다음과 같다.
H(contract ID||H(Bi-1))
여기에서 Bi-1은 Wi 직전의 블록이다. 만약 호스트가 지속해서 무작위 조각에 대한 저장을 증명하면, 전체 파일을 저장하고 있을 가능성이 매우 높다. 만약 50%의 파일만을 저장하는 호스트는 거의 50%의 저장소 증명을 제대로 해낼 수 없을 것이다.
2. 블록점유공격
블록점유공격(block withholding attack)을 통하여 난수 생성 장치(random number generator)는 조작될 수 있다. 이러한 공격에서 공격자는 유리한 난수가 나올 때까지 블록을 보유하게 된다. 그러나 공격자는 특정의 챌린지에 대해서 단 한 번만 조작할 기회를 얻게 된다. 게다가 난수를 조작하기 위하여 블록을 점유하게 되면 공격자는 해당 블록 보상만큼의 손실을 보게 된다.
만약 공격자가 50%의 블록을 채굴하면, 50%의 챌린지가 조작된다. 그런데도 나머지 50%는 여전히 무작위이며, 따라서 공격자가 저장소 증명을 하는 데에는 다시 실패할 것이다. 블록점유공격이 없다면 실패율이 1.5배 이상 상승한다. 이러한 공격을 방어하기 위해서 클라이언트는 고도의 챌린지 빈도, 손실된 부분에 대한 높은 페널티를 지정해야 한다. 그리고 이러한 주의사항만 지킨다면, 금전을 노린 공격자가 네트워크 해시 파워의 50% 이하를 통제하는 한, 어떠한 공격이라도 방지할 수 있다.
3. 닫힌 창 공격
증명 거래(proof transaction)가 블록체인 단계로 진행되었다면, 호스트만이 저장소 증명을 완수할 수 있다. 채굴자들은 악의적으로 블록으로부터 저장소 증명을 배제할 수 있는데, 스스로에 대한 트랜잭션 수수료는 얻지 못하고, 호스트에게 페널티를 부과하게 된다. 대체로 채굴자들은 다른 거래보다 해당 거래가 중요할 경우에 호스트에게 저장소 증명에 대한 수수료를 높게 요구할 수 있다. 이러한 경우를 닫힌 창 공격(closed window attack)이라고 한다. 왜냐하면 악의적 채굴자가 인공적으로 창(window)을 닫았기 때문이다. 닫힌 창 공격을 방지하기 위해, 윈도우 사이즈를 크게 만든다. 호스트는 아마도 윈도우 사이즈를 바탕으로 채굴자가 요구할 트랜잭션 수수료를 예상할 수 있다. 호스트는 닫힌 창 공격에 취약한 계약을 거부할 권리가 있다.
임의 거래 데이터
각각의 거래에는 임의 데이터 필드가 담겨 있어서, 어떠한 정보든지 저장될 수가 있다. 만약 트랜잭션 내에 서명되었다면, 노드(node)가 요구된다. 노드는 최초에는 블록당 최대 64KB까지의 용량을 담을 수 있다. 이러한 임의 데이터를 통해 호스트와 클라이언트는 분산화된 방식으로 연결될 수 있다. 임의 데이터를 통해 가용한 공간을 홍보하거나, 호스트를 찾는 데이터를 알릴 수도 있으며, 또는 분산화된 파일 트래커(file tracker)를 만드는 데에 이용할 수도 있다. 임의 데이터는 다른 소프트포크(soft fork)를 만드는 데에 활용될 수도 있다. 이러한 과정은 "누구나 사용할 수 있는(anyone-can-spend)" 출력을 만듦으로 가능하지만, 임의 데이터는 제한사항들이 명시되어 있다. 이러한 제한사항을 이해하는 채굴자들은 조건에 어긋나는 트랜잭션을 막을 수 있다. 임의 데이터를 제거하지 않아도 나이브 노드(naive node)는 동기화된다.
저장 생태계
시아코인은 분산화된 저장소에 따라 운명이 달려 있다. 저장소 공급자들은 임의 데이터 필드(arbitrary data field)를 활용하여 자신을 네트워크에 알릴 수 있다. 이러한 과정은 사용자가 읽게 될 양식화된 문서를 통하여 이루어질 것이다. 사용자들은 이러한 양식화된 문서를 널리 알려 잠재적인 호스트의 데이터베이스를 만들어낼 것이고, 그 중 신뢰하는 호스트와 거래를 맺게 된다.
1. 공급자의 보호
계약이 성립되려면 저장소 공급자와 저장소 수요자 모두의 동의가 필요하다. 공급자는 자신이 원하지 않거나, 불법적 약관을 거부할 권한이 있다. 또 공급자는 파일이 100% 전송되기 전에 계약을 파기할 수 있다. 계약 조항은 공급자에게 유연하게 적용된다. 공급자는 낮은 가격이지만 신뢰성이 낮으며 파일의 손실에 대하여 최소한의 책임을 지는 방식으로 계약을 맺을 수도 있으며, 반대로 높은 가격으로 파일의 손실에 대한 페널티를 높일 수도 있다. 이러한 계약 조항은 시장 원리에 의하여 결정될 것이다. 공급자는 서비스 공격에 취약하며, 서비스 공격을 받으면 저장소에 대한 증명(proof)을 전송하거나 파일을 전송하는 데에 제한을 받을 수 있다. 공급자는 그러한 공격으로부터 자신을 보호할 책임이 있다.
2. 사용자 보호
사용자는 복구 코드(regenerating code)와 같은 데이터 보존 및 복구를 위한 삭제 코드(erasure code)를 이용할 수 있다. 삭제 코드는 일반적으로 파일을 n개의 작은 조각으로 나누고, 이러한 조각을 이용하여 특정한 m 조각들의 모든 부분집합으로부터 복구가 될 수 있다. 이 때, n과 m의 값은 삭제 코드와 기타 다른 요인들에 따라서 달라질 수 있다. 각각의 조각들은 이후 많은 호스트로 암호화되어 저장된다.
3. 가동 시간 인센티브
저장소 증명에서 지속적인 가동 시간을 강제할 만한 수단은 없다. 사용자가 요청할 때마다 호스트가 파일을 전송한다는 것을 보장할 수도 없다. 악의적인 공급자가 파일을 담보로 거금을 요구할 것이라고 우려할지도 모른다. 그러나 이러한 공격의 위험성은 삭제 코드를 통해 상쇄된다. 사용자는 자유롭게 비협조적인 공급자를 무시할 수 있으며, 협조적인 이들만 골라낼 수 있다. 그리고 다운로드 수수료는 업로드 인센티브로 변환된다.
사용자는 파일을 전송받는 것에 대하여 보상을 제공하며, 호스트는 반드시 최고의 서비스 품질을 제공해야 한다. 사용자는 파일을 어느 시점에든지 요구할 수 있고, 공급자는 최대의 보상을 얻기 위하여 가동 시간을 최대화할 것이다. 사용자는 또한 더 많은 전송량, 짧은 대기시간에 대하여 더 많은 보상을 줄 수도 있다. 사용자는 내려받지 않더라도, 무작위적으로 검사를 하여 호스트가 온라인인지 테스트할 수 있다. 하지만, 재차 강조하지만 가동 시간 인센티브는 시아 블록체인 프로토콜의 일부가 아니다. 가동 시간은 전적으로 사용자의 행동에 달려 있다. 다운로드에 대한 지급은 기존의 소액결재 채널(micropayment channel)을 통해 이루어질 것으로 기대된다. 소액결제 채널을 통해 사용자들은 최소한의 대기시간과 blockchain bloat로 많은 양의 지속적인 소규모 지급을 할 수 있다. 호스트는 파일을 작게 쪼개어 전송하고, 진행하기 전에 소액결제를 받기를 기다릴 수 있다. 소액결제는 충분히 작고 빨라서 처리량에 대한 큰 영향 없이 수초 내에 전송할 수 있다.
4. 평판 시스템
사용자는 신뢰할 수 있는 공급자를 선택할 방법이 필요하다. 단순히 기존의 명세를 가지고 판단하는 것은 부족한데, 그 이유는 그러한 기록이 조작될 수 있기 때문이다. 공급자는 자전거래 방식으로 허위 계약을 맺을 수 있으며, 대용량의 가짜 파일, 예를 들어 내용이 전부 0으로 쓰여진 파일을 저장할 수 있다.
이러한 시빌공격(sybil attack)의 위험을 줄이기 위하여 사용자는 공급자에게 임의 데이터 부분에 공급자에 대한 정보를 기록하도록 요구할 수 있다. 잠금 처리된 코인의 양을 기준으로 평판을 판단할 수도 있다. 예를 들어, 만약 10개의 코인이 14일 동안 묶여 있었다면, 10 * 14 = 140 코인 일수만큼의 가치의 잠금 상태를 만들어낸 것이다. 저장소 공급자들이 가치 있는 잠금 상태를 오랜 기간 만들어 내기는 쉽지 않으므로, 저장소 사용자들은 높은 가치의 잠금 상태를 만들어낸 공급자들을 선호함으로써, 시빌공격의 위험을 줄일 수 있다. 각 사용자는 호스트를 선택하는 나름의 기준이 있다. 사용자들은 가격, 잠금 가치, 제공된 저장소의 용량, 파일 손실에 대한 보상금 등 다양한 요소를 고려하여 호스트를 선택한다. 또한 다른 사용자의 사용후기 등 시스템 외부적인 방법을 도입하여 공급자의 평판을 관리할 수도 있다.
STO 프로젝트
대다수의 블록체인 기업들은 유틸리티 토큰을 판매하여 자금을 조달하는 방법을 선택했다. 그러던 중 일부 소수의 진취적인 기업들이 STO(Security Token Offerings)라는 방식으로 증권형 토큰(Security Token)을 발행해 자금을 조달하기 시작했다. STO 프로젝트는 펀드, 주식, 부동산 등의 분야에서 활발하게 이뤄지며 시아는 시아펀드(SiaFunds)로 주식 분야에 속해 있다. 시아의 토큰 구조는 서비스 공급자가 사용하는 증권형 토큰인 시아펀드(Siafunds)와 데이터 임대 시에 사용되는 일종의 유틸리티 토큰인 시아코인(Siacoin)으로 구성된다. 기업과 공급자 사이에 거래가 발생할 경우 시아 플랫폼에 3.9%의 수수료를 지불하며, 이 수익이 시아펀드 투자자들에게 배당금으로 지급되는 형태이다. 물론 이러한 STO 프로젝트의 자금 조달은 유틸리티 토큰이나 페이먼트 토큰에 비해 작은 규모를 보여주지만 시아의 사례는 향후 STO를 진행하고자 하는 스타트업들에게 좋은 사례로 작용할 수 있다.[5]
시아 경제학
시아코인 반감기
시아 시스템의 주된 통화는 시아코인이다. 시아코인의 공급은 지속적으로 증가할 것이고 모든 새로운 시아코인은 채굴자들에게 블록 보상으로 지급될 것이다. 최초의 블록은 300,000개의 코인을 지급한다. 이후 블록당 코인 1개씩 줄어들어, 두번째 블록은 299,999개의 코인이 지급될 것이다. 이런 방식으로, 30,000개까지 계속 줄어든다. 블록 사이의 시간 10분을 목표치로 하여, 공급의 연간 성장은 다음과 같다.
다양한 결제 수단 허용
시아의 인센티브 방식에는 비효율성이 존재한다. 시아의 주된 목적은 저장 계약을 발생시킬 수 있는 블록체인을 공급하는 것이다. 그러나 채굴의 보상은 저장소 계약의 총합계와 간접적으로 연결되어 있다. 특히 초기에 시아코인은 상당히 불안정할 것이다. 만약 계약 중간에 통화의 가치가 급변하게 된다면 공급자는 부정적인 영향을 받게 될 것이다. 결과적으로 공급자는 장기적 계약에 대한 가격을 증가시킬 것으로 기대하는데, 이는 변동성을 상쇄하기 위한 것이다. 추가로 공급자는 좀 더 안정적인 통화인 미국 달러(USD)로 일단 광고한 뒤에 계약을 마친 직후 시아코인으로 변환할 수도 있다. 결과적으로 다양한 전자화폐 자산을 이용할 수 있게 하면 호스트는 불안정성으로부터 보호받게 된다.
시아펀드
시아코인은 네뷸러스(Nebulous) 회사가 만들었다. 네뷸러스는 이윤을 추구하는 기업이며, 시아코인은 이 회사의 주된 수입원이 될 것이다. 선채굴(pre-mining)은 안정적인 이익 창출 수단이 아니다. 그 이유는 새로운 통화를 만들어내야 하며, 그 통화의 변화에 따라 회사의 수익이 같이 변하기 때문이다. 회사가 자금을 사용하고자 하면, 수익 일부를 환전해야만 한다. 선채굴(先採掘)은 발행하는 코인의 일정 부분을 하나의 주체가 통제한다는 의미이며, 잠재적으로 시장에 대한 광범위하고 파괴적인 영향을 줄 가능성 있다.
시아펀드(Siafunds)의 비즈니스 모델은 모든 계약에 대하여 수수료(fee)를 부과함으로써 성립된다. 계약이 만들어지면, 계약 금액의 3.9%는 시아펀드의 소유자들에게 배분된다. 네뷸러스는 최초에 대략 시아펀드의 88%를 보유하며, 시아의 초기 투자자들이 나머지를 갖게 된다. 시아펀드는 다른 주소로 보내줄 수 있다. 그러나 시아펀드로 계약에 대한 비용을 지불하거나, 시아펀드가 채굴 수수료로 이용될 수는 없다. 시아펀드가 새로운 주소로 전송되었을 때, 추가로 소비되지 않은 결과(output)가 생성되며, 시아펀드에 의해 만들어지는 모든 시아코인(siacoin)을 포함한다. 이러한 시아코인(siacoin)은 시아펀드와 같은 주소로 전송된다.
채굴
시아코인은 시아마이닝(SiaMining)이라는 마이닝풀에서 채굴할 수 있다. 2018년 1월 중국 우지한이 이끄는 비트메인(Bitmain) 회사가 시아코인 전용 에이식(ASIC) 채굴기인 앤트마이너 A3(Antminer A3)를 출시하고, 경쟁사인 이노실리콘(InnoSilicon)에서 S11 시아마스터(S11 Siamaster) 채굴기 제품을 출시함에 따라 시아코인 채굴 난이도가 10배 정도 올라간 적이 있었다. 이러한 상황이 되면 코인을 생성하는 생산단가가 상승하게 된다. 또한 코인 가격이 상승하면 서비스 이용에 부담이 될 수 있다.
시아코인은 첫 번째 하드포크에서 에러가 있었고, 2018년 1월 139,000번째 블록에서 두 번째 포크를 하여 블록생성 시간을 30분에서 10분으로 단축하면서 새로운 해시 난이도 알고리즘을 구현하였다.[6]
거래
시아코인은 2017년 한국의 업비트 거래소에 상장되었다. 2017년 말 암호화폐 투자 붐을 타고 시아코인의 가격이 폭등했지만, 2018년부터 전체 암호화폐 시장이 폭락하기 시작하면서, 시아코인도 발행 후 83일만에 90% 가치가 하락하였다.[7] 2018년 5월 시아코인이 오케이 거래소에 애터니티와 같이 상장되며 잠시 가격이 오르기도 하였으나 다시 떨어졌다.
시아코인은 10개의 크고 작은 거래소에 상장되어 거래되고 있으며, 2018년 10월 기준으로 1개당 약 6원대에 거래되고 있다. 시아코인은 총 367억 개를 발행하였고, 시가 총액 2,447억, 1SC(sia coin)는 6.67원으로 전체 암호화폐 시장에서 40위이다. 기관 투자자로는 펜부시캐피탈, 랩터, 퍼스트스타벤처 등이 있다.
시아 커뮤니티의 경우, 레딧(Reddit) 사용자 31,519명, 트위터 팔로워 107,649명, 유튜브 리뷰 197,276, 유튜브 구독자 595명 정도이다.
네뷸러스는 시아코어(SiaCore)를 설립하여 시아코어를 개발하고 있다. 2018년 1월 버전 1.31 업데이트를 하였고, 2018년 9월 4일 1.34 버전을 업데이트하였다. 2013년부터 개발을 한 암호화폐 치곤 아직 2.0 버전을 넘기지 못하고 있는데, 개발 플랫폼이 비트코인 기반으로 되어 있어, 여러 가지 확장에 대해 어려움이 있을 수 있다. 시아코인의 근황은 SNS를 통해 종종 알리고 있지만, 기술 관련 내용은 미비하다. 시아코인의 기술이사(CTO)도 잘 보이질 않고, 개발도 파트별로 여러 회사들과 제휴를 통해 개발하고 있다. 시아코인 백서 업데이트는 2014년 11월 29일이 마지막으로 되어 있다.
로드맵
- 2018년 : 시아 코인은 단기, 중단기, 장기적인 목표를 공개하였다. 단기적인 목표로는 비디오 스트리밍의 로딩 시간을 짧게 만드는 것이며 대용량 업로드의 메모리 사용 향상과 작은 파일에 대한 적절한 지원 등이 있으며 중단기로는 다른 SIA 사용자와 단순한 파일을 공유할 수 있게 하며 계좌이체, 즉시 부팅, 지속적인 파일 백업 등이 있다. 그리고 장기적인 목표로는 SIA가 아닌 사용자와 파일을 공유할 수 있도록 하며 모바일 지갑 및 더 심플한 클라이언트 개발 등의 사항을 목표로 내 새웠다.[8]
제휴
시아코인은 분산형 클라우드 데이터 저장 시스템이며 시아를 통해 피어방식의 데이터 저장 계약을 맺을 수 있다. 계약을 유지하려면 저장장치 공급자는 클라이언트의 데이터를 저장하고 있다는 사실을 주기적으로 증명해야 하며 계약 내용은 블록체인에 저장되며, 공개적으로 감시할 수 있다. a_capital, BainCapital, BESSEMER, Dragonfiy Capital Partners, FENBUSHI CAPITAL, First Star Ventures, Hack,INBlockchain Raptor, SVAngel의 투자를 받았다.
평가 및 전망
가상화폐 시장은 전반적인 패턴이 중요하다고 볼 수 있는데 시아코인는 차트가 하락세를 달려 가다가 비트코인의 상승세를 타고 상승하는 모습을 보이다가 한차례 조정물량이 나왔다. 시아코인은 네트워크 서비스를 개선하려고 노력하고 있으며 처음 진입하는 방식을 고쳐야 한다는 평가가 나오기도 했다. 시아코인을 구매하는 방법은 비트코인을 구입한 후 시아코인을 구매해야 하며 시아 클라이언트 소프트웨어로 보내 네트워크에 참여해야한다. 이런 점에서 처음 접하는 사람들은 어려움을 겪을 거라는 평가가 있다. 시아코인의 발행량은 무제한이지만 발행량은 급격히 감소중이며 최종적으로 2020년 7월 블럭당 보상량이 3만개까지 줄어들어서 무제한으로 계속 발행될 것이라고 한다.[9]
각주
- ↑ CoinGecko, 〈시아코인 ICO〉, 《코인게코》, 2018-01
- ↑ easyblockchain, 〈쉽게 설명하는 블록체인: 비트코인의 언어 '스크립트(Script)'〉, 《뱅크샐러드》, 2018-07-02
- ↑ David Vorick, Luke Chanpine, "Sia: Simple Decentralized Storage", Sia Whitepaper, 2014-11-29
- ↑ Ralph C. Merkle, "Protocols for Public Key Cryptosystems", Symposium on Security and Privacy, IEEE Computer Society, 1980-04
- ↑ 조중환 기자, 〈(컬럼)다양한 분야에서 이뤄지고 있는 STO 프로젝트〉, 《CCTV뉴스》, 2019-05-03
- ↑ Ventas, 〈시아(Sia, SC)코인과 하드포크 일정〉, 《벤타스》, 2018-01-22
- ↑ The 4th Wave, 〈2018년 최고의 하락율을 기록한 암호화폐〉, 《더포스웨이브》, 2018-03-31
- ↑ 〈시아 기능 로드맵〉, 《SIA 공식홈페이지 로드맵》
- ↑ siapa0516, 〈암호화폐로서 Siacoin과 ASIC로의 전환 이유〉, 《steemit》, 2017-09-09
참고자료
- 영어
- Sia 공식 홈페이지 - https://sia.tech/
- David Vorick, Luke Chanpine, "Sia: Simple Decentralized Storage", Sia Whitepaper, 2014-11-29
- NebulousLabs/Sia, "NebulousLabs / Sia", GitHub, 2014
- Satoshi Nakamoto, "Bitcoin: A Peer-to-Peer Electronic Cash System", 2008-10-31
- Bitcoin.org, "Bitcoin Developer Guide", Bitcoin.org, 2014
- Ralph C. Merkle, "Protocols for Public Key Cryptosystems", Symposium on Security and Privacy, IEEE Computer Society, 1980-04
- Hovav Shacham, Brent Waters, "Compact Proofs of Retrievability", 2008-12
- 한국어
- 유병철 기자, 〈(기묘한 재테크) 시아코인, 하드 빌려주면 코인 준다〉, 《글로벌이코노믹》, 2018-05-05
- 이관형 기자, 〈(특징 코인) 시아코인, 업비트 상장 "블록체인 클라우드 서비스"〉, 《글로벌경제신문》, 2018-04-27
- 블록인프레스, 〈시아코인 공식입장: 비트메인 채굴기 제외하는 소프트포크 안한다〉, 《블록인프레스》, 2018-01-29
- 머니넷스탭, 〈시아 코인(Siacoin/SC) 개념 및 특징〉, 《머니넷》, 2018-01-12
- 비트웹 편집국, 〈시아 코인 - 블록체인 기반 분산 스토리지 전용 코인〉, 《비트웹》, 2018-02-25
- CoinGecko, 〈시아코인 ICO〉, 《코인게코》, 2018-01
- Ventas, 〈시아(Sia, SC)코인과 하드포크 일정〉, 《벤타스》, 2018-01-22
- The 4th Wave, 〈2018년 최고의 하락율을 기록한 암호화폐〉, 《더포스웨이브》, 2018-03-31
- easyblockchain, 〈쉽게 설명하는 블록체인: 비트코인의 언어 '스크립트(Script)'〉, 《뱅크샐러드》, 2018-07-02
- 조중환 기자, 〈(컬럼)다양한 분야에서 이뤄지고 있는 STO 프로젝트〉, 《CCTV뉴스》, 2019-05-03
같이 보기