반응형

오늘은 솔리디티툴인 REMIX와 OPEZEPELIN을 이용하여 ERC20 표준을 따르는 토큰을 만들어 보자! 

아주 쉽고도 간단하면 누구나 10초만에 코드를 만들 수 있다. 토큰을 만드는 것은 그렇게 어려운 행위가 아니며 이더리움과 여러 체인들에 많은 토큰들이 생겨 나고 있다. ERC20은 그중 EIP20에서 올라온 이더리움 개선 제안을 통해 현재는 STANDARD 즉 토큰 표준으로 사용되고 있다. 아래의 코드를 보고 간단하게 토큰을 개발하며 어떤 의미가 있는지 이해해 보자. 

 

 

// SPDX-License-Identifier: MIT
pragma solidity 0.8.16;

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";

contract SnowmenToken is ERC20 {
    uint256 private constant MAX_SUPPLY = 1_000_000_000 * 10 **18;
    constructor() ERC20("Snowmen","SNOW"){
        _mint(msg.sender, MAX_SUPPLY);
    }
}

 

 

1. 솔리디티 버젼을 설정한다.

// SPDX-License-Identifier: MIT
pragma solidity 0.8.16;

 

2. 오픈제플린의 ERC20 토큰 표준라이브러리를 장착

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";

 

3. SnowmenToken을 ERC20 표준을 상속받아서 만드는 컨트랙트 작성

contract SnowmenToken is ERC20 {
    uint256 private constant MAX_SUPPLY = 1_000_000_000 * 10 **18;
    constructor() ERC20("Snowmen","SNOW"){
        _mint(msg.sender, MAX_SUPPLY);
    }
}

 

총 공급량은 10억 개로 설정하고, constructor 생성자에 토큰의 이름인 Snowmen과 티커명인 SNOW를 써주고 민트를 사용하여 msg.sender 즉 민트주체가 총공급량을 소유하게 한다. 이때 민트는 토큰을 주조한다, 만든다 정도로 이해하면 좋다. 아래글에 NFT 민트에 대한 실사용 사례도 있다.

 

https://r-blockchain.tistory.com/18

 

NFT 만들기(민팅하기)

요즘 핫한 NFT를 민팅하는 방법을 알아 보겠다. 민팅이란 동전과 같은 법정화폐를 주조할떄의 '주조'를 뜻하는 영어단어이다. NFT란 디지털화폐로 발행, 주조, 민팅이라는 단어가 적용된다. 쉽게

moneypepe.xyz

 

이렇게 쉽게 이미 만들어진 라이브러리들과 토큰 표준을 이용하여 블록체인 네트워크 상에서 동작할 수 있는 스마트 컨트랙트 즉, 스마트한 계약을 작성함으로 우리가 만든 토큰들을 블록체인 네트워크 상에서 사용할 수 있다.  아래는 실제 ERC20 토큰표준의 EIP 개선제안으로 EIP 읽어주는 남자 세션에서 설명하겠다. 


https://eips.ethereum.org/EIPS/eip-20

 

ERC-20: Token Standard

 

eips.ethereum.org

 

반응형

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

블록체인 MultiCall  (0) 2023.11.21
블록체인 블록의 구조  (0) 2021.09.27
블록체인 용어정리  (0) 2021.07.27
P2P 네트워크 와 블록체인 네트워크 설계  (0) 2021.07.19
데이터베이스와 분산원장?  (0) 2021.07.08
반응형

 

 

오늘은 MultiCall에 대해 코드예제와 함께 정리해보겠다.

블록체인에서 MultiCall이란 한 번의 트랜잭션으로 여러 스마트 컨트랙트 함수를 호출하여 블록체인 네트워크에 효율적으로 처리할 수 있는 방법을 제공하는 것이다. 이와 같이 블록체인 지갑등에서 자신의 잔고를 확인하거나 체크하는 용도로 많이 쓰이고 있다. 아래 멀티콜 예제를 보면 하나하나 어떤 내용이 있는지 확인해보자.

 

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

interface IERC20 {
    function balanceOf(address account) external view returns (uint256);
}

interface Multicall {
    function aggregate(
        call[] calldata calls
    ) external returns (uint256 blockNumber, bytes[] memory returnData);
}

struct call {
    address target;
    bytes callData;
}

contract UniswapMulticallExample {
    address public uniswapRouter;  // Uniswap Router contract address
    address[] public tokens;       // ERC-20 token addresses

    constructor(address _uniswapRouter, address[] memory _tokens) {
        uniswapRouter = _uniswapRouter;
        tokens = _tokens;
    }

    function getBalances(address user) external view returns (uint256[] memory balances) {
        balances = new uint256[](tokens.length);

        for (uint256 i = 0; i < tokens.length; i++) {
            // Encode the balanceOf function call for the ERC-20 token
            bytes memory data = abi.encodeWithSelector(IERC20(tokens[i]).balanceOf.selector, user);
            
            // Add the call to the Multicall data
            Multicall.call memory tokenBalanceCall = Multicall.call({
                target: tokens[i],
                callData: data
            });

            // Aggregate the results in a single call to Multicall
            (, bytes[] memory results) = Multicall(uniswapRouter).aggregate([tokenBalanceCall]);

            // Decode the result and store the balance
            balances[i] = abi.decode(results[0], (uint256));
        }

        return balances;
    }
}

 

 

  • 코드 해석
    • SPDX-License-Identifier: 컨트랙트의 라이선스를 지정하는 부분
    • pragma solidity ^0.8.0;: Solidity 컴파일러 버전을 지정
    • IERC20 인터페이스: ERC-20 토큰 표준을 따르는 balanceOf 함수를 정의한 인터페이스
    • Multicall 인터페이스: aggregate 함수를 정의한 인터페이스로, 여러 호출을 집계하여 실행
    • function aggregate가 여러 call들을 집계하여 배열형태로 한 번에 처
    • call 구조체: 호출할 대상 주소와 호출할 데이터를 담는 구조체
    • UniswapMulticallExample 컨트랙트: ERC-20 토큰의 잔액을 가져오는 기능을 제공하는 컨트랙트
    • uniswapRoutertokens 변수: Uniswap 라우터 주소와 ERC-20 토큰 주소 배열을 저장
    • constructor: 컨트랙트를 배포할 때 Uniswap 라우터 주소와 ERC-20 토큰 주소 배열을 초기화
    • getBalances 함수: 사용자의 주소를 받아와 각 ERC-20 토큰의 잔액을 조회하는 함수
    • for 루프: tokens 배열의 각 토큰에 대해 잔액을 조회
    • abi.encodeWithSelector: balanceOf 함수를 호출하기 위해 함수 시그니처와 사용자 주소를 인코딩
    • **Multicall**을 사용하여 여러 호출을 집계하고 결과를 얻음
    • abi.decode: 결과를 해석하여 해당 토큰의 잔액을 가져옴
    • return balances;: 각 토큰의 잔액을 반환
    • 부록
      • view 또는 pure 키워드를 사용하면 함수가 스마트 계약의 상태를 변경하지 않고 데이터를 읽기만 하는 데 사용됨을 나타냄. 이러한 함수는 외부로부터 호출되어도 블록체인의 상태를 변경하지 않으므로 가스 비용이 들지 않는다. 이러한 함수의 실행은 로컬 노드에서 처리되며, 블록체인 트랜잭션을 생성하지 않으므로 가스비용이 발생하지 않는다.
      • view 및 pure 함수는 블록체인의 무언가를 기록하거나 변경하지 않고 단순히 데이터를 반환하는 데 사용된다. 이 경우 getBalances 함수가 external view returns를 사용하기 때문에 블록체인 상태를 변경하지 않고 사용자의 잔액을 읽기만 하므로 호출 시 가스비용이 발생하지 않는다.

위와 같이 코드들의 함수를 살펴보면서 각각의 함수들이 어떠한 기능들을 하는지 알아보았다. 멀티콜의 경우 스왑을 하거나 나의 잔고를 모두 가져올 때 많이 사용될 것 같다는 생각이 들었다. 멀티콜 기능을 통해 다음에는 유니스왑 v2를 구현해 보도록 하겠다. 

반응형

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

토큰을 만들어보자!  (0) 2023.11.24
블록체인 블록의 구조  (0) 2021.09.27
블록체인 용어정리  (0) 2021.07.27
P2P 네트워크 와 블록체인 네트워크 설계  (0) 2021.07.19
데이터베이스와 분산원장?  (0) 2021.07.08
반응형

블록체인이 체인의 연속이고, 블록들이 무수히 많이 연결되었다는 것은 많은 블록체인에 호기심 많은 사람들은 다들 알 것이다. 하지만 블록체인의 블록 안에 실제로 어떠한 데이터들이 들어 있는지 모르는 사람들이 많다. 이러한 블록체인에 블록 안에는 실제로 어떠한 데이터들이 어떻게 들어 있는지 보자.

 

블록의 구조 

 

1. 현재 블록 해시

 

2. 블록 Header

 2-1) Version: 비트코인 소프트웨어 버전 정보를 나타냄

 2-2) Previous block hahsh: 이전 블록의 해시 값을 펴시, 이 값은 이전 해시 값을 가리키는 해시 포인터의 역할을 하고,   블록들은 체인으로 연결됨, 블록 안에 있는 트랜잭션

 2-3) Merkle hash root: 머클 루트는 머클 트리의 루트 노드 값이다. 머클 트리는 블록에 있는 모든 트랜잭션의 해시 값을 이진트리로 요약할 것이다. 머클트리는 트랜잭션 데이터를 보호할 목적으로 사용된다.

 2-4) Timestamp: 타임스탬프는 이 블록이 생성된 날짜와 시각이다. 시간은 UTC를 기준으로 표시한다. 타임스태프는 유   닉스 시간으로 19701100:00:00시부터 현재까지 경과한 시간을 초로 표시한다.  

 2-5,6) Bits & Nonce: 이 정보는 채굴의 난이도와 일종의 해답에 관련된 것이다. 임의의 논스값을 헤더에 넣은 상태에서   헤더의 해시를 계산한 경우, 만약 이 해시값이 비츠가 표현하고 있는 어떤 값보다 작으면 채굴에 성공한 것이다. 즉 비   츠는 채굴의 성공 여부를 판단하는 정보이고 논스는 해답에 해당한다.

 2-5) Bits: 채굴의 성공여부

 2-6) Nonce: 해답

 

 3. 거래 개수

 

 4. 블록 body

 4-1) 트랜잭션 카운트: 블록 바디에 기록된 트랜잭션의 개수, 이 트랜잭션들은 채굴자가 선택해서 이 블록에 포함시킨   것이다. 채굴자는 수수료가 높은 트랜잭션을 우선적으로 선택한다. 트랜잭션을 많이 선택할수록 보상은 커지지만 채굴   시간이 많이 소요되므로 채굴자들은 경쟁우위와 보상의 크기를 절충해서 트랜잭션의 최적 개수를 결정한다.

 4-2) 트랜잭션: 비트코인을 주고받는 거래

 

5. 기타 정보

 

**비트코인 코어에서 블록 확인**

 

 

{

  "hash": "hash"(문자열) 블록 해시(제공된 것과 동일)

  "confirmations": n, (숫자) 확인 횟수 또는 블록이 메인 체인에 없는 경우 -1

  "크기": n, (숫자) 블록 크기

  "strippedsize": n, (숫자) 감시 데이터를 제외한 블록 크기

  "weight": n(숫자) BIP 141에 정의된 블록 가중치

  "height": n, (숫자) 블록 높이 또는 인덱스

  "version": n, (숫자) 블록 버전

  "versionHex": "00000000", (문자열) 16진수 형식의 블록 버전

  "merkleroot": "xxxx", (문자열) 머클 루트

  "tx": [(문자열 배열) 트랜잭션 ID

     "transactionid"(문자열) 트랜잭션 ID

     ,...

  ],

  "time": ttt, (숫자) epoch(1970년 1월 1일 GMT) 이후의 블록 시간(초)

  "mediantime": ttt, (숫자) Epoch(1970년 1월 1일 GMT) 이후의 중앙 블록 시간(초)

  "nonce": n, (숫자) nonce

  "bits": "1 d00 ffff", (문자열) 비트

  "difficulty": x.xxx, (숫자) 난이도

  "chainwork": "xxxx", (문자열) 이 블록까지 체인을 생성하는 데 필요한 예상 해시 수(16진수)

  "nTx": n, (숫자) 블록의 트랜잭션 수입니다.

  "previousblockhash": "hash", (문자열) 이전 블록의 해시

  "nextblockhash": "hash"(문자열) 다음 블록의 해시

}

반응형

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

토큰을 만들어보자!  (0) 2023.11.24
블록체인 MultiCall  (0) 2023.11.21
블록체인 용어정리  (0) 2021.07.27
P2P 네트워크 와 블록체인 네트워크 설계  (0) 2021.07.19
데이터베이스와 분산원장?  (0) 2021.07.08
반응형

DeFi : 탈중앙화 금융 서비스

 

CAP : 시가총액

 

ATVL : 디앱에 잠긴 토큰의 총 볼륨을 계산하지만 이전 90일 동안 USD를 기준으로 한 토큰 가격을 모두 잠구고 계산한다.

 

TVL : 예치된 자산 -> 디파이 산업의 규모를 측정하는데 사용되는 측정 단위. 즉 금융 플랫폼인 디파이에 예치된 자산 규모의 총합계 금액을 의미.

 

CAP/TVL : 공급, 최대 공급 및 현재 가격 계산

 

초과 담보 : 신용조회를 하지 않았을 때, 초과 담보 대출은 대출을 해주는 사람이 디앱에서 실행해주지 않을 경우를 대비

한 보험의 한 형태다

 

샤딩 : 이더리움의 확장성 문제를 해결하려는 솔류선. 전체 블록체인 네트워크를 일정 부분씩 분할하여 트랜잭션을 각각 검증하고 저장한다. 거래 처리 속도가 굉장히 빨라진다.

 

ERC-20 : Ethereum Request for Comment 20 의 약자이다. 20은 리퀘스트 숫자다. 이더리움 네트워크의 개선안을 제안하는 EIPs에서 관리하는 공식 프로토콜이다. ERC-20은 이더리움 블록체인 네트워크에서 정한 표준 토큰 스펙이다. 필요한 이더리움과 호환성이 있는 모든 요구 사항을 충족시키는 표준은 ERC-20으로 간주된다. ERC-20 토큰은 이더리움과 교환 가능하며 이더리움 지갑으로 전송이 가능하다.

 

AMM : Automatically Market Makers의 약자로 DEX프로토콜의 일종으로 자산 가격을 산출하기  위해 수학적 공식을 사용한다. 기존 거래소처럼 오더북을 사용하는 대신, 자산 가격은 가격 계산 알고리즘을 따른다.

스마트 콘트랙트 : 서면으로 이루어지던 계약을 코드로 구현하고 특정 조건이 충족되었을 때, 해당 계약이 이행되게 하는 스크립트

반응형

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

블록체인 MultiCall  (0) 2023.11.21
블록체인 블록의 구조  (0) 2021.09.27
P2P 네트워크 와 블록체인 네트워크 설계  (0) 2021.07.19
데이터베이스와 분산원장?  (0) 2021.07.08
비트코인과 블록체인  (0) 2021.07.08
반응형

출처 : https://steemit.com/coinkorea/@piljae/dex-1

탈중앙화 거래소는 DEX(Decentralized Exchange)의 약자로 서버-클라이언트 방식의 중앙화된 거래소와 달리, P2P 방식으로 운영되면서 토큰의 교환 및 거래 기능을 제공한다. 거래소가 개인의 자산을 관리하는 것이 아니라 개개인이 직접 관리하기 때문에 해킹으로부터 안전하다. 마운트곡스 해킹사건을 필두로 중앙화 거래소가 갖고 있는 투명성 및 보안 문제를 해결하기 위해 탈중앙화 거래소에 대한 수요가 증가했고, 디파이 시장의 주목과 함께 탈중앙화 거래소가 성장 중에 있다. DEX는 고객의 자금을 보유하기 위해 제3의 서비스에 의존하지 않고 자동화된 프로세스를 통해 사용자끼리 직접 거래가 이뤄진다. 어느 한 서버나 특정 장소에 재산을 보관하는 것이 아니기 때문에 해킹 위험도 적어 사용자들은 안심하고 거래를 이용할 수 있다. 또한 중앙화 거래소에서 거래할 수 없는 가상자산에 대한 거래도 가능하고, 스마트 계약을 활용해 개인 간 대출 등의 금융서비스를 만들어 거래도 가능하다. 이런 장점들이 부각되면서 현재 디파이 시장에서 대출서비스와 함께 가장 수요가 많은 서비스다.

 

이에 반해, 거래가 적으면 거래성사가 어렵게 되어 유동성 공급에 대한 문제가 생기는 단점이 있으며, 거래 과정에서 스마트 계약을 이용하기 때문에 기존 거래에 비해 시간이 더 걸리는 구조적 한계를 갖고 있다. 또한 별도의 신원인증 없이 지갑만 있으면 거래가 가능한데, 향후 국제자금세탁방지기구의 제재를 받을 수 있다는 우려도 있다.

 

최근 급성장한 커브 파이낸스와 유니스왑이 대표적인 탈중앙화 거래소다. 특히, 유니스왑은 디파이 생태계 내에서 한 때 가장 높은 점유율을 기록했다. 유니스왑은 이더리움과 ERC-20 기반의 토큰 간 자동 교환 거래를 가능하게 설계된 탈중앙화 거래소다. 탈중앙화 거래소가 갖고 있는 유동성 부족의 문제를 해결하기 위해 유니스왑은 유동성 풀을 이용한다.

 

즉, 이용자가 매수/매도를 하고 싶을 때 바로 스왑하면 거래가 발생한다. 그 가격에 거래하려는 거래 상대방을 찾는 과정이 필요 없고, 거래량이 적어 주문하기 어려운 토큰도 바꿀 수 있다. 이 토큰은 바로 유동성 풀에서 나오는데, 유동성 풀이란 유동성 공급자들이 자신의 토큰과 이더리움을 고급하면서 형성된다. 이를 통해 유동성 공급자들은 거래 수수료를 보상으로 받게되고, 다른 사람들은 유니스왑을 이용해 손쉽게 거래가 가능해진다. 토큰의 가격을 유동성 풀에 들어있는 이더리움의 수량과 토큰의 수량에 비례해 시장에서 결정된다.

 

유니스왑은 대표적인 AMM으로 큰 인기를 끌고 있다. 유니스왑의 등장과 성공은 탈중앙화 거래소 시장에 지각변동을 불러왔다. 유니스왑을 모방한 각종 스왑이 들어간 거래소들이 등장한 것이다. 대부분 유니스왑의 작동 원리와 비슷하다.

후발주자 중 가장 눈에 띄는 서비스는 1인치가 런칭한 무니스왑이다. 무니스왑 역시 대부분의 기능은 유니스왑과 유사하다. 그리고 유니스왑에는 없던 거래지연시간을 추가했다. 이는 유동성 제공자가 AMM에 예치된 토큰 가치가 지갑에 보유하고 있는 토큰 가치와 달라져 발생하는 손실을 줄이려는 시도다. 이 외에도 커브 파이낸스, 밸런서 등이 대표적인 탈중앙화 거래소인데 이들 역시 모두 AMM 기반이다.

 

탈중앙화 거래소가 급성장하면서 기존의 중앙화 거래소는 비상이 걸렸다. 중앙화거래소와 탈중앙화 거래소 모두 초창기부터 존재했었다. 하지만 지금까지 투자자들은 거래를 대부분 중앙화거래소에서 했고, 탈중앙화거래소의 거래량은 중앙화거래소에 비해 미미한 수준이었다. 하지만 최근 디파이 붐이 불면서 탈중앙거래소가 빠르게 성장하고 있다. 2020년 9월 초에는 유니스왑의 일일 거래량이 코인베이스를 뛰어넘는 사건이 발생하기도 했다.

 

다급하게 움직인 것은 중국이었다. 후오비는 디파이 연합을 출범시켜 컴파운드, 커브, 밸런서, 아베 등을 가입시켰다. 이미 탈중앙화 거래소를 런칭한 적이 있던 세계 최대 거래소 중 하나인 바이낸스는 중앙화거래소인 바이낸스닷컴과 BSC을 서비스 적으로 연결했다.

 

 

참고 : 블록체인 기반 혁신금융 생태계 연구보고서.pdf

반응형
반응형

  블록체인의 핵심 기술 중 하나인 p2p는 peer-to-peer의 약자로 대등한 자, 동등한 자의 의미를 갖는다. 즉 대등한 관계의 컴퓨터 그룹을 직접 통신을 수행하는, 중심이 없는 네트워크를 의미한다. 과거에 흔히들 알고 있는 비트토렌트나 파일노리 같은 p2p로 이해하면 쉬울 수 있다. 

 

 

1. P2P(Peer-to-Peer) 네트워크

 

클라이언트 서버와 네트워크 서버 

P2P: Peer-to-Peer기반 방식의 분산형 데이터 저장 기술의 일종

: P2P란 기존의 서버와 클라이언트 개념이나 공급자와 소비자 개념에서 벗어나 개인 컴퓨터끼리 직접 연결하고 검색함으로써 참여자가 공급자인 동시에 수요자가 되는 형태

 

즉, 각각의 개인 클라이언트들이 서로 연결되어 있다고 생각하면 된다.

 

클라이언트 서버 장점

* 중앙 서버가 있기때문에 설계나 유지가 쉽다.

 

클라이언트 서버 단점

* 서버에 장애 발생시 서비스 중지

* 다수의 클라이언트가 동시 접속 시 처리에 문제 발생하지 않게 고사양 서버와 큰 네트워크 대역폭 필요 

 

P2P 서버 장점

* 서버를 준비할 필요가 없음

* 노드가 증가해도 서비스르 유지할 수 있는 높은 확장성 가짐.

* 특정 노드에 문제가 발생해도 다른 노드에 영향이 없음. 

 

P2P 서버 단점

* 새로운 기능 추가나 업데이트 어려움

* 네트워크 전송 속도로 인해 노드 간 정보 불일치, 성능 저하 발생

 

 

2. 기존 P2P 방식의 종류 

 

기존 p2p방식

 

 

 

3. 블록체인에서의 P2P네트워크 설계 방식

 

퍼블릭 블록체인

퍼블릭 블록체인: 누구든지 자유롭게 참여 가능한 개방형 블록체인 네트워크 (ex) 이더리움, 블록체인)

 

퍼블릭 블록체인의 특징

1. 전 세계 누구나 거래를 주고 받을 수 있다. 즉 누구나 거래들을 검증할 수 있는 노드가 될 수 있다. 

2. 퍼블릭 블록체인 위에서 발생한 거래내역은 모든 사람이 확인 가능

3. 저장된 데이터 위변조 불가

4. 퍼블릭 블록체인은 많은 사람들의 네트워크 참여에 동기 부여를 위해 특정 암호화폐를 인센티브 또는 보상으로 지급하여 네트워크 유지 

 

프라이빗 블록체인

프라이빗 블록체인: 사적인 블록체인, 허가형 블록체인, 기업형 블록체인으로 불린다. 허가된 참여자 외 거래 내역과 여러 행동에 대한 공유가 되지 않고 추적되지 않는다. 

 

프라이빗 블록체인의 특징

1. 프라이빗 블록체인은 체인 개발자가 정해둔 규칙에 따라 또는 네트워크의 허가를 받은 노드만 참여 가능

2. 거래 내역을 볼 수 있는 권한을 받은 사람만 열람이 가능

3. 믿을 수 있고 많은 거래를 처리할 수 있는 힘을 가지고 있는 소수의 노드들에 의해 블록체인이 운영되기 때문에 싸고 빠른 속도를 자랑한다.

4. 퍼블릭 블록체인은 하드 포크가 아닌 이상 소프트웨어 업데이트가 어렵지만 프라이빗 블록체인에서는 기업들에 법률 규제 및 여러 규제사항에 충족하는 블록체인을 이용할 수 있다.

 

컨소시움 블록체인

컨소시엄 블록체인: 컨소시엄 블록체인은 퍼블릭 블록체인과 프라이빗 블록체인의 중간 형태로 하이브리드 블록체인으로 분류된다중앙 관리자에 의해 승인받은 참여자만이 블록 생성에 참여할 수 있는 프라이빗과 유사한 개념이다. 하지만 프라이빗 블록체인과 달리 목적을 가지고 있는 기관이 하나의 컨소시엄을 구성하여 공정성과 확장성을 확보하였다.제삼자에 대한 거래 수수료를 줄이고 거래 시간을 단축할 수 있다.

 

컨소시엄 블록체인의 특징

1. 컨소시움 블록체인에서는 여러 기관 또는 기업이 하나의 그룹을 이뤄 네트워크를 구성하는 구조를 가지고 있다.

2. 퍼블릭과 프라이빗의 성격을 가진다.

3. 선별된 한 집단의 노드들 만이 합의 과정에 참여하지만, 다른 노드들은 블록을 생성하거나 확인할 수 없다.

 

 

기존의 P2P 방식에서 블록체인의 P2P 방식으로 바뀌는 과정을 알아보았다. 실제로 블록체인에서는 P2P 방식이 가장 중요한 개념으로 자리 잡고 있기 때문에 P2P 방식에 대하여 자세히 알고 있으면 더 좋을 것이다. 다음 글에서는 블록체인 설계 내에 있는 스마트 컨트랙트(스마트 계약) 방식에 대해 알아보겠다. 

 

 

참조: https://velog.io/@chb1828/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8%EC%9D%98-%EC%9C%A0%ED%98%95%EB%93%A4\

 

블록체인의 유형들

블록체인의 유형들에 대해서 알아보자 Public Blockchain, Private Blockchain과 Consortium Blockchain

velog.io

 

반응형

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

블록체인 블록의 구조  (0) 2021.09.27
블록체인 용어정리  (0) 2021.07.27
데이터베이스와 분산원장?  (0) 2021.07.08
비트코인과 블록체인  (0) 2021.07.08
블록체인의 시작  (0) 2021.07.07

+ Recent posts