계정
Aptos 블록체인의 계정은 온체인 통화와 NFT를 포함한 자산 세트에 대한 접근 제어를 나타냅니다. Aptos에서 이러한 자산은 접근 제어와 희소성을 모두 강조하는 리소스라고 알려진 Move 언어 원시 타입으로 표현됩니다.
Aptos 블록체인의 각 계정은 32바이트 계정 주소로 식별됩니다. www.aptosnames.com에서 Aptos 네임 서비스를 사용하여 주요 계정에 대한 .apt 도메인을 확보하여 기억하기 쉽고 고유하게 만들 수 있습니다.
계정과 주소가 암시적인 다른 블록체인과 달리, Aptos의 계정은 명시적이며 거래를 실행하기 전에 생성되어야 합니다. 계정은 명시적으로 생성하거나 Aptos 토큰(APT)을 전송하여 암시적으로 생성할 수 있습니다. 자세한 내용은 계정 생성 섹션을 참조하세요. 어떤 면에서 이는 거래를 보내기 전에 가스용 자금을 주소로 보내야 하는 다른 체인과 유사합니다.
명시적 계정은 다른 네트워크에서는 사용할 수 없는 일급 기능을 허용합니다:
- 인증 키 회전. 계정의 인증 키를 다른 개인 키로 제어되도록 변경할 수 있습니다. 이는 web2 세계에서 비밀번호를 변경하는 것과 유사합니다.
- 네이티브 멀티시그 지원. Aptos의 계정은 인증 키를 구성할 때 Ed25519와 Secp256k1 ECDSA 서명 체계를 모두 사용하여 k-of-n 멀티시그를 지원합니다.
Aptos에는 세 가지 유형의 계정이 있습니다:
- 표준 계정 - 해당하는 공개/개인 키 쌍이 있는 주소에 해당하는 일반적인 계정입니다.
- 리소스 계정 - 개발자가 리소스를 저장하거나 온체인에 모듈을 게시하는 데 사용하는 해당하는 개인 키가 없는 자율 계정입니다.
- 객체 - 단일 엔티티를 나타내는 단일 주소 내에 저장된 복잡한 리소스 세트입니다.
Alice: 0xeeff357ea5c1a4e7bc11b2b17ff2dc2dcca69750bfef1e1ebcaccf8c8018175bBob: 0x19aadeca9388e009d136245b9a67423f3eee242b03142849eb4f81a4a409e59c
계정 주소
섹션 제목: “계정 주소”현재 Aptos는 계정에 대한 단일하고 통합된 식별자만 지원합니다. Aptos의 계정은 보편적으로 32바이트 16진수 문자열로 표현됩니다. 32바이트보다 짧은 16진수 문자열도 유효합니다. 이러한 시나리오에서는 16진수 문자열을 앞쪽 0으로 패딩할 수 있습니다. 예: 0x1
=> 0x0000000000000...01
. Aptos 표준은 주소에서 앞쪽 0을 제거할 수 있다고 나타내지만, 대부분의 애플리케이션은 그러한 레거시 동작을 피하고 0x0
에서 0xa
범위의 특수 주소에 대해서만 0 제거를 지원하려고 합니다.
계정 생성
섹션 제목: “계정 생성”사용자가 계정 생성을 요청할 때, 예를 들어 Aptos SDK를 사용하여, 다음 단계가 실행됩니다:
- 사용자 계정 관리를 위한 인증 체계 선택, 예: Ed25519 또는 Secp256k1 ECDSA.
- 새로운 개인 키, 공개 키 쌍 생성.
- 공개 키를 공개 키의 인증 체계와 결합하여 32바이트 인증 키와 계정 주소 생성.
사용자는 이 계정과 관련된 거래에 서명하기 위해 개인 키를 사용해야 합니다.
계정 시퀀스 번호
섹션 제목: “계정 시퀀스 번호”계정의 시퀀스 번호는 해당 계정에서 제출되고 온체인에 커밋된 거래의 수를 나타냅니다. 커밋된 거래는 결과 상태 변경이 블록체인에 커밋되어 실행되거나, 상태 변경이 폐기되고 거래만 저장되는 중단으로 실행됩니다.
제출된 모든 거래는 주어진 송신자 계정에 대해 고유한 시퀀스 번호를 포함해야 합니다. Aptos 블록체인이 거래를 처리할 때, 거래의 시퀀스 번호를 보고 온체인 계정의 시퀀스 번호와 비교합니다. 시퀀스 번호가 현재 시퀀스 번호와 같거나 큰 경우에만 거래가 처리됩니다. 거래는 현재 시퀀스 번호부터 연속적인 거래 시리즈가 있는 경우에만 다른 메모리풀로 전달되거나 실행됩니다. 실행은 순서가 맞지 않는 시퀀스 번호를 거부하여 이전 거래의 재생 공격을 방지하고 향후 거래의 순서를 보장합니다.
인증 키
섹션 제목: “인증 키”초기 계정 주소는 계정 생성 중에 파생된 인증 키로 설정됩니다. 하지만 인증 키는 나중에 변경될 수 있습니다. 예를 들어 새로운 공개-개인 키 쌍을 생성하여 키를 회전할 때입니다. 계정 주소는 절대 변경되지 않습니다.
Aptos 블록체인은 다음 인증 체계를 지원합니다:
- Ed25519
- Secp256k1 ECDSA
- K-of-N 다중 서명
- 전용, 현재는 레거시인 MultiEd25519 체계
Ed25519 인증
섹션 제목: “Ed25519 인증”Ed25519 서명에 대한 인증 키와 계정 주소를 생성하려면:
- 키 쌍 생성: 새로운 키 쌍(
privkey_A
,pubkey_A
)을 생성합니다. Aptos 블록체인은 RFC 8032에 정의된 대로 Ed25519 곡선에 대한 PureEdDSA 체계를 사용합니다. - 32바이트 인증 키 파생:
pubkey_A
에서 32바이트 인증 키를 파생합니다:여기서auth_key = sha3-256(pubkey_A | 0x00)|
는 연결을 나타냅니다.0x00
은 1바이트 단일 서명 체계 식별자입니다.