목차
1. 블록체인
2. 트랜잭션
3. 노드
4. 원장
5. 중앙화와 탈중앙화
블록체인
디지털 기술 중 하나로, 정보를 안전하게 저장하고 공유하는 방법이다.
블록이라는 작은 단위로 정보를 저장하고 이를 연결하여 체인으로 만들어서 사용한다.
한 블록의 정보가 변조되어도, 이전 블록과 이후 블록이 연결되어 있기 때문에 변경된 내용을 발견할 수 있다. 블록체인에 저장된 정보는 정보의 당사자가 아닌 제3자도 열람이 가능하고, 수정하거나 삭제하는 것은 불가능하다.
트랜잭션
트랜잭션(Transaction)은 블록체인에서 데이터를 처리하고 저장하는 기본 단위이다.
블록체인 네트워크에 참여한 참가자들 중에 2개 이상의 참가자 간에 일어나는 거래를 의미한다.
각각의 노드에서 생성되고, 다른 노드에게 전파되어 네트워크 전에체 거래 정보를 전달한다.
트랜잭션의 일반적인 과정
- 트랜잭션 생성
트랜잭션은 보내는 사람, 받는 사람, 전송 금액등의 정보를 포함한다.
이 정보는 블록체인에서 공개되기 때문에 누구나 볼 수 있음. 개인정보와 같은 민감 정보는 포함되지 않는다. - 트랜잭션 검증
트랜잭션이 생성된 후 다른 노드들에 의해 해당 트랜잭션의 유효성을 검사한다. 검증 과정에서는 트랜잭션에 포함된 정보가 모두 유효한지를 확인하는 과정이다. 예를 들면 보내는 사람의 계좌에 잔액, 받는 사람의 주소 등 유효한 정보인지를 확인한다. - 트랜잭션 추가
트랜잭션이 유효하다고 검증이 되면, 해당 트랜잭션은 블록체인에 추가된다. 이때 블록체인에서 채굴(Mining) 과정을 거쳐 새로운 블록을 생성하고, 해당 블록에 트랜잭션을 추가한다. - 거래 완료
트랜잭션이 추가된 이후에 해당 거래가 완료된다. 트랜잭션의 수수료는 채굴자에게 지급이 된다.
트랜잭션 더블 스팬딩(Double Spending)
더블 스팬딩(Double Spending) : 이중지불은 블록체인에서 가장 큰 문제 중 하나로, 동일한 코인을 두 번 이상 사용하는 것을 말한다.
A가 B에게 일정 코인을 전송했다가, 취소하고, 그 코인을 다시 C에게 전송하는 것이다.
중앙화 시스템에서는 발생하지 않지만, 블록체인은 분산 네트워크를 기반으로 하기 때문에 더블 스팬딩 문제가 생길 수 있고, 이를 막기 위해서 여러 보안 기술을 이용하여 더블 스팬딩을 방지하였는데, 가장 기본적인 방법이 트랜잭션 검증 과정이다.
트랜잭션 검증 과정에서 해당 트랜잭션이 유효한지를 확인한다.
이때 트랜잭션의 중복 사용 여부도 확인하여, 더블 스팬딩을 방지할 수 있다.
블록체인에서의 노드(Node)
블록체인 네트워크에 참여하며, 블록체인 데이터를 저장하고, 검증하는 컴퓨터 또는 디바이스를 의미한다. 쉽게 설명하면, 하나의 서버라고 할 수 있다.
즉, 노드는 블록체인 네트워크의 구성원이며, 블록체인의 분산 네트워크를 구성하는 요소이다.
노드의 역할
- 데이터 저장
블록체인의 모든 데이터를 저장한다. 블록체인에 연결된 모든 노드에 분산저장 되며, 데이터를 안전하게 보관한다. - 데이터 검증
데이터를 검증하여 새로운 블록이 추가될 때, 블록이 유효한지 여부를 확인한다. - 트랜잭션 전파
새로운 트랜잭션이 발생하면, 이를 다른 노드에 전파한다. 이를 통해 블록체인 네트워크는 실시간으로 거래 정보를 공유하며, 이를 기반으로 새로운 블록을 생성한다. - 블록 생성
일부는 새로운 블록을 생성하는 채굴자(Miner) 역할을 한다. 채굴자는 블록체인의 작업 증명(Proof of Work) 과정을 통해 새로운 블록을 생성한다. - 노드 간 통신
블록체인 내에서 상호작용할 수 있도록 다른 노드와 통신을 한다. 이를 통해 블록체인 네트워크는 분산된 구조를 유지할 수 있다.
원장
일반적으론 회계, 재무 쪽에서 사용하는 개념으로, 기록이나 거래 정보를 저장하고, 추적하는 장부를 의미한다.
분산 원장
블록체인에서의 원장은 거래정보를 분산 네트워크에 저장하고, 블록으로 묶어서 체인 형태로 연결한다.
그래서 블록체인은 분산 원장 기술로 분류된다.
모든 거래 정보는 모든 노드에 저장되고, 이를 통해 블록체인은 위조나 조작이 불가능한 안전한 데이터베이스로 유지된다.
또한, 거래 정보뿐 아니라 거래 정보가 생성된 시간, 거래 참여자들의 주소, 거래 금액 등 다양한 정보를 포함한다.
중앙화와 탈중앙화
중앙화는 하나의 중앙 관리자가 모든 결정을 내리고, 모든 기능을 제어하는 시스템이다. 일반적으로 중앙 서버나 데이터베이스가 있으며, 이를 통해 모든 사용자가 접근하고, 모든 데이터가 중앙화되어 관리된다.
탈중앙화는 중앙화의 반대의 개념으로, 하나의 중앙 관리자가 아닌 분산 시스템이다. 탈중앙화된 시스템에서는 데이터와 기능이 분산되어 여러 노드에 저장되고, 처리된다. 이를 통해 중앙 서버나 데이터베이스에 대한 의존성이 줄어들고, 보안과 신뢰성이 향상된다.
탈중앙화를 위해서 데이터가 입력되면 전체 노드에 전달이 되어야 한다.
전달하는 과정에서 일반적으로 P2P 네트워크 구조를 사용한다.
'💠BlockChain💠' 카테고리의 다른 글
블록체인 일반적인 블록 만들기 (2) - 비트코인 (0) | 2023.04.28 |
---|---|
UTXO 모델의 기본적인 개념 (0) | 2023.04.27 |
블록체인 일반적인 블록 만들기 - 비트코인 (0) | 2023.04.26 |
블록체인 제네시스 블록 만들기 - 비트코인 (0) | 2023.04.26 |
비트코인과 블록체인의 기본적인 개념 (0) | 2023.04.17 |
댓글