[연재글] BlockChain - 04. Node
게시글 주소: https://orbi.kr/00012341994
1편 : https://orbi.kr/00012313138
2편 : https://orbi.kr/00012318427
3편 : https://orbi.kr/00012334500
이 글은 암호화폐와 그 근간을 이루고 있는 블록체인에 대해 살펴보는 글이지 비트코인과 이더리움 시장을 예측해 투자 타이밍을 조언하는 글이 아님을 알려드립니다. 이걸 본다고 투자하는데 도움이 되지 않습니다. 기술은 개발자에게 투자는 주갤러에게.
안녕하세요 하루가 멀다하고 옯질하는 직장인입니다. 걸리면 혼납니다.
지난 글에서 드디어 블록체인의 구조를 살펴봤습니다. 아직은 뭐가 어떻게 되는지 잘 모르는 부분도 많이 있을 것 같은데요, 오늘부터는 그 안을 좀 더 디테일하게 까보려고 합니다.
오늘 살펴볼 부분은 아래 그림에서 가장 큰 네모인 Node 라는 것입니다.

그림 절반을 차지하고 있는 커다란 네모가 모두 Node인데요, 뭔가 설명할 게 굉장히 많습니다만 일단 Miner 에 대한 얘기는 좀 빼놓고 설명드릴게요. 잘게 쪼개서 진행하는 게 글도 짧고 보기도 좋을 것 같네요.
1. What is Node?
노드란 건 별 것 없습니다. 그래프 배우시죠 수학시간에? 그래프는 Node, Edge로 이루어진다고 배우셨을 겁니다. 앞서 말씀드렸듯 블록체인 네트워크는 P2P 네트워크로, 망형 구조를 이루고 있습니다(이거 컴퓨터?정보? 시간에 배우나 모르겠네요). 수많은 비트코인 클라이언트가 Node가 되고, 그 사이를 잇는 네트워크가 Edge가 되는 식이죠. 물론 컴퓨터 사이에 직접 인터넷 선을 놓는 것은 아니지만 위상은 동일합니다.
2. Node의 종류
이 노드에는 여러 종류가 있습니다. 먼저 우리가 2편에서 만들어봤던 거래소에 계좌를 트는 것을 생각해보겠습니다. 거래소 홈페이지에서 계좌를 만들면 거기에서 계좌 정보를 볼 수 있죠? 그런데 그걸 만들려고 우리 컴퓨터에 뭔가 설치하는 단계가 있었나요? 또는 그 계좌를 제 컴퓨터에 가져와 별도의 프로그램으로 볼 수 있었나요? 아니죠? 이런식으로 웹에서만 쓸 수 있고 대개는 어딘가에서 관리되고 있는 노드를 Web Node 라고 합니다. 제일 가볍고 간편하지만 통제권이 제게 1도 없다는 단점이 있죠. 보통의 유저들에게는 전혀 단점이 아니기는 해요.
다음으로, 우리가 뭔가 프로그램을 다운받아 거기에 계좌를 등록해서 볼 수 있는 것들이 있습니다. 블록체인 앱이나 이더리움 지갑 앱 같은 것들을 생각하면 되겠네요. 이런 것들은 계좌 정보를 가지고 있고 지금 해당 코인의 블록체인이 얼마나 이어졌는지도 알고 있으며, 거래를 검증할 수도 있습니다. 하지만 거래를 스스로 검증하지는 못하고 간접적인 방법으로 증명할 수 밖에 없어요. 따라서 거래 검증을 위해서는 네트워크 연결이 필요합니다. 이런 노드를 가볍다고 해서 Lightweight Node 라고 합니다. 얘들은 보통 블록 헤더만을 가지고 있어요. 그래서 상대적으로 용량도 적게 차지하고 기능도 많지 않지요.
마지막으로 0번 블록부터 지금까지의 모든 블록을 다 저장하고 있으며, 새로운 블록도 생성할 수 있고 다른 Lightweight Node가 요청한 거래 검증을 해줄 수 있는, 심지어 그 누구의 도움 없이도 스스로 거래를 검증해낼 수 있는 노드가 있습니다. 이게 바로 위 그림에 있기도 하고, 3편에서 예를 들었던 Full Node 입니다. 얘도 인터넷에서 받아서 사용할 수 있어요. 많은 데스크탑용 클라이언트가 Full Node입니다. 얘는 모든 기능을 다 가지고 있는 장점이 있지만 0번부터 지금까지의 모든 블록 정보를 저장해야 하기 때문에 저장공간이 어마어마하게 필요해요. 비트코인의 경우 지금 어림잡아 30GB 이상의 공간이 상시 필요할겁니다. 이더리움의 경우에도 수 GB정도 필요할거에요. 이 공간은 블록체인이 길어질수록 지속적으로 증가하게 되기 때문에 저장공간이 아아아아주 넉넉하신 분이 아니라면, 그리고 마이닝이니 뭐니 하는 고오급 기능이 필요하지 않다면 Full Node 사용을 추천하지 않습니다. 그냥 용량 잡아먹는 괴물이에요 이거.
3. Node 의 구성
Web, Lightweight Node는 별로 하는 일이 없기 때문에(Lightweiget Node의 거래 검증은 별도 설명이 필요합니다만) Full Node 기준으로 설명드리도록 하겠습니다. Full Node는 크게 Tx. Pool, Block Pool, BlockChain Storage, Wallet, Block Generator/Miner, P2P Network Client 등으로 구성되어있다고 볼 수 있습니다. 세세하게 나누자면 저 중에 뭘 가지고 있느냐에 따라 이름이 또 갈리기도 하고 그렇습니다만, 모든 기능을 다 하는 Reference급 노드라면 저런 것들을 모두 가지고 있습니다.
BlockChatin Storage는 이름만 봐도 알겠죠? 그냥 0번부터 지금까지의 모든 블록체인을 저장하고 있는 저장소입니다. 이 체인은 P2P Network를 통해 새로운 블록을 전달받으면 계속 길어져 저장되겠죠. 가끔 여러 블록이 매우 빠른 속도로 채굴되는 경우가 있는데 이 경우 N+1번 블록보다 N+2번 블록이 더 빨리 내게 도달하는 경우가 있습니다. 이런 경우 N+2번 블록은 N+1번 블록이 도착하기 전까지 고아 블록이 되어 Block Pool에 머무르게 됩니다. Tx. Pool은 저번 글에서 설명드렸듯 유효함을 확인받은 거래이나 아직 블록에 기록되지 않은(검증받지 못한) 거래들을 저장하는 곳이구요. 지갑은 말 그대로 블록체인 주소를 가지고 있으며, 이 주소를 통해 코인을 주고받을 수 있습니다. 이 주소를 만들어내기 위한 개인키가 없으면 이 지갑을 열 수가 없으니 개인키 관리에 주의가 필요해요. 그리고 Block Generator는 사실 뭐 Miner라고 봐도 무방할 것 같은데, 이전 블록 정보와 Tx. Pool에서 적당히 선별한 거래들을 모아서 새로운 블록을 만드는 일을 합니다. 그렇게 만들어낸 블록 정보는 P2P Network를 통해 전파하구요.
이번 글에서는 블록체인 네트워크를 구성하는 요소 중 Node에 대해 알아봤습니다. 지구상에 쫙 깔려있는 수많은 노드들이 다 네트워크를 이루는 요소들이 되구요, 그 중에 Full Node들은 각자가 독립적으로 자신만의 저장소에 블록체인을 저장하고 있습니다. 블록체인의 특징 중 하나인 중앙 통제기관 없는 분산장부(블록은 거래를 기록하고 있으니 장부라고 볼 수 있겠죠)를 만들어내는 주인공이죠. 아직 블록체인이 뭐 왜 체인인지도 설명 안해주고 빨리 마이닝 하는거 어떻게 하는지 궁금하신 분들이 많은텐데 이제 슬슬 본격 설명을 위한 떡밥을 다 깐 것 같습니다. 다음 글부터는 내용이 재밌어지길 바라며, 다음 글에서 뵙겠습니다.
작성자 아들딸 까까사주기:
BTC 14eM4cd28q77Q4AujrV6jGBDH9unX3zD3f
ETH 0xf05C7196CF4e3494023aeABB6053d053ecB3937A
0 XDK (+0)
유익한 글을 읽었다면 작성자에게 XDK를 선물하세요.
-
지구 공부법..도와주세요.. 0 0
기출 1회독은 했고요 지금은 솔택듣고 솔택 엔재랑 폴라리스 풀려고 막 시작한...
-
'홍명보 선임 주도' 이임생, 캄보디아행…프로팀 취직 3 0
[이데일리 권혜미 기자] 홍명보 전 축구대표팀 감독 선임을 주도했던 이임생 전...
-
초중고 12년동안 쌓아온 격차를 메꾸는 것이 확실히 쉬운 일이 아닌거 같네요.....
-
카공할까 스카갈까 4 0
흠
-
꺄 둘다 1등급 1 0
미적까지 1받는 바람에 지원할 수 있는 의대 상한선이 이전보다 훨씬 올라가 버렸어요!
-
나한테 국어1등급받고오라던 국어강사놈이 안보이네 3 0
음음 6모포함4개의1등급을보여주려했는데
-
한명을 죽이면 살인자 2 1
백명을 죽이면 영웅 팬텀 키울까요 아란 키울까요? ㅈㄱㄴ
-
한능검 원서접수 완료 1 1
시벌 이번회차도 응시 실패하는 줄 알았다 대기 35분이길래 국편위 불 지를까 생각했음
-
와 지금 일어남 2 0
ㄹㅈㄷ
-
반갑꼬리 2 1
반갑다제
-
22도 왤케 춥지 2 0
이게 어케 여름철 실내 적정온도임
-
어디 있는지 알려주실 수 있나요 ㅠㅠ 올해는 커리를 안타서..
-
N수생 표본 실화냐 1 2
언매 88이 3 확통 65가 5라니 쉽지않구나
-
스블 카나토미 0 0
스블을 회독하는데 역시 첨에 안풀리던 문제들은 잘 안풀리더라고요 스블 회독하면서...
-
감기 걸린듯 1 1
힘들어
-
물2 절평 A 14명은 2 1
애들 대학 보내기 싫은가 ㅋㅋ
-
참교육 빌런이 되고싶군아 0 0
쌰갈 학넌부장쌤(체육쌤이심) 왜 교복 체육복 안 입냐고 원래 교실 자습이었다가...
-
킬캠 즌1 1회 0 0
85점 #11 #15 #16 #30 11번 “아닌“을 왜 잘 못 읽엇지;; 16번...
-
신두형 안녕 0 0
-
작년 7섶은 쉬웠던거임? 0 0
1 2컷이 너무 높은디.. 6섶보다도쉬운건가..
-
아 과목편식 어칼거 6 1
과탐 너무 재밌어서 자꾸 과탐 문풀만 하게 됨 ㅠ 병신아 제발 수학하라고 수학 ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ
-
국어왤케못하지 3 1
ㄹㅇ
-
이뮨 0 0
수특 독서 안보고 이뮨 독서만 봐도 괜찮을까요?
-
잠을 자야겟어.. 4 1
졸려
-
서울대내신반영 3 1
죽고싶습니다.. 웬만한폐급아니면 cc잘안주는거아는데 오늘 생기부까보니까 생각보다...
-
나한테 사탐런 하라 했던 글 찾음 18 3
https://orbi.kr/00074677985
-
이게 내가 공부하던 과목이라고?
-
영어n제 풀어도 2등급이면 1 0
여기서 대체 뭘 얼마나 더 해야…
-
강e분 독서 완강 언제임?? 2 0
??
-
성적표신상나오는줄몰랏네 6 7
못보고그냥기말치러가버림ㅋㅋ
-
CDK 골ㄹㄹ 2 0
트좆 참교육 가자
-
언매 내신 1등급 안착 6 1
1컷+1.5점 언매를 가장한 언독문이긴함 국어 내신 등급 3->2->2->1->2->1
-
수학 n제 추천 부탁드립니다! 1 0
미적이고 80~88사이로 맴도는 것 같습니다(6모는 88이긴 합니다) 기출은...
-
의도치 않게 신상 알게 된적이 열번도 넘는거같음
-
호날두의 시대가 저물기 시작했구나 11 3
한창 피파하면서 스쿼드 짤 땐 항상 호날두를 넣었었는데... 해축에 관심이 많던...
-
9평 접수.. 1 0
와 9평접수 못했는데 성적표안받고 그냥 시험만이라도 못보나요..?ㅠ 이렇게 빨리...
-
다른건 다 괜찮아지는데 명제지문은 괜찮아질 기미가 안보임 역대 평가원 명제지문 분석같은거 해야하나
-
시대인재 9모 응시 1 0
시대인재 재종에 현재 다니고 있는데 만약 9모 전에 퇴원을 하게 된다면 9모는...
-
세계사 공부법 1 0
작수 2등급 6모 1등급인데요 완전 이해파라 세계사 교과서만 죽어라 파는데 ㅁㄹㅇ...
-
미적분도 날렸는데 0 0
영어도 걍 내신에서만 보고 수능에서 없애지
-
무휴반 설의 0 0
무휴반으로 설의 가신 분들은 보통 몇 학점 들으시나요?
-
드릴7 삼각함수 11번 이거 1 0
수능에 나온다면 닥 22번임? 삼각함수긴한데
-
내신은 4.0이나 운 좋으면 3.9까지 뜰것 같아서 수시로는 제가 원하는 대학을...
-
balance game! : 국어 실모 40개 vs ebs회독(나올것들만 3회독 나머진 잘 1회독) 3 1
기준은 시간이 부족한 학생.
-
하루 스타트가 상쾌하네 이마저도 신두형의 은혜인가 ㄷㄷ
-
ㅇㅂㄱ 3 2
#~# 등장!
-
조정호T 3주차에 들어가도 구문독해법 익힐 수 있나요? 0 0
08 현역이고 영어는 2,3 등급 왔다갔다 합니다. 동네학원에서 하다가 문장해석이...
-
우리형 이 말 못한 감정 0 2
누구보다 형한테 진심이였어서.. 너무 힘듬 그냥 아프고
-
호날두팬은아니지만.. 11 7
연령 생각하면 마지막 월드컵일텐디 넘 아쉽긴 하네여그래도 참 머찐 선수라고 생각하구 잇삼
-
a가 어휘문제인거 같은데 왜 문제는 없음
옛날에 처음 개척한 노드에 서로 연결되려고 해서 노드의 독점이 이루어질 수 있다??? 이런 내용을 읽었던 것 같은데 흥미롭네요. 좋은 글 감사합니다.
블록체인 초기 노드가 적었던 시절에는 초기 거대 노드에 조작이 가해지면 이 노드에 붙은 피어들이 이 정보를 가져가면서 다수결에서 이겨버리는 상황이 생길 수 있었을 것 같네요. 물론 지금은 그런거 못합니다. 노드를 독점해 다수결에서 이기는 상황이면 51% 어택 얘기인 것 같은데, 이건 나중에 블록체인 네트워크가 어떻게 다수결로 체인을 선택하면서도 조작이 불가능한 구조를 가질 수 있는지 별도의 글로 설명드릴겁니다.
오오 이번엔 좀 더 이해하기 쉬웠던 것 같네요 ㅎㅎ
잘 읽었습니다^^