[BlockChain] 블록체인 기본 개념

원알렉스·2020년 9월 2일
0

BlockChain

목록 보기
1/3
post-thumbnail

🚀 블록체인이란?

정보를 블록이라고 하는 단위로 저장하여 저장된 블록들을 체인형태로 묶은 저장 기술입니다.

✓ 해시함수(Hash Function)

임의의 길이의 데이터를 고정된 길이의 데이터로 매핑하는 함수입니다.

  • 해시, 해시 값, 해시 코드 = 해시 함수에 의해 얻어지는 값
  • 데이터를 X, 해시함수를 H라고 표기할 때 해시를 H(X)로 표기
  • 산업에서 가장 널리 쓰이는 해시 함수는 SHA-2(e.g. SHA-256), SHA-3(e.g. Keccak)

Rules

  1. 하나의 데이터에서 오직 단 하나의 해시가 도출됩니다.
  2. 임의의 데이터 X와 Y가 있을 때
    • if X == Y then H(X) == H(Y)
    • if X != Y then H(X) != H(Y)
    • if H(X) == H(Y) then X == Y

✓ 블록, 블록헤더, 해시포인터

헤더에 저장되는 이전 블록의 해시를 통해서 정확하게 이전 블록이 무엇인지 알 수가 있습니다.

✓ 블록높이, 블록생성 주기

✓ 블록체인 네트워크, 노드

Peer-to-Peer Network(P2P Network)

✓ 합의(Consensus)

🎯 정리: 블록체인의 불변성과 투명성

  • 블록체인은 한명 이상의 참여자가 있는 네트워크에서 관리
  • 네트워크 참여자 전원은 모든 블록을 동일한 순서로 저장하여 모두 같은 블록체인을 유지
  • 자격이 있는 참여자는 블록을 제안할 수 있음, 블록 제안 자격은 네트워크마다 상이
  • 블록이 체인에 추가됨 = 참여자들이 새 블록을 자신의 체인에 추가
  • 따라서 새로운 블록이 체인에 추가되려면 네트워크의 합의가 필요함, 합의 방법은 네트워크마다 상이
    • 어느 한 주체가 단독으로 결정하는 구조가 아닌, 여러 참여자가 합의를 통해 결정하기 때문에 블록체인은 탈중앙화되어 있다고 표현
  • 참여자 전원은 이전 블록들을 저장하고 있으므로 새로운 블록의 무결성을 확인가능
  • 새롭게 제안되는 블록은 참여자들이 검증 및 합의할 수 있는 형태여야 함(투명성)
  • 한번 쓰여진 블록은 이전의 합의를 번복할 수 있지 않는 한 변경될 수 없음(불변성)
profile
Alex's Develog 🤔

0개의 댓글