IOTA 자주 묻는 질문들(FAQs) 번역

in #kr7 years ago (edited)

IOTA 자주 묻는 질문들(FAQs) 번역

다음은 IOTA라는 프로젝트의 자주 묻는 질문들(FAQs)을 번역한 내용으로 대략적으로 IOTA가 어떠한 프로젝트인지 아시는 데에 도움이 되실 것 같습니다 :) https://learn.iota.org/faqs 로 가시면 원문을 보실 수 있습니다.

IOTA란 무엇인가?

IOTA는 사물 인터넷(IoT: Internet of Things)을 위한 새로운 거래 청산(settlement) 및 데이터 전송 레이어이다. IOTA는 탱글(Tangle)이라 불리는 새로운 분산 장부를 기반으로 하는데 탱글은 분산화된 P2P 시스템에서의 새로운 합의 메커니즘을 사용하며 현재의 블록체인 디자인의 비효율성을 극복하는 것을 목적으로 한다. IOTA를 사용하는 데에는 수수료가 전혀 들지 않기 때문에 아주 적은 금액의 소액결제까지도 가능하다.

IOTA는 기계 경제(Machine Economy)가 크게 성장하기 위해 필요한 퍼즐의 한 조각으로서 공공(public) 비허가성 플랫폼으로서 모든 기기들이 서로 원활하게 상호 소통하는 사물 인터넷의 중추가 될 것이라 예상한다.

58af48ff9f5fb40917b05a12_v2GmVOXhRw6tOxXMDSDg_Screen Shot 2016-07-03 at 14.14.56.png
<방향성 비순환 그래프(DAG: Directed Acyclic Graph) 구조의 탱글(Tangle)>

IOTA는 블록체인과 어떻게 다른가?

IOTA의 분산 장부인 탱글(Tangle)은 블록체인과 동일한 기본 원칙에 기반하고 있지만 서로 완전히 다르게 설계되어 있어 많은 차이점이 있다. 하지만 큰 틀에서 탱글과 블록체인은 두 가지 주요 차이점이 있다.

  1. 데이터 구조
    탱글은 일정 주기로 블록이 선형의 체인으로 연결되는 블록체인과는 달리 방향성 비순환 그래프(DAG: Directed Acyclic Graph)의 구조를 가지고 있다. 이와 같은 구조로 인해 IOTA는 검증을 병렬화시켜 많은 수의 거래를 처리할 수 있으며 거래 수수료가 전혀 들지 않는다. 탱글의 규모가 커지고 많은 참가자들이 거래를 실시할수록 전반적인 시스템은 더 안전해지고 거래의 처리속도가 빨라지며 거래의 최종확인까지 걸리는 시간이 단축된다.

  2. 합의
    블록체인 상에서 합의는 다수의 참가자가 일종의 “경주”를 통해 다음 블록을 추가시키고 블록 보상과 거래 수수료를 획득하는 매우 면밀한 방식을 통해 이루어진다. 이러한 이유로 합의는 거래의 생성과 분리되어 네트워크의 소규모 부분집합에 의해서 이루어진다. 많은 경우에 (비트코인에서처럼) 합의에 참가하기 위한 진입장벽이 높아 중앙화를 야기한다.

IOTA는 거래를 하는 모든 당사자가 직접 합의절차에 참여한다. 구체적으로 말하자면 두 개의 거래를 직접적으로 참조하며 하위 탱글(sub-tangle)에 있는 다른 거래들을 간접적으로 참조한다. 이를 통해 검증이 병렬화(parallelized)되며 네트워크는 완전히 분산화되어 채굴자가 따로 필요 없으며 거래 수수료가 존재하지 않는다.

IOTA는 양자 컴퓨터에도 안전한가?

IOTA는 타원곡선암호(ECC: elliptic curve cryptography) 대신 해시(hash) 기반의 서명(https://www.imperialviolet.org/2013/07/18/hashsig.html)을 사용한다. 해시기반의 서명이 ECC에 비해 훨씬 빠를 뿐만 아니라 서명 및 검증과 관련된 프로토콜을 크게 단순화시킬 수도 있다. 실제로 IOTA를 Winternitz 서명을 사용하기 때문에 양자 컴퓨터에도 안전하다. IOTA는 컬(Curl)이라 불리는 3중(ternary) 해시 함수를 사용한다.

어떻게 거래 수수료가 없을 수 있나?

IOTA는 고유한 합의 알고리즘을 사용하기 때문에 거래 수수료가 전혀 없다. IOTA에는 거래를 검증하고 블록에 추가시키는 채굴자(miner)나 검증자(validator)가 없다. 대신에 거래를 실시하는 각 참가자들이 직간접적으로 과거 거래내역을 확인하는 완전히 분산화된 방식으로 합의가 이루어진다. 이토록 합의에 이르기까지 각 참가자들의 노력이 투입되므로 추가적인 거래 수수료를 부담할 필요가 없다.

IOTA로 무엇을 할 수 있는가?

IOTA는 소액결제(micropayment)를 포함한 거래청산(transactional settlement)과 데이터 무결성(data integrity) 보존에 뛰어나다. 이 두 가지 특징을 바탕으로 IOTA 위에서만 가능한 다양한 사용사례(use case)를 도출해 낼 수 있다. 오라클(Oracle)이나 스마트 컨트랙트(Smart Contract)와 같은 기능들 또한 빠른 시일 내에 추가시킬 계획이다.

IOTA는 기기가 자원, 서비스 및 접근에 대한 비용을 서로 지불하는 사물인터넷에 중점을 두고 있으며 스마트 시티, 스마트 그리드, 인프라, 공급체인(supply chain) 등에 적용될 수 있다.

IOTA는 주로 어디에 사용될 수 있나?

(현재의) IOTA의 주요 기능은 수수료가 없는 소액결제, 안전한 데이터 전송 및 데이터 anchoring이다. 이러한 기능과 더불어 IOTA의 확장성(scalability)과 partition tolerance가 합쳐지면 IOTA에서만 가능한 다양한 사용사례를 도출해 낼 수 있다.

중점 분야는 스마트 시티 및 인프라, 스마트 그리드, 공급체인 및 교통 등의 사물 인터넷이다. 더불어 IOTA는 웹 결제 및 국제송금과 같은 P2P 거래청산 플랫폼으로의 역할도 수행할 수 있다.

거래를 하기 위해서는 무엇이 필요한가?

거래는 기본적으로 3단계에 걸쳐 이루어진다.

  1. 번들을 만들고 입력값에 서명한다.
    IOTA에는 두 가지 종류의 거래가 있다. 가치전송 (입력값에 서명하는) 거래와 가치전송을 하지 않는 거래(e.g. 메세지). 번들을 만드는 것은 꽤 간단하며 우리가 공개한 라이브러리에 의해 처리된다. 거래 입력값에 서명하는 것 또한 클라이언트에서 라이브러리에 의해 처리된다. 따라서 개인키 혹은 시드(seed)값이 다른 곳으로 전송되는 것에 대해 걱정할 필요가 없다.

  2. Tip Selection
    Tip selection은 로컬에 저장되어있는 탱글이 traversed되어 당신의 거래에 의해 검증될 랜덤하게 선택된 두 개의 거래가 무엇인지를 찾아내는 절차이다. 이 두 개의 거래는 번들에 추가되며 가지거래(branchTransaction)과 줄기거래(trunkTranslation)라 불린다.

  3. 작업증명(PoW: Proof of Work)
    만들어진 번들에 서명을 하고 tips가 번들에 추가되면 번들에 있는 거래에 대한 작업증명을 실시해야 한다. 번들에 있는 모든 거래는 네트워크에 의해 인정되기 위해서는 논스(nonce)가 있어야 한다. 작업증명의 주요 목적은 시빌(Sybil) 공격에 대한 저항성과 스팸 저항성을 갖기 위함이다.

위의 3단계가 모두 완료되면 거래를 다른 참가자(peer)에게 통보(broadcast) 할 수 있고 네트워크가 이를 인정할 때까지 기다리면 된다.

IOTA를 채굴할 수 있나?

IOTA의 작업증명을 비트코인 등의 블록체인에서 사용되는 작업증명 메커니즘과 비교해서는 안된다. IOTA의 작업증명은 시빌(sybil) 공격과 스팸(spam)을 방어하기 위한 해시캐시(Hashcash)에 직접적으로 비교될 수 있다. IOTA에서 합의가 이루어지는 방식으로 인해 거래 처리를 위한 연산력을 제공함으로써 IOTA를 얻을 수 있는 방법은 없다. 따라서 IOTA에는 “채굴(mining)”이라는 것이 없다. 이를 거래 수수료 면제를 통해 개인이 보상을 직접적으로 받는다고 생각할 수 있다.

전체 발행량은 얼마이며 인플레이션은 있는가?

IOTA의 총 발행량은 (3^33 - 1) / 2, 총 2,779,530,283,277,761 (약 2,780조) 토큰이다.

앞으로 존재하게 될 모든 IOTA는 초기거래(genesis transaction)에 의해 생성된다. 이는 IOTA의 총 공급량은 항상 일정하며 IOTA를 “채굴”할 수 없다는 것을 의미힌다.

어떠한 단위를 사용하는가?

IOTA는 국제단위계(SI: International System of Units)를 사용하며 세부 단위는 다음과 같다.

58b0478528d2e0fe66dc14d6_iotavalues.png

by 영훈

Sort:  

블록체인에서 합의 과정 중 일어날 수 있는 중앙화를 극복하려 하네요. 거래 당사자들 모두가 참여하는 방식이라는게 흥미롭네요. 어떤 형태이든 당사자들이 지불해야할 cost를 없앨 수 있을지 궁금하네요. 혹시 iota의 병렬화 방식은 eos가 개발하고 있는 그것과 비슷한 건가요? 양질의 포스팅 감사합니다!!

감사합니다. 이 부분은 저희도 재미있게 보고 있는 부분이기 때문에 조만간 글이나 방송으로 한 번 다루지 않을까 싶습니다 :)

Nice post. Keep it up

이런게 있군요. 좀 자세히 봐야겠어요. 감사합니다

파고 들수록 어려워 보이네요~~~~ㅠ,ㅠ,

네 ㅎㅎ 원래 처음에는 쉽게 보여도 알면 알수록 어려워진다는 ...

감사합니다. 저에겐 생소한 분야라 어렵네요. 공부해야겠어요

어렵지만 재밌네요 영훈님 감사합니다 ^^

좋은 글 감사합니다^^

유트만 보다가 여기에도 왔습니다.
관련글 잘 보았습니다.

아이오타는 그럼 코인은 어떤 의미를 가지는건가요?
저의 낮은 이해수준으로는 잘 가늠이 안갑니다...

비트코인은 작업증명을 통해 블록체인 기술을 구동(?)하는 채굴자들에게 이익동기가 되는 방식으로 코인이 쓰이는걸로 이해를 하고 있습니다. 수수료(가스?)처럼 비용지불을 해야 코인전송이 가능한것 같은데.

아이오타 탱글은 기기 스스로가 다른 2건의 거래에 대해 작업증명을 실행함으로써 전송 수수료를 따로 내지 않는다는데요. 그러면 이 과정에서 아이오타 코인은 어떤방식으로 사용되나요?