P2PKH 주소 (P2PKH Address)

고급블록체인수정일

P2PKH 주소는 해시된 공개 키를 포함하는 비트코인 결제 주소로, 송금인이 공개 키 해시로 지불하는 표준 pubkey 스크립트를 만들 수 있게 합니다. P2PKH는 “Pay-to-Public-Key-Hash”의 약자이며, 이 주소로 보낸 비트코인은 주소에 담긴 해시와 일치하는 공개 키와 그에 대응하는 개인 키의 유효한 서명을 함께 제시하는 사람만 사용할 수 있습니다.

주소의 구성

  • 공개 키 해시(HASH160): 공개 키에 SHA-256을 적용한 뒤 그 결과에 RIPEMD-160을 적용해 20바이트 해시를 얻습니다. 해시만 보고 원래 공개 키를 알아낼 수는 없습니다.
  • Base58Check 인코딩: 이 해시 앞에 버전 바이트(메인넷 0x00)를 붙이고 오류 검출용 체크섬을 더해 Base58로 인코딩합니다. 그래서 메인넷 P2PKH 주소는 숫자 1로 시작합니다.

작동 방식

  1. 수신자는 자신의 P2PKH 주소를 송금인과 공유합니다.
  2. 송금인의 지갑은 주소에서 공개 키 해시를 꺼내 출력의 잠금 스크립트(“pubkey 스크립트”)를 만듭니다. 이 스크립트는 “이 해시와 일치하는 공개 키와, 그 키로 검증되는 서명을 제시하라”는 조건입니다.
  3. 수신자가 이 비트코인을 쓸 때는 입력에 서명과 공개 키 전체를 넣습니다. 노드는 공개 키를 HASH160 해시해 주소의 해시와 같은지 확인하고, 그 공개 키로 서명을 검증합니다. 두 검사를 모두 통과해야 지출이 유효합니다.

공개 키는 남에게 보여도 되는 정보이므로, 공개 키를 아는 것만으로는 자금을 쓸 수 없습니다. 지출 권한을 주는 것은 개인 키로 만든 서명입니다.

P2PKH 주소의 장점

  • 광범위한 사용: P2PKH는 비트코인 초창기 시절의 표준 주소 형식이었으며 오늘날에도 널리 지원됩니다.
  • 간단하고 잘 이해됨: P2PKH의 개념과 구현은 비교적 간단합니다.
  • 공개 키 비공개: 주소에는 해시만 들어 있으므로, 실제 공개 키는 해당 자금을 사용하는 트랜잭션이 이루어질 때까지 공개되지 않습니다.

P2PKH 주소의 단점

  • 덜 효율적: P2PKH 트랜잭션은 SegWit 등 최신 주소 형식에 비해 크기가 크고 수수료도 더 많이 드는 편입니다.
  • 양자 취약성: 즉각적인 위협은 아니지만, 공개 키가 한 번 드러난 주소(재사용된 주소 등)는 향후 충분히 강력한 양자 컴퓨터의 공격에 취약할 수 있습니다.

본질적으로: P2PKH 주소는 공개 키의 “해시된” 버전을 사용하는 비트코인의 기본 주소 형식이며, 개인 키로 서명할 수 있는 보유자만 자산을 사용할 수 있도록 합니다.

이 글은 학습을 위한 일반 정보이며 투자 권유나 법률 자문이 아닙니다. 가상자산은 가격 변동이 크고 원금 손실 위험이 있습니다.