클래이튼, 트랜잭션, NFT 21.02.20(토)(3일차 일지)

민식킴·2021년 2월 20일
0

블록체인 일지

목록 보기
2/9
post-thumbnail
이 글은 글쓴이가 마구잡이식으로 공부하면서 배우고 느꼈던 점을 풀어나가는 글입니다. 이야기의 주제가 중간에 엇갈릴 수 있고, 잘못된 정보가 있을 수 있으며 이에대한 지적은 감사하겠습니다.

사족

금요일, EOM과의 미팅을 통해 우리의 목표를 재확인 했다.
클레이튼 위에 NFT를 구현하는 것.
그렇지만 블록체인에 대한 전반적인 지식이 터무니없이 부족했던 나는 왜 이걸 공부해야 하는지 동기부여겸 리프레쉬 목적으로 NFT에 대해 알아보았다.


클레이튼

클레이튼은 카카오에서 이더리움을 포크하여 만든 코인이다.
비트코인의 거래가 이루어 지는데 최소 10분, 그리고 100개이상이 쌓여야 확정이 되므로 약 13시간이 걸린다. 게다가 처리능력도 평균 초당 7TPS로 처참히 느리다.(TPS는 초당 트랜잭션 처리 속도) 참고로 이더리움은 20TPS, 이오스 3,000TPS이다.
그리고 이더리움은 트랜잭션을 올리기 위한 수수료(소위 가스비)가 어마어마하게 크다.
클레이튼은 이런 느린 처리속도를 4000TPS까지 끌어올렸고 가스비도 이더리움의 1/10수준으로 낮췄다. 또 블록체인의 안전성을 위한 참여자 유치도 계속 하고있다.(애초에 카카오에서 만든 코인이므로 만약 재대로 쓰이게 된다면 어마어마한 유저를 유치할 수 있을것이다.)
(클레이튼이 미래다, 영~차~ 영~차~)


NFT(Non Fungible Tokken)는 무엇인가?

대체 불가능한 토큰이란 뜻으로 토큰 하나하나가 모두 다르다. 즉, 토큰마다 고유한 값이 있고 다른토큰으로 대체 불가하다.
NFT는 블록체인 안에서 돌기 때문에 블록체인의 생태계를 이루는 하나의 기술이라고 봐도 된다.
NFT는 해마다 폭팔적인 관심과 성장을 하며 블록체인의 차세대 트렌드가 될것이란 기대가 많다.
도대체 대체 불가능한 토큰이 각광받고있는 이유가 무었인지 알아보자.


NFT, 어디에 쓰일 수 있을까?

대체 가능한 토큰대체 불가능한 토큰의 차이점이 뭘까?
대체 가능한 토큰은 말그대로 대체 가능한, 그러니깐 화폐와 같은것이다.
내가 가지고있는 500원짜리와 친구가 가지고있는 500원짜리는 동일한 가치를 지니며 바꾸어도 아무런 차이가 없다.
그러나 NFT는 발행하는 각 토큰마다 고유의 값이 있다. 그러니까 500원, 1000원 개념이 아니라 A원, B원과 같은 느낌인 것이다.
이것을 어디에 사용할까? 바로 물건을 특정짓는데 쓰인다.
NFT토큰과 어떤 데이터를 1:1매칭한다는 것이다! 그렇다면 그 데이터는 세상에서 단 하나밖에 존재하지 않는 데이터가 되는것이다!

조금더 받아들이기 쉽게, 이더리움의 생태계에서 NFT를 이용한 게임이 있는데 대표적인 게임이 crypto kitteies(크립토 키티)이다. https://www.youtube.com/watch?v=3PTstAK-cH8
크립토 키티는 A고양이와 B고양이를 교배시켜 새로운 C고양이를 육성하는 게임이다. 그런데 A, B, C고양이 모두 눈, 색, 무늬, 특성 등등에 의해 달라지게 된다.(마치 인간과 같이) 여기서 이렇게 교배된 C고양이는 C토큰을 발행시켜 고양이와 매칭이 되고 C고양이를 팔땐 C코인을 사고파는 식으로 하여 거래를 한다. C고양이를 산 사람은 C고양이의 주인이 되며 샀던 C토큰이 자신의 것임을 증명해준다.

그리고 이 외에도 카카오에서 만든 코인인 클레이튼을 기반으로 만든 SNS인 Klay stagram이 있다. https://ko.docs.klaytn.com/bapp/tutorials/klaystagram
인스타와 같이 사람들이 사진을 올리고 글을 쓰는 곳인데 사진을 올리면 그 사진의 데이터, 소유원이 담긴 고유의 토큰을 생성한다.
모든 트랜잭션은 블록체인에 기록되므로 서비스제공자조차 이 업로드된 사진에 권한이 일절 없으며 사람간의 거래가 이루어질 수도 있다.


트랜잭션?

블록체인을 공부하다보면 트렌잭션이란 말이 자주 나온다. 대충만 알고있다가 문장을 해석하기 난해할정도까지 오자 공부해보기로 했다.
트랜잭션(Transaction)은 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들을 의미한다.
블록체인의 주 목적이 바로 트랜잭션을 안전하고 신뢰할 수 있는 방식으로 저장하는 것이다. 쉽게말해 장부(블록체인)에 쓰이는 최소거래의 단위(트랜잭션)이라고 생각하면 될것이다.
블록 안에는 트랜잭션들이 여러개 들어있다는것이다. (참고로 블록을 만들때 TXid를 이용하여 블록헤더의 머클루트를 생성해낸다. 즉 다음 블록을 생성하기 위해선 TX를 필요로 한다는 것이다.)
트랜잭션에는 최소 하나의 입력과 출력을 가지며 이전 트랙잭션(이하 TX)의 출력을 참조하여 새로운 TX(입력)을 만든다.
https://mingrammer.com/images/2018-05-26-transactions-diagram.png!
(출처 : https://mingrammer.com/building-blockchain-in-go-part-4/ <- 이집 설명 잘한다.)
입출력의 역할을 간단히 말하자면 TX출력은 코인을 저장하고 암호를 풀 키를 제공하고 TX입력은 출력을 참조하고, 잡금해제를 위한 데이터(script sig)를 제공한다.


궁금할만한 질문

  • Q. 트랜잭션은 꼭 전트랜잭션의 출력이 필요하다 했는데 맨 처음 트랜잭션은 어떻게 만들어지는가?
    -맨 처음에는 이전 출력을 요구하지않는 코인베이스TX란 특수한 TX를 추가한다.

배경지식을 열심히 쌓아가는중..

profile
우리의 꿈, 우리의 희망

0개의 댓글