한국어
자유게시판

Qtum의 계정 추상화 계층 (AAL) 설명

title: 퀀텀아이콘껀텀 2018.08.23 12:03 조회 수 : 2980 추천:1

 

 

Qtum의 계정 추상화 계층 (AAL) 설명

 

이전 기사 에서 설명한 것처럼 Qtum은 Bitcoin의 UTXO 모델을 기반으로하지만 Ethereum에서 제공하는 계정 모델을 사용하여 스마트 계약을 만들고 실행할 수 있습니다. 이 작업을 만드는 마법은 "Account Abstraction Layer"라고 불리는 것입니다. 이름에서 알 수 있듯이 EVM (또는 곧 나오는 Qtum x86 VM)과 같은 가상 머신이 Qtum의 힘을주는 UTXO 모델.

UTXO 모델에서는 변경 사항이 생성되고 트랜잭션이 동전을 이동함에 따라 종종 공개 키와 개인 키 쌍이 많이 있습니다. 지갑은 동전을 보유하는 공개 키 목록을 유지하며 10 개의 Bitcoins 또는 Qtum은 10 개의 다른 UTXO로 분할 될 수 있습니다. 계정 모델에서는 모든 것이 계정 주소 : 데이터베이스의 잔액으로 단순화되어 계약서만으로 잔액을 송금 / 수신 할 수 있습니다.

UTXO가 있다면 계약서의 가치에서 주소로 보낼 때 계약서에서 사용할 동전을 어떻게 선택할 수 있습니까?
문제의 계약 잔고를 조정하여 VM에서 일반적으로 수행되는 계약 간의 내부 거래는 어떻게됩니까?
모든 지출 거래를 명시 적으로 기록해야하는 UTXO 모델을 어떻게 모델링합니까?

트랜잭션이 글로벌 공유 컴퓨터에 제출되면 트랜잭션은 opcode 집합을 제공하는 "Bitcoin Script"와 함께 아래 이미지와 같이 디코드됩니다 .

 

1*GV0hS2gwoVXzLKzKvX_SEw.png
https://en.bitcoin.it/wiki/Transaction의 이미지

cryptocurrency wallet 소프트웨어는 컴퓨터 에서이 opcode 를 실행 합니다. 이 예에서 명령은 제공된 공개 키가 트랜잭션의 서명과 일치하는지 확인하기 위해 트랜잭션을 확인하도록 소프트웨어에 지시합니다.

Qtum의 AAL은 Bitcoin opcode에 새로운 계약 코드 몇 개를 추가하여 현명한 계약을 지원합니다.

OP_CREATE : 새로운 스마트 계약을 생성하는 데 사용됩니다  
OP_CALL : 기존 스마트 계약 내에서 코드를 실행하는 데 사용됩니다 
. OP_SPEND : 스마트 계약 에서 값을 사용하는 데 사용됩니다 .

블록 작성 프로세스 중에는 유효성 검사기의 소프트웨어가 Qtum 트랜잭션의 스크립트를 구문 분석하고 이러한 opcode를 사용하는 트랜잭션을 처리 할 때이를 EVM을 통해 처리하도록 따로 설정합니다. 그런 다음 EVM 계약 트랜잭션은 유효성 검사기 노드에 의해 실행되는 특수 "예상 계약 트랜잭션 목록"으로 처리됩니다. 그런 다음 이러한 트랜잭션은 EVM에 대해 실행되고 출력 결과는 소비 가능한 Qtum tx로 변환됩니다. 계약을 실행하는 동안 계약서에서 다른 계약을 호출하면 해당 트랜잭션도 명시 적 Qtum tx로 변환되어 현재 블록에 연결됩니다.

1*DdWRo9TFOkdY8yzOSVYN5g.png
예상 계약 TX 목록을 보여주는 Qtum 블록 체인 검증

참고 :이 이미지는 이전 버전의 opcodes를 특징으로하는 Qtum 백서에서 가져온 것입니다.

OP_EXEC_ASSIGN은 (는) OP_CREATE입니다.
OP_EXEC은 이제 OP_CALL입니다.
이제 OP_TXHASH이 (가) OP_SPEND입니다.

OP_CREATE, OP_CALL 및 OP_SPEND 트랜잭션을 모두 사용 가능하게함으로써 Qtum UTXO 세트의 크기를 실제로 관리 할 수 ​​있습니다. 계약서 자체가 파괴되면 OP_CREATE 트랜잭션이 예를 들어 UTXO 풀에서 제거됩니다.

계약이 하나 이상의 UTXO를 소유하고있을 때 처리하는 또 다른 단순화가 있습니다. 계약에 대해 하나 이상의 UTXO가 존재할 때마다 계약서가 사용해야하는 코인을 선택하는 대신 (이전 버전의 Qtum처럼) 새로운 tx가 생성되어 하나의 UTXO로 결합됩니다.

UTXO 모델의 가스 요금 환급에 관한 문제도 존재합니다. Ethereum 용 가스 모델은 계약 이행 비용을 과대 평가하고 실행 후 나머지 금액을 지출 계좌 잔액으로 환원하여 환급합니다. 이것은 내부 거래를 통해 Accounts 모델에서 상대적으로 쉽게 이루어 지지만 UTXO 모델에서는 유효성 검사기가 모든 가스를 다 사용하지 않는 거래에 대한 수수료를 부분적으로 환불하는 것은 불가능합니다. 또한 가스가 고갈 된 거래를 롤백하고 사용 된 가스를 밸리데이터에게 크레딧 할 수 있어야합니다.

Qtum에서 가스 요금을 환급하는 것은 해당 블록에 대한 코인베이스 거래의 일부로 새로운 산출물을 생성하여 작동합니다. 입력 가스는 모두 소비되어 유효성 검사기에 전달되며 유효성 검사기는 거래 발송자에게 가스 환불액을 제공하는 출력을 코인베이스 거래에 포함해야합니다. 이러한 환불은 새로운 블록 유효성 확인 합의 규칙을 사용하여 시행됩니다. 그렇지 않으면 유효성 검사기가 가스를 전혀 반환하지 않을 수도 있습니다.

거래가 가스 요금을 실제로 지정하고 보내는 방법에 또 다른 문제가 있습니다. UTXO 모델에서 가스 및 거래 수수료는 함께 합쳐져서 보내 지므로 거래를 중계하는 수수료와 가스 사용량 및 사용 된 금액과 비교 한 환불 금액을 어떻게 분리 할 수 ​​있습니까? 이것은 새로운 간단한 수수료 모델을 통해 수행됩니다.

 
1*8N8mIlIeCzzVh-eYraol3A.png
Qtum 백서의 가스 요금 모델

계약 실행을 완료 한 후, 검증 자들이 블록 보상을 검색하기 위해 사용하는 코인베이스 트랜잭션에 출력을 추가하여 나머지 가스 수수료를 주어진 가스 반환 스크립트로 반환해야합니다.

AAL은 Bitcoin 스크립트에 몇 가지 새로운 opcode를 추가하여 Qtum UTXO 모델에서 계약 자금을 생성, 실행 및 처리 할 수있는 마술 소스입니다. UTXO 트랜잭션은 구문 분석 된 다음 EVM 트랜잭션으로 변환됩니다. 그런 다음이 EVM 트랜잭션이 처리되어 계약서에 따라 새로운 UTXO 트랜잭션이 생성됩니다. 그런 다음 AAL은 이러한 모든 EVM 트랜잭션을 처리하여 글로벌 상태를 업데이트하고 Qtum UTXO 트랜잭션을 새 블록에 추가합니다.

https://blog.qtum.org/qtums-account-abstraction-layer-aal-explanation-143cb06cf08

번호 제목 글쓴이 날짜 조회 수
공지 큐바오(큐백x)Qrc20 코인 출금방법 [133] title: 퀀텀아이콘슈퍼스테이커 2021.02.24 180167
공지 [Q-helper] 퀀텀 코어의 수량이 맞지 않게 표시되는 오류 해결 방법 [1] title: 퀀텀아이콘슈퍼스테이커 2021.01.24 151563
공지 연이자 약5% 슈퍼스테이커 운영중입니다 수수료3%(0.5개당0.015개) [12] title: 퀀텀아이콘슈퍼스테이커 2020.12.15 104993
공지 글쓰기 레벨 안내입니다. [59] QTUM 2019.07.09 105828
11952 퀀텀코어에서 빗썸으로 퀀텀보내기 질문 [5] 나리다솜 2025.03.09 2154
11951 퀀텀 하드포크 업그레이드 4,590,000 블록 (2025년 2월 15일) [2] title: 스텔라쿵 캐리커쳐 #1타이어 2024.12.07 2000
11950 다들 잘 계신가요? [4] title: 퀀텀아이콘Otum 2024.11.15 3335
11949 퀀텀 해킹 당한 듯 합니다. [4] 다온 2024.10.06 2180
11948 마지막으로 사과의 말씀을 남깁니다. [5] title: 퀀텀아이콘퀀텀교주 2024.09.21 2356
11947 크레이그 해밀턴 파커가 2020년에 했던 북한예언 타미한 2024.09.18 1637
11946 단톡방 비번 아시는분 쪽지좀 부탁드립니다ㅜ [1] JonyPark 2024.06.06 1856
11945 퀀텀코어 해킹관련 문의드립니다. [3] JonyPark 2024.06.06 4082
11944 QtumOS 대신 Raspberry Pi OS 설치로 해결했습니다. title: 퀀텀아이콘빵먹는곰돌이 2024.05.15 1746
11943 라즈베리파이 지갑버전을 이전으로 돌리고 싶습니다. title: 퀀텀아이콘빵먹는곰돌이 2024.05.11 1341
11942 라즈베리파이에서 지갑실행 오류가 나고 있습니다. [3] title: 퀀텀아이콘빵먹는곰돌이 2024.05.07 1866
11941 블라) 하이브-민희진 타임라인 정리 [1] 이상환 2024.04.25 2322
11940 출생아수 19000명 현실체감 [1] 이상환 2024.04.25 1887
11939 요즘 유행하고있는 아파트 입주 문화 이상환 2024.04.25 1657
11938 코인판에 좀 전에 누가 올린 글인데 [3] 불꽃 2024.04.17 2080
11937 다들 살아계신가요? [5] 갓퀀텀 2024.03.23 2185
11936 Qtum Core v25.1 출시 [2] title: 스텔라쿵 캐리커쳐 #1타이어 2024.03.05 2064
11935 4년만에 들어와본 퀀텀 커뮤니티~ [4] 차이 2024.03.04 1774
11934 퀀텀의 내일은 어떻게 될까요? [7] 불꽃 2024.02.21 2516
11933 날이 너무 춥네요. 강민2 2024.01.23 1365

포인트랭킹

순위 닉네임 포인트
1위 title: 스텔라쿵 캐리커쳐 #1타이어 8529395점
2위 슈퍼비트 7426550점
3위 title: 퀀텀아이콘빵먹는곰돌이 7176044점
4위 title: 스텔라쿵 캐리커쳐 #1미스릴 7172746점
5위 불꽃 6888150점
6위 title: 퀀텀아이콘봄이 6151150점
7위 지금감사 5822300점
8위 밀키웨이 3048000점
9위 빵상 2975450점
10위 대바기 2728250점