-
[blockchain] 정의, 특징, 구조블록체인 2022. 9. 17. 00:34반응형
블록체인 : 탈중앙화시스템을 위한 분산원장기술
특징 :
1.익명성: 본인과 상관없는 지갑주소를 통해서 익명성을 가질수 있다 그러나 완전 익명은 아닌듯 준익명
2.추적가능함 : 지갑주소만 알면 모든 거래 내역을 조회 할수 있다. (토네이도 캐쉬?)
3.무신뢰성 : 제3자를 통한 신뢰기관이 필요없다.
4.분산원장 : 제3자를 통한 신뢰를 대신하는 방법은 네트워크에 참여하는 모두가 원장을 다 가지고 있음으로서 해결한다.
5.탈중앙화 : 전통적인 시스템은 중앙화 되어있어서 효율적이지만 공격대상역시 중앙만 공격하면 되서 안전하지 못함.
6.합의알고리즘 : 제3자가 하던일 (옳은 정보가 무엇인가 판단하는일) 을 할수 있는 방법에 대한 알고리즘 (ex. 더긴 체인이 옳은 체인이다.)
7.불변함: 변하지 않는 것은 아니다 다만 변화를 빠르게 감지할수 있다는 점(변화는 블락해시의 변화를 야기하고 이는 다음블락의 이전해시값과 다름으로서 충돌하게됨)규칙
제네시스블락 : 0번째 블락
블락의 첫번째 거래는 블락채굴에 대한 보상거래이다. 거래내역들의 수수료역시 포함 됨
처음에는 블락 채굴시에 50btc 를 줬음 반감기가 있어서 채굴시 보상은 계속 줄어듬
비트코인은 10분에 1개씩 채굴하려고 함
높이는 블락의 순번을 이야기함
블락은 현재 블락의 해시값과 이전블락의 해시값을 가지고 있음
구조 :
헤더 >
해시: 아래내용을 인풋으로 하여 나온 반환되 해시값 16진수 64자리
ver: 비트코인 버젼
prevblock: 이전블락 해시 이부분이 연결되는 체인역할을함
merkleroot : 거래내역을 기반으로한 해시값
timestamp: timestamp
bits & difficulty : 난이도 10분에 1개씩 채굴하기 위해서 값이 조정됨 > 타겟이라는 개념이 있음
nonce : 채굴 시 연산해야 하는 값
바디 > 거래내역과 수수료에 대한 정보
채굴에대하여
채굴이 가지는 의미
채굴 : 블락생성
어떻게 하면 블락이 생성 되는가? (뭐를 해야 블락을 주는가?)
가정이 깔려있음 많은 연산량을 제공한 사람이 옳은 정보를 가지고 있다
nonce 값들을 바꿔가며 해시값을 만들어냄 > 해시값을 타겟과 비교함 > 타겟보다 해시값이 낮아지면 블락생성이 됨(이과정을 가장 빠르게 수행한 채굴자에게 보상을줌) > 2016개의 블락생성마다 난이도 조절을 함 10분당 1개 채굴을 위해서 난이도를 조절함 난이도를 올리면 타겟값이 낮아짐으로써 nonce 값을 구하는데 더 많은 연산을 요구함.
채굴자 : 연산과정을 통해 블락을 생성채굴하면 코인 줌(경쟁적 과정)
사용자 : 채굴한 블락에 거래내역이 담김
시스템 : 생성된 블락에 거래내역을 담아 분산원장하여 시스템유지
'블록체인' 카테고리의 다른 글
[blockchain] 토큰과 프로젝트에 대한고민 그리고 erc20 (0) 2022.09.28 [blockchain] 암호화(2) (1) 2022.09.23 [blockchain] 암호화(1) (1) 2022.09.21 [blockchain] difficulty, target값, blockhash (0) 2022.09.20 [blockchain]하드포크, 스마트 컨트랙트, dapp (0) 2022.08.27