일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- BAEKJOON
- rust
- Kubernetes
- RabbitMQ
- 동시성
- Network
- Python
- Container
- Refactoring
- 러스트
- docker
- 알고리즘
- guru
- IMAGE
- Ethereum
- 코어 이더리움 프로그래밍
- 이더리움
- AWS
- 백준
- 전문가를 위한 파이썬
- 블록체인
- fluent python
- Thread
- BlockChain
- Fast API
- 파이썬
- 플랫폼
- Algorithm
- function
- dockerfile
- Today
- Total
글쓰기 | 방명록 | 관리 |
목록전체 글 (99)
Victoree's Blog
앱의 시작. 플러터앱의 프로젝트 구조를 잡고 스플레쉬 이미지를 만들어보려고 하자마자 궁금한 클래스가 생겨 이렇게 정리해봅니다. :) Scaffold란? Implements the basic material design visual layout structure. This class provides APIs for showing drawers and bottom sheets. To display a persistent bottom sheet, obtain the ScaffoldState for the current BuildContext via Scaffold.of and use the ScaffoldState.showBottomSheet function. 위 설명 그대로, 기본적인 Material Des..
블록체인 어카운트의 상태 전이를 유발하는 트랜잭션들과 모든 관련 정보는 블록이라는 구조체에 저장됨 블록들은 시간순으로 체인처럼 연결되어있음 P2P 네트워크와 동기화 프로토콜을 통해 네트워크에 연결된 모든 노드에 전파되어 공유됨 블록 블록 헤더, 엉클 블록, 트랜잭션으로 구성됨 블록을 체인에 추가할 때 필요한 마이닝 작업의 난이도도 포함되어 있음 Etherscan.io 이더리움의 모든 정보를 탐색하고 조회할 수 있는 서비스 제공 실제 이더리움 네트워크에 참여해 모든 정보를 동기화해서 정보를 MongoDB로 옮긴 후 분석 type Bloom [32]byte type Header struct { ParentHash common.Hash UncleHash common.Hash Coinbase common.Has..
2. 어카운트 생성 어카운트 생성 모든 어카운트는 개인 키와 공개키의 쌍으로 정의됨 → 비대칭키 비대칭키 생성 시 RSA, ECDSA, DSA 등의 알고리즘이 존재함 256비트 ECDSA(타원형 곡선 방식)을 사용 secp256kl 라이브러리(C++)를 Go언어로 매핑하여 사용 암호 해시 알고리즘 Keccak256을 사용하여 32바이트의 고정값을 생성해내고, 이 중 20바이트를 절삭하여 어카운트 주솟값을 사용함 어카운트 상태 어카운트들이 모인 것 → 상태 : stateObject로 표현함 상태 변경을 하려면 stateObject 접근 후 변경 가능 변경된 어카운트는 CommitTrie()를 호출하여 변경된 Trie를 ethdb 패키지를 통해 LevelDB에 업데이트 type stateObject stru..
이더리움 플랫폼 구성 1. 데이터 계층 어카운트 모든 트랜잭션의 실행 주체이자 기본단위 Type : 외부 소유 어카운트 / 컨트랙트 어카운트 1) 외부 소유 어카운트 EOA 사용자 어카운트 사용자가 직접 개인로 관리하며, 스마트 컨트랙트 실행 코드를 가지고 있지 않음 키를 분실하면, 어카운트도 분실하게 됨 개인키를 이용해 서명된 트랜잭션을 생성하고, 실행함으로 다른 EOA나 컨트랙트 어카운트에 메시지를 보낼 수 있음 EOA 간 메시지는 보통 이더 전송 용 EOA는 메시지를 보내 코드를 실행시켜 다양한 결과를 만들 수도 있음 2) 컨트랙트 어카운트 CA 스마트 컨트랙트의 정식 용어가 컨트랙트 어카운트이다 EOA나 CA로 부터 메시지를 받아 내부 스마트 컨트랙트 코드를 실행한 후, 새 컨트랙트를 생성하거나 ..
이더리움 단일 상태 모델 이더리움 상태 전이 모델 이더리움은 네트워크상에서 서로 모르고, 신뢰할 수 없는 개인들의 합의 과정을 통해 트랜잭션이 처리되도록 설계되었다. 트랜잭션이 발생할 때마다 신뢰여부를 참여자들에게 묻고, 과반수가 문제 없다는 합의가 된 경우에만 해당 트랜잭션이 정상처리된다. 트랜잭션이 완료되었을 때, 어카운트의 상태 변화가 일어난다 이더리움에서의 거래, 상태 전이 based on "상태변이 함수" 특정 상태변이 함수에 의해 특정 상태가 전이되거나, 전이에 실패하면 이전 상태로 복귀 EX) 트랜잭션 또는 스마트 컨트랙트 (이더리움 가상머신에서 실행되는 프로그램) 상태는 복수의 상태 변이를 가지 못하고, 단 하나의 상태 변이만 갖음 이더리움의 기본 단위 → 어카운트 모든 어카운트는 유니크한..
이더리움 플랫폼 이더리움 작동 과정 블록체이 기술 하에 Ether 같은 다양한 암호화폐를 생성하고 운용할 수 있음 네트워크 상에서 서로 신뢰할 수 없는 대상간에 서로 합의한 계약을 준수하도록 강제하는 스마트 컨트랙트를 지원 이더리움은 프로그래밍한 대로 작동하는 스마트 컨트랙트를 작동시키는 분산된 플랫폼이다 이더리움 플랫폼의 작동과정 이더리움 지갑 및 계정 생성 매매 / 환전 이더 송금 상품 구매 / 이더 결제 상품 판매 이더 수취 블록 N-1 헤더 해싱 계산 (Proof of Work) → 신규 블록 추가 & 브로드 캐스팅 이더리움 플랫폼 개발 컨트랙트 기반 응용 서비스 개발 스마트 컨트랙트 기반 DApp 서비스 블록 내부 데이터 블록 헤더 타임스탬프 이전 블록 헤더의 해시값 넌스 머클 트리 루트 1. ..