-
블록체인 아키텍처에서 핵심 컴포넌트개발 일지/Blockchain 2023. 8. 4. 10:58반응형
블록체인 아키텍처에서 핵심 컴포넌트는 다음과 같습니다:
- 노드(Node) : 블록체인 아키텍처에 참여하는 '사용자' 또는 '컴퓨터' 단말
- 트랜잭션(Transaction) : 블록체인 시스템의 가장 작은 구성 블록 (레코드, 정보 등)
- 블록(Block) : 네트워크에서 모든 노드에 배포되는 트랜잭션의 묶음으로 사용되는 데이터 구조
- 체인(Chain) : 특정 순서의 블록 시퀀스
- 채굴(Miners) : 블록체인 구조에 무언가 추가하기 전에 블록 검증 프로세스를 수행하는 특정 노드
- 합의(Consensus; consensus protocol) : 블록체인 작업을 수행하기 위한 일련의 규칙 및 배열
블록체인 내 모든 새로운 레코드 및 트랜잭션은 새로운 블록의 생성을 의미합니다. 각 레코드는 진위를 보장하기 위해 검증되고 디지털서명이 이루어집니다. 이 블록은 네트워크에 추가하기 전에 시스템의 대다수 노드에서 확인되어야 합니다.
각 블록체인 "블록"은 1) 데이터, 2) 블록의 해시, 3) 이전 블록의 해시 로 구성됩니다.
각 블록에 저장되는 데이터는 블록체인의 종류에 따라 달라집니다. 예를 들어 비트코인 블록체인 구조에서 블록은 '코인의 양', '수신인', '발신인'에 대한 데이터가 포함됩니다.
해시는 지문과 같은데, 각 블록의 해시는 암호화 해시 알고리즘(SHA 256)으로 생성됩니다. 이를 통해 블록체인 구조에서 각 블록을 쉽게 구별할 수 있습니다. 블록이 생성되는 순간, 자동적으로 해시에 더해지고 블록의 변경사항이 있을 때도 해시에 영향을 줍니다. 간단히 말해서, 해시는 블록의 모든 변화를 감지하는 기능을 합니다.
블록의 마지막 요소는 이전 블록의 해시입니다. 이는 블록체인을 만들고 블록체인 아키텍처의 보안에 중요한 요소가 됩니다.
이론적으로 강력한 컴퓨터 프로세서에 의해 모든 블록을 조정할 수는 있습니다. 하지만 작업증명('proof-of-work')를 통해 이를 해결할 수 있습니다. 이를 통해 사용자는 새 블록 생성 프로세스의 속도를 늦출 수 있습니다.
비트코인 아키텍처에서, 요구되는 작업증명(proof-of-work)를 결정하고 체인에 새 블록을 추가하는데 약 10분이 소요됩니다. 이 작업은 비트코인 블록체인 구조 내의 특수 노드(채굴자)에 의해 수행됩니다. 그리고 채굴자(Miners)는 보상으로 블록의 거래 수수료를 가져갑니다.
블록체인의 p2p 네트워크에 참여하는 각각의 새로운 사용자(노드)는 시스템의 전체 사본을 받습니다. 새로운 블록이 생성되면, 블록체인 시스템 을 통해 각 노트에 전달됩니다. 그러면 각 노드는 해당 블록을 검증하고 정보가 정확한지 체크합니다. 검증이 통과되면, 해당 블록은 로컬 블록체인의 각 노드에 추가됩니다.
블록체인 아키텍처의 모든 노드들은 합의 프로토콜(consensus protocol)을 생성합니다. 합의 시스템은 일련의 네트워크 규칙이며, 모든 사람이 준수하면 블록체인 내에서 자체적으로 시행됩니다.
요약해서, 모든 블록을 변조하고, 각 블록의 작업 증명을 다시 계산하고, p2p 네트워크에서 모든 노드의 50% 이상을 제어해야 하기 때문에 블록체인 시스템을 조작하는 것은 불가능합니다.
반응형'개발 일지 > Blockchain' 카테고리의 다른 글
ERC란? (0) 2023.08.24 블록체인 스토리지 (0) 2023.08.24 프라이빗 블록체인 아키텍처 (0) 2023.08.07 블록체인 아키텍처: 구조 (0) 2023.08.01 Blockchain 들어가기 (feat. github developer-roadmap) (0) 2023.07.27