[TECH!T] NFT 블록체인 마켓 앱 만들기 with 그라운드X 4기 Chapter 1, 2

Hyejis·2023년 1월 5일
2

블록체인

목록 보기
1/3

https://techit.education/courses/technology/groundx_4
[TECH!T] NFT 블록체인 마켓 앱 만들기 with 그라운드X 4기

내일배움카드가 없어도 무료로 수강 가능하다는 점에 끌려 수강 중이다.
전문적인 지식 부족함 + 원래 하던 공부(프론트엔드)
라는 2 가지 이유로 프로젝트는 진행하기 어려울 것 같으나 쉽게 접하기 어려운 블록체인 개발에 접근해볼 수 있는 좋은 기회라고 생각한다.

1. Blockchain

1) Blockchain의 개념

블록체인 == 누구나 볼 수 있는 공공 거래 장부

블록체인 배경: 은행의 위험성 + 디지털 생활 + 기존과 다른 방식 => 탈중앙화
블록체인 = 블록 + 체인: 블록 여러개를 이어 붙임

2) Blockchain의 기본 원리

헤더: 체인과 연결하는 부분
바디: 거래장부가 다 적혀있음
헤더를 체인과 연결 시 -> 블록 체인
하나하나의 블록들이 헤더를 기반으로 정보가 링크 -> 블록 체인

사용자들의 컴퓨터에 모두 같은 내용의 블록체인 시스템이 설정되어 있어 해킹이 불가능 하다.
=> 내 컴퓨터에서 수정을 해도 나를 제외한 다른 사용자들의 컴퓨터에선 기존의 내역이 다 남아있으므로 투명성이 높다.

3) 합의 알고리즘

PoW: Proof of Work

무언가에 대한 일을 하고 그 일이 제대로 성공했는지에 대한 증명을 하는 것
=> PoW로 채굴 완료 시, 다른 컴퓨터들은 똑같이 복사해간다.

PoS: Proof of Stake

자신의 지분, 즉 Staking 한 자산을 통해 블록을 생성

4) 공개키와 비밀키

공개키: Public Key

외부에 공개된 키를 의미(주소, 계좌), 아무나 봐도 상관없다.

비밀키: Private Key

공개키의 자산을 자신만이 운용하기 위해 필요한 키

5) Hash Function

한 글자만 달라도 형태가 완전히 바뀌게 된다.
-> 한 눈에 봐도 달라진 것을 알아볼 수 있고, 데이터를 깔끔하게 정리해주는 게 HASH
=> 위변조가 일어나더라도 바로 새 정보로 대체할 수 있다.

6) 클레이튼? Klaytn?

카카오 계열사 GroundX가 개발한 블록체인 플랫폼

-> 프론트엔드 지식이 필요한 이유..!

장점

  • TPS가 높다.
    TPS: Transaction Per Second, 1초당 처리할 수 있는 트랜잭션 규모
    1초에 얼마나 많은 거래가 처리되어서 블록에 저장되는지를 보여주는 단위
    ex) 비트코인(7TPS), 이더리움(20TPS)은 TPS가 낮아 한 번에 많은 양의 트랜잭션을 처리하기 어렵다. 클레이튼(4000TPS)은 상당히 높은 편으로 한 번에 많은 양의 트랜잭션을 처리

  • Finality가 짧다.
    finality: 완결성, 블록에 담긴 거래가 바뀔 수 없다는 걸 보증하는 시간
    ex) 비트코인(60분), 이더리움(6분)으로 해당 시간을 기다려야 거래가 바뀔 수 없다는걸 보증 및 확인할 수 있으므로 너무 길다. 클레이튼(1초)로 완료되므로 짧다.

  • 저비용
    트랜잭션 발생 시 수수료로 가스를 낸다.
    클레이튼의 경우, 이더리움의 약 1/100 수준으로 낮은 가스비를 낸다.
    -> 저렴한 비용으로 서비스 운영

합의 매커니즘: 블록을 생성할 때 알고리즘

합의된 약속이 들어간 버전의 블록이 옳은 블록인걸로 모두가 합의를 해줘야 됨

POW(Proof of Work)
: 연산해서 작업을 증명하는 방식, 비트코인에서 사용
POS(Proof of Stake)
: 지분을 통해서 합의하고 보상을 받는 방식, 이더리움에서 사용

-> 많은 양의 TPS를 처리하거나 빠른 완결성을 달성하기 어렵다.

  • IBFT: 이스탄불 비잔티움 결함 허용, 클레이튼에서 사용
    => 소수의 컨벤서스 노드가 빠르게 검증하고 블록 생성 시 주변 프록시 노드들에게 그 결과를 전달하여 엔드 포인트 노드들에서 다수가 감시하는 시스템

컨센서스(Consensus)
: 악의적인 상황이 발생하더라도 네트워크를 올바른 방향으로 이끌고자하는 다수의 노드들이 상호 검증을 거쳐 올바른 블록 생성을 이끌어내는 프로세스와 알고리즘

클레이튼 API 서비스 KAS


블록체인의 복잡한 모든 과정을 API로 간단히 호출할 수 있도록 처리
-> KAS API 사용 시 블록체인 서비스를 만들 때 모든걸 개발하지 않아도 간단한 API 호출만으로 서비스 런칭 가능

KLIP API

카카오톡 클립 지갑과 연결 가능

BApp: BlockChain Application

블록체인 기반의 응용 소프트웨어, 클레이튼 기반의 앱

7) Pre-preparation

필요 지식: HTML/CSS, JS, React, node.js
사용 툴: VSC, git, github

profile
프론트를 시작으로 풀스택을 걸쳐 모든 분야를 아우르고 싶은 야망이 살짝 있는 아기 개발자입니다.

0개의 댓글