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 ics-023-vector-commitments/README.md #15

Open
wants to merge 9 commits into
base: master
Choose a base branch
from

Conversation

gitlocalize-app[bot]
Copy link

stage: 초안
required-by: 2, 24
category: IBC/TAO
author: 'Christopher Goes '
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

저자 이메일!

## 개요

*Vector commitment*은 벡터의 색인 및 요소에 대해 색인화 된 벡터 및 짧은 멤버쉽 및 / 또는 비회원 증명에 대한 일정한 크기의 구속력있는 Commitment을 생성하는 구성입니다.
이 사양은 IBC 프로토콜에 사용 된 Commitment 구성에 필요한 기능과 특성을 열거합니다. 특히, IBC에서 활용되는 약속은 *위치적으로 구속력* 이 있어야합니다: 반드시 특정 위치에서 존재 혹은 비존재를 증명할 수 있어야 합니다.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

위 문장이랑 같은 문단에 써주세요!


## 개요

*Vector commitment*은 벡터의 색인 및 요소에 대해 색인화 된 벡터 및 짧은 멤버쉽 및 / 또는 비회원 증명에 대한 일정한 크기의 구속력있는 Commitment을 생성하는 구성입니다.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
*Vector commitment*벡터의 색인 및 요소에 대해 색인화 된 벡터 및 짧은 멤버쉽 및 / 또는 비회원 증명에 대한 일정한 크기의 구속력있는 Commitment을 생성하는 구성입니다.
*Vector commitment*항목들의 순서있는 벡터 또는 벡터 내 순서와 항목들에 대한 짧은 멤버십 혹은 비멤버십 증명에 상수 크기의 binding commitment를 생성하는 것입니다.

## 개요

*Vector commitment*은 벡터의 색인 및 요소에 대해 색인화 된 벡터 및 짧은 멤버쉽 및 / 또는 비회원 증명에 대한 일정한 크기의 구속력있는 Commitment을 생성하는 구성입니다.
이 사양은 IBC 프로토콜에 사용 된 Commitment 구성에 필요한 기능과 특성을 열거합니다. 특히, IBC에서 활용되는 약속은 *위치적으로 구속력* 이 있어야합니다: 반드시 특정 위치에서 존재 혹은 비존재를 증명할 수 있어야 합니다.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
이 사양은 IBC 프로토콜에 사용 된 Commitment 구성에 필요한 기능과 특성을 열거합니다. 특히, IBC에서 활용되는 약속은 *위치적으로 구속력* 이 있어야합니다: 반드시 특정 위치에서 존재 혹은 비존재를 증명할 수 있어야 합니다.
이 사양은 IBC 프로토콜에 사용 된 Commitment 구성에 필요한 기능과 특성을 열거합니다. 특히, IBC에서 활용되는 commitment는 *위치적으로 구속력* 이 있어야합니다: 반드시 특정 위치에서 값의 존재 혹은 비존재를 증명할 수 있어야 합니다.


### 정의 (Definitions)

Vector commitment의 *관리자(manager)*는 Commitment의 아이템을 추가하거나 삭제할 수 있는 행위자 입니다. 일반적으로 블록체인의 상태 머신입니다.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Vector commitment의 *관리자(manager)*는 Commitment의 아이템을 추가하거나 삭제할 수 있는 행위자 입니다. 일반적으로 블록체인의 상태 머신입니다.
Vector commitment의 *관리자(manager)*는 Commitment의 아이템을 추가하거나 삭제할 수 있고 그 책임이 있는 행위자 입니다. 일반적으로 블록체인의 상태 머신입니다.

type batchVerifyNonMembership = (root: CommitmentRoot, proof: CommitmentProof, paths: Set<CommitmentPath>) => boolean
```

아래 함수들은 정의될때 반드시 `verifyMembership`와 `verifyNonMembership`의 결합 조합과 같은 결과를 반환해야 합니다.(효율은 다를 수 있습니다.)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
아래 함수들은 정의될때 반드시 `verifyMembership``verifyNonMembership`결합 조합과 같은 결과를 반환해야 합니다.(효율은 다를 수 있습니다.)
아래 함수들은 정의된다면, 반드시 `verifyMembership``verifyNonMembership`연결된 모음과 같은 결과를 반환해야 합니다. (효율은 다를 수 있습니다.)


### 속성 & 불변 (Properties & Invariants)

Commitments는 반드시 *comlete*, *sound*, 그리고 *position binding*를 갖춰야 합니다. 이런 속성들은 관리자(manager), 증명자(prover), 검증자(verifier)에 의해(그리고 종종 정해진 알고리즘) 승인된 보안 매개변수 `k`와 관련하여 정의됩니다.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Commitments는 반드시 *comlete*, *sound*, 그리고 *position binding*를 갖춰야 합니다. 이런 속성들은 관리자(manager), 증명자(prover), 검증자(verifier)에 의해(그리고 종종 정해진 알고리즘) 승인된 보안 매개변수 `k`와 관련하여 정의됩니다.
Commitments는 반드시 *comlete*, *sound*, 그리고 *position binding*를 갖춰야 합니다. 이런 속성들은 관리자(manager), 증명자(prover), 검증자(verifier)에 동의된 보안 매개변수 `k` (그리고 commitment 알고리즘에 일정한 값일 것이다.)와 관련하여 정의됩니다. (보통 보안 매개변수 `k`는 commitment 알고리즘에 대해 상수입니다.)


Commitment 증명은 반드시 *완성*되어야 합니다: commitment에 포함된 경로 => 값 대응관계는 그것이 포함됐다는 것이 항상 증명될 수 있어야 하며, commitment에 포함되지 않은 경로는 그것이 제외됐다는 것이, 보안 매개변수 `k`에 의해 무시되는 경우를 제외하고 항상 증명될 수 있어야 합니다.

commitment `acc`에 포함된 모든 접두사 `prefix`와 모든 경로 `path`, 마지막으로 설정된 값 `value`에 대하여.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
commitment `acc`에 포함된 모든 접두사 `prefix`와 모든 경로 `path`, 마지막으로 설정된 값 `value`대하여.
commitment `acc`에 포함된 모든 접두사 `prefix`와 모든 경로 `path`, 마지막으로 설정된 값 `value`대해,


#### Soundness

Commitment 증명은 반드시 *합리적(sound)*여야 합니다: 보안 매개변수 `k`에 의해 무시되는 경우를 제외하고, Commitment에 포함되지 않은 경로 =>값 대응관계는 반드시 포함되었다고 증명되거나, commitment에 포함된 경로가 제외더았다고 증명되어서는 안됩니다.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Commitment 증명은 반드시 *합리적(sound)*여야 합니다: 보안 매개변수 `k`에 의해 무시되는 경우를 제외하고, Commitment에 포함되지 않은 경로 =>값 대응관계는 반드시 포함되었다고 증명되거나, commitment에 포함된 경로가 제외더았다고 증명되어서는 안됩니다.
Commitment 증명은 반드시 *합리적(sound)*여야 합니다: 설정 가능한 보안 매개변수 `k`에 의해 무시되는 경우를 제외하고, Commitment에 포함되지 않은 경로 =>값 대응관계가 포함되었다고 증명될 수 없거나, commitment에 포함된 경로가 제외되었다고 증명될 수 없습니다.


#### Position binding

Commitment 증명은 반드시 *position binding*여야 합니다: 어떤 commitment 경로는 반드시 하나의 값(value)로만 대응될 수 있고, 하나의 commitment 증명은 보안 매개변수 k에 의해 무시되는 경우를 제외하고, 같은 경로가 다른 값을 열었다는 것을 증명할 수 없습니다.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Commitment 증명은 반드시 *position binding*여야 합니다: 어떤 commitment 경로는 반드시 하나의 값(value)로만 대응될 수 있고, 하나의 commitment 증명은 보안 매개변수 k에 의해 무시되는 경우를 제외하고, 같은 경로가 다른 값을 열었다는 것을 증명할 수 없습니다.
Commitment 증명은 반드시 *position binding*여야 합니다: 어떤 commitment 경로는 반드시 하나의 값(value)로만 대응될 수 있고, 하나의 commitment 증명은 보안 매개변수 k에 의해 무시되는 경우를 제외하고 같은 경로는 다른 값이 가능함을 증명할 수 없습니다.

@hihiboss
Copy link
Member

@boohyunsik 리뷰 반영 부탁드립니다!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
6 participants