Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Translate ko/ibc/CANONICAL_ENCODING.md #31

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions ko/ibc/CANONICAL_ENCODING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
이 문서는 IBC 프로토콜에서 체인간 검증을 위해 알려진 방식으로 인코딩해야 하는 자료 구조에 대한 표준 인코딩 알고리즘을 정의합니다.

인코딩 함수는 입력 값을 byte array로 반환합니다.

### 원시 타입 (Primitive types)

만약 값이 원시 타입이라면, 태그 없이 인코딩됩니다.

#### 숫자

프로토콜은 부호가 없는 정수만을 사용합니다.

`uint32`와 `uint64` 타입은 부호를 나타내는 bit 없이 정해진 크기의 little-endian으로 인코딩됩니다.

#### Booleans

부울 값은 하나의 bit로 인코딩됩니다. 거짓(false)는 `0x00`이고 참(true)는 `0x01`입니다.

#### Bytes

Byte array은 길이에 대한 접두사(prefix) 또는 태그 없이 그대로 인코딩됩니다.

### 구조 타입 (Structured types)

필드가 있는 구조 타입은 알맞은 필드를 가진 proto3 `message`로 인코딩됩니다.

표준 `.proto` 파일은 사양과 함께 제공됩니다.