[연재글] BlockChain - 03. 블록체인의 기본 구조
게시글 주소: https://h.orbi.kr/00012334500
1편 : https://orbi.kr/00012313138
2편 : https://orbi.kr/00012318427
이 글은 암호화폐와 그 근간을 이루고 있는 블록체인에 대해 살펴보는 글이지 비트코인과 이더리움 시장을 예측해 투자 타이밍을 조언하는 글이 아님을 알려드립니다. 이걸 본다고 투자하는데 도움이 되지 않습니다. 기술은 개발자에게 투자는 주갤러에게.
안녕하세요 지난 글에서 어떻게 비트코인 지갑을 만드는지 알아봤습니다. 생각보다 별거 아니에요. 없는줄 알았던 개인정보 인증이 N개정도 있다는 것만 빼면(...)
이번 글에서는 그렇게 만든 코인 지갑으로 거래를 하면 무슨 일이 어떻게 진행되는지 개괄적인 구조를 살펴보려 합니다. 그리고 한 단계씩 상세하게 설명을 할거에요. 아마 기본적인 지식을 갖추는 데는 이번 글로 충분할 지도 모르겠네요.
0. 블록체인의 구조
일단 그림 한장 보고 시작하겠습니다. 기본 구조는 그림 한장에 담을 수 있을 정도로 별 거 없어요.
일부러 좀 크게 올렸습니다. 대충 그림판같은거로 작업한거니 퀄은 이해 부탁드립니다...
앞으로 살펴볼 내용도 이 그림을 기초로 해서 설명드릴 것이기 때문에 이 그림을 보고 뭔지 이해하실 수 있으시면 블록체인의 구조에 대해 알고 계시다고 말씀하실 수 있습니다. 그럼 한 단계씩 설명해보겠습니다.
1. Make Transaction
기본적으로 블록체인은 각종 Transaction들의 연속연속입니다. 모든 것은 Transaction으로 이루어져 있다고 할 수 있죠. 위 그림에서 User1이 User2에게 비트코인을 보냈다고 해보죠. 그럼 녹색 네모 안에 적힌 것 같은 정보가 담긴 Transaction 데이터가 생성됩니다. 그리고 이 정보는 User1에 연결되어 있는 피어들에게 전달됩니다. 블록체인 네트워크는 P2P 네트워크로 이루어져있기 때문에 이런식으로 새로 생긴 정보는 네트워크를 따라 모든 노드들에게 공유됩니다. 이 시점에서 아직 User1, 2는 이 거래가 검증되었다는 것을 확인할 수 없습니다.
2. Receive Tx. and Pooling
노드는 새로운 정보를 받으면 이를 검증하고 유효할 경우 또다른 노드에 전달하는 작업을 자동으로 진행합니다. 그 중에 특별하게 Full Node라는 녀석들이 있는데, 이 녀석들은 지금까지의 모든 블록체인 데이터를 가지고 있으면서, 독립적으로 거래를 검증할 수도 있으며, 새로운 거래도 모두 저장을 하고, 이를 가지고 새로운 블록도 만들어낼 수 있습니다. 노드 얘기는 다음에 다시 하고, Full Node가 새로운 거래를 전달받으면 이게 유효한 거래인지를 검증합니다(사용자 정보가 정확한지, 거래량이 잘 맞는지, 보낸사람의 잔고가 거래에 적합한지 등). 그리고 유효한 거래임이 확인되면 이 정보를 다른 노드에 전파하고 자신이 가진 Tx. Pool 안에 저장합니다.
3. Make New Block(Mining)
블록체인의 핵심 활동인 마이닝입니다. N-1번 블록이 어딘가에서 생성되어 이 정보가 우리 노드에 전달되었다고 합시다. 그러면 노드는 즉시 N번 블록을 생성하기 시작합니다. 새 블록을 만들기 위해 Tx. Pool 안에서 적당한 거래들을 골라 블록 안에 채워넣습니다. 블록의 구조는 Miner 안의 네모처럼 생겼습니다. 블록 안에 든 단어들이 뭘 의미하는지는 다음에 자세히 살펴보도록 하고, 지금은 Hash라는 단어 하나에만 집중하도록 합시다. 위와 같은 정보를 가지고 마이너는 특정 조건을 만족하는 Block Hash를 만들어내기 위해 노력합니다(보통 문제를 푼다고 표현하죠). 그렇게 Block Hash를 찾아내면 노드는 유레카를 외치며 완성된 블록 정보를 다른 노드들에게 전파합니다. User1, 2가 새로 생긴 블록 정보를 받게 되면 거기에 자신의 거래가 포함되어 있는지 확인합니다. 만일 방금 생긴 블록에 자신의 거래가 포함되어 있으면 1번의 검증을 받았다고 합니다. 보통 가벼운 거래의 경우 이것만으로 거래가 성사되었다고 판단합니다. 고가의 거래 또는 안정성이 매우 중요한 거래인 경우에는 최대 6번의 승인을 받기까지 기다리는데, 이는 다음에 거래 검증에 대한 얘기를 하면서 좀 더 자세히 썰을 풀어보도록 하겠습니다.
블록체인은 위의 3개의 단계가 여기저기서 막 일어나면서 길게 이어집니다. 그림을 그릴때는 간단히 설명할 수 있을 거라 생각했는데 글을 써놓고 보니 또 주절주절 떠들었네요. 아직도 기술적 글쓰기 실력이 부족함을 느낍니다.
에... 아직까지는 뭔소린지 이해가 잘 안 가시는 분들도 많을 것 같네요. 일단 이게 어떻게 되는지 두루뭉술한 그림이라도 머릿속에서 그리실 수 있다면 이번 글을 잘 따라오셨다고 생각합니다. 좀 더 상세한 내용들을 채우면서 의문가는 부분, 헷갈리는 부분들이 구체화될 수 있도록 노력하겠습니다.
질문은 언제나 환영입니다. 그럼 다음 글에서 뵙겠습니다.
작성자 간식 기부하기:
BTC 14eM4cd28q77Q4AujrV6jGBDH9unX3zD3f
ETH 0xf05C7196CF4e3494023aeABB6053d053ecB3937A
0 XDK (+0)
유익한 글을 읽었다면 작성자에게 XDK를 선물하세요.
으아 파일 첨부했더니 맨 위에 그림이 한장 더 붙어버렸네요-_-
이게그..비트코인이라는건가요
근데대체 비트코인을왜쓰는거에요
인터넷화폐의장점이라도있나요??
네 이게 그 비트코인이라는겁니다.
왜 쓰느냐면 일단 조작 불가능한 투명한 거래장부가 남는다는 것이 최대 장점이라고 들 수 있겠네요. 누구라도 거래장부를 확인할 수 있고 이 거래는 수정이 사실상 불가능합니다. 그러면서도 거래에 참여한 사람의 개인정보가 유출되지 않기 때문에 익명성이 보장된다는 것도 있구요. 익명성이라는게 항상 장점은 아닙니다만. 물론 거래소를 통해 거래를 하면 그 기록을 기반으로 자금의 출처를 확인할 수 있기는 합니다.
현물이 없어 분실의 위험성이 없다고도 하고 싶지만, 이건 사실 비밀키를 해킹당하거나 잃어버리면 동일한 효과라서 강력하게 장점이라고 말씀드리기는 좀 애매하네요.
오오오...저도나중에컴퓨터 해킹쪽진짜깊게공부하고싶네요..
투자는 주갤러라니! 훌리군요!!
훌리라뇨 진리입니다 ㅋㅋ
부러>>일부러
오 저거 습관적으로 저렇게 쓰는데 저기도 저렇게 써놨네요 수정하겠습니다!
구와아악 복잡하네여 흑흑
그게 다 제가 모자란 탓입니다...ㅜㅜ
아니에용
이글 막줄 세줄이 핵심이라는 것만이시면 돼요
ㄷㄷ
이걸로 비문학지문 만들면 꿀잼띠일듯
제가 글재주가 없어 제 글로는 만들면 안되고, 내용 자체는 비문학 지문에 나오기 좋은 내용이라 생각합니다
주갤러라니... 믿고 거를뻔했네
잘읽고갑니다
ㅋㅋㅋㅋ 저 문구 빼야되려나요 ㅋㅋㅋㅋ
암호화폐나 블록체인 관련해서 더 깊게 알아보고 싶은데 도움이 될만한 서적이나 레퍼런스(?) 같은게 있을까요?
관심있으신게 기술적인 부분인지 활용도나 앞으로의 전망, 미래가치인지에 따라 다를 것 같네요. 후자는 잘 모르겠고, 전자는 http://mobile.kyobobook.co.kr/showcase/book/KOR/9788976418883 이 책 추천드립니다. 내용이 좀 어렵고 처음엔 뭔소린가 싶은데 한 세번정도 읽어보면 전반적으로 이해가 되더라구요.
감사합니다.
요 비트코인 덕분에 그래픽카드 물량이 씨가 말라가고 있죠 ㅠㅠㅠㅠ
가격이 한번쯤 쳐발릴거라 그때 중고물량이 왕창 풀릴거라 예상해봅니다 ㅋㅋ
읽다 궁금한 점이 생겼는데요, 유저1만 전파하나요?
유저 1이 전파한 내용을 풀노드가 검증하는 것은 유저 2도 전파한 내용을 확인해야 체크 되는 것 아닌가요? 또 해시값을 풀때 검증된것이란 뜻이 거래가 진짜라는 것은 이미 확인 됬지만, 블록에 기록되지 않았다는 뜻인가요?(다음 글들을 읽고 해소시 삭제 혹은 수정하겠습니다!)
잘 읽었습니다 ^^