ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 비트코인 mempool 이란 무엇인가?
    블록체인 2024. 9. 13. 22:11
    728x90
    반응형

    비트코인에서 **메모리 풀(Mempool)**은 아직 블록체인에 포함되지 않은 미확인 트랜잭션들이 임시로 저장되는 공간입니다. 노드들은 새로운 트랜잭션이 발생할 때 이를 즉시 블록에 추가하지 않고, 먼저 메모리 풀에 저장한 후 트랜잭션이 유효한지 검증하고, 채굴자들이 트랜잭션을 블록에 포함시킬 때까지 대기합니다.

    메모리 풀(Mempool)의 주요 기능

    1. 미확인 트랜잭션 저장: 트랜잭션이 네트워크에 전파되면 각 노드들은 트랜잭션을 확인하고 유효성을 검사한 후, 메모리 풀에 임시로 저장합니다.
    2. 채굴자들이 블록을 채울 때 활용: 채굴자들은 새 블록을 만들 때 메모리 풀에서 트랜잭션을 선택해 블록에 포함시킵니다. 수수료가 높은 트랜잭션이 우선적으로 선택되기 때문에, 사용자는 더 빠른 처리를 원할 경우 높은 수수료를 설정할 수 있습니다.
    3. 유효성 검증: 메모리 풀에 저장된 트랜잭션은 즉시 검증되지 않고 일단 임시 저장되며, 시간이 지남에 따라 이 트랜잭션들이 블록에 포함되거나 삭제됩니다. 유효하지 않거나 오래된 트랜잭션은 제거될 수 있습니다.
    4. 제한된 크기: 메모리 풀의 크기는 제한적이기 때문에, 너무 많은 트랜잭션이 있을 경우 수수료가 낮은 트랜잭션은 제거될 수 있습니다.

    메모리 풀 트랜잭션 흐름 예시

    1. 사용자 A가 B에게 0.5 BTC 송금: 사용자 A가 비트코인 네트워크에 트랜잭션을 생성하면, 해당 트랜잭션은 A의 노드에서 인접한 노드로 전파됩니다.
    2. 네트워크 상의 노드들에 트랜잭션이 전파: A의 트랜잭션은 네트워크를 통해 다른 노드들로 전파되며, 각 노드는 이 트랜잭션이 유효한지 검증한 후 메모리 풀에 저장합니다.
    3. 채굴자가 트랜잭션을 블록에 포함: 트랜잭션이 메모리 풀에 저장된 후, 채굴자들은 수수료가 높은 트랜잭션을 우선적으로 선택해 블록을 생성하고, 트랜잭션을 블록에 포함시킵니다.
    4. 블록에 트랜잭션 포함 후 메모리 풀에서 삭제: 트랜잭션이 블록에 포함되면, 그 트랜잭션은 메모리 풀에서 제거되고 블록체인에 영구히 기록됩니다.

     

    메모리 풀 예시

     

    트랜잭션 해시:   b3e1d1b72f22b3c9e462df5edb474e7b7bc0c5db
    보낸 주소:      1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa
    받는 주소:      1dice8EMZmqKvrGE4Qc9bUFf9PX3xaYDp
    송금 금액:       0.5 BTC
    수수료:         0.0001 BTC
    상태:           미확인 (메모리 풀에 있음)

     

     

    위의 예시에서는 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa 주소에서 1dice8EMZmqKvrGE4Qc9bUFf9PX3xaYDp 주소로 0.5 BTC를 송금하는 트랜잭션이 발생했으며, 이 트랜잭션은 아직 블록에 포함되지 않고 메모리 풀에 대기 중인 상태입니다.

    메모리 풀에서 수수료가 낮은 트랜잭션일수록 오래 대기할 가능성이 높고, 수수료가 높으면 블록에 포함될 가능성이 커집니다.

    728x90
    반응형
Designed by Tistory.