본문 바로가기
New Tech Trend

[재미로 읽는 공학-2] 블록체인(Block Chain)과 비트코인(Bitcoin)

by 노마드공학자 2020. 12. 9.

출처 : Wikimedia, Block chain black

 

이 전글에서 블록체인이

 

왜 탄생하게되었는지 얘기해보았습니다.

 

그럼

 

어떤 원리로 보안을 유지할 수 있을까요??

 

-

-

 

예를 들면

 

범현이와 A,B,C,D 이렇게 5명이 한방에 있다고 가정해보죠

 

각자 책상위에 종이한장과 펜을 가지고 있고

 

누군가 외치는 말을 전부 동시에 따라 적습니다.

 

 

-

-

 

범현이가 외칩니다.

 

"제가 A에게 30만원을 보냈습니다"

 

범현이를 포함한 전부가 다음과 같이 종이에 받아적습니다.

 

"범현이 A에게 30만원 이체(끄적끄적)"

 

-

-

-

 

 

모두의 종이에는 범현이의 현금거래내역이 적혀있으며,

 

보안성 강화를 위해 

 

암호화하는 과정이 필요합니다.

 

 

따라서

 

 

 

어떤 숫자를 넣었을때 랜덤으로 다른 숫자가 나오는 상자(랜덤박스)를 만들고, 보안매개로 사용해보고자 합니다.

 

 

예를들면 111을 넣으면 89787가 나오고

112를 넣으면 4150787가 나옵니다.

말그대로 랜덤입니다.. (이 상자를 Hash function이라 합니다..)

 

 

하지만 input값에 대한 output은 정해져있습니다.

111을 넣으면 무조건 89787이 나옵니다.

 

 

-

-

 

범현이의 거래내역이 적힌 종이의 고유번호를 000이라 하고

 

000 + A = 12345 일때 암호가 풀린다고 가정해보죠

 

(이 규칙으로 정해진 12345라는 목표값을 논스값 이라고합니다..)

 

이 A를 어떻게 구할수 있을까요?

 

쉽다. 우주에 존재하는 모든 숫자들을 넣어보는것입니다.

 

 

 

상자에서 뭐가 나올지 난 절대 모르기 때문입니다.

 

(이것이 블럭체인 해킹이 불가능한 이유)

 

-

-

 

​누가 우연히 우주에 존재하는 모든 숫자를 넣어 A를 찾는다면??

 

이 방의 5명 각자의 랜덤박스에 'A'를 넣어보고

 

12345가 맞는지 확인합니다.

 

맞다면 화폐로 인정하는것입니다.

 

(여기서 A를 봉인번호, POW(Proof Of Work)라고 합니다.)

 

-

-

-

 

출처 : https://medium.com/@elamachain/%EB%B8%94%EB%A1%9D%EC%B2%B4%EC%9D%B8-blockchain-%EC%9D%B4%EB%9E%80-69eada649cd4

 

그럼 여기서 중요한점은 이것입니다.

 

이것을 화폐로 인정받기 위해선 누군가는 'A(POW)'를 찾고 봉인을 해야합니다.

 

봉인을 하기위해선 봉인번호(A)가 필요합니다.

 

이를 위해선 엄청나게 많고, 빠른 연산을 위해 대규모의 컴퓨팅파워와 전력이 필요합니다.

 

누가 이런 일을 무급으로 할까요?

 

-

-

 

가령

 

범현이가 봉인번호 "A"를 힘든 노가다 끝에 찾아 방 사람들 전부에게 들리게 소리친다고해보죠

 

"A"는 XXX야 !!

 

나머지 사람들은 XXX를 랜덤박스에 넣어 12345가 나오는지 확인합니다.

 

맞다면

 

종이는 안전하게 봉인되고

 

범현이에게는 보상으로 비트코인이 주어집니다.

 

이것이 바로 비트코인 채굴(Mining)입니다.

 

-

-

-

 

예시는 하나의 거래로 들었지만

 

복수의 거래가 기록된 종이 한장을 'Block' 이라하고

 

이 종이를 담고 있는 상자들을  'Block Chain' 이라합니다.

 

-

-

 

채굴(Mining)을 한 채굴자에게도 비트코인이 주어지기에

 

채굴자도 비트코인의 화폐가치를 높이기 위해 노력하게 됩니다.

 

즉 회사에서 자사의 주식을 직원들에게 주는

 

'스톡옵션'과 비슷한 개념입니다.

 

이렇기에 블록체인은 경제학과 때놓을 수 없는 기술입니다.

 

 

 

 

 

댓글