Blockchain

How Do Blockchains Work

읽는 시간: 2

블록체인 작동 원리#

이 문서에서는 블록체인의 프로세스와 기술 자체를 알기 쉬운 데모를 통해 설명합니다.

1. 해시 함수의 이해#

해시는 모든 데이터를 식별하는 고유한 고정 길이 문자열입니다. 데이터를 해시 함수에 입력하면 해시가 생성됩니다. 여기서 사용하는 해시 알고리즘은 SHA-256입니다.

해시 함수의 작동 방식#

  • 문자를 숫자로 변환
  • 숫자를 고정 길이 "문자열" 또는 "해시"로 변환
  • 예: "Patrick Collins"는 7e5b5a1a6b80e2908b534dd5728a998173d502469c37121dd63fca283068077c로 변환됨

중요: 이더리움은 SHA-256과 정확히 같지는 않지만 SHA 계열에 속하는 자체 해시 알고리즘(Keccak256)을 사용합니다.

입력 데이터의 양에 관계없이 생성되는 해시 문자열의 길이는 항상 일정합니다.

2. 블록의 이해#

블록체인은 "블록"들의 집합입니다.

블록의 구성 요소#

  • 블록 번호(Block): 블록의 순서
  • 논스(Nonce): 채굴을 통해 찾아낸 값
  • 데이터(Data): 블록에 저장된 정보

이 세 가지가 해시 알고리즘을 통과하여 해당 블록의 해시를 생성합니다. 데이터에 작은 변화만 있어도 완전히 다른 해시가 생성되어 블록이 무효화됩니다.

채굴(Mining)이란?#

채굴은 특정 패턴(예: 4개의 0으로 시작)을 따르는 해시를 생성하는 허용 가능한 값을 찾기 위한 계산적 시행착오 과정입니다. 이 기준을 만족하는 값을 **논스(nonce)**라고 합니다.

채굴자가 해결해야 하는 문제나 기준은 블록체인마다 다르지만 개념은 동일합니다.

3. 블록체인의 본질적 아름다움: 불변성#

블록체인은 본질적으로 블록들의 연속체입니다. 각 블록은 다음으로 구성됩니다:

  • 블록 번호
  • 논스
  • 데이터
  • 이전 블록의 해시

불변성의 의미#

체인의 어떤 블록에서든 데이터를 변경하면, 다시 계산(재채굴)할 때까지 이후의 모든 블록이 무효화됩니다.

제네시스 블록(Genesis Block): 블록체인의 첫 번째 블록입니다.

4. 탈중앙화된 분산#

단일 주체가 블록체인을 통제한다면, 원하는 데이터를 변경하고 후속 블록을 재채굴하거나 재검증할 수 있습니다. 이는 좋지 않습니다.

탈중앙화 분산의 도입#

블록체인의 힘의 핵심은 탈중앙화 또는 분산된 특성에 있습니다.

  • 여러 주체 또는 "피어(peer)"가 블록체인 기술을 실행합니다
  • 각 피어는 동등한 비중과 권한을 가집니다
  • 서로 다른 피어들이 실행하는 블록체인 간에 차이가 있을 경우(변조 등으로 인해), 네트워크의 다수가 동의하는 다수 해시가 승리합니다
  • 다수와 동의하지 않는 노드는 효과적으로 네트워크를 포크(fork)하여 자체 히스토리를 계속 유지합니다

5. 블록체인과 트랜잭션의 상호작용#

지금까지는 블록에 전달되는 데이터를 임의의 텍스트 문자열로 간주했지만, 실제로 이 데이터는 무엇이든 될 수 있습니다.

토큰 및 코인베이스 섹션의 데모에서 각 블록이 여러 트랜잭션으로 구성되고, 이들이 모두 함께 해시된다는 것을 볼 수 있습니다. 이러한 트랜잭션 중 하나라도 편집하면 체인이 무효화됩니다!

요약#

블록체인을 이해하는 핵심은 해시 개념입니다:

  • 원본 데이터와 본질적으로 연결된 고유한 고정 길이 문자열
  • 탈중앙화의 중요성
  • 불변성 개념이 시스템 보안에 기여하는 방식

모든 트랜잭션, 블록, 그리고 전체 블록체인은 해시의 개념을 이해하는 것에서 시작됩니다.