블록 체인
- 분산 데이터베이스 기술. 중앙에 서버를 두지 않고 네트워크 사용자간 (p2p) 정보 공유를 가능하게 해주는 기술
- 데이터를 블록 단위로 묶어 암호화 한다. 다음과 같은 정보가 담겨있다
- 이전 블록의 암호화 해시
- 타임 스탬프
- 트랜잭션 데이터 : 네트워크 내에서 발생하는 개별 거래에 대한 정보
- 블록체인은 모든 유저가 공유한다는 특성 때문에 다음과 같은 장점이 존재한다
- 블록체인의 주요 특징
- 분산 시스템 : 네트워크 참여자들 간의 데이터를 공유하고 검증한다. 각 참여자들은 블록체인의 전체 사본을 가지고 있다.
- 블록체인에 기록된 데이터는 네트워크 참여자들의 합의가 필요하므로 기록된 데이터에 대한 변경이 매우 어렵다
- 블록체인을 해킹해서 데이터를 변경하기 위해서는 유저 1명이 아니라 과반 이상의 유저를 해킹해서 각 유저가 가지고 있는 모든 블록체인의 내용을 수정해야 한다.
- 합의 메커니즘
- 네트워크 참여자들이 데이터 유효성에 동의하기 위한 합의 메커니즘이 존재한다
- 작업 증명 : 새로운 블록을 생성하기 위해 해시 키를 풀어내고 생성하는 과정 (보통 수학적인 문제를 해결한다) -> 에너지 소비가 많고, 51% 공격에 대한 저항성이 낮음.
- 지분 증명 : 네트워크 참여자들이 가지고 있는 토큰의 양에 비례하여 새로운 블록을 생성할 수 있는 권한이 주어짐. -> 에너지 소비가 적고, 51% 공격에 대한 저항성이 높음
- 많은 블록체인 네트워크가 지분 증명으로 옮겨가는 추세
- 투명성 : 모든 네트워크 참여자들에게 블록에 대한 내용이 공개되며, 누구나 해당 내용을 확인할 수 있음.
- 보안 : 암호화 기술을 사용하여 데이터의 무결성과 기밀성 보장. 각각의 블록은 이전 블록의 해시를 포함하므로, 데이터 변조가 매우 어려움.
- 블록체인의 활용 분야
- 암호화폐 및 결제 시스템
- 탈 중앙화 금융
- 공급망 관리
- 의료 및 헬스케어
- 지적재산권 관리
- 디지털 신원 및 인증
- 게임 및 엔터테이먼트
- 사물인터넷 보안
- 블록체인의 단점
- 확장성 문제
- 노드 간 합의 과정으로 인해 처리 속도가 느림
- 블록 크기, 생성 주기 등으로 인해 초당 처리할 수 있는 수가 제한됨.
- 대규모 사용자 수용을 위한 확장성 문제
- 높은 에너지 소비
- 작업 증명 합의 알고리즘의 경우 많은 에너지 소비 (소위 채굴 문제)
- 개인정보 및 프라이버시 우려
- 모든 데이터가 공개되는 투명성으로 인해 프라이버시 부분의 보장이 낮아질 수 있음
- 불가역성 및 오류 수정의 어려움
- 이미 기록되어 생성된 블록의 경우, 해당 블록의 데이터 수정이 어려움
- 버그, 해킹 등으로 인한 데이터 손실 시 복구가 어려움
- 상호 운용성 부족
- 여러 블록체인이 존재하나, 해당 플랫폼 간 상호 운영성 부족.
- 기술 복잡성 및 유지 보수 비용
- 복잡한 기술 스택으로 인해 개발 및 유지보수에 높은 비용 소모