NodeCrypto 도움말

Int to Bytes

카테고리: 데이터 변환 & 인코딩 · 노드 타입 ID: utility-int-to-bytes

부호 없는 정수를 바이트로 변환한다 (길이: 최소, 고정, 또는 Length 포트의 값)

개요

부호 없는 정수(Int, 0 이상, 임의 정밀도 bigint 포함)를 지정한 바이트 순서(빅엔디안 또는 리틀엔디안)와 길이 정책(최소 길이, 고정 바이트 길이, 또는 외부 Length 포트 길이)에 따라 바이트 배열(Uint8Array)로 직렬화한다.

사용 시점

파라미터 설정

파라미터 (ID)타입 및 기본값노출 조건설명 및 옵션
길이 방식
lengthMode
select
기본값: min
항상 노출 출력 바이트 길이를 결정하는 방식(auto = 최소 바이트 수, fixed = 파라미터로 지정한 고정 바이트 수, port = Length 입력 포트에서 받은 바이트 수)이다.
  • min: 최소 길이
  • port: 조건부 노출되는 Length 입력 포트에서 받은 바이트 길이로 출력한다.
  • fixed: 바이트 길이 파라미터에 지정한 고정 길이로 0 패딩하여 출력한다.
길이
length
number
기본값: 1
변수 참조 지원 ($var: int)
lengthMode가 fixed 일 때 lengthMode = fixed일 때 출력할 고정 바이트 길이(0 이상의 정수)이다.
엔디언
endian
select
기본값: big
항상 노출 바이트 정렬 순서(big = 최상위 바이트 먼저, little = 최하위 바이트 먼저)이다.
  • big: 빅엔디안(네트워크 바이트 순서, MSB가 인덱스 0).
  • little: 리틀엔디안(LSB가 인덱스 0).

포트 입출력 명세

포트 연결 규칙, 데이터 타입별 색상, 가변 포트 생성 방식은 포트 및 연결 문서를 참고한다.

입력 포트

포트 성격: 고정 입력 포트 (총 2개).

포트 이름포트 ID데이터 타입필수 여부노출 조건설명
Value in Int 필수 항상 노출
Length length Int 선택 항상 노출 출력할 목표 바이트 길이(Int, 0 이상)이다. lengthMode = port일 때만 노출되며 필수 입력이다.

출력 포트

포트 성격: 고정 출력 포트 (총 1개).

포트 이름포트 ID데이터 타입노출 조건설명
Bytes out Bytes 항상 노출

오류 케이스

실행 중 아래 조건이 발생하면 이 노드는 ERROR 상태가 되며, 출력 포트에 연결된 하위 노드는 실행되지 않는다.

오류 코드기본 엔진 메시지발생 조건
BYTES_INT_OVERFLOW 정수가 지정한 길이·부호로 표현되지 않는다 지정한 고정/포트 바이트 길이($L$바이트)로 입력 정수($ge 2^{8L}$)를 다 담을 수 없을 때 발생한다.
BYTES_INVALID_ARGUMENT 인자 값이 올바르지 않는다 입력 정수가 음수이거나, 길이가 음수/정수가 아닐 때, 또는 lengthMode = port에서 Length가 연결되지 않았을 때 발생한다.

활용 예시

정수를 4바이트 빅엔디안 카운터로 인코딩하기

정수 1을 00 00 00 01 바이트열로 변환한다.

  1. Int to Bytes의 엔디안을 big, 길이 지정 방식을 fixed, 바이트 길이를 4로 설정한다.
  2. 정수 1을 Int 포트에 연결하면 00 00 00 01이 출력된다.