> 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가 이더리움 블록체인을 사용하는 방법입니다.

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

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

Decentraland는 이더리움 블록체인을 사용해 디지털 자산의 소유권과, 3D 장면이 읽고 반응할 수 있는 다른 거래 가능한 아이템들을 기록합니다.

블록체인은 장면 상태, 플레이어 위치, 또는 플레이어가 장면과 상호작용할 때 실시간으로 변경되어야 하는 어떤 것도 저장하는 데 사용되지 않습니다. 이 모든 것은 각 플레이어의 기기에 로컬로 저장되거나, 장면 소유자가 소유한 비공개 서버에 저장됩니다. 각 장면의 개발자는 어떤 정보를 블록체인에 저장할 가치가 있는지, 그리고 무엇을 비공개 서버에 저장할지 선택해야 합니다.

## 지갑

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

Decentraland 토큰을 보관할 수 있는 지갑 제공업체는 많습니다. 마켓플레이스를 사용하거나 Decentraland에 입장하려면 웹 브라우저에 통합된 지갑을 사용해야 하므로, 다음 지갑 사용을 권장합니다:

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

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

Decentraland에서 플레이어의 정체성은 지갑을 중심으로 구성됩니다. 지갑의 공개 키는 고유하므로, 장면은 이를 사용해 Decentraland 사용자를 지속적으로 식별할 수 있습니다. 지갑은 또한 플레이어에게 고유한 아바타, 착용 아이템, 접근을 제한하는 장면에 들어갈 수 있는 권한, 게임에서 사용할 특수 무기 등을 부여할 수 있는 다양한 토큰을 보관할 수도 있습니다.

## 트랜잭션

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

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

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

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

#### 거래 검증

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

간단히 말하면, 거래가 검증되는 방식은 다음과 같습니다:

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

#### 사이드체인

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

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

사이드체인은 이더리움의 메인체인과 상호운용 가능하게 유지됩니다. 메인 체인에서 사이드 체인으로, 그리고 그 반대로 토큰을 옮길 수 있습니다. 사이드체인에서 발생한 거래는 토큰이 메인체인으로 다시 "나올" 때 결국 메인체인에 반영됩니다.

#### 장면에서 거래 트리거하기

장면의 코드는 이더리움 메인체인과 Decentraland의 사이드체인 양쪽에서 거래를 트리거할 수 있습니다. 장면 안에 토큰(NFT 등)을 판매하는 상점을 둘 수도 있고, 특정 목표를 달성한 플레이어에게 게임 아이템을 보상으로 주는 게임을 만들 수도 있습니다.

사용자는 이러한 거래를 이더리움 클라이언트에서 항상 명시적으로 승인해야 합니다. 예를 들어 Metamask를 사용할 때는, 처리되기 전에 각 거래를 수락하라는 메시지가 사용자에게 표시됩니다.

## 토큰의 종류

이더리움 네트워크에서는 여러 종류의 토큰을 다룰 수 있습니다. 같은 특성을 공유하는 토큰들을 묶는 몇 가지 표준이 등장했습니다.

Decentraland에서는 무기나 트로피처럼 게임이나 경험과 관련된 아이템을 나타내는 데 토큰을 사용할 수 있습니다. 토큰은 플레이어의 지갑에 보관되므로 장면에서 장면으로 플레이어를 따라다닙니다. 따라서 각 장면은 존재하는 각 토큰 종류에 어떻게, 그리고 반응할지 선택할 수 있습니다.

읽기 [NFT란 무엇인가](https://decentraland.org/blog/technology/what-are-nfts/) 비대체 토큰의 등장과 진화를 더 깊이 살펴보려면 블로그에서

#### 대체 가능한 토큰

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

비트코인, 이더리움, MANA 같은 암호화폐 토큰은 모두 대체 가능하며, 한 토큰 단위는 다른 어떤 토큰 단위와도 교환할 수 있습니다.

또한 Decentraland 장면에서 사용할 맞춤형 대체 가능한 토큰을 만들어, 모두 동일하고 서로 간에 구별되거나 사용자 지정 가능한 속성이 없는 아이템을 나타내는 데 사용할 수도 있습니다. 예를 들어, 많은 수의 동일한 아이템을 모으는 것을 중심으로 한 게임을 만들고, 이를 대체 가능한 토큰으로 표현할 수 있습니다. 또한 대체 가능한 토큰을 사용해 이를 보유한 플레이어에게 특정 지역이나 서비스에 대한 접근 권한을 주는 황금 티켓을 나타낼 수도 있습니다.

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

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

대체 불가능한 토큰(NFT)은 각 단위가 다른 단위와 객관적으로 다르도록 하는 특성을 가집니다. Decentraland의 LAND 필지는 각 필지의 위치가 고유하므로 NFT입니다. 다른 필지, 도로, 구역과의 인접성은 이러한 위치를 토큰 소유자에게 의미 있게 만듭니다.

Decentraland에서는 아바타, 착용 아이템, 무기, 기타 인벤토리 아이템과 같은 게임 내 아이템을 나타내는 데 NFT를 사용할 수 있습니다. 예를 들어, 게임의 모든 무기를 나타내는 하나의 NFT 유형을 사용하고, 이 NFT에 서로 다른 속성을 설정하여 구분할 수 있습니다.

NFT는 증명 가능한 희소성을 지닌 디지털 상품을 제공하는 데 사용될 수 있습니다. 블록체인 덕분에 합법적인 희소성이 가능해졌기 때문에, 구매자는 자신이 구매한 예술 작품이 실제로 희귀하다는 것을 안심할 수 있습니다. 이는 디지털 예술에 지금까지 보지 못했던 진정한 가치를 부여합니다.

게임 아이템에는 블록체인에 저장된 이력이 있습니다. 이 이력은 아이템의 가치를 더 높게 만들 수 있습니다. 예를 들어 큰 성취를 이루는 데 사용되었거나, 존경받는 누군가가 사용한 경우입니다.

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

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

## 스마트 계약

계약은 이더리움 블록체인의 특정 주소에 존재하는 코드(메서드)와 데이터(상태)로 이루어져 있습니다.

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

계약은 스스로 어떤 행동도 시작할 수 없으며, 시간 이벤트에 따라 동작하지도 않습니다. 스마트 계약이 수행하는 모든 행동은 항상 계약의 함수 중 하나를 호출하는 거래에서 비롯됩니다.

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

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

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

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

이러한 각 계약의 전체 코드는 블록체인에 공개 정보이므로 읽을 수 있습니다. 다음에서 이름으로 계약을 찾을 수 있습니다. [Etherscan](https://etherscan.io/contractsVerified) 그리고 그곳에서 내용을 읽을 수 있습니다.

## dApps

*dApps* (탈중앙화 애플리케이션)은 스마트 계약과 블록체인 위에 구축된 애플리케이션입니다.

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

## Sepolia 테스트 네트워크

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

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

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

* Sepolia Ether 수도꼭지(<https://www.alchemy.com/faucets/ethereum-sepolia/>)

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

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

## 블록체인 재구성

때때로 여러 기기가 거의 동시에 대체 가능한 새 블록을 만들 수 있습니다. 이는 문제인데, 체인이 서로 모순될 수 있는 두 개의 갈라진 버전으로 분기되기 때문입니다. 분기가 발생하면 이더리움은 항상 가장 긴 체인에 우선순위를 주고 더 짧은 체인은 버리는 방식으로 이를 해결합니다. 서로 경쟁하는 두 체인이 동시에 존재할 수는 있지만, 곧 둘 중 하나가 또 다른 블록을 추가해 다른 하나보다 더 길어집니다. 채굴 알고리즘을 푸는 데 시간이 걸리기 때문에 경쟁하는 체인들이 서로 완벽하게 같은 속도로 계속 성장하는 것은 점점 더 어려워집니다. 결국 하나가 다른 하나를 이기게 됩니다.

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

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

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

블록체인 밖의 정보를 사용하는 애플리케이션(또는 장면)을 만들 때는 재구성 발생 가능성을 염두에 두어야 합니다. 일정 수의 확인이 이루어지고 거래가 더 이상 체인의 맨 끝에 있지 않을 때만 거래를 검증된 것으로 간주하고 싶을 수 있습니다.

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

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


---

# 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 dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

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

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
