솔리디티 및 블록체인

블록체인 part.03 _ 채굴

채채_._. 2024. 8. 3. 07:46

 

part.02에 이어서✈️

2024.08.02 - [솔리디티 및 블록체인] - 블록체인 만들기 part.02 _ 블록체인 설계

 

블록체인 만들기 part.02 _ 블록체인 설계

part.01에 이어서 ✈️2024.07.21 - [솔리디티 및 블록체인] - 블록체인 만들기 part.01 _ 블록체인 설계 블록체인 만들기 part.01 _ 블록체인 설계1. 아키텍처만 설계  datetime 라이브러리 : 블록이 생성되

chaechae-lee.tistory.com

 

새 블록 채굴을 위한 순서

0. 상호작용

 

flask로 시작하여 app = Flask(__name__) 만 활용하면 flask 기반의 웹 애플리케이션 생성됨.

 

 

블록체인에서 만들었던 인스턴스 객체를 형성하여 블록체인까지 생성.

웹 애플리케이션과 블록체인 모두 상호작용할 준비 완료

 

1. Get 요청 만들기

블록을 얻기 위해 Get, Post는 뭔가를 생성하는 거임

 

첫번째 인수 : URL / 두번째 인수 : Get 메서드

 

2. 작업 증명 문제 해결

 

 

이전 증거가 있는 체인의 마지막 블록을 얻을 수 있는 get previous block 함수 사용

previous block ['proof']를 통해 블록의 증명키를 얻고 작업 증명 메서드를 호출해서 증명을 얻어냄

 

이전에 만든 create block 함수를 호출해야 하며 호출하는 방법은 이전 해시를 얻으면 됨

create block 메서드는 메서드기에 블록인 객체에서 호출해야 하며 블록체인 객체에서는 이미 얻은 증명과 이전 해시를 인수로 메서드를 호출

⚠️ create block 함수는 방금 채굴한 블록을 반환

 

전체 블록체인을 얻기 위한 순서

 

1. Get 요청 만들기

 

 

2. 응답 받기

 

 

두개의 체인의 키를 받아 전체 체인을 응답에 표시하도록 함

len 함수를 활용하여 체인의 길이를 정확하게 얻어냄

 

채굴과 요청

 

 

app 객체의 run 메소드를 실행할 때 host와 port 인수 필요