📖 용어 🇰🇷 쉽게 설명 🔰 초보

📦 SegWit Segregated Witness

2017년 비트코인 업그레이드로, 서명("증인") 데이터를 트랜잭션 안에서 별도 구역으로 분리한 것. 덕분에 블록마다 여유가 생기고 오래된 버그 하나도 깔끔하게 고쳐졌어요.

💡
흔한 오해 — SegWit으로 비트코인 블록이 4MB가 됐다? 사실이 아니에요! 새 한도는 4,000,000 웨이트 유닛이지 4MB가 아니에요. 실제 블록은 보통 1.8MB 안팎이에요.
🧾기존 트랜잭션데이터+서명 한곳에📤트랜잭션 내용✍️증인(서명) 구역📦블록당 더 많이증인 데이터 할인
🧾 기존 트랜잭션은 모든 걸 한 곳에 담았어요 → ✍️ SegWit은 서명을 별도 증인 구역으로 분리해요 → 📦 블록마다 더 많은 트랜잭션이 들어가요. 같은 체인, 새 코인 없음.

🚚 쉽게 풀면 — 트럭과 트레일러

비트코인 트랜잭션에는 두 가지가 들어있어요: 실제 내용(어떤 코인이 어디로 가는지)과 유효성 증명(디지털 서명). 마치 배달 트럭에서 두꺼운 서명 영수증들이 짐 공간을 차지하는 것처럼요. SegWit은 그 영수증들을 뒤에 달린 가벼운 트레일러로 옮겨요. 영수증은 여전히 따라오며 배달을 증명하지만, 트럭(1MB 블록)에는 실제 짐이 훨씬 많이 실리게 됩니다.

⚖️ 새 한도 이해하기 — 메가바이트가 아닌 웨이트

SegWit은 기존 1MB 블록 크기 한도를 4,000,000 웨이트 유닛 한도로 바꿨어요. 핵심은 두 종류의 데이터를 다르게 계산한다는 점이에요.

데이터 종류비용설명
📤 일반 데이터4 웨이트 유닛 / 바이트트랜잭션이 하는 일
✍️ 증인 데이터1 웨이트 유닛 / 바이트서명 — 75% 할인

📊 이 할인 덕분에 블록당 더 많은 트랜잭션이 들어가요. 실질 처리 용량은 약 1.7~2배로 늘어났고, 꽉 찬 블록도 실제 데이터 기준으로는 1.8MB 안팎이에요.

🐛 고쳐진 버그 — 트랜잭션 가변성

SegWit 이전에는 트랜잭션 ID(TXID)를 계산할 때 서명 데이터도 포함됐어요. 누군가 서명을 살짝 바꾸면 TXID가 달라지면서, 그 트랜잭션을 추적하던 소프트웨어를 혼란에 빠뜨릴 수 있었죠. 이를 트랜잭션 가변성이라고 해요. SegWit은 TXID를 비증인 데이터만으로 계산하도록 바꿔 이 문제를 해결했어요. 바로 이 수정 덕분에 라이트닝 네트워크와 같은 레이어 2 시스템이 안정적으로 돌아갈 수 있게 됐어요.

🔁 왜 아무것도 안 깨졌나 — 소프트 포크

SegWit은 하위 호환 소프트 포크(BIP 141) 방식으로 적용됐어요. 업그레이드하지 않은 노드도 계속 작동했고, 서명 데이터만 제거된 채로 수신하면 그만이었죠. 새 코인도, 체인 분리도 없었어요. 2017년 8월 9일에 잠금(lock-in)되고, 약 2주 뒤 블록 481,824쯤에서 적용됐어요. 비교해 보고 싶다면 하드 포크가 어떻게 다른지 살펴보세요.

🏷️ 초보자가 SegWit을 만나는 곳 — 주소 형식

SegWit은 주로 지갑 주소 형식에서 체감돼요. SegWit 주소를 고르면 증인 데이터가 할인되기 때문에 수수료가 줄어드는 경우가 많아요.

  • 3️⃣ Nested SegWit3으로 시작하는 P2SH 주소; 구형이지만 지원 범위가 넓어요
  • 🔤 Native SegWitbc1q로 시작하는 bech32 주소; 보통 수수료가 가장 낮아요
  • 🌿 Taprootbc1p로 시작하는 bech32m 주소; Taproot는 SegWit v0의 기반 위에 만들어져 있어요

❓ 자주 묻는 질문

SegWit으로 비트코인 블록 크기가 4MB가 된 건가요?
아니요. 새 한도는 4,000,000 웨이트 유닛이지 4MB가 아니에요. 실제 트랜잭션은 일반 데이터와 증인 데이터가 섞여 있어서, 꽉 찬 블록도 실제 데이터 기준으로는 보통 1.8MB 안팎에 머물러요.
SegWit이 새 코인을 만들거나 체인을 분리한 건가요?
아니요. SegWit은 하위 호환 소프트 포크라서 업그레이드하지 않은 노드도 계속 작동했고, 새 코인이나 별도 체인이 생기지 않았어요. 비트코인 캐시는 당시 확장성 논쟁에서 비롯된 별개의 하드 포크로, SegWit 자체와는 달라요.
SegWit을 쓰려면 내가 뭔가 해야 하나요?
지갑에서 SegWit 주소를 고르면 거의 끝이에요. 네이티브 SegWit 주소는 'bc1q'로 시작하고, 증인 데이터가 할인되기 때문에 보통 수수료가 가장 낮아요. 구형 주소도 계속 쓸 수 있지만 수수료가 조금 더 나와요.

🔗 관련 용어·코인