common/hexutil 패키지

hexutil.go

  • 0x 접두사가 있는 16진수 인코딩을 구현합니다.
  • 이더리움 RPC API에서 바이너리 데이터를 JSON 형식의 페이로드로 전송하는 데 사용됩니다.

💡 encoding/hex 패키지와의 차이점은 0x 접두사가 필수적으로 붙는다는 점입니다.

인코딩 규칙

  • 모든 16진수 데이터는 "0x" 접두사를 가져야 합니다.

  • 바이트 슬라이스의 경우 16진수 데이터는 짝수 길이여야 합니다. 빈 바이트 슬라이스는 "0x"로 인코딩됩니다.

  • 정수는 최소한의 숫자를 사용하여 인코딩됩니다.(앞에 0이 붙지 않은 숫자). 그들의 인코딩은 홀수 길이일 수 있습니다. 숫자 0은 "0x0"으로 인코딩됩니다.


json.go

  • 이더리움 RPC API에서 JSON 형식의 페이로드를 읽고 쓰는 데 사용되는 유틸리티 함수들을 정의합니다.
  • JSON 형식으로 마샬링/언마샬링을 위한 Bytes, Big, U256, Uint64, Uint같은 별도의 타입들을 정의합니다.

사용된 외부 패키지