Skip to content

도서 '파이썬으로 공부하는 블록체인': 실습 예제 코드 연습

Notifications You must be signed in to change notification settings

juwonleedev/python-blockchain

Repository files navigation

python-blockchain

이 프로젝트를 통해 파이썬을 사용하여 블록체인 기술을 학습하고, 간단한 비트코인 및 이더리움 네트워크를 모델링하는 방법을 탐구했습니다. 원본 소스 코드와 실습 예제는 여기에서 찾을 수 있습니다.

1. 블록체인 및 파이썬 기초 (ch1-2)

블록체인의 기본 정의와 구성 요소를 다룹니다. 블록체인 기술의 핵심인 암호해시와 함께 파이썬에서 함수와 객체 사용 방법, SQLite3을 활용한 데이터베이스 관리, Flask를 이용한 백엔드 개발 및 API 구성 방법에 대해 공부했습니다.

주요 주제:

  • 블록체인 정의 및 구성 요소
  • 암호해시
  • 파이썬: 함수, 객체
  • 데이터베이스: SQLite3
  • 백엔드 개발: Flask, API

2. 간단한 비트코인 네트워크 구축 (ch3)

비트코인 네트워크의 기본적인 구성과 운영 방법을 배웠으며, 블록체인 노드의 구축부터 운영까지 다양한 실습을 포함합니다.

내용:

  1. 블록체인 노드 구축 (one_node.ipynb): 파이썬 패키지 호출, 블록체인 객체 및 노드 생성 방법.
  2. 운영 중인 노드에 실행 명령 (one_node_command.ipynb).
  3. 블록 스캔 사이트 (one_node_chainScan.ipynb): 백엔드 및 프론트엔드 개발.
  4. 블록 Wallet 사이트 (one_node_Wallet.ipynb): 백엔드 및 프론트엔드 개발.
  5. 여러 개의 노드 연결 (node_network_1.ipynb 등): 여러 노드 운영을 위한 추가 사항들.

3. 간단한 이더리움 네트워크 구축 (ch4,5)

이더리움 네트워크 구축과 스마트 컨트랙트 기능의 구현 방법을 배웁니다. 또한, PoW 대신 PoS 작업 방식을 적용하는 방법에 대해서도 학습합니다.

스마트 컨트랙트 기능 추가:

  • 블록체인 객체에 스마트 컨트랙트 인자 추가.
  • 파이썬 exec 함수를 사용한 스마트 컨트랙트 코드 실행.
  • 실제 command 파일을 통한 스마트 컨트랙트 코드 실행.

PoS 작업 방식:

  • PoW 사용 시 논스와 같은 기능 대신, Validator와 예치 지분율 등 PoS에 필요한 정보와 메소드 추가.
  • 한 노드에서 여러 노드로, 그리고 스마트 컨트랙트까지 확장된 내용

About

도서 '파이썬으로 공부하는 블록체인': 실습 예제 코드 연습

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published