검수요청.png검수요청.png

사이드체인

위키원
chlheewoo (토론 | 기여)님의 2019년 8월 28일 (수) 19:45 판 (개요)
이동: 둘러보기, 검색

사이드체인(sidechain)이란 서로 다른 블록체인들 위에 존재하는 자산들(assets, 쉽게 말해 코인들)을 쉽게 거래할 수 있도록 하는 기술이다. 만약 모든 데이터를 메인체인의 노드 안에 넣어 노드를 점점 무겁게 하고, 또한 퍼블릭 블록체인에서 점점 많아지는 노드의 수도 메인체인에서의 많은 문제점을 야기한다. TPS는 점점 느려질 수 밖에 없고 수수료의 값은 점점 올라가게 되는 것이다. 이러한 문제로 암호화폐의 상용성에 대해 많은 문제제기를 하게 되고 이에 대한 해결책으로 사이드체인이 등장하게 되었다. 메인체인에 있는 자산을 사이드체인으로 옮겨 트랜잭션을 처리한다. 사이드체인에서 트랜잭션이 모두 끝나면 다시 중요한 정보만이 메인체인에 남게된다. 즉, 메인체인에서 모든 트랜잭션을 처리하는 것이 아니라 사이드체인이 메인체인이 할 일을 나누어 도와주는 것이라고 할 수 있다. [1]


개요

퍼블릭 블록체인 플랫폼 위에 각 기업별, 기관별, 서비스별 프라이빗 블록체인을 만들어 사용할 수 있는데, 이 때 퍼블릭 블록체인 위에서 작동하는 개별 프라이빗 블록체인을 사이드체인(sidechain)이라고 한다. 사이드체인(Sidechain)은 컬러드코인(Coloredcoin), 메타코인(Metacoin), 멀티시그(Multi-sig)기술 등의 유기적 결합물로, 블록체인 상에서 신규자산 발행 및 거래를 위해 사용되는 핵심기술이다. 사이드체인 기법을 통해 서로 다른 블록체인에 존재하는 자산들을 서로 안전하게 거래할 수 있다. 이를 통해, 이더리움(Ethereum) 블록체인 위에서 비트코인을 거래하고, 전혀 다른 텐더민트(Tendermint) 블록체인 위에서 비트코인과 이더(Ether)를 거래하는 것이 가능하다.[2]

배경
비트코인과 블록체인 자체는 너무나 많은 한계를 가지고 있다. 그러나 아이러니하게도 비트코인이야말로 가장 높은 가치를 저장하고 있는 암호화폐계의 기준통화이다. 비트코인이 이더리움 블록체인에 올라갈 수 있다면, 다양한 스마트 컨트랙트(Smart Contract)나 탈중앙화 어플리케이션(DApp)에서 사용될 수 있을 것이다. 비트코인의 속도가 걱정된다면, 속도가 빠른 다른 블록체인에 비트코인을 올려서 사용하면 될 것이고, 응용성을 원한다면 이더리움(Ethereum)에, 기밀성을 원한다면 대쉬코인(Dashcoin) 등의 블록체인에 올려서 거래를 하면 될 것이다. 비트코인의 소유자가 해당 코인을 이더리움 블록체인 위에 올려 거래를 원할 경우, 비트코인 블록체인에 있는 비트코인을 '동결(Freeze)'시키고 이더리움 블록체인 위에서 이 비트코인에 해당하는 '대응물(counterpart)'을 만들어 거래할 수 있도록 하는 것이다. 이후 거래된 '대응물'의 소유자는 비트코인 블록체인에 있는 진짜 비트코인으로 이 대응물을 교환해 갈 수 있다. 즉, 비트코인 블록체인의 비트코인을 동결하고 이에 상응하는 코인을 사이드체인에 생성해 사이드체인의 혜택을 누리며 거래를 한 후, 마치면 다시 해당 대응물로 비트코인 블록체인의 비트코인을 수령하는 것이다. [2]

특징

목적
사이드체인의 목적이란 확장성의 문제는 여러가지가 있지만 특히 상용성의 문제와 관련된 완결성, TPS, 수수료의 문제와 메인 네트워크의 성능 한계를 해결하기 위해 메인체인에 모든 데이터를 블록 안에 저장하는 것이 아니라, 사이드체인을 두어 메인체인을 효율적으로 사용하기 위함이다.

특성
사이드체인은 PoA, PoS, DPos, BFT계열의 합의 알고리즘을 사용한다. 또한, 사이드체인은 저렴한 수수료, 빠른 트랜잭션 처리 시간으로 메인넷의 한계를 극복할 수 있는 특징을 가지고 있다.

사이드체인은 각각 존재하는 서로 다른 가상화폐들 사이에서 다리 역할을 하는 기술이다. 사이드체인 기술을 활용할 경우, 해당 암호화폐는 성능 업그레이드가 가능하다. 블록체인에서 사이드체인 기술은 서로 다른 블록체인 토큰을 주고받는데 주안점을 두고 있다. 비트코인이나 이더리움 등 서로 다른 블록체인을 연결하기 위한 접근법은 여러가지가 있지만 중간에 브릿지 만드는 방식이 주로 사용된다. 가장 확실한 방법은 비트코인이나 이더리움 자체를 수정하는 것이다. 하지만 상대방 블록체인에 맞게 코드 전체를 수정하는 것은 현실적으로 불가능하다.

사용

그렇다면 사이드체인은 어떻게 사용되는 것일까?

1. 가치를 생성할 때
사이드체인에서 직접 자산을 생성하지는 못한다. 자산을 생성하는 것과 같은 중요한 일은 모두 메인체인에서 담당하기 때문이다.

2. 트랜잭션을 처리할 때
트랜잭션을 처리할 때는 메인체인의 자산을 사이드체인으로 전송하여 처리한다. 전송한 뒤 사이드체인에서 거래 후 다시 사이드체인에서 메인체인으로 이동하여 그 결과만을 메인체인에 남겨놓는다. 이렇게 함으로써 중요한 정보들을 메인체인에 쌓아두는 것이다.


한계

사이드체인은 최초로 비트코인이 가진 고유한 한계점들을 해결하고자하는 고민에서 시작 되었다. 비트코인은 분명히 혁신이었으나, 최초의 모델이 으레 그러하듯 이내 많은 한계점들을 노출했다.

  • 느림(Slow)

각 블록생성 간격이 10분이므로, 자신의 거래가 블록체인에 기록되었는지를 확인하려면 짧게는 몇 초에서 길게는 수십분을 기다려야 한다. 또한 이체받은 코인을 사용하기 위해 이체확인(Confirmation)을 받는 시간까지 포함하면 훨씬 더 길어진다. 속도가 너무 느린 것이 문제이다.

  • 오직 비트코인(Only Bitcoin)

비트코인 블록체인 위에서는 오직 비트코인만 이체가 가능했다. 따라서 이종 화폐와 교환을 하려면 결국 중앙화된 웹거래소 서비스 등을 사용해야 한다. 결국 비트코인 블록체인이 가진 보안적, 탈중앙화적 이점을 허무하게 포기하는 셈이 되는 것이다.

  • 오직 비트코인 스크립트 (Only Bitcoin Script)

비트코인 블록체인에서 사용할 수 있는 기능이 너무나 제한적이다. 따라서 창의성 발휘나 고급이체 조건 설정 또는 스마트 컨트랙트 코딩이 불가능하다. 다른 다양한 블록체인들에서 제공하는 여러가지 기능들을 아무것도 사용하지 못하는 것이다.

  • 높은 보수성 (Non-flexible Chain)

비트코인은 현재 버전이 '0.12.1(2016-07-20)'으로 아직도 베타버전이다. 그럼에도 불구하고 이미 조 단위가 된 비트코인 시가총액이나 커뮤니티원들 간의 논쟁, 많은 수의 이해관계인들 때문에 쉽사리 비트코인을 수정하거나 실험을 해보는 것이 불가능하다. 결국 실험을 위해서는 '이미 베타버전인 비트코인'의 베타버전(testbed)을 따로 또 만드는 방법 뿐이다.

  • 거래공개 (Non-Confidential Transaction)

비트코인 상에서 일어나는 모든 거래는 만천하에 공개된다. 기밀성을 지킬 수 없는 구조이다.[2]

각주

  1. 유성민 칼럼니스트, 〈대안 체인과 사이드 체인은 뭘까〉, 《사이언스타임즈》, 2018-03-20
  2. 2.0 2.1 2.2 사이드체인〉 , 《한승환》 , 2016-07-21

참고자료

같이 보기


  검수요청.png검수요청.png 이 사이드체인 문서는 블록체인 기술에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.