거래 및 상태
Aptos 블록체인은 세 가지 유형의 데이터를 저장합니다:
- 거래: 거래는 블록체인에서 계정이 수행하려는 의도된 작업을 나타냅니다 (예: 자산 전송).
- 상태: (블록체인 원장) 상태는 거래 실행 출력의 누적, 즉 모든 리소스 내에 저장된 값들을 나타냅니다.
- 이벤트: 거래 실행에 의해 게시되는 보조 데이터입니다.
Aptos 거래는 송신자의 계정 주소, 송신자의 인증, Aptos 블록체인에서 수행하려는 원하는 작업, 그리고 송신자가 거래를 실행하기 위해 지불할 의향이 있는 가스 양과 같은 정보를 포함합니다.
거래 상태
섹션 제목: “거래 상태”거래는 다음 상태 중 하나로 끝날 수 있습니다:
- 블록체인에 커밋되고 실행됨. 이는 성공적인 거래로 간주됩니다.
- 블록체인에 커밋되었지만 중단됨. 중단 코드는 거래가 실행에 실패한 이유를 나타냅니다.
- 불충분한 가스, 잘못된 거래 형식, 또는 잘못된 키와 같은 검증 확인으로 인해 거래 제출 중 폐기됨.
- 거래 제출 후 실행 시도 전에 폐기됨. 이는 타임아웃이나 계정에 영향을 미치는 다른 거래로 인한 불충분한 가스로 인해 발생할 수 있습니다.
송신자의 계정은 커밋된 거래에 대해 가스가 청구됩니다.
거래 제출 중에, 제출자는 성공적인 제출 또는 검증 실패 이유에 대해 알림을 받습니다.
성공적으로 제출되었지만 최종적으로 폐기된 거래는 접근 가능한 Aptos 노드나 Aptos 네트워크 내에서 보이는 상태가 없을 수 있습니다. 사용자는 거래를 다시 검증하기 위해 동일한 거래를 다시 제출할 수 있습니다. 제출 노드가 이 거래가 여전히 유효하다고 판단하면, 동일한 거래가 제출되었다는 오류를 반환할 것입니다.
제출자는 진행을 돕고 하위 스트림에서 거래 폐기를 야기했을 수 있는 것을 조정하기 위해 가스 비용을 미미한 양만큼 증가시켜 볼 수 있습니다.
거래의 내용
섹션 제목: “거래의 내용”블록체인의 서명된 거래는 다음 정보를 포함합니다:
- 서명: 송신자는 디지털 서명을 사용하여 거래에 서명했음을 확인합니다 (즉, 인증).
- 송신자 주소: 송신자의 계정 주소.
- 송신자 공개 키: 거래에 서명하는 데 사용된 개인 인증 키에 해당하는 공개 인증 키.
- 페이로드: Alice를 대신한 액션 또는 액션 세트를 나타냅니다. Move 함수의 경우, 체인의 Move 바이트코드에 직접 호출합니다. 또는 Move 바이트코드 피어 투 피어 거래 스크립트일 수 있습니다. 또한 함수 또는 스크립트에 대한 입력 목록을 포함합니다. 이 예제에서는 Alice 계정에서 Bob의 계정으로 Aptos 코인 양을 전송하는 함수 호출로, Alice의 계정은 거래 전송으로 암시되고 Bob의 계정과 양은 거래 입력으로 지정됩니다.
- 가스 단위 가격: 송신자가 거래 실행을 위해 가스 단위당 지불할 의향이 있는 금액입니다. 이는 Octas로 표현됩니다.
- 최대 가스 양: 송신자가 이 거래에 대해 지불할 의향이 있는 APT의 최대 가스 양입니다. 가스 요금은 계산 및 IO로 커버되는 기본 가스 비용에 가스 가격을 곱한 것과 같습니다. 가스 비용에는 APT 고정 가격 저장 모델을 사용한 저장도 포함됩니다. 이는 Octas로 표현됩니다.
- 가스 가격 (지정된 가스 단위): 이는 송신자가 거래를 실행하기 위해 가스 단위당 지불할 의향이 있는 금액입니다. 가스는 계산과 저장에 대한 지불 방법입니다. 가스 단위는 고유한 실제 가치가 없는 계산의 추상적 측정입니다.
- 시퀀스 번호: 이는 실행 시점에 송신자 계정의 시퀀스 번호와 같아야 하는 부호 없는 정수입니다.
- 만료 시간: 거래가 유효하지 않게 되는 (즉, 만료되는) 타임스탬프입니다.
거래 페이로드 유형
섹션 제목: “거래 페이로드 유형”주어진 거래 내에서, 가장 일반적인 두 가지 페이로드 유형은 다음과 같습니다:
- 엔트리 함수 페이로드: 체인에 이미 게시된 Move 함수에 대한 호출입니다.
- 스크립트 페이로드: 실행할 Move 바이트코드입니다 (인라인 스크립트).