구조 3

Structure of CryptoKitties

- KittyAccessControl: 크립토키티의 관리자 계정 설정 및 긴급 상황시 크립토키티를 pause/unpause하는 전반적인 관리 기능 - KittyBase: 크립토키티 구조체 정의 및 생성, 전송 기능 - KittyOwnership: 크립토키티의 ERC721 토큰화 기능 - KittyBreeding: 크립토키티의 교배 기능 - KittyAuction: 크립토키티를 옥션과 연동시키는 기능 - KittyMinting: Gen 0 및 프로모션 키티를 생성하는 기능 - KittyCore: 크립토키티 정보를 조회하는 기능

이더리움의 Account Structure (2) - 자료구조

각각의 블록헤더에는 StateRoot가 있는데, 이더리움은 많은 상태의 효율적으로 계산과 변경을 위해 Merkle Patricia Trie 구조를 사용하기 때문이다. 위 다이어그램의 월드 스테이트 트리(World State Trie)에는 EOA와 CA의 1. nonce(이중지불 방지) 2. balance(잔고) 3. codeHash 4. storageRoot 라는 또 다른 해시트리의 루트값 이 있다. transactionRoot는 트렌젝션들의 해시트리 루트값 (트랜잭션 실행 명세) receiptRoot는 이벤트 로그들의 해시트리 루트값이다 (트랜잭션 결과값) storageRoot - Account storage contents Trie라고 하는 해시트리의 루트값 - CA들의 stroage 정보를 저장한다..

이더리움의 Account Structure (1)

Account의 종류 1. EOA - 사용자가 프라이빗 키로 직접 관리 - eth 전송, contract 호출 등 다양한 활동을 할 수 있다. - 계정 생성에 비용이 발생x 2. CA - 생성한 사용자의 정보에 의해서 네트워크에서 Account를 생성 - 사용자의 호출에 따라 State변경, 함수 호출 ,eth 전송 등 다양한 활동을 할 수 있다. - 계정 생성에 코드의 크기에 따른 비용이 발행, 이 비용은 생성자가 지불 Account의 State 저장 타입 1. noce - 계정에서 전송한 트랜잭션의 수를 기록, 0부터 시작 2. balance - 계정의 잔고(잔액)을 표시한다. Wei 단위로 표기 3. codeHash - CA만 가진 데이터이며, EOA는 빈 공간으로 가지고 있다. - 컨트랜트 코드의..