# 🇰🇷 카르다노 배우기: 확장된 UTXO 모델 이해하기

**URL:** <https://forum.cardano.org/t/utxo/120928>\
**Category:** Translations\
**Tags:** korean, cardano, translation, eutxo\
**Created:** [16 August 2023 09:44 UTC](https://forum.cardano.org/t/utxo/120928 "2023-08-16T09:44:50Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![CryptoVeri](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/cryptoveri/32/91508_2.png) [@CryptoVeri](https://forum.cardano.org/u/CryptoVeri)\
**Post date:** [16 August 2023 09:44 UTC](https://forum.cardano.org/t/utxo/120928/1 "2023-08-16T09:44:50Z")

</div>

# 확장된 UTXO 모델 이해하기

> EUTXO 핸드북이 출시되었습니다! [여기에서 카르다노의 EUTXO 회계 모델](https://ucarecdn.com/3da33f2f-73ac-4c9b-844b-f215dcce0628/EUTXOhandbook_for_EC.pdf)에 대해 자세히 알아보세요.

카르다노는 (비트코인과 마찬가지로) 미사용 트랜잭션 출력(UTXO) 기반 블록체인으로, 이더리움과 같은 다른 계정 기반 블록체인과는 다른 회계 모델을 원장에 활용합니다. 카르다노는 다중 자산과 스마트 컨트랙트를 지원하기 위해 알론조 업그레이드를 통해 도입된 혁신적인 [확장된 미사용 트랜잭션 출력(EUTXO) 모델](https://iohk.io/en/blog/posts/2021/03/11/cardanos-extended-utxo-accounting-model/)을 구현하고 있습니다.

## UTXO 모델 개요

UTXO 모델에서 트랜잭션은 _입력_과 _출력_을 가지며, 여기서 입력은 이전 트랜잭션에서 미사용된 출력입니다. 자산은 계정이 아닌 미사용 출력으로 원장에 저장됩니다. 추상적인 용어로 트랜잭션은 이전 출력을 잠금 해제하고 새로운 출력을 생성하는 작업이라고 생각하시면 됩니다.

### 트랜잭션 출력

트랜잭션 출력에는 _주소_(자물쇠로 생각할 수 있음)와 _값_이 포함됩니다. 이 비유에서 주소에 속한 서명은 출력이란 자물쇠를 열 수 있는 열쇠입니다. 잠금이 해제되면 출력을 입력으로 사용할 수 있습니다. 새로운 트랜잭션은 이전 트랜잭션의 출력을 소비하고, 향후 트랜잭션에서 소비할 수 있는 새로운 출력을 생성합니다. 각 UTXO는 전체적으로 한 번만 소비할 수 있습니다. 각 출력은 정확히 하나의 입력에 의해 소비될 수 있으며, 하나의 입력만 _사용_할 수 있습니다.

### 트랜잭션 입력

트랜잭션 입력은 이전 트랜잭션의 출력입니다. 트랜잭션 입력에는 포인터와 잠금 해제 키 역할을 하는 암호화 서명이 포함됩니다. 포인터는 이전 트랜잭션 출력을 다시 가리키고, 키는 이 출력을 잠금 해제합니다. 입력에 의해 출력이 잠금 해제되면 블록체인은 잠금 해제된 출력을 '소비됨’으로 표시합니다. 특정 트랜잭션에 의해 생성된 새로운 출력은 새로운 입력이 가리킬 수 있으며, 따라서 체인은 계속 이어집니다. 이러한 새로운 출력(아직 잠금 해제되지 않은, 즉 소비되지 않은)이 바로 UTXO입니다. 미사용 출력은 말 그대로 아직 사용되지 않은 출력입니다.

요약하자면, 트랜잭션은 이전 트랜잭션에서 미사용 출력을 소비하고, 향후 트랜잭션의 입력으로 사용할 수 있는 새로운 출력을 생성합니다.

 ![eutxo](https://us1.discourse-cdn.com/flex023/uploads/cardano/original/3X/5/f/5f054d2839302096aba5521e1d9bb1b7fc756264.png)

사용자의 지갑은 이러한 UTXO를 관리하고 사용자가 소유한 UTXO와 관련된 트랜잭션을 시작합니다. 모든 블록체인 노드는 전체 UTXO의 하위 집합에 대한 기록을 항상 유지합니다. 이를 UTXO 집합이라고 합니다. 기술적인 용어로, 이는 모든 노드의 데이터 디렉토리에 저장되는 체인 상태라고 할 수 있습니다. 새로운 블록이 체인에 추가되면 체인 상태가 그에 따라 업데이트됩니다. 이 새 블록에는 최신 트랜잭션 목록이 포함됩니다(물론, 체인 상태가 마지막으로 업데이트된 이후 생성된 새로운 트랜잭션과 사용된 UTXO의 기록도 포함됨). 모든 노드는 체인상태의 사본을 정확하게 유지합니다.

## 카르다노의 확장된 UTXO 모델

EUTXO 모델은 두 가지 방식으로 UTXO 모델을 확장합니다:

1. 자물쇠와 열쇠 비유를 사용하여 '주소’의 개념을 일반화합니다. EUTXO 모델에서의 주소는, 자물쇠를 공개 키로, 열쇠를 서명으로 제한하는 대신, 스크립트 형태로 임의적인 로직을 포함할 수 있습니다. 예를 들어, 노드가 트랜잭션을 검증할 때 노드는 트랜잭션이 특정 출력을 입력으로 사용할 수 있는지 여부를 결정합니다. 트랜잭션은 출력 주소에서 제공하는 스크립트를 조회하여 트랜잭션이 출력을 입력으로 사용할 수 있는 경우 스크립트를 실행합니다.
2. 두 번째 차이점은 출력에 주소와 값 외에 (거의) 임의의 데이터를 전달할 수 있다는 점입니다. 따라서 스크립트가 상태 정보를 전달할 수 있어 훨씬 더 강력해집니다.

또한, EUTXO는 출력 주소에 어떤 트랜잭션이 잠금을 해제할 수 있는지 결정하는 복잡한 로직을 포함할 수 있도록 하며, 모든 출력에 사용자 지정 데이터를 추가할 수 있도록 함으로써 UTXO 모델을 확장합니다. 주소의 유효성을 검증할 때 스크립트는 출력에 의해 전달되는 데이터, 검증 대상 트랜잭션, 그리고 트랜잭션이 모든 입력에 대해 제공하는 리디머(redeemer)라고 하는 몇 가지 추가 데이터에 액세스합니다. 이 같은 모든 정보를 조회함으로써 스크립트는 매우 복잡한 상황과 사용 사례에서 ‘예’ 또는 '아니오’라는 답변을 제공할 수 있는 충분한 컨텍스트를 갖추게 됩니다.

EUTXO는 스크립트 형태의 임의 로직을 지원합니다. 이 임의 로직은 트랜잭션과 데이터를 검사하여 트랜잭션이 입력을 사용할 수 있는지 여부를 결정합니다.

그래프 구조의 UTXO 모델은 기존의 스마트 컨트랙트 지원 블록체인에서 사용하는 계정 기반 모델과는 근본적으로 다릅니다. 따라서 계정 기반 블록체인의 디앱에서 작동하는 디자인 패턴은 카르다노에 바로 적용되지 않습니다. 데이터의 기본 표현이 다르기 때문에 새로운 디자인 패턴이 필요합니다.

UTXO는 하나의 브랜치가 일련의 검증을 필요로 하는 트랜잭션의 시퀀스로 정의되는 UTXO(비트코인) 모델의 브랜치별 디자인(per-branch design)을 계승합니다. 여러 브랜치에 걸쳐 로직을 분할하고 병렬성을 높이려면, 다중 UTXO를 사용해 디앱과 기타 솔루션을 구축하는 것이 필수적입니다. 이는 비트코인 서비스를 개발하기 위해 하나의 지갑을 여러 개의 하위 지갑으로 분할하는 것과 마찬가지로 확장 측면에서 이점을 제공합니다.

## EUTXO의 장점

카르다노의 EUTXO 모델은 시스템 오류 없이 다중 작업을 처리할 수 있는 안전하고 다기능적인 환경을 제공합니다. 이 모델은 더 나은 확장성과 프라이버시를 제공할 뿐만 아니라 각 UTXO가 한 번만 소비될 수 있기 때문에 트랜잭션 로직이 더 단순해져 트랜잭션 검증이 훨씬 간편해집니다.

EUTXO 모델은 다른 계정 모델에 비해 차별화된 이점을 제공합니다. 트랜잭션 검증의 성공과 실패는 트랜잭션 자체와 입력값에만 의존하며, 블록체인의 다른 어떤 요소에도 의존하지 않습니다. 따라서 트랜잭션이 블록체인으로 전송되기 전에 오프체인에서 트랜잭션의 유효성을 확인할 수 있습니다. 다른 트랜잭션이 트랜잭션이 예상하는 입력을 동시에 소비하는 경우 트랜잭션이 실패할 수 있지만, 모든 입력이 여전히 존재한다면 트랜잭션의 성공은 보장됩니다.

이는 (이더리움에서 사용하는) 계정 기반 모델과 대조적으로, 트랜잭션이 스크립트 실행 도중에 실패할 수 있습니다. EUTXO에서는 이런 일이 절대 일어나지 않습니다.

트랜잭션 검증의 ‘로컬’ 특성으로 인해 높은 수준의 병렬 처리가 가능합니다. 노드는 원칙적으로 트랜잭션이 동일 입력을 소비하려 하지 않는다면 트랜잭션의 유효성을 병렬로 검증할 수 있습니다. 이는 효율성과 추론, 가능한 결과의 분석을 단순화하고 '나쁜 일이 일어나지 않을 것’임을 증명하는 데 유용합니다. EUTXO 모델 블로그 게시글에서 더 자세히 알아보세요.

EUTXO 모델의 강력한 특징은 트랜잭션을 게시하기 전에 유효한 트랜잭션에 필요한 수수료를 정확하게 예측할 수 있다는 것입니다. 이는 계정 기반 모델에서는 찾아볼 수 없는 독보적인 기능입니다. 이더리움과 같은 계정 기반 블록체인은 불확정적이기 때문에 거래의 온체인 효과를 보장할 수 없습니다. 이러한 불확실성은 금전적 손실의 위험, 예상치 못한 높은 수수료, 적대적 행위에 대한 잠재적 가능성을 초래합니다.

요약하자면, EUTXO는 더 높은 보안, 스마트 컨트랙트 실행 비용 예측 가능성(예상치 못한 돌발 상황 없이), 더욱 강력한 병렬 처리 능력을 제공합니다.

* * *

\* Source: [https://docs.cardano.org/learn/eutxo-explainer/](https://docs.cardano.org/learn/eutxo-explainer/)  
\* Translation: Ilhun@CryptoVeri [:twitter:](https://twitter.com/CryptoVeri_)[enics\_sky@naver.com](mailto:enics_sky@naver.com)

---

<div class="post-metadata">

**Author:** ![CryptoVeri](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/cryptoveri/32/91508_2.png) [@CryptoVeri](https://forum.cardano.org/u/CryptoVeri)\
**Post date:** [16 August 2023 09:46 UTC](https://forum.cardano.org/t/utxo/120928/2 "2023-08-16T09:46:45Z")

</div>

[EUTXO 매뉴얼 (한글 번역본)](https://forum.cardano.org/t/eutxo/115363)을 참조해보세요.

> [@kr EUTXO 핸드북 (통합본)](https://forum.cardano.org/t/eutxo/115363):
>
> EUTXO 핸드북 소개 블록체인 회계 모델이란 무엇인가? UTXO 모델 vs 계정/잔고 모델: 간략한 개요 UTXO UTXO 모델의 ‘거스름돈’ 개념 UTXO 모델의 장점 계정/잔고 모델 EUTXO 모델 트랜잭션에 대해 해야할 이야기: 출력과 입력 트랜잭션 출력 트랜잭션 입력 UTXO의 작동 방식 EUTXO: 카르다노의 선택 배경 플루투스 코어 EUTXO 모델은 UTXO를 어떻게 확장하는가? EUTXO는 2022년에 Cardano를 확장하기 위한 발판 비영구적 손실에 대해 항상 알고 싶었지만 묻기 두려웠던 모든 것 비영구적 손실: 정의 AMM vs 오더북 AMM 오더북 비영구적 손실의 예측 (불)가능성 UTXO 기반 체인 vs 계정/잔고 체인의 비영구적 손실 비영구적 손실에 대한 보루로서의 EUTXO 및 오더북 DEX 설계 글로벌 상태가 EUTXO 기반 체인에서 문제가 되지 않는 이유 추가 개선 사항 결론: EUTXO 모델이 혁신적이고 적…
