> For the complete documentation index, see [llms.txt](https://docs.decentraland.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.decentraland.org/player/player-ko/blockchain-integration/ethereum-essentials.md).

# 블록체인 소개

Decentraland가 이더리움 블록체인을 사용하는 방법.

모든 블록체인은 본질적으로 네트워크의 여러 머신에 분산된 탈중앙화 데이터베이스입니다. 거래는 "블록"으로 묶여 순차적으로 처리되어 *체인* 이벤트의 연쇄.

이더리움은 가장 인기 있는 블록체인 중 하나입니다. 비트코인 같은 다른 블록체인과 구별되는 점은, 단순한 통화 거래 기록 이상의 용도로 블록체인을 저장소로 사용한다는 것입니다. 이더리움은 서로 다른 종류의 토큰을 구분하거나, 고유한 특성을 가진 독특한 토큰까지도 처리할 수 있도록 더 복잡한 정보를 저장할 수 있습니다. 이더리움 블록체인은 또한 스마트 계약을 실행하며, 이를 통해 합의된 이벤트에 따라 달라질 수도 있는 더 복잡한 거래를 실행할 수 있습니다.

디센트럴랜드는 이더리움 블록체인을 사용해 디지털 자산의 소유권과, 3D 씬이 읽고 반응할 수 있는 기타 거래 가능한 항목들을 기록합니다.

블록체인은 씬 상태, 플레이어 위치 또는 플레이어가 씬과 상호작용하는 동안 실시간으로 바뀌어야 하는 어떤 것도 저장하는 데 사용되지 않습니다. 이 모든 것은 각 플레이어의 기기에 로컬로 저장되거나, 씬 소유자가 소유한 개인 서버에 저장됩니다. 각 씬의 개발자는 블록체인에 저장할 가치가 있는 정보와 개인 서버에 저장할 정보를 선택해야 합니다.

## 지갑

이더리움 토큰은 지갑에 보관됩니다. 이더리움 지갑에는 Ether, MANA, LAND 및 디센트럴랜드의 게임이나 경험에서 사용될 수 있는 다른 토큰을 포함한 다양한 토큰을 보관할 수 있습니다.

디센트럴랜드 토큰을 보관할 수 있는 지갑 제공업체는 많습니다. 마켓플레이스를 사용하거나 디센트럴랜드에 प्रवेश하려면 웹 브라우저와 통합된 지갑을 사용해야 하므로, 다음 지갑을 사용하길 권장합니다:

* [Metamask](https://metamask.io/)
* [Trezor](https://trezor.io/)/[Ledger](https://www.ledger.com/) 하드웨어 지갑

모든 지갑에는 공개 키와 개인 키가 있습니다. 공개 키의 해시는 지갑의 고유 주소이며, 거래를 라우팅하고 플레이어를 식별하는 데 사용됩니다. 개인 키는 지갑이 네트워크로 전송하는 각 거래에 서명하고, 그것이 실제로 본인에 의해 전송되었음을 인증하는 데 사용됩니다. 또한 개인 키는 비밀번호를 잊었을 경우 지갑을 복구하는 데도 사용되므로, 안전한 곳에 보관하고 누구와도 공유하지 마세요.

디센트럴랜드에서 플레이어의 신원은 지갑을 중심으로 구성됩니다. 지갑의 공개 키는 고유하므로, 씬은 이를 사용해 디센트럴랜드 사용자를 지속적으로 식별할 수 있습니다. 지갑은 또한 플레이어에게 고유한 아바타, 착용 아이템, 접근이 제한된 씬에 들어갈 수 있는 권한, 게임에서 사용할 특별한 무기 등을 제공할 수 있는 다양한 토큰을 보관할 수 있습니다.

## 트랜잭션

거래는 블록체인에 저장된 정보를 변경합니다. 일반적인 거래는 토큰의 소유자가 바뀌는 것을 포함합니다. 예를 들어 사용자 A가 LAND 토큰을 MANA 토큰 일정량과 교환하는 대가로 사용자 B에게 주는 경우입니다. 그러나 이더리움 네트워크에서는 거래가 소유자를 바꾸지 않고도 토큰에 저장된 정보를 변경하는 것을 의미할 수도 있습니다. 예를 들어 필지의 설명을 변경하거나 여러 필지를 Estate로 병합하는 경우입니다.

이더리움의 메인 체인에서 발생하는 모든 거래에는 Ether 토큰으로 지불하는 비용이 있습니다. 이 수수료는 '가스' 수수료라고 하며, 거래를 '채굴'한 네트워크 사용자에게 지급됩니다.

거래를 실행해 달라고 요청할 때, 채굴을 위해 지불할 의사가 있는 가스 가격을 설정합니다. 더 높은 가격을 제시하는 거래는 채굴자들이 우선 처리하므로 더 빨리 채굴됩니다. 이런 거래의 시장 가격은 정기적으로 변동하며, 네트워크 사용량이 많을수록 더 비싸지는 경향이 있습니다. 제시하는 금액이 시장 가격보다 낮지 않은지 확인하세요. 그렇지 않으면 거래가 처리되지 않은 풀에 무기한 남아 있을 수 있습니다.

모든 거래는 주소의 개인 키를 사용해 이더리움 주소에 의해 서명되어야 합니다. 이것이 해당 거래가 그 주소에 의해 수행되었음을 증명합니다.

#### 거래 검증

블록체인 거래는 즉시 이루어지지 않으며, 네트워크의 노드 중 하나가 "채굴"하는 데 시간이 필요하고, 이후 나머지 머신들 전체로 전파되어야 합니다. 네트워크에서 요청되는 거래가 많을수록 검증되는 데 더 많은 시간이 걸립니다.

간단히 말하면, 거래는 다음과 같이 검증됩니다:

1. 새 거래가 발생하면 확인되지 않은 거래 풀로 들어갑니다.
2. 네트워크의 머신 중 하나가 이 풀에서 이 거래를 포함한 여러 거래를 담은 새로운 "블록"을 채굴하는 알고리즘을 성공적으로 풉니다. 그리고 이 새 블록을 체인의 끝에 추가합니다.
3. 그 블록은 네트워크의 다른 머신들과 공유됩니다. 각 머신은 블록 안의 모든 거래가 유효한지 검증하고 블록의 해시를 확인해 그것이 정당한지 검증한 뒤, 자신의 체인 버전에 추가합니다.
4. 새 블록은 전체 네트워크에 전파됩니다. 이 거래가 발생했다는 보편적인 공통 이해가 형성됩니다.

#### 사이드체인

디센트럴랜드는 [Matic](https://matic.network/) 과 협력해 *사이드체인* (특수한 종류의 블록체인)을 만들고 있으며, 이는 메인 이더리움 네트워크보다 더 빠르고 저렴하게 거래를 처리할 수 있게 될 것입니다. 이 사이드체인은 게임 내 거래에 이상적일 것이며, 변경 사항이 더 실시간에 가깝게 그리고 매우 낮은 비용으로 발생할 수 있습니다. 가치 있는 아이템이 관련된 거래의 경우에는 여전히 메인 이더리움 체인을 권장할 것이며, 더 안전하기 때문입니다.

각 씬을 작업하는 개발자는 서로 다른 거래에 대해 메인체인, 사이드체인 또는 둘 다의 조합을 사용할지 선택할 수 있습니다.

사이드체인은 이더리움 메인체인과 상호 운용 가능하도록 유지될 것입니다. 메인 체인의 토큰을 사이드 체인으로 가져오거나 그 반대로도 가능합니다. 사이드체인에서 발생한 거래는 토큰이 다시 메인체인으로 "나갈" 때 결국 메인체인에 반영됩니다.

#### 씬에서 거래 트리거하기

씬의 코드는 이더리움 메인체인과 디센트럴랜드의 사이드체인 모두에서 거래를 트리거할 수 있습니다. 씬 안에 토큰(NFT와 같은)을 판매하는 상점을 둘 수도 있고, 특정 목표를 달성한 플레이어에게 게임 아이템을 보상으로 주는 게임을 만들 수도 있습니다.

사용자는 항상 자신의 이더리움 클라이언트에서 이러한 거래를 명시적으로 승인해야 합니다. 예를 들어 Metamask를 사용할 때, Metamask는 거래가 처리되기 전에 사용자가 각 거래를 승인하도록 요청합니다.

## 토큰의 종류

이더리움 네트워크에서는 다양한 종류의 토큰을 처리할 수 있습니다. 동일한 특성을 공유하는 토큰들을 묶는 몇 가지 표준이 등장했습니다.

디센트럴랜드에서는 토큰을 사용해 무기나 트로피처럼 게임이나 경험과 관련된 아이템을 표현할 수 있습니다. 토큰은 플레이어의 지갑에 보관되므로 씬에서 씬으로 플레이어와 함께 이동하며, 각 씬은 기존의 각 토큰 종류에 어떻게 반응할지, 그리고 반응할지 여부를 선택할 수 있습니다.

읽기 [NFT란 무엇인가](https://decentraland.org/blog/technology/what-are-nfts/) 에 대한 블로그 글에서 대체 불가능한 토큰의 등장과 진화에 대해 더 자세히 알아보세요.

#### 대체 가능한 토큰

아이템이 대체 가능하다면, 유사한 다른 어떤 아이템으로도 대체하거나 교환할 수 있습니다. 미국 달러 같은 법정화폐는 대체 가능합니다. 1달러 지폐는 다른 어떤 1달러 지폐와도 교환할 수 있습니다.

Bitcoin, Ethereum, MANA 같은 암호화폐 토큰은 모두 대체 가능합니다. 한 토큰 단위를 다른 어떤 토큰 단위와도 교환할 수 있기 때문입니다.

디센트럴랜드 씬에서 사용할 맞춤형 대체 가능한 토큰을 만들어, 서로 모두 동일하고 서로 구별되거나 사용자 지정 가능한 속성이 없는 아이템을 나타내는 데 사용할 수도 있습니다. 예를 들어 동일한 아이템을 대량으로 수집하는 게임을 만들고, 이를 대체 가능한 토큰으로 표현할 수 있습니다. 또한 그 토큰을 보유한 플레이어에게 특정 지역이나 서비스에 대한 접근 권한을 주는 황금 티켓을 나타내는 데 대체 가능한 토큰을 사용할 수도 있습니다.

*ERC20* 은 이더리움 네트워크에서 대체 가능한 토큰에 대해 가장 널리 받아들여지는 표준입니다. MANA는 이 표준을 기반으로 만들어졌습니다.

#### 대체 불가능한 토큰

대체 불가능한 토큰(NFT)은 각 단위가 객관적으로 다른 것과 구별되도록 만드는 특성을 가지고 있습니다. 디센트럴랜드의 LAND 필지는 각 필지의 위치가 고유하기 때문에 NFT입니다. 다른 필지, 도로, 또는 지구와의 인접성은 이러한 위치를 토큰 소유자에게 의미 있게 만듭니다.

디센트럴랜드에서는 NFT를 사용해 아바타, 착용 아이템, 무기, 기타 인벤토리 아이템과 같은 게임 내 아이템을 나타낼 수 있습니다. 예를 들어 하나의 NFT 유형으로 게임 내 모든 무기를 표현하고, 이 NFT에 서로 다른 속성을 설정해 구별할 수도 있습니다.

NFT는 희소성이 입증 가능한 디지털 상품을 제공하는 데 사용될 수 있습니다. 블록체인이 가능하게 하는 정당한 희소성 덕분에, 구매자는 자신이 구입한 예술 작품이 실제로 희귀하다는 것을 안심할 수 있습니다. 이는 지금까지 볼 수 없었던 방식으로 디지털 아트에 실질적인 가치를 부여합니다.

게임 아이템은 블록체인에 저장된 이력을 갖게 됩니다. 이 이력은 예를 들어 그 아이템이 위대한 업적을 달성하는 데 사용되었거나 누군가가 존경하는 사람이 사용했을 경우, 더 가치 있는 것으로 여겨지게 할 수 있습니다.

토큰을 설명하는 계약에 따라, 각 NFT는 변경 불가능할 수도 있고, 사용자가 원할 경우 특정 특성을 사용자 지정하고 변경할 수 있도록 허용할 수도 있습니다.

*ERC721* 은 이더리움 네트워크에서 대체 불가능한 토큰에 대해 가장 널리 받아들여지는 표준입니다. LAND 토큰은 ERC721 표준을 따릅니다.

## 스마트 계약

계약은 이더리움 블록체인상의 특정 주소에 존재하는 코드(그 방법들)와 데이터(그 상태)로 구성됩니다.

계약의 메서드는 항상 다음이 있는 거래를 통해 호출됩니다. *to* 필드가 계약의 주소로 설정됩니다. 계약의 메서드가 실행하는 코드는 다른 계약에 대한 호출을 포함할 수 있으며, 이들은 다음이 있는 더 많은 거래를 트리거합니다. *from* 필드가 계약의 주소로 설정됩니다.

계약은 스스로 어떤 행동도 유발할 수 없고, 시간 이벤트에 기반해서도 유발할 수 없습니다. 스마트 계약이 수행하는 모든 행동은 항상 계약의 함수 중 하나를 호출하는 거래에서 비롯됩니다.

스마트 계약을 사용해 맞춤 조건에 따라 거래를 조건화할 수 있습니다. 예를 들어 플레이어가 게임 결과에 베팅할 수 있고, 그에 따른 지급은 게임 결과가 계약에 전달되는 즉시 발생할 것입니다.

스마트 계약의 전체 코드는 읽고자 하는 누구에게나 공개됩니다. 이를 통해 개발자는 공개적으로 검증 가능한 규칙을 만들 수 있습니다.

모든 토큰은 그 특성과 무엇을 할 수 있는지를 지정하는 스마트 계약에 의해 정의됩니다. 디센트럴랜드는 여러 스마트 계약을 작성하고 유지 관리합니다. LAND와 MANA 토큰 자체는 각각 다음 계약들에 의해 정의됩니다. *LANDregistry* 및 *MANAtoken* 계약들입니다.

디센트럴랜드가 만든 모든 계약의 주소는 다음에서 찾을 수 있습니다. [디센트럴랜드 스마트 계약](https://contracts.decentraland.org/addresses.json).

블록체인에 공개 정보로 올라와 있기 때문에, 해당 계약들의 전체 코드를 읽을 수 있습니다. 다음에서 이름으로 계약을 찾을 수 있습니다. [Etherscan](https://etherscan.io/contractsVerified) 에서 내용을 읽어보세요.

## dApp

*dApp* (탈중앙화 애플리케이션)은 스마트 계약과 블록체인을 기반으로 구축된 애플리케이션입니다.

dApp은 지갑이 특정 토큰을 보유하고 있는지 확인한 뒤 서비스를 사용할 수 있게 해주는 것처럼 단순할 수도 있고, 디센트럴랜드 마켓플레이스처럼 자체 UI를 갖춘 완전한 애플리케이션일 수도 있습니다.

## Sepolia 테스트 네트워크

스마트 계약을 배포하거나, 새로운 유형의 토큰을 만들거나, 이더리움 네트워크의 거래에 의존하는 디센트럴랜드 씬을 만들기 전에, 악의적인 사용자가 악용할 수 있는 버그나 허점이 없는지 확인해야 합니다.

Sepolia 테스트 네트워크는 테스트 실행을 위해 특별히 만들어진 이더리움의 대체 버전입니다.

Sepolia 네트워크의 토큰에는 실제 가치가 없으므로, 실제 위험 없이 실수를 해도 됩니다. 다음 faucet을 사용하면 잃어버린 토큰을 무료로 다시 채울 수 있습니다:

* Sepolia Ether faucet (<https://www.alchemy.com/faucets/ethereum-sepolia/>)

거래를 트리거하는 씬을 개발 중이라면, Sepolia 네트워크에서 이러한 거래를 테스트하는 것은 무료입니다. 보낸 토큰에는 가치가 없기 때문입니다. 메인넷에서는 그렇지 않으면 수행하는 각 테스트 거래마다 최소한 실제 Ether 가스 수수료를 지불해야 합니다.

코드가 예상대로 작동하고 악용될 수 없다고 확신하게 되면, 이더리움 메인넷에 배포할 수 있습니다.

## 블록체인 재구성

때때로 여러 머신이 거의 동시에 서로 다른 새 블록을 생성합니다. 이는 체인이 서로 다른 두 버전으로 갈라져 잠재적으로 서로 모순될 수 있기 때문에 문제가 됩니다. 포크가 발생하면 이더리움은 항상 더 긴 체인을 우선하고 더 짧은 체인은 버림으로써 이를 해결합니다. 동시에 두 개의 경쟁 체인이 존재할 수는 있지만, 곧 두 체인 중 하나가 또 다른 블록을 추가해 다른 체인보다 더 길어집니다. 채굴 알고리즘을 푸는 데 시간이 걸리기 때문에, 경쟁 체인들이 서로 완벽하게 동기화된 상태로 성장하는 것은 점점 더 어려워집니다. 결국 어느 한쪽이 다른 쪽을 앞지르게 됩니다.

한 체인이 다른 체인보다 더 길어지고 분쟁이 해결되면, 더 짧은 체인을 채택했던 머신들은 조정이 필요합니다. 이것이 바로 "리오그(reorg)"라고 불리는 것입니다. 그들은 포크가 발생한 지점에 도달할 때까지 자신이 속한 분기의 블록들에 포함된 모든 거래를 되돌려야 합니다. 그런 다음 정당하다고 간주되는 더 긴 분기의 새 블록들을 추가해야 합니다.

되돌려진 거래는 채굴자가 다시 가져가거나(또는 폐기될 때까지) 대기 중인 거래 풀로 돌아갈 수 있습니다. 이러한 거래에 대해 지불된 가스 수수료도 함께 되돌려집니다.

체인의 끝에 방금 추가된 블록은 위에서 설명한 메커니즘 때문에 되돌려질 가능성이 상당히 큽니다. 이후 블록들이 체인의 끝에 계속 추가될수록, 블록체인에서 더 앞쪽에 있는 블록이 되돌려질 가능성은 점점 낮아집니다. 더 큰 재구성이 필요하기 때문입니다. 이 때문에 거래 이후 체인의 끝에 추가되는 각 새 블록을 그 거래의 확인으로 간주합니다.

블록체인 밖의 정보에 의존하는 애플리케이션(또는 씬)을 만들 때는 재구성(reorg)의 발생 가능성을 인지해야 합니다. 일정 수의 확인이 발생했고 거래가 더 이상 체인의 맨 끝에 있지 않을 때만 해당 거래를 검증된 것으로 간주하는 것이 좋을 수 있습니다.

여러 번의 확인을 사용하면 정보가 매우 안정적이 되지만, 거래가 반영되기까지는 시간이 오래 걸립니다.

적은 수의 확인을 사용하면 변경 사항이 더 빨리 반영되지만, reorg가 발생할 때 거래가 취소된 것처럼 보이는 hiccup이 가끔 생길 수 있습니다. 이러한 거래가 씬에서 오프체인 결과를 낳는다면, 그 결과도 어떤 식으로든 되돌려야 할 수 있습니다.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.decentraland.org/player/player-ko/blockchain-integration/ethereum-essentials.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
