본문 바로가기

블록체인

1. Web3는 무엇인가

WEB3 생태계 - 블록체인을 기반으로한 모든 모델들을 말함

일론 머스크가 블록체인은 실체없는 사기라고 말하며 도지코인사건으로 증명하기도 했고 논란이 많다

 

1. WEB의 흐름

WEB1.0

 - READ ONLY (Ex : 야후)

 

WEB2.0

 - READ & WRITE (Ex : 페이스북, 클라우드 등)

기업의 데이터 독점

 

 하지만 지금 원활이 이뤄져있는 WEB2.0은 중앙화 플랫폼이기에 사용자가 데이터를 제어하기 힘들고, 중앙기관이 우리의 모든 데이터를 수집할 수 있었다.

 그 결과 몇몇 기관에서 우리의 정보를 몰래 팔기도하고, 소비자 맞춤형 광고가 이러한 대표적 예시이며, 이상한 번호로 우리한테 전화가 오는 이유 중 하나라고 생각한다.

 

그렇게 소수 기관으로부터 통제되지 않고, 개인정보를 지키고자 등장한 개념이

 

WEB3.0

 - READ & WRITE & OWN

 - 탈중앙화, 블록체인

 

2. WEB3.0

어느 정도 본다면, 분산형 컴퓨터라고 볼 수 있다.

모든 데이터들이 분산화된 네트워크이기에 서버가 필요가 없다. (NO BackEnd)

각 사용자들이 각각의 노드가 되어 서로 네트워크를 형성하며 모든 데이터가 공유된다. (양날의 검)

ㄴ 이로써 영지식증명이나 하이퍼레저 등의 개념이 필요해짐

 

 - 장점 :

네트워크에 누구나 참여할 수 있다. (feat.메타마스크)

분산형 네트워크라 특정 노드가 다운되어도 서비스가 지속된다.

암호화폐 지갑 하나로 모든 플랫폼에 로그인 및 기능 사용이 가능하다. (Just One Account)

 

아직 무엇이 WEB3.0이다! 라고 할 수 없지만 (PTSD : 블록체인은 컴퓨터다.)

핵심은 [탈중앙화]이며, 블록체인, NFT, 메타버스, 다오 등 여러 분야로 뻗어나간다는 것이다.

3. Web3.js

 그리고 이런 Web3기술을 개발로 구현하기 위해 필요한 것이 Web3.js라는 라이브러리이다.

 

이더리움으로 개발하는 방법

1. 솔리디티(Solidity)로 스마트 컨트랙트를 개발하는 것

2. 블록체인과 상호작용하는 클라이언트를 개발하는 것 -> Web3.js 사용

 

기존에는 클라이언트가 JSON형식에 맞춰서 이더리움 노드에 데이터를 요청해야했는데,

이 Web3.js가 상호작용 라이브러리를 엄청나게 많이 제공한다.

 

다시말하면 개발자들은 1. 컨트랙트 주소, 2. 실행 함수, 3. 변수 를 위에서 말한 JSON-RPC 형식으로만 이더리움 노드와 얘기를 하는데, 이걸 JavaScript로 만들어주는게 Web3.js이다.

 

{"jsonrpc":"2.0","method":"eth_sendTransaction","params":[{"from":"0xb60e8dd61c5d32be8058bb8eb970870f07233155","to":"0xd46e8dd67c5d32be8058bb8eb970870f07244567","gas":"0x76c0","gasPrice":"0x9184e72a000","value":"0x9184e72a","data":"0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675"}],"id":1}

json-RPC

CryptoZombies.methods.createRandomZombie("Vitalik Nakamoto 🤔")
  .send({ from: "0xb60e8dd61c5d32be8058bb8eb970870f07233155", gas: "3000000" })

이렇게 간단해진다.

 

3. 정리

WEB3.0의 장점

- 중앙 통제 지점 없음

- 정보 상호성 증가

- 개선된 광고 및 마케팅

'블록체인' 카테고리의 다른 글

3. 컨트랙트를 배포해보자  (3) 2023.11.08
2. Web3.js를 사용해보자  (0) 2023.11.08
0. 블록체인에 대한 고찰  (0) 2023.11.08