Tech-Trends

(트렌드) 블록체인 생태계와 용어 정리(2)

IT오이시이 2023. 11. 27. 23:41
728x90
[ 블록체인 관련 정리 ]
* 블록체인 생태계와 용어 정리(1)
* 블록체인 생태계와 용어 정리(2)
* 암호화 화폐의 분류
* 암호화폐. 전자지갑
* 블록체인의 데이터신뢰 : 오라클 문제와 해결(Oracle Problem)
* NFT 표준 기초 용어 와 ERC20 ERC721 ERC1155 표준

[출처] https://couplewith.tistory.com/search/블록체인

 

 

(트렌드) 블록체인 생태계와 용어 정리(2)

블록체인은 분산원장으로 분산시스템을 활용하여 분산된 데이터를 관리하는 개념이다. 기존의 DBMS에서의 데이터 분산은 대용량 데이터를 작은 단위로 여러 시스템에 나누어 저장하고 관리하는 분산 시스템과는 다른 개념이다. DBMS는 대용량을 여러 저장소에 나누었다면 블록체인은 데이터의 분산 저장보다는 분산된 시스템 간의 분산된 합의와 데이터 처리를 중심으로 구현된 기술이라는 점에 차이가 있다. 이러한 블록체인은 거래가 많아질수록 블록체인의 데이터 용량이 지속적으로 증가하고 삭제의 개념이 없기 때문에 저장소의 크기는 지속 증가하고, 블록체인간의 거래가 증가하면서 속도도 빠르고 효율적인 체인의 확장을 위한 기술이 요구되고 있다. 

#블록체인 확장과 속도 개선을 위한 기술 

  • 샤딩
  • 플라즈마
  • 사이드 체인
  • 스테이트 채널
  • 영지식 증명

1. 샤딩

블록체인은 단일의 데이터베이스로 저장하기 때문에 용량이 지속적으로 증가하고 데이터의 검색이나 관리에 부담이 생깁니다. 데이터를 특정 구간별로 쪼개어 나누면 각 노드에서 비대하게 가지고 있는 데이터를 가볍고 빠르게 검증할 수 있습니다. 대량의 처리에서 경합을 줄이고 빠르게 트랜잭션 속도를 향상시킬 수 있습니다. 샤딩을 통해 나누어진 블록들의 구간(epoch)을 샤드(shard)라고 부릅니다. ( DB에서는 파티셔닝, 스플릿 등의 용어로 사용됩니다.)
기존비트코인과 이더리움 의 경우 확장성 문제가 심각하여, TPS를 획기적으로 증가시키기 위한 다양한 방법이 고안되고 있는데, 그 중 대표적인 것이 샤딩입니다.

2. 플라즈마

비대한 블록체인의 처리 속도문제를 해결하기 위해 플라즈마(Plasrma) 알고리즘이 개발 되었습니다. 플라즈마는 거래내역을 자식체인(Child Chain)에서 처리하고 최종 결과를 메인체인(Main Chain)로 전달하여 관리하는 방식입니다.
분할과 정복을 하는 에지(Edge) 네트웍 아키텍처라고 할까요? 특정 작업들의 분산처리와 병렬 처리하는 빅데이터의 Map and Reduce 방식과 유사하다고 이해하면 될 것 같습니다.
3. 사이드 체인
사이드체인은 서로 다른 블록체인들 위에 존재하는 자산들을 쉽게 거래할 수 있도록 하는 기술입니다.
메인체인에서 모든 트랜잭션을 처리하는 것이 아니라 사이드체인이 메인체인이 할 일을 나누어 도와주는 것이라고 할 수 있게 됩니다.
사이드체인은 컬러드코인(Coloredcoin), 메타코인(Metacoin), 멀티시그(Multi-sig) 기술로 신규자산 발행 및 거래를 위해 사용되는 핵심기술입니다. 사이드체인 기법을 통해 서로 다른 블록체인에 존재하는 자산들을 서로 안전하게 거래할 수 있습니다. 그리고 이더리움(Ethereum) 블록체인 위에서 비트코인을 거래하고, 전혀 다른 텐더민트(Tendermint) 블록체인 위에서 비트코인과 이더(Ether)를 거래하는 것이 가능하게 됩니다.

 

4. 스테이트 채널

스테이트 채널은 특정 참여자들간의 거래를 블록체인 밖에서 처리하는 방식입니다. 거래(또는 게임)의 규칙을 기록해둔 스마트 컨트랙트를 메인 체인에 올려놓고, 블록체인 외부에서 거래를 진행합니다.
거래를 하면서 참여자들은 서로의 서명이 담긴 거래 내역을 각자 보관해두고, 거래가 끝나면 최종 결과를 메인 체인의 스마트 컨트랙트에 제출하고 채널을 종료 합니다.
스마트 컨트랙트는 최종 결과에 양측의 서명이 담긴 것을 확인하고, 결과가 조작된 경우 참여자들이 결과에 대해 반박을 할 수 있도록 일정 시간을 대기합니다. 메인 체인에는 처음과 끝만 기록되므로 프라이버시 측면에서 강하며, 거래의 완결성을 바로 확보할 수 있습니다. 플라즈마와 달리 별도의 자식 체인을 만들지 않는 것이 차이점입니다.

 

5. 영지식 증명 (ZKP, Zero-Knowledge Proof)

영지식 증명은 1985년 Shafi Goldwasser, Silvio Micali, Charles Rackoff의 논문 "The Knowledge Complexity of Interactive Proof-Systems"에서 처음 소개된 개념입니다.
ZPK는 어떠한 사실을 증명할 때, 증명하고자 하는 것의 참, 거짓 여부를 제외하고는 어떤 정보도 노출하지 않는 것입니다.
증명자가 자신이 알고 있는 지식과 정보를 공개하지 않으면서, 그 지식을 알고 있다는 사실을 검증자에게 증명하는 시스템입니다. 증명자(prover)는 자신이 해당 지식을 알고 있음을 증명하는 주체이며, 검증자(verifier)는 증명자가 해당 지식을 알고 있다는 사실을 검증해주는 주체를 의미합니다.
장 자크 키스케다(Jean-Jacques Quisquater)는 〈어린이들을 위한 영지식증명〉이라는 논문에서 알리바바 동굴(Alibaba's cave)의 비유를 들어 설명하였습니다.

1) 증명자인 페기가 먼저 동굴의 A 출구나 B 출구 중 선택하여 동굴로 들어간다.
2) 검증자인 빅터가 A나 B중 출구를 골라서 페기에게 알려준다.
3) 페기는 빅터가 말한 출구로 나온다.

찰리(Charlie)는 증명자(prover)이고 스미스(Smith)는 검증자(verifier)라고 가정하자. 찰리와 스미스 모두 비밀문이 있는 동굴 가까이에 왔습니다. 둥근 고리 형태의 동굴에는 A와 B라는 길이 있으며 그 사이에는 도어락이 설치된 비밀문이 있습니다. 찰리는 스미스에게 비밀문의 암호를 알고 있다고 말합니다. 하지만 찰리는 스미스를 포함한 다른 누구에게도 그 암호를 밝히고 싶지 않습니다. 이에 대해 스미스는 믿을 수 없다며 찰리에게 암호를 알고 있음을 증명하라고 합니다. 즉, 검증자는 증명자에게 직접적으로 설치된 도어락의 비밀번호를 물어보지 않고 증명자가 비밀번호를 알고 있다는 명제가 참인지 확인하려 합니다.

이 조건문이 참인지를 확인하기 위해 다음 방법을 사용할 수 있습니다.

1. 증명자가 먼저 동굴에 들어간 다음, 도어락 근처로 이동한 후 검증자를 동굴 안으로 부른다.
2. 검증자는 A와 B의 갈림길에 서서 증명자에게 특정 길로 나오라고 지시한다.
3. 증명자는 검증자가 지시한 길로 나온다.

이 과정을 통해 증명자는 검증자에게 자신이 알고 있는 비밀번호를 알려주지 않고도 자신이 비밀번호를 알고 있음을 증명할 수 있습니다. 하지만 이 과정을 한 번만 보았을 때는 증명자가 비밀번호를 정말로 알고 있어서 검증자가 지시한 길로 나왔는지 확신하기 어렵습니다. 왜냐하면 증명자가 우연히 올바른 길로 나왔을 수도 있기 때문입니다. 하지만 위 과정을 일정 횟수 이상 반복하여도 항상 증명자가 검증자의 지시대로 행동했다면 증명자는 검증자에게 자신이 비밀번호를 알고 있다는 사실을 납득시킬 수 있게 됩니다.

 

 

블록체인 관련 정리

 

 

 

 

[출처] https://couplewith.tistory.com/search/블록체인

 

728x90
반응형