SIGHASH_ALL (SIGHASH_ALL)

기본 서명 해시 유형으로 서명 스크립트를 제외한 전체 트랜잭션에 서명하여 서명된 부분의 수정 방지.

SIGHASH_ALL은 실제로 무엇을 하는가?

간단히 말해서 “SIGHASH_ALL”은 서명 스크립트 자체를 제외한 트랜잭션의 모든 비트에 서명하고 있음을 네트워크에 알립니다. 다음과 같이 생각하십시오.

  • 귀하는 귀중한 패키지를 보내고 있습니다.
  • “SIGHASH_ALL”은 해당 패키지를 위조 방지 테이프로 감싸는 것과 같습니다.

이 “위조 방지 테이프”는 다음 사항의 변경을 방지합니다:

  1. 입력: 귀하의 비트코인이 어디에서 오는지.
  2. 출력: 귀하의 비트코인이 어디로 가는지.
  3. 트랜잭션 금액: 얼마나 많은 비트코인이 전송되는지.

이것이 왜 중요한가?

누군가가 귀하의 트랜잭션을 가로채서 수신자의 주소를 변경하거나 금액을 부풀리려고 한다고 상상해 보십시오. “SIGHASH_ALL”을 사용하면 네트워크는 즉시 이 수정된 트랜잭션을 거부합니다. 귀하의 자금과 마음의 평화는 안전합니다.

설명: 장점:

  • 최고의 보안: 입력, 출력 또는 트랜잭션 수수료의 변경으로 인해 서명이 무효화되므로 트랜잭션 위조에 대한 가장 강력한 보호를 제공합니다.
  • 광범위한 지원: 기본 유형이므로 다양한 지갑 및 비트코인 노드에서 광범위한 호환성을 누리고 있습니다.

단점:

  • 제한된 유연성: 발신자는 서명 후 특정 트랜잭션 부분을 수정할 수 없도록 허용할 수 없습니다. 예를 들어 수신자가 더 빠른 확인을 위해 트랜잭션 수수료를 늘리도록 허용하는 것과 같이 그러한 변경이 바람직할 수 있는 경우에도 마찬가지입니다.
  • 약간 더 큰 트랜잭션: 전체 트랜잭션 데이터에 서명하면 특정 부분만 해싱하는 다른 SIGHASH 유형에 비해 트랜잭션 크기가 약간 더 커집니다. 이는 트랜잭션 수수료를 약간 더 높일 수 있습니다.

사용 영역:

SIGHASH_ALL은 최대 보안 및 위조 방지가 가장 중요한 시나리오에서 일반적으로 사용됩니다.

  1. 표준 비트코인 트랜잭션: 대부분의 일상적인 트랜잭션에 대한 기본 및 권장 선택입니다.
  2. 다중 서명 트랜잭션: 트랜잭션에 관련된 모든 당사자가 정확히 동일한 조건에 동의했는지 확인합니다.
  3. 에스크로 서비스: 미리 정의된 조건이 충족될 때까지 자금을 보유하는 안전한 메커니즘을 제공합니다.

다음과 같이 생각하십시오:

SIGHASH_ALL은 배송 컨테이너(트랜잭션)의 위조 방지 씰과 같습니다. 기본적으로 다음과 같이 말합니다.

  • “거래자인 나는 이 컨테이너 안에 있는 모든 것을 승인하고 보장합니다.”
  • “내용물 또는 배송 정보(트랜잭션 세부 정보)의 변경 사항은 즉시 명확해집니다.”

다음은 간단한 용어로 작동 방식입니다.

  1. 특정 주소로 특정 금액의 비트코인을 보내고 있습니다.
  2. SIGHASH_ALL은 발신자, 수신자, 금액, 심지어 트랜잭션 수수료와 같은 모든 중요 세부 정보의 스냅샷을 찍습니다.
  3. 이 스냅샷은 개인 키(고유한 서명)로 암호화되어 봉인됩니다.

이제 누군가가 트랜잭션에 대해 아주 작은 세부 사항이라도 변경하려고 시도하면 봉인이 깨지고 트랜잭션은 네트워크에서 거부됩니다. 이렇게 하면 서명한 내용이 정확히 전달되도록 보장합니다.