본문 바로가기
세상공부

블록체인이란 무엇인가? 왜 블록체인을 배워야 하는가(2)

by 정글왕 안병만 2019. 8. 22.

오늘은 지난 게시물에 이어서 블록체인이 생성되는 과정과

왜 안전한지에 대해서 얘기하도록 하겠습니다.

 

 

머클트리(해쉬트리) 구조

 

블록은 머클트리 방식으로 이루어져 있습니다.

여러 거래 데이터들이 일정한 시간 간격으로 블록에 쌓이는데

데이터 자체에 해쉬함수를 적용하고 이후에

2개씩 묶어서 하나의 데이터로 만드는 작업을 하게 됩니다.

이 작업을 할 때도 역시 해쉬함수를 적용시킵니다.

이런식으로 계속해서 2개씩 묶는 작업을 마지막 1개가

남을 때까지 진행시킵니다.

 

블록의 맨 윗부분을 헤드 블록이라고 부르는데

이 헤드 블록에는 최종거래데이터와 이전 블록의 위치를

알려주는 해쉬값, 다음 블록의 위치를 알려주는 해쉬값,

난수목표값이 정해져 있습니다.

 

하나씩 살펴보자면 블록체인의 블록들은 보안성을

높이기 위해 생성된 순서대로 연결되어 있지 않습니다.

실제 이전 블록의 위치와 다음 블록의 위치는 헤드 블록안에

담아둠으로써 해킹의 과정을 늘려버리는 것입니다.

또한 블록체인은 만약 데이터들 중 하나라도 변경이 되면

그 즉시 모든 데이터들을  훼손시키고 새롭게

머클 트리를 재작성합니다.

만약 해커가 해킹을 하려고 시도한다면

거래 데이터들에 대한 해쉬값을 모두 풀어내고

이전블록의 위치와 다음 블록의 위치까지 알아내고

이 블록들도 모두 해킹해야 하는데 사실상

그것은 불가능한 일이라고 볼 수 있습니다.

 

난수목표에 대해서 말씀드리도록 하겠습니다.

이것은 간단히 말하면 해쉬함수를 푸는 것에 대한 난이도로

연결되어 있는 네트워크들이 경쟁해서 풀어야하기에 설정해놓는 것입니다.

난수 목표가 3이라면 해쉬함수값의 앞에 0이 3개가 나와야 하는 것입니다.

예를 들어서 난수생성기에서 랜덤한 난수를 던져놓고서는

난수목표를 5로 잡는다면 00000으로 시작하는 해쉬값이

도출되도록 해야 하는 것입니다.

그리고 이걸 풀어내면 이제 블록이 최종적으로 닫히면서

난수를 맞춘 네트워크에게는 채굴된 가상화폐가 지급되는 것입니다.

 

탈중앙화와 보안성 이외에도 블록체인이 좋은 점은

거래 수수료가 저렴하다는 것입니다.

기존의 거래들에 비해서 저렴한 수수료로 진행할 수 있기에

많은 사업분야에서 블록체인을 도입하고 있습니다.

특히 해외송금은 거쳐야하는 중간 단계의 업체가 많아서

수수료가 높은 편인데 블록체인을 활용한다면

네트워크만 연결되어있다면 전 세계 어디에서나

쉽게 거래가 이루어지기에 수수료가 저렴해지는 것입니다.

 

이외에도 블록체인의 특징은 굉장히 많은데 이에 대해서는

추후에 하나씩 깊게 파면서 그 특징을 알아보도록 하겠습니다.

댓글