mirror of
https://github.com/logos-storage/logos-storage-docs.git
synced 2026-01-02 13:23:07 +00:00
docs: update korean translation (#71)
This commit is contained in:
parent
23dbfddc12
commit
9b03f04c05
@ -1,6 +1,6 @@
|
||||
# 보안
|
||||
|
||||
Codex와 <a href="https://free.technology/" target="_blank">자유 기술 연구소</a> 및 관련 기관에서는 보안을 매우 중요하게 생각합니다.
|
||||
Codex와 <a href="https://free.technology/" target="_blank">IFT</a> 및 관련 기관에서는 보안을 매우 중요하게 생각합니다.
|
||||
|
||||
보안 관련 사고는 <a href="mailto:security@free.technology">security@free.technology</a>를 통해 신고해 주시기 바랍니다.
|
||||
|
||||
|
||||
20
ko/index.md
20
ko/index.md
@ -4,30 +4,30 @@ layout: home
|
||||
|
||||
hero:
|
||||
name: Codex
|
||||
text: 분산형 데이터 저장 플랫폼
|
||||
tagline: Codex는 세계 공동체가 검열의 위험 없이 가장 중요한 지식을 보존할 수 있도록 만들어진 내구성 있는 분산형 데이터 저장 프로토콜입니다.
|
||||
text: 탈중앙 데이터 스토리지 플랫폼
|
||||
tagline: Codex는 전 세계 커뮤니티가 검열에 대한 위험 없이 중요한 지식을 보존할 수 있도록 지원하는 지속 가능하고 탈중앙화된 데이터 스토리지 프로토콜입니다.
|
||||
actions:
|
||||
- theme: brand
|
||||
text: Codex란?
|
||||
link: /learn/what-is-codex
|
||||
link: /ko/learn/what-is-codex
|
||||
- theme: alt
|
||||
text: 빠른 시작
|
||||
link: /learn/quick-start
|
||||
link: /ko/learn/quick-start
|
||||
- theme: alt
|
||||
text: Join Codex Testnet
|
||||
link: /networks/testnet
|
||||
text: Codex 테스트넷 참여하기
|
||||
link: /ko/networks/testnet
|
||||
|
||||
features:
|
||||
- title: 학습
|
||||
details: Codex에 대해 자세히 알아보기
|
||||
link: /learn/what-is-codex
|
||||
link: /ko/learn/what-is-codex
|
||||
icon: 📚
|
||||
- title: 네트워크
|
||||
details: 저장소 운영자 또는 구매자로서 Codex 네트워크에 참여
|
||||
link: /networks/networks
|
||||
link: /ko/networks/networks
|
||||
icon: 🚦
|
||||
- title: 개발자
|
||||
details: Codex로 구축하기
|
||||
link: /developers/api
|
||||
details: Codex로 빌드하기
|
||||
link: /ko/developers/api
|
||||
icon: 🏗️
|
||||
---
|
||||
|
||||
@ -1,123 +1,95 @@
|
||||
# 설명 및 아키텍처
|
||||
|
||||
Codex는 web3 애플리케이션에 부패 및 검열 저항성을 제공하는 완전히 분산된 내구성 있는 데이터 저장 엔진을 구축하고 있습니다. 노드 운영자에게는 저장하는 데이터에 대한 타당한 부인 가능성을, 클라이언트에게는 최대 99.99%의 입증 가능한 내구성 보장을 제공하면서도 저장소와 대역폭 효율성을 유지합니다.
|
||||
Codex는 완전히 탈중앙화된 형태의 내구성 높은 데이터 저장 엔진을 구축하고 있으며, Web3 애플리케이션에 대해 손상 및 검열 저항성을 제공합니다. Codex는 저장된 데이터에 대해 호스트에게는 **그럴듯한 부인 가능성**(plausible deniability)을, 클라이언트에게는 최대 **99.99%의 입증 가능한 내구성 보장**을 제공함으로써 네트워크 참여자들을 근본적으로 보호합니다. 이 모든 기능은 저장 효율성과 대역폭 효율성도 유지하면서 구현됩니다.
|
||||
|
||||
These four key features combine to differentiate Codex from existing projects in the decentralised storage niche:
|
||||
다음의 네 가지 핵심 기능은 Codex를 기존의 분산 스토리지 프로젝트들과 차별화합니다:
|
||||
|
||||
- **Erasure coding:** Provides efficient data redundancy, which increases data durability guarantees.
|
||||
- **이레이저 코딩(Erasure coding):** 데이터 중복성을 효율적으로 제공하여 내구성 보장을 향상시킵니다.
|
||||
|
||||
- **ZK-based proof-of-retrievability:** For lightweight data durability assurances.
|
||||
- **제로 지식 기반 데이터 복구 증명(ZK-based proof-of-retrievability):** 가볍고 효율적인 데이터 내구성 검증을 가능하게 합니다.
|
||||
|
||||
- **Lazy repair mechanism:** For efficient data reconstruction and loss prevention.
|
||||
- **지연 복구 메커니즘(Lazy repair mechanism):** 효율적인 데이터 복구 및 손실 방지를 지원합니다.
|
||||
|
||||
- **Incentivization:** To encourage rational behaviour, widespread network participation, and the efficient provision of finite network resources.
|
||||
- **인센티브 설계(Incentivization):** 합리적인 행동을 유도하고, 네트워크 참여를 확대하며, 제한된 네트워크 자원의 효율적인 활용을 장려합니다.
|
||||
|
||||
### 인센티브 기반 탈중앙화
|
||||
|
||||
### Incentivized decentralisation
|
||||
기존 파일 공유 네트워크에서는 인센티브 메커니즘이 핵심적으로 부족한 요소 중 하나입니다. Codex는 견고한 **마켓플레이스 기반 인센티브 구조**를 통해 아래에 설명된 다양한 노드 유형 전반에 걸쳐 **광범위한 참여를 유도할 수 있다**고 믿습니다.
|
||||
|
||||
Incentivization mechanisms are one of the key pieces missing from traditional file-sharing networks. Codex believes that a robust marketplace-based incentive structure will ensure wide participation across the node types detailed below.
|
||||
적절한 인센티브 구조의 개발은 다음과 같은 목표를 바탕으로 추진됩니다:
|
||||
|
||||
The development of an adequate incentive structure is driven by the following goals:
|
||||
- **수요와 공급을 조율**하여 네트워크 자원의 최적 사용을 유도
|
||||
- 각 노드가 **자신의 경쟁력을 활용해 수익을 극대화**할 수 있도록 하여 참여를 증가
|
||||
- **스팸을 방지하고 악의적인 참여를 억제**
|
||||
|
||||
- Supply and demand to encourage optimum network resource usage.
|
||||
Codex의 인센티브 구조는 아직 최종 확정되지는 않았지만, 데이터를 저장하고자 하는 참여자들과, 저장 공간을 제공하며 **담보를 걸고 공개 저장 계약에 입찰하는 제공자들**로 구성된 마켓플레이스를 중심으로 운영될 예정입니다. 이 구조는 참여자들의 인센티브를 자연스럽게 정렬시켜, Codex가 설계 의도대로 작동하도록 하는 것을 목표로 합니다.
|
||||
|
||||
- Increase participation by enabling nodes to utilise their competitive advantages to maximise profits.
|
||||
### 네트워크 아키텍처
|
||||
|
||||
- Prevent spam and discourage malicious participation.
|
||||
Codex는 여러 유형의 노드로 구성되어 있으며, 각 노드는 네트워크 운영에서 서로 다른 역할을 수행합니다. 이에 따라 노드 유형별로 요구되는 하드웨어 사양도 달라져, 자원이 제한된 장치에서도 네트워크 참여가 가능하도록 설계되어 있습니다.
|
||||
|
||||
Although still to be finalised, the Codex incentive structure will involve a marketplace of participants who want to store data, and those provisioning storage posting collateral, with the latter bidding on open storage contracts. This structure aims to ensure that participants' incentives align, resulting in Codex functioning as intended.
|
||||
**스토리지 노드(Storage nodes)**
|
||||
|
||||
스토리지 노드는 Codex에서 장기적으로 신뢰할 수 있는 저장 공간을 제공하는 역할을 합니다. 이들은 계약 요청 측에서 게시한 담보금과 계약이 갖는 슬롯 수에 따라 **담보를 예치**하며, 이는 사용자가 요구하는 내구성 수준과 직접적으로 연결되어 있습니다.
|
||||
스토리지 노드는 **정기적으로 데이터 보유 증명을 제출해야** 하며, 이를 이행하지 못할 경우 **패널티**(slashing)가 부과됩니다.
|
||||
|
||||
### Network architecture
|
||||
**애그리게이터 노드(Aggregator Node)**
|
||||
|
||||
Codex is composed of multiple node types, each taking a different role in the network's operation. Similarly, the hardware demands for each node type vary, enabling those operating resource-restricted devices to participate.
|
||||
리소스가 제한된 클라이언트 노드가 **이레이저 코딩**, **증명 생성**, **증명 집계 작업을 위임**할 수 있도록 하는 방식입니다. 현재 개발 중이며, 내년 2분기 또는 4분기 Codex의 향후 릴리스에 포함될 예정입니다.
|
||||
|
||||
**Storage nodes**
|
||||
**클라이언트 노드(Client nodes)**
|
||||
|
||||
As Codex's long-term reliable storage providers, storage nodes stake collateral based on the collateral posted on the request side of contracts, and the number of slots that a contract has. This is tied to the durability demanded by the user. Failure to provide periodic proof of data possession results in slashing penalties.
|
||||
클라이언트 노드는 **다른 노드에게 데이터를 저장, 검색, 전송하도록 요청**하는 역할을 합니다. Codex 네트워크의 대부분은 클라이언트 노드로 구성되며, 이들은 네트워크 자원 소비에 따른 비용을 상쇄하기 위해 **캐싱 노드 역할을 병행**할 수 있습니다.
|
||||
|
||||
**Aggregator Node**
|
||||
노드가 저장 계약에 참여하고 사용자가 데이터를 업로드하면, **네트워크는 해당 스토리지 노드가 온라인 상태이며 데이터가 검색 가능한지 사전 검증**을 수행합니다. 이후 계약 기간과 Codex 프로토콜이 보장하는 검색 가능성(9’s of retrievability)에 따라, **스토리지 노드는 무작위로 선택되어 정기적으로 데이터 보유 증명을 브로드캐스트**해야 합니다.
|
||||
|
||||
A method for off-loading erasure coding, proof generation and proof aggregation by a client node with low-resources, currently a WIP and will be part of subsequent Codex release Q2/Q4 next year.
|
||||
|
||||
**Client nodes**
|
||||
|
||||
Client nodes make requests for other nodes to store, find, and retrieve data. Most of the Codex network will be Client nodes, and these participants can double as caching nodes to offset the cost of the network resources they consume.
|
||||
|
||||
When a node commits to a storage contract and a user uploads data, the network will proactively verify that the storage node is online and that the data is retrievable. Storage nodes are then randomly queried to broadcast proofs of data possession over an interval corresponding to the contract duration and 9's of retrievability guarantee the protocol provides.
|
||||
|
||||
If the storage node sends invalid proofs or fails to provide them in time, the network evicts the storage node from the slot, and the slot will become available for the first node that generates a valid proof for that slot.
|
||||
|
||||
When the contract is reposted, some of the faulty node's collateral pays for the new storage node's bandwidth fees. Erasure coding complements the repair scheme by allowing the reconstruction of the missing chunks from data in other slots within the same storage contract hosted by faultless storage nodes.
|
||||
스토리지 노드가 유효하지 않은 증명을 제출하거나 기한 내 제출에 실패할 경우, 네트워크는 해당 노드를 슬롯에서 제거하고, **해당 슬롯에 대해 유효한 증명을 가장 먼저 생성한 노드**가 그 자리를 차지하게 됩니다.
|
||||
|
||||
계약이 다시 게시될 때, 문제가 있던 노드가 예치한 담보금 일부는 **새로운 스토리지 노드의 대역폭 비용**을 충당하는 데 사용됩니다. 또한 **이레이저 코딩은 복구 스킴을 보완하여**, 동일한 저장 계약 내의 무결한 노드가 보유한 다른 슬롯의 데이터를 통해 **손실된 조각을 재구성**할 수 있도록 합니다.
|
||||
|
||||

|
||||
|
||||
### Marketplace architecture ###
|
||||
### 마켓플레이스 아키텍처
|
||||
|
||||
The marketplace consists of a smart contract that is deployed on-chain, and the
|
||||
purchasing and sales modules that are part of the node software. The purchasing
|
||||
module is responsible for posting storage requests to the smart contract. The
|
||||
sales module is its counterpart that storage providers use to determine which
|
||||
storage requests they are interested in.
|
||||
Codex의 마켓플레이스는 **온체인에 배포된 스마트 계약**과, 노드 소프트웨어에 포함된 **구매 및 판매 모듈**로 구성됩니다.
|
||||
|
||||
#### Smart contract ####
|
||||
구매 모듈은 스마트 계약에 **스토리지 요청을 게시하는 역할**을 하며, 판매 모듈은 스토리지 제공자가 **관심 있는 요청을 선택**할 수 있도록 돕는 기능입니다.
|
||||
|
||||
The smart contract facilitates matching between storage providers and storage
|
||||
clients. A storage client can request a certain amount of storage for a certain
|
||||
duration. This request is then posted on-chain, so that storage providers can
|
||||
see it, and decide whether they want to fill a slot in the request.
|
||||
#### 스마트 계약
|
||||
|
||||
The main parameters of a storage request are:
|
||||
- the amount of bytes of storage that is requested
|
||||
- a content identifier (CID) of the data that should be stored
|
||||
- the duration for which the data should be stored
|
||||
- the number of slots (based on the erasure coding parameters)
|
||||
- an amount of tokens to pay for the storage
|
||||
스마트 계약은 **스토리지 제공자와 클라이언트를 연결**해주는 역할을 합니다.
|
||||
|
||||
At the protocol level a storage client is free to determine these parameters as
|
||||
it sees fit, so that it can choose a level of durability that is suitable for
|
||||
the data, and adjust for changing storage prices. Applications built on Codex
|
||||
can provide guidance to their users for picking the correct parameters,
|
||||
analogous to how Ethereum wallets help with determining gas fees.
|
||||
스토리지 클라이언트는 특정 기간 동안 특정 용량의 저장 공간을 요청할 수 있으며, 이 요청은 온체인에 게시되어 스토리지 제공자가 이를 확인하고. 요청된 슬롯을 채울지 결정할 수 있도록 합니다.
|
||||
|
||||
The smart contract also checks that storage providers keep their promises.
|
||||
Storage providers post collateral when they promise to fill a slot of a storage
|
||||
request. They are expected to post periodic storage proofs to the contract,
|
||||
either directly or through an aggregator. If they fail to do so repeatedly, then
|
||||
their collateral can be forfeited. Their slot is then awarded to another storage
|
||||
provider.
|
||||
스토리지 요청의 주요 파라미터는 다음과 같습니다:
|
||||
|
||||
The smart contract indicates when a certain storage provider has to provide a
|
||||
storage proof. This is not done on a fixed time interval, but determined
|
||||
stochastically to ensure that it is not possible for a storage provider to
|
||||
predict when it should provide the next storage proof.
|
||||
- 요청된 저장 용량 (바이트 단위)
|
||||
- 저장될 데이터의 콘텐츠 식별자(CID)
|
||||
- 데이터가 저장되어야 하는 기간
|
||||
- 슬롯 개수 (이레이저 코딩 파라미터 기반)
|
||||
- 저장 공간에 대해 지불할 토큰 수량
|
||||
|
||||
#### Purchasing ####
|
||||
프로토콜 차원에서 스토리지 클라이언트는 위의 파라미터를 **자유롭게 설정**할 수 있으며, 데이터의 특성에 맞는 내구성을 선택하거나, 변화하는 스토리지 가격에 대응할 수 있습니다.
|
||||
|
||||
The purchasing module in the node software interacts with the smart contract on
|
||||
behalf of the node operator. It posts storage requests, and handles any other
|
||||
interactions that are required during the lifetime of the request. For instance,
|
||||
when a request is canceled because there are not enough interested storage
|
||||
providers, then the purchasing module can withdraw the tokens that were
|
||||
associated with the request.
|
||||
Codex 위에 구축된 애플리케이션은 사용자가 올바른 파라미터를 선택할 수 있도록 가이드할 수 있으며, 이는 이더리움 지갑이 가스 요금을 추천하는 방식과 유사합니다.
|
||||
|
||||
#### Sales ####
|
||||
스마트 계약은 스토리지 제공자가 **약속한 대로 서비스를 이행하는지도 검증**합니다. 스토리지 제공자는 슬롯을 채우기로 약속할 때 **담보금을 예치**해야 하며, 정기적으로 **스토리지 증명**을 스마트 계약에 제출해야 합니다(직접 또는 애그리게이터를 통해 가능). 이를 반복적으로 실패할 경우 담보금은 몰수되며, 해당 슬롯은 다른 스토리지 제공자에게 이전됩니다.
|
||||
|
||||
The sales module is the counterpart to the sales module. It monitors the smart
|
||||
contract to be notified of incoming storage requests. It keeps a list of the
|
||||
most promising requests that it can fulfill. It will favor those requests that
|
||||
have a high reward and low collateral. As soon as it finds a suitable request,
|
||||
it will then try to first reserve and then fill a slot by downloading the
|
||||
associated data, creating a storage proof, and posting it to the smart contract.
|
||||
It will then continue to monitor the smart contract to provide it with storage
|
||||
proofs when they are required.
|
||||
또한 스마트 계약은 특정 스토리지 제공자가 언제 스토리지 증명을 제출해야 하는지를 **지정**합니다. 이 시점은 고정된 주기로 정해지지 않으며, **무작위적으로 결정**되어 스토리지 제공자가 다음 증명 시점을 예측할 수 없도록 합니다.
|
||||
|
||||
The sales module contains a best effort strategy for determining which storage
|
||||
requests it is interested in. Over time, we expect more specialized strategies
|
||||
to emerge to cater to the needs of e.g. large providers versus providers that
|
||||
run a node from their home.
|
||||
#### 구매(Purchasing)
|
||||
|
||||
### 백서 ###
|
||||
노드 소프트웨어 내의 **구매 모듈**은 노드 운영자를 대신하여 스마트 계약과 상호작용합니다. 이 모듈은 **스토리지 요청을 게시**하고, 요청이 유효한 동안 필요한 기타 상호작용도 처리합니다. 예를 들어, **관심 있는 스토리지 제공자가 충분하지 않아 요청이 취소될 경우**, 구매 모듈은 해당 요청에 할당되었던 토큰을 **회수**할 수 있습니다.
|
||||
|
||||
[Codex 백서](/learn/whitepaper)를 읽어보세요.
|
||||
#### 판매(Sales)
|
||||
|
||||
**판매 모듈**은 구매 모듈의 상대 역할로, 스마트 계약을 **모니터링하여 새로운 스토리지 요청이 등록되는 것을 감지**합니다.
|
||||
이 모듈은 자신이 수락할 수 있는 **가장 유망한 요청 목록**을 유지하며, 보상은 높고 담보 요구는 낮은 요청을 **우선적으로 선택**합니다.
|
||||
|
||||
적절한 요청을 찾으면, 해당 데이터를 **다운로드**, **스토리지 증명 생성**, **스마트 계약에 증명 게시**의 절차를 거쳐 슬롯을 우선적으로 예약하고 채우려 시도합니다. 이후에는 스마트 계약을 계속 모니터링하며 요구될 때마다 스토리지 증명을 제출합니다.
|
||||
|
||||
판매 모듈은 어떤 스토리지 요청에 관심을 가질지 결정하는 **베스트 에포트(best-effort)** 전략을 따릅니다. 시간이 지남에 따라, **대형 제공자**와 **개인 홈 서버 운영자**와 같은 다양한 유형의 운영자 요구에 맞춘 보다 **전문화된 전략들이 등장할 것으로 기대**됩니다.
|
||||
|
||||
### 백서
|
||||
|
||||
[Codex 백서](/learn/whitepaper)에서 더 자세한 내용을 확인해 보세요.
|
||||
|
||||
@ -1,8 +1,9 @@
|
||||
# 빠른 시작
|
||||
|
||||
이 가이드를 통해 Codex를 실행하려면 다음 단계를 수행해야 합니다:
|
||||
|
||||
- [면책 조항 검토](/codex/disclaimer)
|
||||
- [Codex 바이너리 얻기](#get-codex-binary)
|
||||
- [Codex 바이너리 다운로드](#get-codex-binary)
|
||||
- [Codex 실행하기](#run-codex)
|
||||
- [Codex와 상호작용하기](#interact-with-codex)
|
||||
|
||||
@ -11,17 +12,20 @@
|
||||
For quick a start we will use precompiled binaries from [GitHub release page](https://github.com/codex-storage/nim-codex/releases). If you prefer to compile from the sources, please check [Build Codex](/learn/build).
|
||||
|
||||
Please follow the steps for your OS from the list:
|
||||
|
||||
- [Linux/macOS](#linux-macos)
|
||||
- [Windows](#windows)
|
||||
|
||||
### Linux/macOS
|
||||
|
||||
1. Install latest Codex release
|
||||
|
||||
```shell
|
||||
curl -s https://get.codex.storage/install.sh | bash
|
||||
```
|
||||
|
||||
2. Install dependencies
|
||||
|
||||
```shell
|
||||
# Debian-based Linux
|
||||
sudo apt update && sudo apt install libgomp1
|
||||
@ -35,8 +39,9 @@ Please follow the steps for your OS from the list:
|
||||
### Windows
|
||||
|
||||
1. Install latest Codex release
|
||||
|
||||
```batch
|
||||
curl -sO https://get.codex.storage/install.cmd && install.cmd
|
||||
curl -sO https://get.codex.storage/install.cmd && install.cmd
|
||||
```
|
||||
|
||||
> [!WARNING]
|
||||
@ -52,18 +57,20 @@ Please follow the steps for your OS from the list:
|
||||
|
||||
```batch
|
||||
curl -LO --ssl-no-revoke https://...
|
||||
```
|
||||
```
|
||||
|
||||
2. Update path using console output
|
||||
- Current session only
|
||||
```batch
|
||||
:: Default installation directory
|
||||
set "PATH=%PATH%%LOCALAPPDATA%\Codex;"
|
||||
```
|
||||
|
||||
- Update PATH permanently
|
||||
- Control Panel --> System --> Advanced System settings --> Environment Variables
|
||||
- Alternatively, type `environment variables` into the Windows Search box
|
||||
- Current session only
|
||||
|
||||
```batch
|
||||
:: Default installation directory
|
||||
set "PATH=%PATH%%LOCALAPPDATA%\Codex;"
|
||||
```
|
||||
|
||||
- Update PATH permanently
|
||||
- Control Panel --> System --> Advanced System settings --> Environment Variables
|
||||
- Alternatively, type `environment variables` into the Windows Search box
|
||||
|
||||
3. Check the result
|
||||
```shell
|
||||
@ -77,6 +84,7 @@ We may [run Codex in different modes](/learn/run#run), and for a quick start we
|
||||
1. Run Codex
|
||||
|
||||
**Linux/macOS**
|
||||
|
||||
```shell
|
||||
codex \
|
||||
--data-dir=datadir \
|
||||
@ -108,6 +116,7 @@ We may [run Codex in different modes](/learn/run#run), and for a quick start we
|
||||
netsh advfirewall firewall delete rule name="Allow Codex (TCP-In)"
|
||||
netsh advfirewall firewall delete rule name="Allow Codex (UDP-In)"
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
```batch
|
||||
@ -128,10 +137,10 @@ We may [run Codex in different modes](/learn/run#run), and for a quick start we
|
||||
> In the example above we use [Codex Testnet](/networks/testnet#bootstrap-nodes) bootstrap nodes and thus we join Testnet. If you would like to join a different network, please use [appropriate value](/networks/networks).
|
||||
|
||||
2. Configure port-forwarding for the TCP/UDP ports on your Internet router
|
||||
| Protocol | Service | Port |
|
||||
| Protocol | Service | Port |
|
||||
| -------- | --------- | ------ |
|
||||
| UDP | Discovery | `8090` |
|
||||
| TCP | Transport | `8070` |
|
||||
| UDP | Discovery | `8090` |
|
||||
| TCP | Transport | `8070` |
|
||||
|
||||
If you would like to purchase or sell storage, please consider to run [Codex node with marketplace support](/learn/run#codex-node-with-marketplace-support) or [Codex storage node](/learn/run#codex-storage-node).
|
||||
|
||||
|
||||
@ -1,24 +1,39 @@
|
||||
# Codex란 무엇인가?
|
||||
|
||||
Codex는 분산형 데이터 저장 프로토콜입니다. 주요 특징으로는 강력한 검열 저항성과 내구성 보장이 있습니다. 동일한 이름의 참조 구현이 있으며, nim 언어로 작성되었습니다. [Logos](https://logos.co/) 기술 스택의 저장 계층 역할을 합니다. 무신뢰 합의 계층인 [Nomos](http://nomos.tech)와 통신 계층인 [Waku](http://waku.org)와 함께 Logos Collective의 기반 프로젝트 중 하나입니다.
|
||||
Codex는 탈중앙 데이터 저장 프로토콜입니다. 주요 특징으로는 강력한 검열 저항성과 내구성 보장이 있습니다. 동일한 이름의 참조 구현이 있으며, nim 언어로 작성되었습니다. [Logos](https://logos.co/) 기술 스택의 저장 계층 역할을 합니다. 무신뢰 합의 계층인 [Nomos](http://nomos.tech)와 통신 계층인 [Waku](http://waku.org)와 함께 Logos Collective의 기반 프로젝트 중 하나입니다.
|
||||
|
||||
동기
|
||||
원격 저장소 환경은 점점 더 소수의 인터넷 강자들—Google, Microsoft, Amazon 등—에 의해 지배되고 있습니다. 이러한 서비스들은 사용자 경험과 편의성 측면에서 높은 점수를 받지만, 중앙화된 클라우드 데이터 저장소는 다음과 같은 단점을 가지고 있습니다:
|
||||
<br/>
|
||||
|
||||
검열
|
||||
데이터 소유권 부재
|
||||
보안 침해 및 서비스 중단
|
||||
높은 비용
|
||||
<p><iframe width="560" height="315" src="https://www.youtube.com/embed/XH-R2oJO7P4" title="" frameBorder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowFullScreen><br>Powered by <a href="https://youtubeembedcode.com">youtube embed code</a> and <a href="https://snabblan.io/">snabblån utan uc</a></iframe></p>
|
||||
|
||||
### 동기
|
||||
|
||||
원격 저장소 환경은 점점 더 Google, Microsoft, Amazon과 같은 소수의 인터넷 강자들에 의해 지배되고 있습니다. 이러한 서비스들은 사용자 경험과 편의성 측면에서 높은 점수를 받지만, 중앙화된 클라우드 데이터 저장소는 다음과 같은 단점을 가지고 있습니다:
|
||||
|
||||
- 검열
|
||||
|
||||
- 데이터 소유권 부재
|
||||
|
||||
- 보안 침해 및 서비스 중단
|
||||
|
||||
- 높은 비용
|
||||
|
||||
중앙화된 클라우드 저장소 제공자들은 데이터를 검열한 히스토리를 갖고 있으며, 해당 데이터의 사실상 소유자로서 자신들의 기준에 따라 그렇게 할 수 있는 권한을 가지고 있습니다. 또한, 중앙화된 플랫폼들은 수많은 경우에 주요 데이터 유출 및 서비스 중단의 피해자가 되었습니다.
|
||||
|
||||
이러한 이슈들은 탈중앙화되고 검열에 저항하는 대안을 위한 시장의 틈새를 만들었습니다. 기존의 P2P 저장소 및 파일 공유 네트워크는 네트워크 중단에 대한 견고성과 검열에 대한 바람직한 저항성과 같은 일부 문제를 해결합니다. 그러나 적절한 인센티브와 강력한 데이터 내구성 보장 없이는 진정으로 멈출 수 없는 애플리케이션을 구축하기 위한 적합한 기반이 되지 못합니다.
|
||||
|
||||
중앙화된 클라우드 저장소 제공자들은 데이터를 검열한 확립된 역사를 가지고 있으며, 해당 데이터의 사실상 소유자로서 자신들의 기준에 따라 그렇게 할 수 있는 권한을 가지고 있습니다. 또한, 중앙화된 플랫폼들은 수많은 경우에 주요 데이터 유출 및 서비스 중단의 피해자가 되었습니다.
|
||||
이러한 사건들은 분산화되고 검열에 저항하는 대안을 위한 시장의 틈새를 만들었습니다. 기존의 P2P 저장소 및 파일 공유 네트워크는 네트워크 중단에 대한 견고성과 검열에 대한 바람직한 저항성과 같은 일부 문제를 해결합니다. 그러나 적절한 인센티브와 강력한 데이터 내구성 보장 없이는 진정으로 멈출 수 없는 애플리케이션을 구축하기 위한 적합한 기반이 되지 못합니다.
|
||||
기존의 분산 저장소 솔루션들은 eDonkey 및 Gnutella와 같은 초기 P2P 파일 공유 플랫폼을 개선한다고 주장합니다. 그러나, 시장에는 여전히 저장소와 대역폭 사용 측면에서 효율적이면서도 기존 업체들과 비교할 만한 성능과 내구성 보장을 제공하는 분산 저장소 솔루션이 부족합니다.
|
||||
|
||||
데이터 저장소 분산화
|
||||
### 데이터 저장소 분산화
|
||||
|
||||
Codex는 2021년에 web3 기술 스택을 위한 내구성 있는 분산 저장 계층의 필요성을 해결하기 위해 시작되었습니다.
|
||||
"Codex"라는 이름은 고대 책의 형태를 지칭하는 것으로, 데이터 저장 엔진의 매우 강력한—99.99%—내구성 보장을 암시합니다.
|
||||
|
||||
"Codex"라는 이름은 고대 책의 형태를 지칭하는 것으로, 데이터 저장 엔진의 매우 강력한 99.99% 내구성을 제공합니다.
|
||||
|
||||
Codex는 2023년 6월에 핵심 Logos Collective 프로토콜로 발표되었습니다.
|
||||
|
||||
### 테스트넷
|
||||
|
||||
Codex는 현재 테스트넷 단계에 있습니다. 클라이언트 구현은 무료이며 오픈 소프트웨어입니다. 관심이 있으시다면, Codex를 시도하고, 테스트넷에 연결하여 기능을 실험해보시기를 권장합니다. [여기서 시작하세요](./quick-start.md)
|
||||
Codex는 현재 테스트넷 단계에 있습니다. 클라이언트 구현은 무료이며 오픈 소프트웨어입니다. 관심이 있으시다면, Codex를 시도하고, 테스트넷에 연결하여 기능을 실험해보시기를 권장합니다.
|
||||
|
||||
[여기서 테스트넷을 시작하세요](/ko/learn/quick-start)
|
||||
|
||||
@ -6,16 +6,23 @@
|
||||
<div style="display: flex; justify-content: center; align-items: center;">
|
||||
<div style="text-align: justify; width: 80%">
|
||||
|
||||
Codex는 web3 애플리케이션을 위한 분산형 데이터 저장 프로토콜입니다. 이는 데이터 내구성과 검열 저항성을 제공하면서도 저장소와 대역폭 효율성을 유지합니다. 프로토콜은 삭제 코딩을 사용하여 데이터를 여러 조각으로 나누고, 이를 네트워크의 여러 노드에 분산시킵니다. 영지식 증명을 사용하여 데이터가 여전히 검색 가능함을 증명합니다.
|
||||
인터넷은 점점 더 중앙집중화되고 있습니다. 기업과 개인이 중앙집중형 클라우드 제공업체에 저장을 의존함에 따라, 프라이버시, 검열, 사용자 통제권에 대한 우려는 물론, 경제적 권력이 소수에게 집중된다는 문제도 점점 더 심각해지고 있습니다.
|
||||
|
||||
이러한 문제를 해결하기 위한 다양한 시도들이 있었지만, 현대의 탈중앙 스토리지 네트워크(DSN)는 높은 내구성 보장, 운영 효율성, 확장 가능한 저장 증명 제공 등 기본적인 측면에서 종종 부족한 모습을 보입니다.
|
||||
|
||||
이로 인해 다음과 같은 한계가 발생합니다.
|
||||
|
||||
i) 데이터를 잃을 수 있어 실용적이지 않음
|
||||
ii) 특수하거나 고가의 하드웨어를 요구하여 탈중앙화에 적합하지 않음
|
||||
iii) 저장 장비 외의 과도한 비용 부담으로 경제성이 떨어짐
|
||||
|
||||
본 논문에서는 이러한 문제를 해결하기 위한 새로운 방식의 탈중앙 스토리지 네트워크인 Codex를 소개합니다. Codex는 이레이저 코딩(erasure coding)을 중복성과 저장 증명의 핵심 구성 요소로 활용하며, 제로 지식 증명(zero-knowledge proof) 및 지연 복구(lazy repair) 기술과 결합하여, 하드웨어 및 에너지 요구 사항은 낮추면서도 조절 가능한 내구성 보장을 달성합니다.
|
||||
|
||||
Codex의 핵심은 탈중앙 내구성 엔진(Decentralized Durability Engine, DDE)이라는 개념으로, 우리는 이를 정식화하여 분산 스토리지 시스템에서 데이터 중복성, 원격 감사, 복구, 인센티브, 데이터 분산 처리 등을 체계적으로 다루는 프레임워크로 제안합니다.
|
||||
|
||||
우리는 Codex의 아키텍처와 작동 메커니즘, 마켓플레이스와 증명 시스템 등을 설명하고, 연속 시간 마르코프 체인(CTMC) 모델을 활용한 초기 신뢰성 분석을 통해 내구성 보장을 평가합니다. Codex는 더 넓은 탈중앙화 생태계에서 핵심적인 역할을 할 수 있는 탈중앙의, 복원력 있는, 경제적으로 실현 가능한 저장 계층을 구축하기 위한 중요한 발걸음이라 할 수 있습니다.
|
||||
|
||||
[영문으로 전문 읽기](/learn/whitepaper)
|
||||
|
||||
[중간 생략된 약 500줄의 기술적 내용...]
|
||||
</div>
|
||||
</div>
|
||||
|
||||
## 참고 문헌
|
||||
|
||||
[^bitswap_spec]: IPFS Standards. "Bitswap Protocol," https://specs.ipfs.tech/bitswap-protocol/ (2024년 9월 27일 접속)
|
||||
|
||||
[^schroeder_07]: B. Schroeder와 G. A. Gibson, "실제 세계의 디스크 실패: 1,000,000시간의 MTTF가 의미하는 것," 제5회 USENIX 파일 및 저장 기술 컨퍼런스(FAST '07) 프로시딩, 미국 캘리포니아 산호세, 2007
|
||||
|
||||
[^ipfs_website]: IPFS: 중앙 서버 없이 데이터를 관리하는 개방형 시스템," IPFS, 2024. [온라인]. 사용 가능: https://ipfs.tech/. [접속: 2024년 9월 28일].
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user